Professional Documents
Culture Documents
Open Source Software: Key Advantages
Open Source Software: Key Advantages
Proprietary software forces the user to accept the level of security that the
software vendor is willing to deliver and to accept the rate that patches and
updates are released.
The end-user of Open Source code has the ability to change and modify source to
implement any extra "features" of security they may wish for a specific use,
which can extend to the kernel level if they so wish.
2. Quality:
o
In general, open source software gets closest to what users want because those
users can have a hand in making it so. In OSS, users and developers make what
they want, and they make it well. Technical superiority is typically the primary
reason of why enterprises choose open source software.
3. Customizability
o
Business users can take a piece of open source software and tweak it to suit their
needs. Since the code is open, it's simply a matter of modifying it to add the
functionality they want.
4. Freedom
o
When businesses turn to open source software, they free themselves from the
severe vendor lock-in that can cause problems with proprietary packages.
With FOSS, users are in control to make their own decisions and to do what they
want with the software. They also have a worldwide community of developers
and users at their disposal for help with that.
5. Flexibility
o
When our business uses proprietary software such as Microsoft Windows and
Office, we are required to keep upgrading both software and hardware. Open
source software is typically much less resource-intensive, meaning that we can
run it well even on older hardware.
6. Interoperability
o
7. Support Options
o
Open source software is generally free, and so is a world of support through the
vibrant communities surrounding each piece of software. Most every Linux
distribution, for instance, has an online community with excellent documentation,
forums, mailing lists, forges, wikis, newsgroups and even live support chat.
8. Cost
o
The Proprietary software vendors will put mandatory charges for virus protection,
support charges, ongoing upgrade expenses and the costs associated with being
locked in.
But we can get better quality open source software at a fraction of the price than
proprietary software.
If we are considering using open source software, it will typically cost us nothing
to try it out first. This is partly due to the software's free price, and partly due to
the existence of LiveCDs and Live USBs. No commitment required until we're
sure about the working of software.
community
cooperation.
These
communities
are
composed
of
individual
hardware/software developers, hobbyists, as well as very large companies. Examples of opensource hardware initiatives are:
Openmoko: a family of open-source mobile phones, including the hardware specification
and the operating system.
OpenRISC: an open-source microprocessor family, with architecture specification
licensed under GNU GPL and implementation under LGPL.
Sun Microsystems's OpenSPARC T1 Multicore processor. Sun has released it under
GPL.
Arduino, a microcontroller platform for hobbyists, artists and designers.
Simputer, an open hardware handheld computer, designed in India for use in
environments where computing devices such as personal computers are deemed
inappropriate.
LEON: A family of open-source microprocessors distributed in a library with peripheral
IP cores, open SPARC V8 specification, implementation available under GNU GPL.
Tinkerforge: A system of open source stackable microcontroller building blocks. Allows
to control motors and read out sensors with the programming languages C, C++, C#,
Object Pascal, Java, PHP, Python and Ruby over a USB or Wifi connection on Windows,
Linux and Mac OS X.
Open Compute Project: designs for computer data center including power supply, Intel
motherboard, AMD motherboard, chassis, racks, battery cabinet, and aspects of electrical
and mechanical design.
Open-source robotics: An open-source robot is a robot whose blueprints, schematics,
and/or source code are released under an open-source model.
Introduction to Linux
Linux started out as a UNIX variant to run on an IBM PC platform but with one major
difference that is its source code was freely available under the auspices of Free Software
Foundation (FSF). Due to this, it quickly positioned itself as an alternative to other Unix
workstations such as those offered by Sun Micro systems, Compaq and Silicon Graphics. Due to
high quality designing of its kernel quality such as stability, modularity and easy configurability
- it is now dominating the corporate world significantly. For example, major banks, investment
houses, retail establishments, educational institutions, etc., use it.
Features of Linux
Following are some of the important features of Linux Operating System.
Portable:
Portability means software can works on different types of hardware in same way. Linux
kernel and application programs support their installation on any kind of hardware platform.
Open Source:
Linux source code is freely available and it is community based development project.
Multiple teams works in collaboration to enhance the capability of Linux operating system and
it is continuously evolving.
Multi-User:
Linux is a multiuser system means multiple users can access system resources like
memory/ RAM/ application programs at same time.
Multiprogramming:
Linux is a multiprogramming system means multiple applications can run at same time.
Hierarchical File System:
Linux provides a standard file structure in which system files/ user files are arranged.
Shell
Linux provides a special interpreter program which can be used to execute commands of
the operating system. It can be used to do various types of operations, call application programs
etc.
10
Kernel
Kernel is the core part of Linux. It is responsible for all major activities of this operating
system. It is consisting of various modules and it interacts directly with the underlying hardware.
Kernel provides the required abstraction to hide low level hardware details to system or
application programs.
System Library
System libraries are special functions or programs using which application programs or
system utilities accesses Kernel's features. These libraries implements most of the functionalities
of the operating system and do not requires kernel module's code access rights.
System Utility
System Utility programs are responsible for performing operating system management
tasks, such as maintaining the file system, editing text files, managing running processes, and
installing new software packages.
User Interface
Linux includes both a command line Interface (CLI) and Graphical User Interface (GUI).
11
Support code which is not required to run in kernel mode is in System Library. User
programs and other system programs works in User Mode which has no access to system
hardware and kernel code. User programs/ utilities use System libraries to access Kernel
functions to get system's low level tasks.
Kernel Mode "prevents" User Mode applications from damaging the system or its
features. Modern microprocessors implement in hardware at least 2 different states. For example
12
Linux Architecture
13
14