Download as pdf or txt
Download as pdf or txt
You are on page 1of 14

Open Source Software Unit - 1 IV IT

Open Source Software


Open-source software is software whose source code is published and made available to
the public, enabling anyone to copy, modify and redistribute the source code without paying
royalties or fees. Open-source code can evolve through community cooperation. These
communities are composed of individual programmers as well as very large companies. Opensource software is very often developed in a public, collaborative manner.

Advantages and Disadvantages of Open Source


Open source is a fairly new concept that has gained huge popularity in the field of IT in
recent years. This is mainly because open-source software is free to use its greatest advantage.
As it is developed by a non-profit community, it has some disadvantages as well.
Key Advantages
Open-source software is free to use, distribute, and modify. It has lower costs, and in
most cases this is only a fraction of the cost of their proprietary counterparts.
Open-source software is more flexible as the code is accessible to everyone. Anyone can
fix bugs as they are found, and users do not have to wait for the next release. The fact that
is continuously analyzed by a large community produces secure and stable code.
Open source is not dependent on the company or author that originally created it. Even if
the company fails, the code continues to exist and be developed by its users. Also, it uses
open standards accessible to everyone; thus, it does not have the problem of incompatible
formats that exist in proprietary software.
Lastly, the companies using open-source software do not have to think about complex
licensing models and do not need anti-piracy measures like product activation or serial
number.

DEPARTMENT OF INFORMATION TECHNOLOGY

Open Source Software Unit - 1 IV IT


Key Disadvantages:
The main disadvantage of open-source software is not being straightforward to use.
Open-source operating systems like Linux cannot be learned in a day. They require effort
and possibly training before we are able to master them.
Often no single source to support all aspects of the application; multiple sources of
technical and business organization support may be required
Must understand business logic to adjust configuration or make code adjustments to meet
unique work flow and business needs
There is a shortage of applications that run both on open source and proprietary software;
therefore, switching to an open-source platform involves a compatibility analysis of all
the other software used that run on proprietary platforms. In addition, there are many
ongoing parallel developments on open source software. This creates confusion on what
functionalities are present in which versions.
Many of the latest hardware are incompatible to the open-source platform; so we have to
rely on third-party drivers.

Need for an Open Source Strategy


1. Security :
o

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.

DEPARTMENT OF INFORMATION TECHNOLOGY

Open Source Software Unit - 1 IV IT

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

Open source software is much better at adhering to open standards than


proprietary software is. If we value interoperability with other businesses,
computers and users, and don't want to be limited by proprietary data formats,
open source software is definitely the way to go.

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.

DEPARTMENT OF INFORMATION TECHNOLOGY

Open Source Software Unit - 1 IV IT


o

But we can get better quality open source software at a fraction of the price than
proprietary software.

9. Try Before You Buy


o

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.

Applications of Open Source


Many fields of study, social and political views have been affected by the growth of the
concept of open source.
In the Field of Computer software
Many of these individual programmers who start an open-source project usually end up
as large companies with open-source programs. Examples of open-source software products are:
Application software
7-Zip file archiver
Blender 3D graphics editor
TACTIC digital asset management software for 2D/3D digital content creators
Eclipse development environment comprising an IDE
GIMP graphics editor
Inkscape Vector graphics editor
Mozilla Firefox web browser
Chromium web browser
Mozilla Thunderbird e-mail client
NASA World Wind virtual globe, geobrowser
OpenOffice.org office suite
OpenEMR Electronic Medical Records software
PrestaShop Electronic commerce platform
4

DEPARTMENT OF INFORMATION TECHNOLOGY

Open Source Software Unit - 1 IV IT


ADempiere an enterprise resource planning (ERP) open source software platform for
business
Vue (Visual Understanding Environment) mind mapping software project of Tufts
University
WordPress web publishing platform
Operating systems
Android operating system derived from Linux
FreeBSD operating system derived from Unix
Linux family of Unix-like operating systems
OpenIndiana a free Unix-like operating system
ReactOS operating system built on Windows NT architecture
Haiku free and open-source operating system compatible with BeOS
Programming languages
Perl a general purpose programming language
PHP scripting language suited for the web
Python general purpose programming language
Ruby general purpose programming language
PHDL hardware description language used for PC Board Design
Server software
Apache HTTP web server
Drupal content management system
MediaWiki wiki server software, the software that runs Wikipedia
MongoDB document-oriented, non-relational database
Moodle course management system or virtual learning environment
WordPress blog software
Joomla! content management system
TYPO3 enterprise content management system
Couchbase Server NoSQL document database
5

DEPARTMENT OF INFORMATION TECHNOLOGY

Open Source Software Unit - 1 IV IT


In the field of Electronics
Open-source hardware is hardware whose initial specification, usually in a software format,
are published and made available to the public, enabling anyone to copy, modify and redistribute
the hardware and source code without paying royalties or fees. Open-source hardware evolves
through

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.

DEPARTMENT OF INFORMATION TECHNOLOGY

Open Source Software Unit - 1 IV IT


Digital content
Open-content projects organized by the Wikimedia Foundation Sites such as
Wikipedia and Wiktionary have embraced the open-content GFDL and Creative
Commons content licenses. These licenses were designed to adhere to principles similar
to various open-source software development licenses. Many of these licenses ensure that
content remains free for re-use, that source documents are made readily available to
interested parties, and that changes to content are accepted easily back into the system.
Open ICEcat is an open catalog for the IT, CE and Lighting sectors with product datasheets based on Open Content License Agreement. The digital content is distributed in
XML and URL formats.
In the field of Health and science
Pharmaceuticals There have been several proposals for open-source pharmaceutical
development, which led to the establishment of the Tropical Disease Initiative and the
Open Source Drug Discovery for Malaria Consortium.
Genomics The term "open-source genomics" refers to the combination of rapid release
of sequence data (especially raw reads) and crowd sourced analyses from
bioinformaticians around the world that characterized the analysis of the 2011.
OpenEMR OpenEMR is an ONC-ATB Ambulatory EHR 2011-2012 certified
electronic health records and medical practice management application. It features fully
integrated electronic health, records, practice management, scheduling, electronic billing,
and is the base for many EHR programs.
In the field of Government
Open politics is a political process that uses Internet technologies such as blogs, email
and polling to provide for a rapid feedback mechanism between political organizations
and their supporters.
Open-source governance is similar to open-source politics, but it applies more to the
democratic process and promotes the freedom of information.
7

DEPARTMENT OF INFORMATION TECHNOLOGY

Open Source Software Unit - 1 IV IT


In the field of Ethics
Open-source ethics is split into two strands:
Open-source ethics as an ethical school Charles Ess and David Berry are researching
whether ethics can learn anything from an open-source approach. Ess famously even
defined the AoIR Research Guidelines as an example of open-source ethics.
Open-source ethics as a professional body of rules This is based principally on the
computer ethics school, studying the questions of ethics and professionalism in the
computer industry in general and software development in particular.
In the field of Media
Open-source journalism formerly referred to the standard journalistic techniques of
news gathering and fact checking, reflecting open-source intelligence a similar term used
in military intelligence circles. Now, open-source journalism commonly refers to forms
of innovative publishing of online journalism.
Messageboards are another platform for open-source culture. Messageboards also
known as discussion boards or forums, are places online where people with similar
interests can congregate and post messages for the community to read and respond to.
OpenDocument is an open document file format for saving and exchanging editable
office documents such as text documents (including memos, reports, and books),
spreadsheets, charts, and presentations. Organizations and individuals that store their data
in an open format such as OpenDocument avoid being locked into a single software
vendor.
Open-source movie production is either an open call system in which a changing crew
and cast collaborate in movie production, a system in which the end result is made
available for re-use by others or in which exclusively open-source products are used in
the production.
Open-IPTV is IPTV that is not limited to one recording studio, production studio, or
cast. Open-IPTV uses the Internet or other means to pool efforts and resources together to
create an online community that all contributes to a show.

DEPARTMENT OF INFORMATION TECHNOLOGY

Open Source Software Unit - 1 IV IT


In the field of Education
Open-source curricula are instructional resources whose digital source can be freely
used, distributed and modified.
In the field of Innovation communities
Open innovation is also a new emerging concept which advocates putting R&D in a
common pool. The Eclipse platform is openly presenting itself as an Open innovation network.

DEPARTMENT OF INFORMATION TECHNOLOGY

Open Source Software Unit - 1 IV IT

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

DEPARTMENT OF INFORMATION TECHNOLOGY

Open Source Software Unit - 1 IV IT


Security:
Linux provides user security using authentication features like password protection/
controlled access to specific files/ encryption of data.

Components of Linux System


Linux Operating System has primarily three components

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

DEPARTMENT OF INFORMATION TECHNOLOGY

Open Source Software Unit - 1 IV IT

Kernel Mode and User Mode


The kernel is the "core" of any computer system. It is the "software", which allows users to
share computer resources. The kernel can be thought of as the main software of the OS which
may also include graphics management. Kernel component code executes in a special privileged
mode called kernel mode with full access to all resources of the computer. This code represents a
single process, executes in single address space and do not require any context switch and hence
is very efficient and fast. Kernel runs each process and provides system services to processes,
provides protected access to hardware to processes.

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

DEPARTMENT OF INFORMATION TECHNOLOGY

Open Source Software Unit - 1 IV IT


under Intel, 4 states determine the PL (Privilege Level). It is possible to use 0,1,2,3 states, with 0
used in Kernel Mode. Linux OS requires only 2 privilege levels.

Switching from User Mode to Kernel Mode


As there are 2 different modes, it is necessary to switch from one to the other. Typically,
there are 2 points of switching:
1. When calling a System Call: After calling a System Call, the task voluntarily calls
pieces of code living in Kernel Mode
2. When an IRQ (or exception) comes: After the IRQ, an IRQ handler (or exception
handler) is called, and then control returns back to the task that was interrupted like
nothing had happened.

Linux Architecture

13

DEPARTMENT OF INFORMATION TECHNOLOGY

Open Source Software Unit - 1 IV IT


Linux System Architecture is consists of following layers
Hardware layer
Hardware consists of all peripheral devices (RAM/ HDD/ CPU etc).
Kernel
Core component of Operating System, interacts directly with hardware, and provides low
level services to upper layer components.
Shell
An interface to kernel, hiding complexity of kernel's functions from users. Takes
commands from user and executes kernel's functions.
Utilities
Utility programs are the programs which provide most of the functionalities of operating
systems to the users like back up utilities, file utilities and process utilities.

14

DEPARTMENT OF INFORMATION TECHNOLOGY

You might also like