0% found this document useful (0 votes)
19 views63 pages

OS Unit 1

Uploaded by

DVC Creation
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)
19 views63 pages

OS Unit 1

Uploaded by

DVC Creation
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/ 63

Acropolis Institute of Technology and Research,

Indore
RAJIV GANDHI PROUDYOGIKI VISHWAVIDYALAYA, BHOPAL
Operating System
New Scheme Based On AICTE Flexible Curricula

18 March 2024 Prashant Lakkadwala, AITR, Indore 2


Course Objectives
• Learn concepts of operating systems
• Learn the mechanisms of OS to handle processes
• Study of various mechanisms involved in memory management techniques
• Gaining knowledge of deadlocks prevention and detection techniques
• Analysing disk management functions and techniques

18 March 2024 Prashant Lakkadwala, AITR, Indore 3


Course Outcomes
Upon successful completion of this course the students will:
• Gain knowledge of history of operating systems
• Understand design issues associated with operating systems
• Gain knowledge of various process management concepts including scheduling,
synchronization, deadlocks
• Understand concepts of memory management including virtual memory
• Understand issues related to filesystem interface and implementation, disk management
• Be familiar with protection and security mechanisms
• Be familiar with various types of operating systems including Unix

18 March 2024 Prashant Lakkadwala, AITR, Indore 4


Unit I
Introduction to Operating Systems: Function, Evolution, Desirable
Characteristics and features of an O/S, Operating Systems Services:
Types of Services, Different ways of providing these Services – Utility
Programs, System Calls.

18 March 2024 Prashant Lakkadwala, AITR, Indore 5


Operating System

- A program that acts as an intermediary between a user of a computer and the


computer hardware.
- An operating System is a collection of system programs that together control the
operations of a computer system.
- Some examples of operating systems are UNIX, Mac, MS-DOS, MS-Windows.

Operating system goals:


• Execute user programs and make solving user problems easier.
• Make the computer system convenient to use.
• Use the computer hardware in an efficient manner.

18 March 2024 Prashant Lakkadwala, AITR, Indore 6


Operating System

• Resource allocator – manages and allocates resources.

• Control program – controls the execution of user programs and operations of I/O devices.

• Components of OS: OS has two parts. (1)Kernel. (2)Shell.

(1) Kernel is an active part of an OS i.e. it is the part of OS running at all times. It is a programs
which can interact with the hardware. Ex: Device driver, dll files, system files etc.
(2) Shell is called as the command interpreter. It is a set of programs used to interact with the
application programs. It is responsible for execution of instructions given to OS (called
commands).

18 March 2024 Prashant Lakkadwala, AITR, Indore 7


Computer System Structure

Computer system can be divided into four components:

• Hardware – provides basic computing resources (CPU, memory, I/O devices)


• Operating system -- Controls and coordinates use of hardware among various
applications and users.
• Application programs – Define the ways in which the system resources are used to solve
the computing problems of the users.(Word processors, compilers, web browsers,
database systems, video games).
• Users -- People, machines, other computers

18 March 2024 Prashant Lakkadwala, AITR, Indore 8


Four Components of a Computer System

18 March 2024 Prashant Lakkadwala, AITR, Indore 9


Operating systems can be explored from
two viewpoints

User View: The OS is designed for one user to monopolize its resources, to maximize the
work that the user is performing and for ease of use.

System View: An operating system is a control program that manages the execution of user
programs to prevent errors and improper use of the computer. It is concerned with the
operation and control of I/O devices.

18 March 2024 Prashant Lakkadwala, AITR, Indore 10


Functions of Operating System

• Process Management
• Main Memory Management
• File Management
• I/O System Management
• Secondary Management
• Networking
• Protection System
• Command-Interpreter System

18 March 2024 Prashant Lakkadwala, AITR, Indore 11


Process Management

• A process is a program in execution. A process needs certain resources, including CPU


time, memory, files, and I/O devices, to accomplish its task.

The operating system is responsible for the following activities in connection with process
management.
✦ Process creation and deletion.
✦ process suspension and resumption.
✦ Provision of mechanisms for:
• process synchronization
• process communication

18 March 2024 Prashant Lakkadwala, AITR, Indore 12


Main-Memory Management

• Memory is a large array of words or bytes, each with its own address. It is a repository of
quickly accessible data shared by the CPU and I/O devices.
• Main memory is a volatile storage device. It loses its contents in the case of system
failure.
The operating system is responsible for the following activities in connections with
memory management:
• Keep track of which parts of memory are currently being used and by whom.
• Decide which processes to load when memory space becomes available.
• Allocate and de-allocate memory space as needed.

18 March 2024 Prashant Lakkadwala, AITR, Indore 13


File Management

• A file is a collection of related information defined by its creator. Commonly, files


represent programs (both source and object forms) and data.

• The operating system is responsible for the following activities in connections with file
management:
✦ File creation and deletion.
✦ Directory creation and deletion.
✦ Support of primitives for manipulating files and directories.
✦ Mapping files onto secondary storage.
✦ File backup on stable (nonvolatile) storage media.

18 March 2024 Prashant Lakkadwala, AITR, Indore 14


I/O System Management

• The I/O system consists of:


✦ A buffer-caching system
✦ A general device-driver interface
✦ Drivers for specific hardware devices

18 March 2024 Prashant Lakkadwala, AITR, Indore 15


Secondary-Storage Management

Since main memory (primary storage) is volatile and too small to accommodate all data and
programs permanently, the computer system must provide secondary storage to back up
main memory.

Most modern computer systems use disks as the principle on-line storage medium, for both
programs and data.
The operating system is responsible for the following activities in connection with disk
management:
✦ Free space management
✦ Storage allocation
✦ Disk scheduling

18 March 2024 Prashant Lakkadwala, AITR, Indore 16


Networking (Distributed Systems)

• A distributed system is a collection of processors that do not share memory or a clock.


Each processor has its own local memory.
• The processors in the system are connected through a communication network.
• Communication takes place using a protocol.
• A distributed system provides user access to various system resources.
• Access to a shared resource allows:
• Increased data availability
• Enhanced reliability

18 March 2024 Prashant Lakkadwala, AITR, Indore 17


Protection System

• Protection refers to a mechanism for controlling access by programs, processes, or users


to both system and user resources.

• The protection mechanism must:


Distinguish between authorized and unauthorized usage.
Specify the controls to be imposed.
Provide a means of enforcement.

18 March 2024 Prashant Lakkadwala, AITR, Indore 18


Command-Interpreter System

• Many commands are given to the operating system by control statements which deal with:
✦ process creation and management
✦ I/O handling
✦ secondary-storage management
✦ main-memory management
✦ file-system access
✦ protection
✦ networking
• The program that reads and interprets control statements is called variously:
✦ command-line interpreter
✦ shell (in UNIX)
• Its function is to get and execute the next command statement.

18 March 2024 Prashant Lakkadwala, AITR, Indore 19


Evolution of Operating Systems
• The evolution of operating systems is directly dependent on the development of computer
systems and how users use them. Here is the past fifty years in the timeline.
• Early Evolution
• 1945: ENIAC, Moore School of Engineering, University of Pennsylvania.
• 1949: EDSAC and EDVAC
• 1949: BINAC - a successor to the ENIAC
• 1951: UNIVAC by Remington
• 1952: IBM 701
• 1956: The interrupt
• 1954-1957: FORTRAN was developed

18 March 2024 Prashant Lakkadwala, AITR, Indore 20


Operating Systems - Late 1950’s
• By the late 1950s Operating systems were well improved and started supporting following
usages:
• It was able to perform Single stream batch processing.
• It could use Common, standardized, input/output routines for device access.
• Program transition capabilities to reduce the overhead of starting a new job was added.
• Error recovery to clean up after a job terminated abnormally was added.
• Job control languages that allowed users to specify the job definition and resource
requirements were made possible.

18 March 2024 Prashant Lakkadwala, AITR, Indore 21


Operating Systems - In 1960s
• 1961: The dawn of minicomputers
• 1962: Compatible Time-Sharing System (CTSS) from MIT
• 1963: Burroughs Master Control Program (MCP) for the B5000 system
• 1964: IBM System/360
• 1960s: Disks became mainstream
• 1966: Minicomputers got cheaper, more powerful, and really useful.
• 1967-1968: Mouse was invented.
• 1964 and onward: Multics
• 1969: The UNIX Time-Sharing System from Bell Telephone Laboratories.

18 March 2024 Prashant Lakkadwala, AITR, Indore 22


Supported OS Features by 1970s
• Multiuser and Multi tasking was introduced.
• Dynamic address translation hardware and Virtual machines came into picture.
• Modular architectures came into existence.
• Personal, interactive systems came into existence.

18 March 2024 Prashant Lakkadwala, AITR, Indore 23


Accomplishments after 1970
• 1971: Intel announces the microprocessor
• 1972: IBM comes out with VM: the Virtual Machine Operating System
• 1973: UNIX 4th Edition is published
• 1973: Ethernet
• 1974 The Personal Computer Age begins
• 1974: Gates and Allen wrote BASIC for the Altair
• 1976: Apple II
• August 12, 1981: IBM introduces the IBM PC
• 1983 Microsoft begins work on MS-Windows
• 1984 Apple Macintosh comes out
• 1990 Microsoft Windows 3.0 comes out
• 1991 GNU/Linux
• 1992 The first Windows virus comes out
• 1993 Windows NT
• 2007: iOS
• 2008: Android OS
18 March 2024 Prashant Lakkadwala, AITR, Indore 24
Types of OS

18 March 2024 Prashant Lakkadwala, AITR, Indore 25


1.Mainframe Systems
• Reduce setup time by batching similar jobs Automatic job sequencing – automatically
transfers control from one job to another.
initial control in monitor
control transfers to job
when job completes control transfers pack to monitor

18 March 2024 Prashant Lakkadwala, AITR, Indore 26


2. Batch Processing Operating System

• This type of OS accepts more than one jobs, and these jobs are batched/ grouped together
according to their similar requirements. This is done by computer operator. Whenever the
computer becomes available, the batched jobs are sent for execution and gradually the
output is sent back to the user.
• It allowed only one program at a time.
• This OS is responsible for scheduling the jobs according to priority and the resource
required.

18 March 2024 Prashant Lakkadwala, AITR, Indore 27


3.Multiprogramming Operating System

• This type of OS is used to execute more than one jobs simultaneously by a single processor. it increases
CPU utilization by organizing jobs so that the CPU always has one job to execute.
• The concept of multiprogramming is described as follows:
All the jobs that enter the system are stored in the job pool( in disc). The operating system loads a set of
jobs from job pool into main memory and begins to execute.
During execution, the job may have to wait for some task, such as an I/O operation, to complete.
In a multiprogramming system, the operating system simply switches to another job and executes.
When that job needs to wait, the CPU is switched to another job, and so on.
When the first job finishes waiting and it gets the CPU back.
As long as at least one job needs to execute, the CPU is never idle.

Multiprogramming operating systems use the mechanism of job scheduling and CPU scheduling.

18 March 2024 Prashant Lakkadwala, AITR, Indore 28


4.Time-Sharing/multitasking Operating
Systems
• Time sharing (or multitasking) OS is a logical extension of multiprogramming. It
provides extra facilities such as:
Faster switching between multiple jobs to make processing faster.
Allows multiple users to share computer system simultaneously.
The users can interact with each job while it is running.
• These systems use a concept of virtual memory for effective utilization of memory space.
Hence, in this OS, no jobs are discarded. Each one is executed using virtual memory
concept. It uses CPU scheduling, memory management, disc management and security
management. Examples: CTSS, MULTICS, CAL, UNIX etc.

18 March 2024 Prashant Lakkadwala, AITR, Indore 29


5.Multiprocessor Operating Systems

• Multiprocessor operating systems are also known as parallel OS or tightly coupled OS.
Such operating systems have more than one processor in close communication that
sharing the computer bus, the clock and sometimes memory and peripheral devices. It
executes multiple jobs at same time and makes the processing faster.

18 March 2024 Prashant Lakkadwala, AITR, Indore 30


• Multiprocessor systems have three main advantages:

• Increased throughput: By increasing the number of processors, the system performs


more work in less time.
• Economy of scale: Multiprocessor systems can save more money than multiple single-
processor systems, because they can share peripherals, mass storage, and power supplies.
• Increased reliability: If one processor fails to done its task, then each of the remaining
processors must pick up and share of the work of the failed processor. The failure of one
processor will not halt the system, only slow it down.
The ability to continue providing service proportional to the level of surviving hardware is
called graceful degradation. Systems designed for graceful degradation are called fault
tolerant.

18 March 2024 Prashant Lakkadwala, AITR, Indore 31


• The multiprocessor operating systems are classified into two categories:
1.Symmetric multiprocessing system
2. Asymmetric multiprocessing system
• In symmetric multiprocessing system, each processor runs an identical copy of the
operating system, and these copies communicate with one another as needed.
• In asymmetric multiprocessing system, a processor is called master processor that
controls other processors called slave processor. Thus, it establishes master-slave
relationship. The master processor schedules the jobs and manages the memory for entire
system.

18 March 2024 Prashant Lakkadwala, AITR, Indore 32


6. Distributed Operating Systems

• In distributed system, the different machines are connected in a network and each
machine has its own processor and own local memory.
• In this system, the operating systems on all the machines work together to manage the
collective network resource.
• It can be classified into two categories:
1. Client-Server systems
2. Peer-to-Peer systems

18 March 2024 Prashant Lakkadwala, AITR, Indore 33


• Advantages of distributed systems.

Resources Sharing
load sharing
Reliability
Communications
Requires networking infrastructure.
Local area networks (LAN) or Wide area networks (WAN)

18 March 2024 Prashant Lakkadwala, AITR, Indore 34


7. Desktop Systems/Personal Computer
Systems
• The PC operating system is designed for maximizing user convenience and
responsiveness. This system is neither multi-user nor multitasking.
• These systems include PCs running Microsoft Windows and the Apple Macintosh.
The MS-DOS operating system from Microsoft has been superseded by multiple
flavors of Microsoft Windows and IBM has upgraded MS-DOS to the OS/2
multitasking system.
• The Apple Macintosh operating system has been ported to more advanced hardware,
and now includes new features such as virtual memory and multitasking.

18 March 2024 Prashant Lakkadwala, AITR, Indore 35


8. Real-Time Operating Systems (RTOS)

• A real-time operating system (RTOS) is a multitasking operating system intended for


applications with fixed deadlines (real-time computing). Such applications include some
small embedded systems, automobile engine controllers, industrial robots, spacecraft,
industrial control, and some large-scale computing systems.
• The real time operating system can be classified into two categories:
1. Hard real time system and
2. Soft real time system.

18 March 2024 Prashant Lakkadwala, AITR, Indore 36


Cont…
• A hard real-time system guarantees that critical tasks be completed on time. This goal
requires that all delays in the system be bounded, from the retrieval of stored data to the
time that it takes the operating system to finish any request made of it. Such time
constraints dictate the facilities that are available in hard real-time systems.
• A soft real-time system is a less restrictive type of real-time system. Here, a critical real-
time task gets priority over other tasks and retains that priority until it completes. Soft real
time system can be mixed with other types of systems. Due to less restriction, they are
risky to use for industrial control and robotics.

18 March 2024 Prashant Lakkadwala, AITR, Indore 37


System Protection
• Protection refers to a mechanism which controls the access of programs, processes, or
users to the resources defined by a computer system. We can take protection as a helper to
multi programming operating system, so that many users might safely share a common
logical name space such as directory or files.
• Need of Protection:
• To prevent the access of unauthorized users and
• To ensure that each active programs or processes in the system uses resources only as the
stated policy,
• To improve reliability by detecting latent errors.

18 March 2024 Prashant Lakkadwala, AITR, Indore 38


Operating System Services

• Following are the five services provided by operating systems to the convenience of the
users.
1. Program Execution
The purpose of computer systems is to allow the user to execute programs. So the operating
system provides an environment where the user can conveniently run programs. Running a
program involves the allocating and deallocating memory, CPU scheduling in case of
multiprocessing.
2. I/O Operations
Each program requires an input and produces output. This involves the use of I/O. So the
operating systems are providing I/O makes it convenient for the users to run programs.

18 March 2024 Prashant Lakkadwala, AITR, Indore 39


3. File System Manipulation
The output of a program may need to be written into new files or input taken from some
files. The operating system provides this service.
4. Communications
The processes need to communicate with each other to exchange information during
execution. It may be between processes running on the same computer or running on the
different computers. Communications can be occur in two ways: (i) shared memory or (ii)
message passing
5. Error Detection
An error is one part of the system may cause malfunctioning of the complete system. To
avoid such a situation operating system constantly monitors the system for detecting the
errors. This relieves the user of the worry of errors propagating to various part of the system
and causing malfunctioning.
18 March 2024 Prashant Lakkadwala, AITR, Indore 40
Following are the three services provided by operating systems for ensuring the efficient operation
of the system itself.
1. Resource allocation
• When multiple users are logged on the system or multiple jobs are running at the same time,
resources must be allocated to each of them. Many different types of resources are managed by the
operating system.
2. Accounting
• The operating systems keep track of which users use how many and which kinds of computer
resources. This record keeping may be used for accounting (so that users can be billed) or simply
for accumulating usage statistics.
3. Protection
• When several disjointed processes execute concurrently, it should not be possible for one process
to interfere with the others, or with the operating system itself. Protection involves ensuring that all
access to system resources is controlled. Security of the system from outsiders is also important.
Such security starts with each user having to authenticate him to the system, usually by means of a
password, to be allowed access to the resources.
18 March 2024 Prashant Lakkadwala, AITR, Indore 41
System Call

• System calls provide an interface between the process and the operating system.
• System calls allow user-level processes to request some services from the operating
system which process itself is not allowed to do.
• For example, for I/O a process involves a system call telling the operating system to read
or write particular area and this request is satisfied by the operating system.

18 March 2024 Prashant Lakkadwala, AITR, Indore 42


System Call Parameters
• Three general methods exist for passing parameters to the OS:
• Parameters can be passed in registers.
• When there are more parameters than registers, parameters can be stored in a block and
the block address can be passed as a parameter to a register.
• Parameters can also be pushed on or popped off the stack by the operating system.

18 March 2024 Prashant Lakkadwala, AITR, Indore 43


Types of System Calls
• There are 5 different categories of system calls:
• process control,
• file manipulation,
• device manipulation,
• information maintenance,
• communication.

18 March 2024 Prashant Lakkadwala, AITR, Indore 44


1. Process Control
• A running program needs to be able to stop execution either normally or abnormally.
When execution is stopped abnormally, often a dump of memory is taken and can be
examined with a debugger.
2. File Management
• Some common system calls are create, delete, read, write, reposition, or close. Also, there
is a need to determine the file attributes – getand set file attribute. Many times the OS
provides an API to make these system calls.

18 March 2024 Prashant Lakkadwala, AITR, Indore 45


3. Device Management
• Process usually require several resources to execute, if these resources are available,
they will be granted and control returned to the user process. These resources are also
thought of as devices. Some are physical, such as a video card, and others are abstract,
such as a file.
• User programs request the device, and when finished they release the device. Similar to
files, we can read, write, and reposition the device.
4. Information Management
• Some system calls exist purely for transferring information between the user program
and the operating system. An example of this is time, or date.
• The OS also keeps information about all its processes and provides system calls to report
this information.
18 March 2024 Prashant Lakkadwala, AITR, Indore 46
5. Communication
• There are two models of interprocess communication, the message-passing model and the
shared memory model.
• Message-passing uses a common mailbox to pass messages between processes.
• Shared memory use certain system calls to create and gain access to create and gain
access to regions of memory owned by other processes. The two processes exchange
information by reading and writing in the shared data.

18 March 2024 Prashant Lakkadwala, AITR, Indore 47


System Boot

Booting the system is done by loading the kernel into main memory, and starting its
execution.
• The CPU is given a reset event, and the instruction register is loaded with a predefined
memory location, where execution starts.
• The initial bootstrap program is found in the BIOS read-only memory.
• This program can run diagnostics, initialize all components of the system, loads and starts
the Operating System loader. (Called boot strapping)
• The loader program loads and starts the operating system.
• When the Operating system starts, it sets up needed data structures in memory, sets
several registers in the CPU, and then creates and starts the first user level program. From
this point, the operating system only runs in response to interrupts.

18 March 2024 Prashant Lakkadwala, AITR, Indore 48


Operating-System Structure
1.Simple Structure

18 March 2024 Prashant Lakkadwala, AITR, Indore 49


• In MS-DOS, applications may bypass the operating system.
• Operating systems such as MS-DOS and the original UNIX did not have well-defined
structures.
• There was no CPU Execution Mode (user and kernel), and so errors in applications could
cause the whole system to crash.

18 March 2024 Prashant Lakkadwala, AITR, Indore 50


2. Monolithic Approach
• Functionality of the OS is invoked with simple function calls within the kernel, which is
one large program.
• Device drivers are loaded into the running kernel and become part of the kernel.
• A monolithic kernel, such as Linux and other Unix systems.

18 March 2024 Prashant Lakkadwala, AITR, Indore 51


18 March 2024 Prashant Lakkadwala, AITR, Indore 52
3. Layered Approach
• This approach breaks up the operating system into different layers.
• This allows implementers to change the inner workings, and increases modularity.
• As long as the external interface of the routines don’t change, developers have more
freedom to change the inner workings of the routines.
• With the layered approach, the bottom layer is the hardware, while the highest layer is the
user interface.
• The main advantage is simplicity of construction and debugging.
• The main difficulty is defining the various layers.
• The main disadvantage is that the OS tends to be less efficient than other
implementations.

18 March 2024 Prashant Lakkadwala, AITR, Indore 53


• The Microsoft Windows NT Operating System. The lowest level is a monolithic kernel,
but many OS components are at a higher level, but still part of the OS.

18 March 2024 Prashant Lakkadwala, AITR, Indore 54


4. Microkernels
• This structures the operating system by removing all nonessential portions of the kernel
and implementing them as system and user level programs.
• Generally they provide minimal process and memory management, and a
communications facility.
• Communication between components of the OS is provided by message passing.
• The benefits of the microkernel are as follows:
• Extending the operating system becomes much easier.
• Any changes to the kernel tend to be fewer, since the kernel is smaller.
• The microkernel also provides more security and reliability.
• Main disadvantage is poor performance due to increased system overhead from message
passing.

18 March 2024 Prashant Lakkadwala, AITR, Indore 55


18 March 2024 Prashant Lakkadwala, AITR, Indore 56
Operating-System Design and
Implementation
• Design Goals
• At the highest level, system design is dominated by the choice of hardware and system
type.
• Beyond this level, the requirements can be divided into two groups: user goals, and
system goals.
• User goals include convenience, reliability, security, and speed.
• System goals include ease of design, implementation, maintenance, flexibility, and
efficiency.

18 March 2024 Prashant Lakkadwala, AITR, Indore 57


• Implementation
• At first, operating systems were written in assembly, but now C/C++ is the language
commonly used
• Small blocks of assembly code are still needed, especially related to some low level I/O
functions in device drivers, turning interrupts on and off and the Test and Set
Instruction for Synchronization Facilities.
• Using higher level languages allows the code to be written faster. It also makes the OS
much easier to port to different hardware platforms.

18 March 2024 Prashant Lakkadwala, AITR, Indore 58


Spooling

18 March 2024 Prashant Lakkadwala, AITR, Indore 59


• Spooling is a computing term which stands for Simultaneous Peripheral Operations
Online. One of the main uses of Spooling is to copy data from one device to another
where in one of the devices is considerable faster than the other device.
• Spooling is a process in which data is temporarily held to be used and executed by a
device, program, or system. Data is sent to and stored in memory or other volatile storage
until the program or computer requests it for execution.
• The biggest example of Spooling is printing. The documents which are to be printed are
stored in the SPOOL and then added to the queue for printing. During this time, many
processes can perform their operations and use the CPU without waiting while the printer
executes the printing process on the documents one-by-one.

18 March 2024 Prashant Lakkadwala, AITR, Indore 60


Buffering
• The buffer is an area in the main memory that is used to store or hold the data
temporarily that is being transmitted either between two devices or between a device
or an application. ... The act of storing data temporarily in the buffer is called buffering.

18 March 2024 Prashant Lakkadwala, AITR, Indore 61


Difference Between Spooling and Buffering in OS
BASIS FOR
SPOOLING BUFFERING
COMPARISON
Basic Spooling overlap Buffer overlaps the
the I/O of one job I/O of one job with
with the the computation of
computation of the same job.
another job.
Full form Simultaneous No full form.
peripheral
operation online
Efficient Spooling is more Buffering is less
efficient tha efficeint than
buffering. spooling.

Size Spooling considers Buffer is a limited


disk as a huge area in main
spool or buffer. memory.

18 March 2024 Prashant Lakkadwala, AITR, Indore 62


Conclusion
• Spooling and buffering both increases the efficiency of the computer but Spooling is
better than buffering as it handles the processing of two jobs at a time.

18 March 2024 Prashant Lakkadwala, AITR, Indore 63

You might also like