It is a software program designed to act as an interface between a user
and the computer. It controls the hardware, manages the system resources
and supervises interaction between the system and its users.
Functions of Linux:
i) Command Interpreter:
The operating system interprets the command i.e. input instruction
user and translates its to the machine language. Similarly, it also
the result of a command i.e. output from the machine to the language,
user understands. This is known as command interpretation.
ii) Peripheral Manager:
The operating system manages the device attached to its system. Inputs
keyboard or mouse are taken as commands, which is sent to the printer or
as output. This procedure of accepting the input and producing output is
by the operating system is known as peripheral management.
iii) Process Manager:
Since there might be different processes running simultaneously within a
computer, the amount of time to be spent on a process by the CPU or RAM is
decided by the operating system. This is called process management.
Key Features of Linux:
i) Kernel Programming Interface:
It is also called the heart of the Linux Operating System. Kernel is the
central, memory resident part of the operating system that allocates
manages memory and controls processes. Linux being a freeware has an open
code, so that anyone can manipulate the kernel configuration and even
library files as per his requirements.
ii) Multi-user Operating System:
A multi-user operating system allows many users to access all the system
resources almost simultaneously. The term multi-user is the capability of
kernel to allocate CPU time to many applications once, thus serving many
at once when each is running once or more applications. Depending on the
hardware being used and the work being performed, a single UNIX host can
anywhere from a single user to numerous simultaneous users.
iii) Multi-tasking Operating System:
Linux is fully protected multi-tasking operating system. It is also
as multiprocessing, i.e. the kernels capability to run more than one job
process at a time, and each process is protected (separated) from one
Here each process can also communicate with each other through either a
memory area or pipes between the processes.
iv) X Window System:
The X window system provides the foundation for the graphic user interface
available with Linux. A user can interact with the computer through
windows on screen for displaying graphical information.
v) Networking System:
Comparatively, networking system in Linux is more reliable. It supports
large range of networks from the simple LAN to fast Ethernet, Token ring,
ISDN the most commonly used networks. Linux networking supports many
utilities that allow the user to access remote systems over a variety of
vi) Software Development Environment:
Linux is rich is its software development environment. The languages that
either available or as well as support Linux include Ada, Pascal, Lisp,
C, C++, Java, Perl, CGI, PHP,etc.
vii) Database Connectivity:
Linux supports a large range of database connectivity such as PostgreSQL,
JDBC and Oracle.
Parts of Linux System:
Kernel forms the core of the Linux Operating System. This interacts with
hardware and is loaded into the memory when a system is booted. Their
1) Managing the system resources.
2) Allocating time for different users and processes.
3) Deciding process priorities and performing them.
Kernel doesnt interact with the user directly. Instead, it starts up a
separate file called SHELL.
Shell interacts with the user and computer. Its prime features are as
1) Interactive processing: Communicating between the user and the system
the form of interactive dialogue with the shell.
2) Background processing: Some processes, which are time consuming, are
non-interactive in nature. Such processes can be run in the background
continuing to use the system to do other tasks.
3) Input/ Output Redirection: Programs can be instructed to take input
file other than standard input i.e. the keyboard or mouse send the output
file instead of the standard output i.e. monitor. This is called
Here, simultaneous use of Input and Output redirection is possible.
4) Pipes: Simple programs can be developed to do complex operations with
effort using pipes. This reduces the necessity for writing new programs
5) Wild card patterns: It is used for grouping together and performing
for the files matching a particular pattern.
6) Shell scripts: It contains a sequence of commands t be performed with a
single filename. A shell script is a text file that instructs the shell
performing a sequence of action. The scripts are executed using that