0% found this document useful (0 votes)
37 views9 pages

Unit I INTRODUCTION TO OPERATING SYSTEM

An operating system (OS) is system software that acts as an intermediary between users and hardware, providing a simple interface while managing resources efficiently. Over time, various types of operating systems have evolved, including mainframe systems, multi-programmed batch systems, time-sharing systems, and real-time systems, each adding functionalities to improve user interaction and resource management. The document also outlines the goals and functions of operating systems, as well as examples of popular OS like Windows, Linux, and Android.

Uploaded by

Sachin Pukale
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
37 views9 pages

Unit I INTRODUCTION TO OPERATING SYSTEM

An operating system (OS) is system software that acts as an intermediary between users and hardware, providing a simple interface while managing resources efficiently. Over time, various types of operating systems have evolved, including mainframe systems, multi-programmed batch systems, time-sharing systems, and real-time systems, each adding functionalities to improve user interaction and resource management. The document also outlines the goals and functions of operating systems, as well as examples of popular OS like Windows, Linux, and Android.

Uploaded by

Sachin Pukale
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

INTRODUCTION TO OPERATING SYSTEM

1.1 What is an O.S?


• Operating System is a system software which acts as an intermediary betwee user and
hardware.
• Operating System keeps the complicated details of the hardware hidden from the user
and provides user with easy and simple interface.
• It performs functions which involves allocation of resources efficiently between user
program, file system, Input Output device
• An operating system is one program that is running at all times in the computer.

1 Evolution of operating systems:


Different operating systems have evolved over time. Right from when operating systems
came into existence, different functionalities have been gradually added to operating systems.

➢ Mainframe Systems

• In the 1960s, the common form of computing facility was a mainframe computer
system.
• The mainframe computer system would be normally housed in a computer center
with a controlled environment which was usually an air conditioned area with a clean
room like facility.
• The users used to bring in a deck of punched cards which encoded the list of program
instructions.
• The mode of operation was as follows:
a. User would prepare a program as a deck of punched cards.
b. The header cards in the deck were the “job control” cards which would indicate which
compiler was to be used (like Fortran / Cobol compilers).
c. The deck of cards would be handed in to an operator who would collect such jobs from
various users.
d. The operators would invariably group the submitted jobs as Fortran jobs, Cobol jobs etc.
In addition, these were classified as “long jobs” that required considerable processing
time or short jobs which required a short and limited computational time. Each set of jobs
was considered as a batch and the processing would be done for a batch.
e. Users had no direct control
f. Also, at any one time only one program would engage the processor. This meant that if
there was any input or output in between processing then the processor would wait idling
till such time that the I/O is completed.
g. Clearly, this led to poor utilization of the processor.

➢ Multi-programmed batch systems


When disk technology was introduced, jobs could be put into a disk and could be read from
the disk rather than being read from the input card reader. Hence, it was possible to place
multiple jobs into the disk at the same. Thus, the multi-programmed batch systems came into
existence.

In a multi programmed batch system, multiple programs can be brought into the main memory
from the disk simultaneously at a particular time as shown in Figure.
1. One of the jobs in the main memory will be given the CPU.
2. The operating system now has additional functionalities of selecting jobs
from the disk to be brought into the main memory and selecting one of the
jobs in the main memory to be given to the CPU.
3. If there are 10 jobs in the disk and there is space in the main memory for
only 3, 3 out of the 10 jobs must be chosen to be brought into the main
memory. This is done by the job scheduler.
4. As only one job can be given to the CPU at a particular time, choosing
one of the different jobs present in the main memory to be given to the
CPU is done by the CPU scheduler.
5. When the 3 jobs are placed in the main memory, decision has to be made
as to where to place the jobs in the main memory.
6. Hence memory management was added as a functionality of the operating
system.
7. I/O devices also have to be allocated to processes. Hence I/O management
was included as functionality to the operating system.

In these systems, multiple programs can be kept in the memory. But a one-
to-one interaction between the user and computer was missing. Hence, a new system
was developed called the time-sharing systems. These time-sharing systems are
basically an extension of multiprogramming systems and are called multitasking
systems.

➢ Time Sharing / Multitasking Systems

The operating systems like Windows, MacOS and Linux that we see today are all time
sharing systems. A time sharing system is a logical extension of multiprogramming systems.
1. In these systems, the CPU is multiplexed among several jobs that are kept in memory
and on disk and hence job scheduling and CPU scheduling are included in the functions
of the operating system.
2. Here, a direct communication between the user and the system is provided. It is possible
for many users to use the system at a particular time.
3. Since the speed of users is much less than the speed of the CPU, CPU time can be shared
among the different users’ programs.
4. Since many jobs can be brought into the main memory, memory management is needed.
5. It may be necessary for some process to wait for I/O to happen (say read an input from
the user). Then this process may be moved/swapped from the main memory to the disk.
6. Another partially executed process which was moved to the disk earlier can be brought
into the main memory. Thus partially executed jobs can be moved in and out of memory
to the disk. Hence the concept of virtual memory is introduced. Virtual memory also
allows programs to be larger than the physical memory.
7. Since many users are using the computer, each user will have his/her own files and these
files have to be placed in the secondary storage device / disks. When there are many
files, the files have to be arranged in a logical manner. Hence, file systems were included
as a part of operating systems.
8. It is possible to have many processes of a particular user or different users to run
concurrently. At a particular time, only one process can use the CPU. When one process
is waiting for I/O, another process may use the CPU and vice versa. This may not be felt
by the users using the computer. Thus concurrent execution of processes is possible.
9. When many processes execute concurrently, they may have to communicate among
themselves or may have to share common variables or data structures. Hence job
synchronization and communication are needed.
10. Similarly, when processes execute concurrently and share resources of the computer, it is
possible that deadlocks may occur. Hence the operating system must have the capability
to handle deadlocks.

➢ Desktop Systems
Initially, the CPUs in PCs lacked the features needed to protect an operating system
from user programs. PC operating systems therefore were neither multiuser nor multitasking.
1. The goals of these operating systems have changed with time; instead of
maximizing CPU and peripheral utilization, the systems opt for maximizing
user convenience and responsiveness.
2. Initially, file protection was not needed in a personal machine. But since
computers are connected to other networks these days, other computers and
other users can access the files on a PC and hence file protection again has
become a necessary feature of the operating system.
3. The lack of such protection has made it easy for malicious programs to
destroy data on systems such as MS-DOS and the Macintosh operating
system.
4. These programs may be self-replicating, and may spread rapidly via worm or
virus mechanisms and disrupt entire companies or even worldwide networks.
➢ Generation of Computers:
First Generation OS: ( 1945 - 1955 ): Vacuum Tubes and Plugboards

➢ First generation were also known as Vacuum Tube


➢ Single group of people were responsible for creating, building, programming,
operating, and maintenance of each machine

Second Generation OS: (1955 - 1965 ) Transistors and Batch Systems


➢ Transistors led to the development of the computer systems that could be manufactured
and sold to paying customers. These machines were known as mainframes and were
locked in air-conditioned computer rooms with staff to operate them.
➢ The Batch System was introduced to reduce the wasted time in the computer.
➢ A tray full of jobs was collected in the input room and read into the magnetic tape.
➢ After that, the tape was rewound and mounted on a tape drive. Then the batch operating
system was loaded in which read the first job from the tape and ran it.
➢ The output was written on the second tape. After the whole batch was done, the input and
output tapes were removed and the output tape was printed.

Third Generation OS: ( 1965 - 1980 ): Integrated Circuits and Multiprogramming


➢ Until the 1960’s, there were two types of computer systems i.e., the scientific and the
commercial computers.
➢ These were combined by IBM in the System/360.
➢ This used integrated circuits and provided a major price and performance advantage over
the second generation systems.
➢ The third generation operating systems also introduced multiprogramming. This meant
that the processor was not idle while a job was completing its I/O operation. Another job
was scheduled on the processor so that its time would not be wasted.

The Fourth Generation ( 1980 - Present ): Personal Computers


➢ Personal Computers were easy to create with the development of large-scale integrated
circuits.
➢ These were chips containing thousands of transistors on a square centimeter of silicon.
Because of these, microcomputers were much cheaper than minicomputers and that made
it possible for a single individual to own one of them.
➢ The advent of personal computers also led to the growth of networks. This created
network operating systems and distributed operating systems.
➢ The users were aware of a network while using a network operating system and could log
in to remote machines and copy files from one machine to another.
➢ Distributed Operating System
1. The Distributed Operating system is not installed on a single machine, it is
divided into parts, and these parts are loaded on different machines.
2. A part of the distributed Operating system is installed on each machine to make
their communication possible.
3. Distributed Operating systems are much more complex, large, and sophisticated
than Network operating systems because they also have to take care of varying
networking protocols.
Advantages of Distributed Operating System
1. The distributed operating system provides sharing of resources.
2. This type of system is fault-tolerant.
Disadvantages of Distributed Operating System
1. Protocol overhead can dominate computation cost.

➢ Real Time Operating System


In Real-Time Systems, each job carries a certain deadline within which the job is supposed to be
completed, otherwise, the huge loss will be there, or even if the result is produced, it will be
completely useless.

The Application of a Real-Time system exists in the case of military applications, if you want to
drop a missile, then the missile is supposed to be dropped with a certain precision.
Advantages of Real-time operating system:
1. Easy to layout, develop and execute real-time applications under the real-time operating
system.
2. In a Real-time operating system, the maximum utilization of devices and systems.
Disadvantages of Real-time operating system:
3. Real-time operating systems are very costly to develop.
4. Real-time operating systems are very complex and can consume critical CPU cycles.

➢ Clustered Systems
1. The clustered systems are a combination of hardware clusters and software
clusters.
2. The hardware clusters help in sharing of high performance disks between the
systems. The software clusters makes all the systems work together.
3. Clustered systems are similar to parallel systems as they both have multiple
CPUs. However a major difference is that clustered systems are created by two or
more individual computer systems merged together.
4. Basically, they have independent computer systems with a common storage and
the systems work together.

Advantages:
1. High Availability
2. Cost Efficiency
3. Additional Scalability
4. Fault Tolerance
Disadvantages
1. Required Resources
2. Maintenance
➢ Parallel systems:
1. Parallel Systems are designed to speed up the execution of programs by dividing
the programs into multiple fragments and processing these fragments at the same
time.
Advantages of Parallel Systems:
1. High Performance
2. Cost Effective.

Disadvantages of Parallel Systems:


1. Limited Scalability
2. Complexity
3. Synchronization Overhead

S. Parallel System Distributed System


No

Parallel systems are the systems that can


process the data simultaneously, and In these systems, applications are running on multiple
increase the computational speed of a computers linked by communication lines.
1. computer system.

Parallel systems work with the simultaneous The distributed system consists of a number of
use of multiple computer resources which computers that are connected and managed so that they
can include a single computer with multiple share the job processing load among various
2. processors. computers distributed over the network.

Tasks are performed with a more speedy


Tasks are performed with a less speedy process.
3. process.

In Distributed Systems, each processor has its own


These systems are multiprocessor systems.
4. memory.

Distributed systems are also known as loosely coupled


It is also known as a tightly coupled system.
5. systems.

These systems communicate with one another through


These systems have close communication
various communication lines, such as high-speed buses
with more than one processor.
6. or telephone lines.

These systems share a memory, clock, and These systems do not share memory or clock in
7. peripheral devices contrast to parallel systems.
Goals of Operating System
There are goals of the operating system:
1. Convenience: An Operating System's primary and first goal is to provide a
friendly and convenient environment to the user.
2. Efficiency: An operating system should utilize all the resources efficiently.
3. Portability and Reliability: The operating system can work/operate on different
machines with different processors and memory configurations.
4. Hardware Abstraction: The operating system can conceal or can be said to
control all functions and resources of the computer.
5. Security: An operating system provides the safety and security of data between
the user and the hardware.

Functions of the Operating System:

Examples of Operating Systems


1. Microsoft Windows.
2. GNU/Linux
3. UNIX
4. Fedora
5. Ubuntu.
6. MS-DOS
7. Android
8. BlackBerry OS

You might also like