Syllabus
Unit I
Computer hardware review – Instruction execution cycle, Interrupts; Operating system concepts: Process abstraction, System calls for process management, Process execution mechanisms, Scheduling policies, Inter-process communication, Classic synchronization problems and their solutions, Deadlocks.
Unit II
Memory Management: physical memory organization, Address space abstraction, Address binding, Memory allocation strategies, fragmentation, swapping, Paging, Segmentation, Virtual memory, demand paging and its implementation, Page replacement algorithms
Unit III
Unix Internals: Architecture of Unix OS- Kernel Data structures, File subsystem and process subsystem – Process states and transitions – sleep and wakeup – buffer cache. File system – Internal representation of files – system calls for the file system.
Unit IV
File Management File concept, Access methods, Access Matrix, Implementation of Access Matrix, Access Control. File types, File operation, Directory structure, File System structure, Allocation methods (contiguous, linked, indexed), Free-space management.
Unit V
Distributed Operating Systems – Architecture of Distributed systems, Communication mechanisms, Real Time Operating Systems: Introduction to Real Time Operating Systems, Concepts of scheduling, Real Time Memory Management.
Objectives and Outcomes
Course Description
This is a graduate level course which provides a platform for students to dig deeper into modern operating system technology, implementation techniques and research issues. The course enables the students to specialize in Operating Systems by exposing the recent developments and research in the area. This course covers a broad range of topics which includes Unix architecture, design of modern operating systems, resource sharing and scheduling, software and hardware interaction, memory management, distributed and real time system behaviors etc.
Course Objectives
- Provide insights on the design principles of modern operating systems
- Understanding low level OS code and its interaction with hardware
- To gain knowledge on Distributed Operating System concepts
- To gain insights on the distributed resource management
- Create interest in students to explore more on the research aspects in the area
Course Outcomes
After completing this course, students will be able to:
|
COs
|
Description
|
|
CO1
|
Describe the architecture and process management system calls
|
|
CO2
|
Discuss memory management and I/O management services of OS
|
|
CO3
|
Illustrate the file and process subsystem of Linux Operating System
|
|
CO4
|
Apply the concepts of file management to implement different file access methods and directory structures in an operating system.
|
|
CO5
|
Interpret the challenges involved in designing distributed and real-time operating systems, emphasizing their practical applications and limitations.
|
CO-PO Mapping
|
PO/PSO
|
PO1
|
PO2
|
PO3
|
PO4
|
PO5
|
PO6
|
PO7
|
PO8
|
|
CO
|
|
CO1
|
2
|
1
|
–
|
–
|
–
|
–
|
–
|
–
|
|
CO2
|
2
|
2
|
|
1
|
–
|
–
|
–
|
–
|
|
CO3
|
2
|
1
|
|
–
|
–
|
–
|
–
|
2
|
|
CO4
|
2
|
1
|
1
|
1
|
–
|
–
|
–
|
–
|
|
CO5
|
2
|
2
|
|
–
|
–
|
–
|
–
|
|
Prerequisites
- Computer Architecture
- C Programming
- Data Structures