Concept of Operating System
Concept of Operating System
Computer Users are the users who use the overall computer system.
Application Softwares are the softwares which users use directly to perform different
activities. These softwares are simple and easy to use like Browsers, Word, Excel,
different Editors, Games etc. These are usually written in high-level languages, such as
Python, Java and C++.
System Softwares are the softwares which are more complex in nature and they are more
near to computer hardware. These software are usually written in low-level languages like
assembly language and includes Operating Systems (Microsoft Windows, macOS, and
Linux), Compiler, and Assembler etc.
Computer Hardware includes Monitor, Keyboard, CPU, Disks, Memory, etc.
So now let's put it in simple words:
If we consider a Computer Hardware is body of the Computer System, then we can say an
Operating System is its soul which brings it alive ie. operational. We can never use a Computer
System if it does not have an Operating System installed on it.
Windows: This is one of the most popular and commercial operating systems developed
and marketed by Microsoft. It has different versions in the market like Windows 8,
Windows 10 etc and most of them are paid.
Linux This is a Unix based and the most loved operating system first released on
September 17, 1991 by Linus Torvalds. Today, it has 30+ variants available like Fedora,
OpenSUSE, CentOS, UBuntu etc. Most of them are available free of charges though you
can have their enterprise versions by paying a nominal license fee.
MacOS This is again a kind of Unix operating system developed and marketed by Apple
Inc. since 2001.
iOS This is a mobile operating system created and developed by Apple Inc. exclusively for
its mobile devices like iPhone and iPad etc.
Android This is a mobile Operating System based on a modified version of the Linux
kernel and other open source software, designed primarily for touchscreen mobile devices
such as smartphones and tablets.
Some other old but popular Operating Systems include Solaris, VMS, OS/400, AIX, z/OS, etc.
Process Management
I/O Device Management
File Management
Network Management
Main Memory Management
Secondary Storage Management
Security Management
Command Interpreter System
Control over system performance
Job Accounting
Error Detection and Correction
Coordination between other software and users
Many more other important tasks
An Operating System (OS) is an interface between a computer user and computer hardware.
An operating system is a software which performs all the basic tasks like file management,
memory management, process management, handling input and output, and controlling
peripheral devices such as disk drives and printers.
The primary purposes of an Operating System are to enable applications (spftwares) to interact
with a computer's hardware and to manage a system's hardware and software resources.
Some popular Operating Systems include Linux Operating System, Windows Operating
System, VMS, OS/400, AIX, z/OS, etc. Today, Operating systems is found almost in every
device like mobile phones, personal computers, mainframe computers, automobiles, TV, Toys
etc.
Definitions
We can have a number of definitions of an Operating System. Let's go through few of them:
An Operating System is the low-level software that supports a computer's basic functions, such
as scheduling tasks and controlling peripherals.
An operating system (OS) is system software that manages computer hardware, software
resources, and provides common services for computer programs.
Architecture
Operating systems have been evolving over the years. We can categorise this evaluation based
on different generations which is briefed below:
0th Generation
The term 0th generation is used to refer to the period of development of computing when
Charles Babbage invented the Analytical Engine and later John Atanasoff created a computer
in 1940. The hardware component technology of this period was electronic vacuum tubes.
There was no Operating System available for this generation computer and computer programs
were written in machine language. This computers in this generation were inefficient and
dependent on the varying competencies of the individual programmer as operators.
First Generation (1951-1956)
The first generation marked the beginning of commercial computing including the introduction
of Eckert and Mauchly’s UNIVAC I in early 1951, and a bit later, the IBM 701.
System operation was performed with the help of expert operators and without the benefit of
an operating system for a time though programs began to be written in higher level, procedure-
oriented languages, and thus the operator’s routine expanded. Later mono-programmed
operating system was developed, which eliminated some of the human intervention in running
job and provided programmers with a number of desirable functions. These systems still
continued to operate under the control of a human operator who used to follow a number of
steps to execute a program. Programming language like FORTRAN was developed by John
W. Backus in 1956.
The second generation of computer hardware was most notably characterised by transistors
replacing vacuum tubes as the hardware component technology. The first operating system
GMOS was developed by the IBM computer. GMOS was based on single stream batch
processing system, because it collects all similar jobs in groups or batches and then submits the
jobs to the operating system using a punch card to complete all jobs in a machine. Operating
system is cleaned after completing one job and then continues to read and initiates the next job
in punch card.
The third generation officially began in April 1964 with IBM’s announcement of its
System/360 family of computers. Hardware technology began to use integrated circuits (ICs)
which yielded significant advantages in both speed and economy.
Operating system development continued with the introduction and widespread adoption of
multiprogramming. The idea of taking fuller advantage of the computer’s data channel I/O
capabilities continued to develop.
The fourth generation is characterised by the appearance of the personal computer and the
workstation. The component technology of the third generation, was replaced by very large
scale integration (VLSI). Many Operating Systems which we are using today like Windows,
Linux, MacOS etc developed in the fourth generation.
Following are some of important functions of an operating System.
1. Memory Management
2. Processor Management
3. Device Management
4. File Management
5. Network Management
6. Security
7. Control over system performance
8. Job accounting
9. Error detecting aids
10. Coordination between other software and users
Memory Management
Main memory provides a fast storage that can be accessed directly by the CPU. For a program
to be executed, it must in the main memory. An Operating System does the following activities
for memory management −
a. Keeps tracks of primary memory, i.e., what part of it are in use by whom, what part are
not in use.
b. In multiprogramming, the OS decides which process will get memory when and how
much.
c. Allocates the memory when a process requests it to do so.
d. De-allocates the memory when a process no longer needs it or has been terminated.
Processor Management
In multiprogramming environment, the OS decides which process gets the processor when and
for how much time. This function is called process scheduling. An Operating System does the
following activities for processor management −
a. Keeps tracks of processor and status of process. The program responsible for this task
is known as traffic controller.
b. Allocates the processor (CPU) to a process.
c. De-allocates processor when a process is no longer required.
Device Management
An Operating System manages device communication via their respective drivers. It does the
following activities for device management −
a. Keeps tracks of all devices. Program responsible for this task is known as the I/O
controller.
b. Decides which process gets the device when and for how much time.
c. Allocates the device in the efficient way.
d. De-allocates devices.
File Management
A file system is normally organized into directories for easy navigation and usage. These
directories may contain files and other directions.
Keeps track of information, location, uses, status etc. The collective facilities are often known
as file system.
Following are some of the important activities that an Operating System performs −
Security − By means of password and similar other techniques, it prevents unauthorized access
to programs and data.
Control over system performance − Recording delays between request for a service and
response from the system.
Job accounting − Keeping track of time and resources used by various jobs and users.
Error detecting aids − Production of dumps, traces, error messages, and other debugging and
error detecting aids.
Coordination between other softwares and users − Coordination and assignment of compilers,
interpreters, assemblers and other software to the various users of the computer systems.