Syllabus
Unit I
Operating systems Services
Overview – hardware protection, services, system calls, system structure, virtual machines. Process and Processor management. Process concepts, process creation, process scheduling, operations on process, cooperating process, inter-process communication. Multi-threading models – threading issues, thread types. CPU scheduling – scheduling algorithms.
Unit II
Process and Memory Management
Process synchronization- critical section problem, synchronization hardware, semaphores, classical problems of synchronization, critical regions, monitors. Deadlocks – deadlock characterization, methods of handling deadlocks, deadlock prevention, avoidance, detection and recovery. Memory management – swapping, contiguous memory allocation, paging and segmentation, segmentation with paging, virtual memory, demand paging, page replacement, thrashing.
Unit III
File and Disk Management
File management – File systems, directory structure, directory implementation. Disk Management – storage structure, disk scheduling.
Case study: Implement OS functionalities on a simulated machine (For example: XOS or eXperimental Operating System)
Objectives and Outcomes
Course Objectives
- This course aims at introducing the structure and implementation of modern operating systems, virtual machines and their applications.
- It summarizes techniques for achieving process synchronization and managing resources like memory, CPU, and files and directories in an operation system.
- A study of common algorithms used for both pre-emptive and non-pre-emptive scheduling of tasks in operating systems (such a priority, performance comparison, and fair-share schemes) will be done.
- It gives a broad overview of memory hierarchy and the schemes used by the operating systems to manage storage requirements efficiently.
Course Outcomes
CO1: Understand the architecture and system calls of OS
CO2: Understand and apply the algorithms for resource management and scheduling.
CO3: Analyze and Apply semaphores and monitors for classical and real-world synchronization scenarios.
CO4: Engage in independent learning as a team and implement OS functionalities on a simulated machine.
CO-PO Mapping
PO/PSO |
PO1 |
PO2 |
PO3 |
PO4 |
PO5 |
PO6 |
PO7 |
PO8 |
PO9 |
PO10 |
PO11 |
PO12 |
PSO1 |
PSO2 |
CO |
CO1 |
2 |
1 |
1 |
|
2 |
|
|
|
|
|
|
|
3 |
2 |
CO2 |
2 |
2 |
3 |
1 |
3 |
|
|
|
|
|
|
|
3 |
2 |
CO3 |
2 |
3 |
3 |
2 |
|
|
|
|
|
|
|
|
3 |
2 |
CO4 |
2 |
2 |
1 |
2 |
3 |
|
|
|
2 |
|
|
|
3 |
2 |
Evaluation Pattern
Evaluation Pattern: 70:30
Assessment |
Internal |
External |
Midterm |
20 |
|
*Continuous Assessment (Theory) (CAT) |
10 |
|
Continuous Assessment (Lab) (CAL) |
40 |
|
End Semester |
|
30 (50 Marks; 2 hours exam) |
*CA – Can be Quizzes, Assignment, Case-study Reports.
**End Semester can be theory examination/ lab-based examination
Text Books / References
Textbook(s)
Silberschatz A, Gagne G, Galvin PB. “Operating system concepts”. Tenth Edition, John Wiley and Sons; 2018.
Reference(s)
Andrew S. Tanenbaum, Herbert Bos, “Modern Operating Systems”, Pearson Education India; Fourth edition 2016.
Stevens WR, Rago SA. “Advanced programming in the UNIX environment”. Second Edition, Addison-Wesley; 2013.