Professional Documents
Culture Documents
Unit 1 INTRODUCTION TO OS
Unit 1 INTRODUCTION TO OS
• In Batch operating system, access is given to more than one person; they
submit their respective jobs to the system for the execution.
• The system put all of the jobs in a queue on the basis of first come first
serve and then executes the jobs one by one. The users collect their
respective output when all the jobs get executed.
• The purpose of this operating system was mainly to transfer control from
one job to another as soon as the job was completed.
• It contained a small set of programs called the resident monitor that always
resided in one part of the main memory. The remaining part is used for
servicing jobs.
Advantage:
The use of a resident monitor improves computer efficiency as
it eliminates CPU time between two jobs.
Disadvantages:
1.Starvation
(There are five jobs J1, J2 and J3 present in the batch. If the
execution time of J1 is very high, then the other four jobs will
never be executed, or they will have to wait for a very long
time. Hence the other processes get starved.)
Advantages:
• Increased reliability: Due to the multiprocessing system, processing
tasks can be distributed among several processors. This increases
reliability as if one processor fails, the task can be given to another
processor for completion.
Disadvantages:
Multiprocessing operating system is more complex and sophisticated as it
takes care of multiple CPUs simultaneously.
Multitasking Operating System
The multitasking operating system is a logical extension of a
multiprogramming system that enables multiple programs
simultaneously. It allows a user to perform more than one
computer task at the same time.
Advantages :
This operating system is more suited to supporting multiple
users simultaneously.
The multitasking operating systems have well-defined
memory management.
Disadvantages:
The multiple processors are busier at the same time to complete
any task in a multitasking environment, so that the CPU
generates more heat.
Network Operating System
An Operating system, which includes software and associated
protocols to communicate with other computers via a network
conveniently and cost-effectively is called Network Operating
System.
Advantages:
In this type of operating system, network traffic reduces due
to the division between clients and the server.
This type of system is less expensive to set up and maintain.
Disadvantages :
In this type of operating system, the failure of any node in a
system affects the whole system.
Security and performance are important issues. So trained
network administrators are required for network
administration.
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.
Advantages:
• Easy to layout, develop and execute real-time applications
under the real-time operating system.
• In a Real-time operating system, the maximum utilization of
devices and systems.
Disadvantages:
• Real-time operating systems are very costly to develop.
• Real-time operating systems are very complex and can
consume critical CPU cycles.
Time Sharing Operating System
In the Time Sharing operating system, computer resources are
allocated in a time-dependent fashion to several programs
simultaneously. So the CPU is switched among multiple programs
given by different users on a scheduled basis.
Advantages:
• The time-sharing operating system provides effective utilization
and sharing of resources.
• This system reduces CPU idle and response time.
Disadvantages:
• Data transmission rates are very high in comparison to other
methods.
• Security and integrity of user programs loaded in memory and
data need to be maintained as many users access the system at
the same time.
Distributed Operating system
The Distributed Operating system is not installed on a single
machine, it is divided into parts and these parts are loaded on
different machines. A part of the distributed Operating system is
installed on each machine to make their communication
possible.
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:
• The distributed operating system provides sharing of
resources.
• This type of system is fault-tolerant.
Disadvantages:
Protocol overhead can dominate computation cost.
Buffering
The buffer is an area in the main memory used to store or
hold the data temporarily.
• The use of the buffer can reduce the amount of disk traffic,
thereby increasing overall system throughput and decreasing
response time.
• Use of the buffer requires an extra data copy when reading and
writing to and from user processes. When transmitting large
amounts of data, the extra copy slows down performance.
Spooling
Spooling is a process in which data is temporarily held to
be used and executed by a device, program or system.
• In spooling, the CPU is kept busy most of the time and only goes
to the idle state when the queue is exhausted. So, all the tasks are
added to the queue and the CPU will finish all those tasks and then
get into the idle state.
Resource Spooling requires less resource management Buffering requires more resource management
requirement as different resources manage the process for as the same resource manages the process of the
specific jobs. same divided job.
Internal Spooling overlaps the input and output of Buffering overlaps the input and output of one
implementation one job with the computation of another job. job with the computation of the same job.
Efficient Spooling is more efficient than buffering. Buffering is less efficient than spooling.
Processor Spooling can also process data at remote Buffering does not support remote processing.
sites. The spooler only has to notify when a
process gets completed at the remote site to
spool the next process to the remote side
device.
Size on memory It considers the disk as a huge spool or Buffer is a limited area in the main memory.
buffer.
OS Services
The user program requests various resources through the
operating system. The operating system gives several services to
utility programmers and users. Applications access these services
through application programming interfaces or system calls. The
different services are
Program execution
• To execute a program, several tasks need to be performed.
Both the instructions and data must be loaded into the main
memory. In addition, input-output devices and files should be
initialized and other resources must be prepared.
• Control Input/output devices
As there are numerous types of I/O devices within the computer system and
each I/O device calls for its own precise set of instructions for the operation.
The Operating System hides that info with the aid of presenting a uniform
interface. Thus, it is convenient for programmers to access such devices
easily.
• Program Creation
The Operating system offers the structures and tools, including editors and
debuggers to help the programmer create, modify and debugging programs.
File management
• Computers keep data and information on secondary storage devices like
magnetic tape, magnetic disk, optical disk, etc. Each storage media has
its capabilities like speed, capacity, data transfer rate and data access
methods.
• For file management, the operating system must know the types of
different files and the characteristics of different storage devices. It has to
offer the proportion and safety mechanism of documents additionally.
Communication
The operating system manages the exchange of data and programs
among different computers connected over a network. This
communication is accomplished using message passing and shared
memory.
System calls
• A system call is a method for a computer program to request a service
from the kernel of the operating system on which it is running. OR
• A system call is a request from computer software to an operating
system's kernel.
File Management
File management is a system call that is used to handle the files.
Some file management examples include creating files, delete files,
open, close, read, write, etc.
Device Management
Device management is a system call that is used to deal with devices.
Some examples of device management include read device, write
device, get device attributes, release device, etc.
Information Maintenance
Information maintenance is a system call that is used to
maintain information. There are some examples of information
maintenance, including getting system data, set time or date,
get time or date, set system data, etc.
Communication
Communication is a system call that is used for communication.
some examples of communication are create, delete
communication connections, send, receive messages, etc.
Examples of Windows and Unix system calls
Process Windows Unix
SIMPLE STRUCTURE
It is the most straightforward operating system structure, but it
lacks definition and is only appropriate for usage with tiny and
restricted systems.
Since the interfaces and degrees of functionality in this structure
are clearly defined, programs are able to access I/O routines,
which may result in unauthorized access to I/O procedures.
This organizational structure is used by the MS-DOS operating
system:
• There are four layers that make up the MS-DOS operating
system and each has its own set of features.
• These layers include ROM BIOS device drivers, MS-DOS device
drivers, application programs and system programs.
• The MS-DOS operating system benefits from layering because
each level can be defined independently and when necessary
can interact with one another.
• If the system is built in layers, it will be simpler to design,
manage and update. Because of this, simple structures can be
used to build constrained systems that are less complex.
• When a user program fails, the operating system as whole
crashes.
• Because MS-DOS systems have a low level of abstraction,
programs and I/O procedures are visible to end users, giving
them the potential for unwanted access.
Advantages of Simple Structure:
• Because of few interfaces and levels, it is simple to develop.
• Because of fewer layers between the hardware and the
applications, it offers superior performance.
1. Linux Kernel
Linux kernel was developed by Linus Torvalds. It offers the essential
functions required for an operating system such as data cancellation,
memory processing and interactions with computer hardware.
It is open-source software and many developers researched the source
code and produced a plethora of helpful plug-ins and operating systems to
meet their requirements.
2. Fedora
Fedora is another popular Linux-based operating system and it is
widely considered the best open-source operating system after
Ubuntu.
It is an RPM-based general-purpose operating system that is
supported by Red Hat and built by the Fedora Project community.
Its purpose is to develop and share cutting-edge open-source
technology for free. Fedora developers' updates are available to
all Linux distributions.
Fedora comes with a customizable GNOME-based desktop. Its
Fedora Spins feature allows you to customize and run several user
interfaces and desktop environments.
3.Chrome OS
Chrome OS is a partly open-source operating system with
various attractive features.
It's a part of the Chromium and Linux families, with features
including better security, compatibility for supported Android
and Chrome apps, Aura windows manager, Google cloud
print, integrated media player, virtual desktop access, and
cloud-based management.
The only issue with the operating system is that it only
supports Nexus devices or its hardware.
Advantages
1. Reliable and efficient
The open-source operating systems are most reliable and
efficient. Thousands of eyes monitor these because the source
code is public. As a result, if there are any bugs or errors, they
are fixed by the best developers worldwide.
2. Cost-efficient
Most of the open-source operating systems are free. And some
of them are far less expensive than commercially closed
products.
3. Flexibility
The great advantage is you may customize it as per your
requirement.
Disadvantages
1. Complicated
It is not as user-friendly as the ones that are closed. To use this
software, you must have a basic understanding of technology.
2.Security risk
Despite the defects having been detected, there is a risk of assaults
because the attackers have access to the source code.
3. No support
If you run across an issue, there is no customer support available to
assist you.