L T P S J C
24CSEN2011 OPERATING SYSTEMS
3 0 2 0 0 4
Pre-requisite 24CSEN2021 - Computer Organization and Architecture, 24CSEN2001 - Data Structures
Co-requisite 24CSEN2031 - Database Management Systems
Preferable Exposure NO
Course Description:
This course provides a comprehensive understanding of the key concepts and functionalities of operating systems. It covers key
topics including scheduling algorithms, process management. and process synchronization in detail. Additionally, the course
explores memory management techniques and file system structures to enhance students' knowledge of operating systems
operations.
Course Educational Objectives:
• To introduce basic concepts of the operating system, its functions and services.
• To elaborate on the concepts of process management and synchronization.
• To expose issues with deadlocks.
• To familiarize with memory management schemes
• To discuss mass storage structures and system protection.
MODULE 1 OVERVIEW OF OPERATING SYSTEMS 12 Hrs
Introduction: Basic organization of hardware components, Role of OS relative to hardware functionality, Operating-System
Operations, Generations of OS, Types of OS
Process Management, Memory Management, Storage Management, Kernel Data Structures, Computing Environments.
Operating System Structures: Types, Layered structure, System Components, Operating System services, Reentrant Kernels,
Monolithic and Microkernel Systems, Interrupt handling and System Calls, System Boot.
#Exemplar/Case Studies: Case Study Study of Debugging tools like GDB , Study the concepts of Class loading in Java. Study
and install VM VirtualBox to run other FOSS, Usage of tools
MODULE 2 PROCESS MANAGEMENT AND SCHEDULING 12 Hrs
Process Management: Process concepts, process scheduling, Operations on processes, inter- process communication
CPU Scheduling: Scheduling-criteria, scheduling algorithms, Thread scheduling, Multiple processor scheduling, algorithm
evaluation, Multithreaded programming, Multi-core Programming, Multi-threading Models, Thread Libraries.
#Exemplar/Case Studies: Process management in Linux /Windows/Android
MODULE 3 PROCESS SYNCHRONIZATION AND DEADLOCK 12 Hrs
Process Synchronization: Race condition, The Critical-Section Problem, Peterson’s Solution, Synchronisation Hardware, Mutex
Locks, Semaphores, Classic Problems of Synchronization, Monitors, Synchronization Examples.
Deadlocks: System model, Characterization, Methods for handling deadlocks, Deadlock
Prevention, Avoidance, Detection and Recovery from deadlock.
#Exemplar/Case Studies: Concurrency Mechanism: Linux/Windows/ Android
MODULE 4 MEMORY MANAGEMENT 12 Hrs
(c) - page 1 of 3
Memory Management Strategies: Background, Swapping, Contiguous Memory Allocation, Segmentation, Paging, Structure of
the Page Table
Virtual Memory Management: Demand Paging; Copy-on-Write, Page Replacement; Allocation of Frames; Thrashing,
Memory-Mapped Files, Allocating Kernel Memory.
File System: File Concept, Access Methods, Directory and Disk Structure, Protection. File-System Implementation: Structure
#Exemplar/Case Studies: Memory management and basic file system in Linux /Windows/Android, Implementation of file utilities
using the system call API in Linux /Windows/Android
MODULE 5 I/O SYSTEM, MASS STORAGE STRUCTURE AND VIRTUALIZATION 12 Hrs
I/O systems: Application interface, kernel I/O subsystem, transforming I/O to hardware operation.
Mass-storage structure: Disk management, disk scheduling, Swap space management
System Protection: Goals of protection, principles of protection, Domain of protection, Access matrix.
Virtualization: Introduction to Virtual Machines, Virtualization, introduction to Security-Problems
#Exemplar/Case Studies: Comparative Study of Operating Systems: Case of Windows, Linux, Mac, Android and iOS
List of Experiments
S.no Topic Type
Operating system Installation, Basic Linux commands and Programs on Multithread using
1 Experiment
Pthreads
Execute various UNIX system calls for i. Process management,ii. File management ii.
2 Experiment
Input/output Systems calls
3 Shell Script programming related to across all the units Experiment
Write a boot loader - to load a particular OS say TinyOS/ KolibriOS image - code to access
4 from BIOS to loading the OS - involves little assembly code may use QEMU/virtual machines Experiment
for emulation of hardware.
5 Write a C program to simulate OS management modules related algorithms Experiment
Open-source microkernel architecture with Portable Operating System Interface (POSIX) and
6 Experiment
verify/modify/add some feasible features.
Textbook(s):
1. Silberschatz, Galvin and Gagne, “Operating Systems Concepts”, 10th Edition, Wiley, 2019
2. William Stallings, “Operating Systems: Internals and Design Principles ”, 11 th Edition, Pearson Education, 2022
Reference(s):
1. Andrew S. Tannenbaum and Herbert Bos, Modern Operating Systems, 4th edition,
2. Avi Silberschatz, Peter Baer Galvin, Greg Gagne, Operating System Concepts, 9th, edition,
3. Allen B. Downey, Think OS, A Brief Introduction to Operating Systems,
4. ,https://www.greenteapress.com/thinkos/index.html
5. Robert Love, Linux Kernel Development, 3rd edition,
6. Thomas Anderson, Michael Dahlin, Operating Systems: Principles and Practice,
7. ,https://ospp.cs.washington.edu/index.htm
8. Randall E. Bryant, David R.O’ Hallaron,, Computer Systems: A Programmer's Perspective, 3rd edition,
9. Brian Kernighan, Dennis Ritchie, The C Programming Language, 2nd ,
Course Outcomes:
1. Use the appropriate concepts of operating system for resource utilization(L3)
2. Implement and analyze the performance of process scheduling algorithms.(L4)
(c) - page 2 of 3
3. Identify the mechanism to deal with deadlock and concurrency issues.(L4)
4. Experiment the performance of different algorithms used in management of memory, file and I/O and select the
appropriate. (L3)
5. Demonstrate different device and resource management techniques for memory utilization with security mechanisms(L4)
Course Articulation Matrix:
POs PSOs
CO 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 2 3 4
1 3 3 3 2 3 2
2 3 3 3 2 3 2
3 3 3 3 2 3 2
4 3 3 3 2 3 2
5 3 3 3 2 3 2
3 – High, 2 – Medium & 1 – Low Correlation
APPROVED IN MEETINGS HELD ON:
BOS : 03-02-2024 Academic Council Number: 27 Academic Council : 06-07-2023
SDG No(s). & Statement(s) :
4 & Quality Education : Ensure inclusive and equitable quality education and promote lifelong learning opportunities for
all.Ensure inclusive and equitable quality education and promote lifelong learning opportunities for all.
9 & Industry, Innovation and Infrastructure : Build resilient infrastructure, promote inclusive and sustainable industrialization and
foster innovation.
SDG Justification(s):
SDG 4: The modules and topics mentioned in this course are designed to ensure all-inclusive and thorough education with
equity to all persons and always promote learning opportunities. SDG 9: The modules and topics mentioned in this course are
designed to ensure the engineers build resilient control, system and application software which promote inclusiveness and
supportability.
(c) - page 3 of 3