0% found this document useful (0 votes)
30 views17 pages

Unit 1 Os Course File-1

The document outlines the syllabus for the Operating Systems course (22SCCCS8) at Sir Isaac Newton College of Arts & Science for the academic year 2024-2025, covering various units including the introduction to operating systems, memory management, process scheduling, device management, and file management. It also provides a brief history of operating system development and types of operating systems. References for further reading are included, highlighting key texts and resources in the field.

Uploaded by

dharunabc33
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)
30 views17 pages

Unit 1 Os Course File-1

The document outlines the syllabus for the Operating Systems course (22SCCCS8) at Sir Isaac Newton College of Arts & Science for the academic year 2024-2025, covering various units including the introduction to operating systems, memory management, process scheduling, device management, and file management. It also provides a brief history of operating system development and types of operating systems. References for further reading are included, highlighting key texts and resources in the field.

Uploaded by

dharunabc33
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

SIR ISSAC NEWTON COLLEGE OF ARTS & SCIENCE CENTRE-340

DEPARTMENT OF COMPUTER SCIENCE

NOTES

Subject Code : 22SCCCS8

Subject Name : OPERATING SYSTEM

Class & Branch : III-CS

Academic Year : 2024-2025

Semester : VI

Subject Incharge : I.BRINDHA

OPERATING SYSTEM-22SCCCS8 Page 1


SIR ISSAC NEWTON COLLEGE OF ARTS & SCIENCE CENTRE-340

UNIT - I:

Introduction - What Is an Operating System-Operating System Software -A


Brief History of Machine Hardware -Types of Operating Systems - Brief History
of Operating System Development-Object-Oriented Design

UNIT - II:

Early Systems: Single-User Contiguous Scheme -Fixed Partitions-


Dynamic PartitionsBest-Fit versus First-Fit Allocation -Deallocation - Relocatable
Dynamic Partitions. Virtual Memory: Paged Memory Allocation-Demand Paging-
Page Replacement Policies and Concepts -Segmented Memory Allocation-
Segmented/Demand Paged Memory Allocation - Virtual Memory-Cache Memory

UNIT - III:

Overview-About Multi-Core Technologies-Job Scheduling Versus Process


Scheduling Process Scheduler-Process Scheduling Policies-Process Scheduling
Algorithms –A Word About Interrupts-Deadlock-Seven Cases of Deadlock -
Conditions for Deadlock- Modeling Deadlock-Strategies for Handling Deadlocks
–Starvation- Concurrent Processes: What Is Parallel Processing-Evolution of
Multiprocessors- Introduction to Multi-Core Processors Typical Multiprocessing
Configurations--Process Synchronization Software.
UNIT - IV:

Types of Devices-Sequential Access Storage Media-Direct Access Storage


Devices Magnetic Disk Drive Access Times- Components of the I/O Subsystem-
Communication among Devices-Management of I/O Requests

OPERATING SYSTEM-22SCCCS8 Page 2


SIR ISSAC NEWTON COLLEGE OF ARTS & SCIENCE CENTRE-340

UNIT - V:

The File Manager -Interacting with the File Manager -File Organization –
Physical Storage Allocation -Access Methods-Levels in a File Management
System – Access Control Verification Module

UNIT - VI

CURRENT CONTOURS (for Continuous Internal Assessment Only):


Contemporary Developments Related to the Course during the Semester
Concerned

REFERENCES:

1. Ann McIver Mc Hoes, Ida M. Flynn, "Understanding Operating Systems", Course


Technology, Cengage Learning, 2011.

2. Greg Tomsho,"Guide to Operating Systems", Cengage Learning, 2020. 36

3. Cesar Herrera, Darrell Hajek, Flor Narciso, "Principles of Operating Systems",


Amazon Digital Services LLC - KDP Print US, 2020.

4. Cesar Herrera, Darrell Hajek,"Principles of Operating Systems", Independently


Published, 2019.

5. Remzi H. Arpaci-Dusseau, Andrea C. Arpaci-Dusseau,"Operating Systems: Three


Easy Pieces", Create Space Independent Publishing Platform, 2018.

6. Abraham Silberschatz, Peter B. Galvin, Greg Gagne, "Operating System


Concepts", Wiley Publisher, 2018.

7. https://www.guru99.com/os-tutorial.html

OPERATING SYSTEM-22SCCCS8 Page 3


SIR ISSAC NEWTON COLLEGE OF ARTS & SCIENCE CENTRE-340

UNIT - I:

OPERATING SYSTEM

What is an Operating System?


An operating System is an interface between computer user and computer
hardware. An operating system is a system software which performs all the basic
tasks like file management, memory management handling input, output and
controlling peripheral devices such as disk drives and printers. It controls who can
use the system and how. In Short, it is the boss.

Why use an operating system?

An operating system brings powerful benefits to computer software and


software development. Without an operating system, every application would
need to include its own UI, as well as the comprehensive code needed to handle
all low-level functionality of the underlying computer, such as disk storage,
network interfaces and so on. Considering the vast array of underlying hardware
available, this would vastly bloat the size of every application and make software
development impractical.

Instead, many common tasks, such as sending a network packet or


displaying text on a standard output device, such as a display, can be offloaded to
system software that serves as an intermediary between the applications and the
hardware. The system software provides a consistent and repeatable way for
applications to interact with the hardware without the applications needing to
know any details about the hardware.

As long as each application accesses the same resources and services in the
same way, that system software -- the operating system can service almost any

OPERATING SYSTEM-22SCCCS8 Page 4


SIR ISSAC NEWTON COLLEGE OF ARTS & SCIENCE CENTRE-340

number of applications. This vastly reduces the amount of time and coding
required to develop and debug an application, while ensuring that users can
control, configure and manage the system hardware through a common and well-
understood interface.

Operating System Software:

The fig1.1 shows in an abstract representation of an operating system and


demonstrates how its main components work together. There are four essential
manager of every operating system.

1. Memory Manger
2. Processor Manger
3. Device Manager
4. File Manager

A network was not always an integral part of operating systems. Now most
operating systems routinely incorporate a Network Manager.

Operating system software

OPERATING SYSTEM-22SCCCS8 Page 5


SIR ISSAC NEWTON COLLEGE OF ARTS & SCIENCE CENTRE-340

The tasks performed by the subsystem manager are

1. Monitor its resources continuously

2. Enforce the policies that determine who gets what, when and how
much

3. Allocate the resources when appropriate

4. Deallocate the resources when appropriate

Memory Management

Responsibility of memory manager is to preserve space in main memory


occupied by the operating system itself. It can’t allow any part of it be accidentally
or intentionally altered.

Processor Management

A process is defined as an instance of execution of a program. The processor


manager decides how to allocate the central processing unit (CPU) for a process.
The process manager monitors the CPU whether it is executing a process or
waiting for a READ or WRITES command to finish execution. The processor
manger has two level of responsibilities

i) To Handle the job

ii) ii) To Handle the process with in the job

First part handled by the Job Scheduler. This is the high-level portion of the
processor manger. This accepts or rejects the incoming jobs. The Second part

OPERATING SYSTEM-22SCCCS8 Page 6


SIR ISSAC NEWTON COLLEGE OF ARTS & SCIENCE CENTRE-340

handled by the Process Scheduler which is the low level portion of the process
manger. It’s responsibility is deciding which process gets the CPU and for how
long.

Device management

The Device manager monitors every device, channel and control unit. Its job is to
choose the most effective way to allocate all of the devices, printers, ports, disk
drives based on a scheduling policy. The device manager allocates each resource
when starting its operation after completion of a process deallocate the device and
makes it available to the next process or job.

File Management

File manger keeps track of every file in the system. By using access policies it
enforces restrictions on who has access to which files. Managing access controlis
a key part of file management. Finally, the file manager allocates the resources
and deallocates later.

Brief History of Machine Hardware:

The essential components of computer hardware are

• Memory

I/O Devices

Central Processing Unit (CPU)

Memory : (Random Access Memory, RAM) is where the data and instruction
must reside to be processed.

OPERATING SYSTEM-22SCCCS8 Page 7


SIR ISSAC NEWTON COLLEGE OF ARTS & SCIENCE CENTRE-340

I/O Devices :

Includes all the peripheral units in the system such as printer, disk drives,
CD/DVD drives, flash memory, keyboards and so on.

CPU:

It is the brain with circuitry. This controls the operations of the entire computer
system. 1970’s Computers were classified by the capacity and price.

1970’s Computers were classified by the capacity and price.

A mainframe was a large machine—in size and in internal memory capacity.

Example : The IBM 360 model 30 consist of CPU had 5 feet high and 6 feet wide,
had an internal memory of 64K (considered large at that time), and a price tag of
$200,000.

The minicomputer was developed to meet the needs of smaller institutions, those
with only a few dozen users. One of the early minicomputers was marketed

by Digital Equipment Corporation to satisfy the needs of large schools and small
colleges that began offering computer science courses in the early 1970s.
Minicomputers are smaller in size and memory capacity and cheaper than
mainframes.

OPERATING SYSTEM-22SCCCS8 Page 8


SIR ISSAC NEWTON COLLEGE OF ARTS & SCIENCE CENTRE-340

Hardware Architecture

The supercomputer was developed primarily for government


applications needing massive and fast number-crunching ability to carry out
military operations and weather forecasting. A Cray supercomputer is a
typical example with six to thousands of processors performing up to 2.4
trillion floating point operations per second (2.4 Teraflops).

The microcomputer was developed to offer inexpensive computation


capability to individual users. Early models featured a revolutionary amount

OPERATING SYSTEM-22SCCCS8 Page 9


SIR ISSAC NEWTON COLLEGE OF ARTS & SCIENCE CENTRE-340

of memory: 64K. Their physical size was smaller than the minicomputers.
Microcomputers grew to accommodate software with larger capacity and
greater speed.
Powerful microcomputers were developed for commercial,
educational, and government enterprises are called workstations. It has very
powerful CPUs, large amounts of main memory, and extremely high-
resolution graphic displays to meet their needs.
Servers are powerful computers that provide specialized services to
other computers on client/server networks.
Networking is an integral part of modern computer systems because it
can connect Workstations, servers, and peripheral devices into integrated
computing systems.
Networking capability has become a standard feature in many
computing devices: Personal organizers, Personal Digital Assistants (PDAs),
cell phones, and handheld Web browsers.

At one time, computers were classified by memory capacity; now they’re


distinguished by processor capacity.

Types of Operating System

Operating systems for computers fall into five categories distinguished by


response time and how data is entered into the system.

1. Batch
2. Interactive
3. Real-Time
4. Hybrid

OPERATING SYSTEM-22SCCCS8 Page 10


SIR ISSAC NEWTON COLLEGE OF ARTS & SCIENCE CENTRE-340

5. Embedded

Batch Operating System:

There is no interaction between user and the computer. The user submit
a job by assembling into a deck of cards and running the entire deck of
cards through a card reader as a group- a batch. The efficiency of the batch
system is measured in throughput(The number of jobs completed in a
given amount of time).

Interactive System :

Interactive operating system is one that allows these users to directly


interact with the operating system. This would allow user to interact
directly with the computer system via commands entered from a terminal.

Real-time System:

A Real-time operating system intended to serve real time applications.


The system is subjected to real time (ie) responses should be guaranteed
within a specified time constraints or system should meet the specified
deadline. There are two types of real time system depending on the
consequences of missing deadline.

Hard real-time system: If the predicted deadline is missed it causes


total system failure.

Soft-Real time system: If the predicted deadline is missed the system


suffers performance degradation.

Hybrid system: It is the combinations of batch and interactive operating

OPERATING SYSTEM-22SCCCS8 Page 11


SIR ISSAC NEWTON COLLEGE OF ARTS & SCIENCE CENTRE-340

system. They appear to be interactive because individual user can access the
system and get fast response but such system actually accepts and runs batch
program in the background when the interactive load is light.

Embedded System: Embedded systems are computers placed inside other


products to add features and capabilities.eg. House Hold appliances, digital
Music players.

Brief History of operating system development


1940’s

First generation computers based on vacuum tube


technology No Standard operating system software
A typical program included every instruction needed by the
computer to perform the task requested.
The machine was operated by the programmers from the main console.
To run a program the programmers reserve machine for the estimated
time. As a result the machine was poorly utilized.

1950’s

Second generation computers (1955-1965) were given much more


importance of the cost effectiveness of the system. Two
improvements were widely adopted.
Computer operators: Humans hired to facilitate machine operations
Job Scheduling: This is a productivity improvement scheme that group
together programs with similar requirements.
Job Control languages helped the operating system to co-ordinate and

OPERATING SYSTEM-22SCCCS8 Page 12


SIR ISSAC NEWTON COLLEGE OF ARTS & SCIENCE CENTRE-340

manage the system resources by identifying the users and their jobs and
specifying the resources required to execute each job.

Factors to improve the performance of the CPU:

The speed of I/O devices gradually increased.


To use more storage space records were grouped into blocks before
they were retrieved or stored.
To reduce the discrepancy in between I/O and the CPU an interfaced
called control unit was placed between them to act as buffer.
Time Interrupts were developed to allow job sharing.

During the second generation programs were still assigned to the processor
one at a time.

1960’s

Third generation computers designed towards better use of the


system resources. Faster CPU but their speed caused problems.
Multiprogramming concept was introduced to load many programs at one time
and sharing the attention of single CPU.
Program scheduling which was begun with second generation
systems, continued at this time.

OPERATING SYSTEM-22SCCCS8 Page 13


Multiprogramming concept was introduced to load many
programs at one time and sharing the attention of single
CPU.
Program scheduling which was begun with second
generation systems, continued at this time
Few advances made in Process management and
data management Total operating system was
customized to suit user needs.

1970’s

During the late 1970s, Multiprogramming schemes to


increase CPU use were limited by the physical capacity of
the main memory, which was a limited resource and very
expensive.
A solution to this physical limitation was the development
of virtual memory,
A system with virtual memory would divide the programs
into parts and keep them in secondary storage, bringing
each part into memory only as it was needed.
At this time, Database management software became a
popular tool because it organized data in an integrated
manner, minimized redundancy, and simplified updating
and access of data. Query systems were introduced to
retrieve specific pieces of the database

. Application programs are introduced to perform standard


operations

1980’s

OPERATING SYSTEM-22SCCCS8 Page 14


Development in the 1980s dramatically improved the
cost/performance ratio of computer components
• Programming functions were being carried out by the
system’s software
• firmware, used to indicate that a program is permanently
held in read-only memory (ROM)
• multiprocessing (having more than one processor) concept
allows to execute programs in parallel.
• The evolution of personal computers and high-speed
communications sparked the move to networked systems
and distributed processing, enabling users in remote
locations to share hardware and software resources.
1990s
• The overwhelming demand for Internet capability in the mid-
1990s sparked the proliferation of networking capability.
• The World Wide Web, Web accessibility and e-mail became
standard features of almost every operating system.
• Increased demand for tighter security to protect hardware and
software.
• The decade also introduced a proliferation of multimedia
applications demanding additional power, flexibility, and
device compatibility for most operating systems.
2000s
• The new century emphasized the need for operating systems to
offer improved flexibility, reliability, and speed.
• To meet the need for computers that could accommodate
multiple operating systems running at the same time and
sharing resources, the concept of virtual machines was

OPERATING SYSTEM-22SCCCS8 Page 15


developed and became commercially viable.
• Virtualization is the creation of partitions on a single server,
with each partition supporting a different operating system. 20
Processing speed has enjoyed a similar advancement
• Processing speed has enjoyed a similar advancement with the
development of multicore processors.

Object-Oriented Design
Object-Oriented design was the driving force behind this
new organization. Which is a programming philosophy whereby
programs consist of self-contained, reusable modules called
objects, each of which supports a specific function, but which are
categorized into classes of objects that share the same function.
By working on objects, programmers can modify and customize
pieces of an operating system without disrupting the integrity of
the remainder of the system.
The first operating systems were designed as a
comprehensive single unit,They stored all required elements of
the operating system in memory such as memory allocation,
process scheduling, device allocation, and file management.

This type of architecture made it cumbersome and time


consuming for programmers to add new components to the
operating system, or to modify existing ones.
Most recently, the part of the operating system that resides
in memory has
been limited to a few essential functions, such as process scheduling
and memory allocation, while all other functions, such as device
allocation, are provided by special modules, which are treated as

OPERATING SYSTEM-22SCCCS8 Page 16


regular applications been limited to a few essential functions, such as
process scheduling and memory allocation, while all other functions,
a) Early operating systems, loaded in their entirety into main memory.

(b) Object-oriented operating systems, load only


the critical elements into main memory and
call other objects as needed.

In addition, using a modular, object-oriented approach can can make


software development groups more productive than was possible with
procedural structured programming.

OPERATING SYSTEM-22SCCCS8 Page 17

You might also like