Class Notes: Operating Systems Fundamentals
Lecture Series – September 2025
Instructor: Prof. R.K. Tripathi
Course: Computer Science 201 – Operating Systems
1. What is an Operating System?
An operating system (OS) is the system software that manages computer hardware, software
resources, and provides common services for computer programs. It acts as an intermediary
between users and the computer hardware.
1.1 Functions of OS
Process management
Memory management
File system management
Device management
Security and access control
Networking support
2. OS Classification
Batch OS – Jobs/processes are grouped and processed in batches. No direct user
interaction during execution.
Multi-Programmed OS – Multiple jobs reside in memory and CPU switches between them.
Time-Sharing OS – Multiple users interact with the system simultaneously via time slices.
Real-Time OS – Used in embedded systems, robotics, where timing is critical.
3. Process Management
A process is a program in execution. The OS schedules processes to optimize CPU utilization.
3.1 Process States
New
Ready
Running
Waiting
Terminated
3.2 Scheduling Algorithms
First Come First Served (FCFS)
Shortest Job First (SJF)
Priority Scheduling
Round Robin (RR)
Example: Round Robin Scheduling
Time quantum is set; each process gets CPU for a fixed amount of time before moving to the
next.
4. Memory Management
Memory is organized to store processes and data. OS uses:
Contiguous allocation: Each process has a single block.
Paging: Memory divided into fixed-size pages.
Segmentation: Memory divided by logical segments (code, data, stack).
Virtual Memory: Allows a process to use more RAM than physically available via disk
storage.
5. File System Management
Organizes, stores, and retrieves data efficiently.
Hierarchical directory structures
File access permissions (read, write, execute)
File attributes and metadata
6. Device Management
Manages input/output devices using device drivers, buffering, caching, and spooling.
Device Drivers: Software to communicate with hardware
Buffering: Temporarily stores data while transferring
Spooling: Manages data for slow devices (e.g., printers)
7. Security & Protection
Controls user access, prevents unauthorized use, manages system integrity.
Passwords, permissions
Encryption/decryption
Firewalls, antivirus
User authentication
8. Example: UNIX File Permissions
Read (r), Write (w), Execute (x)
Example: chmod 755 filename gives owner all permissions, others read and execute
9. OS Architectures
Monolithic: Single large process, all modules reside together (e.g., Linux)
Microkernel: Minimal core kernel, services run as separate processes (e.g., Minix)
Layered: Organized in layers (e.g., THE OS)
10. Case Study: Linux & Windows
Linux is open-source, uses monolithic architecture, multitasking, multiuser.
Windows uses hybrid kernel, multitasking, GUI-based.
11. Review Questions
1. Define operating system and list its main functions.
2. Explain the difference between multiprogramming and multitasking.
3. How does paging work in memory management?
4. Describe Round Robin scheduling with an example.
5. What are the key differences between Linux and Windows OS?
References
1. Silberschatz, A., Galvin, P.B., Gagne, G. Operating System Concepts. Wiley, 2020.
2. Stallings, W. Operating Systems: Internals and Design Principles. Pearson, 2018.
3. Tanenbaum, A.S., Bos, H. Modern Operating Systems. Prentice Hall, 2015.