IILM UNIVERSITY GREATER NOIDA
Course Name: Operating System
Course Code : UCS3002
Topic: Operating System Structures
Session : 2025-26
1
About the Educator
Instructor Name : Dr Swati Vashisht
Designation : Assistant Professor
Department of ML-DS
School of Computer Science and
Engineering
2
Outline of Lecture
1. Topic Name: Operating system structures
Objective:
Introduction to Operating systems structures, system
components and virtual machines
Content:
• System Components
• System Calls
• How Components Fit Together
• Virtual Machine
3
Operating system structures
• Process Management
• Main Memory Management
• File Management
• I/O System Management
• Secondary Management
• Networking
• Protection System
• Command-Interpreter System
4
System components
PROCESS MANAGEMENT
A process is a program in execution: (A program is passive, a process active.)
A process has resources (CPU time, files) and attributes that must be managed.
Management of processes includes:
· Process Scheduling (priority, time management, . . . )
· Creation/termination
· Block/Unblock (suspension/resumption )
· Synchronization
· Communication
· Deadlock handling
· Debugging
5
System components
MAIN MEMORY MANAGEMENT
· Allocation/de-allocation for processes, files, I/O.
· Maintenance of several processes at a time
· Keep track of who's using what memory
· Movement of process memory to/from secondary storage.
6
System components
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.
7
System components
I/O MANAGEMENT
· Buffer caching system
· Generic device driver code
· Drivers for each device - translate read/write requests into disk position commands.
SECONDARY STORAGE MANAGEMENT
· Disks, tapes, optical, ...
· Free space management ( paging/swapping )
· Storage allocation ( what data goes where on disk )
· Disk scheduling
8
System components
NETWORKING
· Communication system between distributed processors.
· Getting information about files/processes/etc. on a remote machine.
· Can use either a message passing or a shared memory model.
PROTECTION
· Of files, memory, CPU, etc.
· Means controlling of access
· Depends on the attributes of the file and user
9
System components
SYSTEM PROGRAMS
· Command Interpreters -- Program that accepts control statements (shell, GUI interface,
etc.)
· Compilers/linkers
· Communications (ftp, telnet, etc.)
10
System tailoring
Modifying the Operating System program for a particular machine. The goal is to include
all the necessary pieces, but not too many extra ones.
· Typically a System can support many possible devices, but any one installation has
only a few of these possibilities.
· Plug and play allows for detection of devices and automatic inclusion of the code
(drivers) necessary to drive these devices.
· A sysgen is usually a link of many OS routines/modules in order to produce an
executable containing the code to run the drivers.
11
System calls
● A system call is the main way a user program interacts with the operating
system.
12
System calls
HOW A SYSTEM CALL WORKS
· Obtain access to system space
· Do parameter validation
· System resource collection ( locks on
structures )
· Ask device/system for requested item
· Suspend waiting for device
· Interrupt makes this thread ready to run
· Wrap-up
· Return to user
There are 11 (or more) steps in making the system call
13 read (fd, buffer, nbytes)
System calls (Example of Windows API)
Consider the ReadFile() function in the
Win32 API—a function for reading from a file.
A description of the parameters passed to ReadFile()
HANDLE file—the file to be read
LPVOID buffer—a buffer where the data will be read into and written from
DWORD bytesToRead—the number of bytes to be read into the buffer
LPDWORD bytesRead—the number of bytes read during the last read
14 LPOVERLAPPED ovl—indicates if overlapped I/O is being used
System calls
15
System calls
16
Simple structure of operating system
Example of MS-DOS
17
Layered structure
Example of Windows 2000
18
Layered structure
Example of Unix
19
Virtual Machine
In a Virtual Machine - each process "seems" to execute on its own processor with its own
memory, devices, etc.
· The resources of the physical machine are shared. Virtual devices are sliced out of the
physical ones. Virtual disks are subsets of physical ones.
· Useful for running different OS simultaneously on the same machine.
· Protection is excellent, but no sharing possible.
· Virtual privileged instructions are trapped.
20
Virtual Machine
21
Virtual Machine
Example of MS-DOS on top of Windows XP.
22
Virtual Machine
The Java Virtual Machine allows Java code to be portable between various
hardware and OS platforms.
Example of JAVA virtual machine
23
24