OPERATING SYSTEMS LAB
(Effective from the academic year 2023-2024)
SEMESTER – III
Subject Code 22ADL37 CIE Marks 50
Number of Lecture Hours/Week 02 SEE Marks 50
Total Number of Lecture Hours 32 Exam Hours 3
CREDITS – 01
Course Learning objectives: This course will enable students to:
● To learn the fundamentals of process scheduling algorithms.
● To learn the mechanisms of OS to handle processes and threads and their
communication.
● To ensure the consistency and integrity of data by synchronizing read and write
operations on shared resources.
● To prevent, detect, and handle deadlock situations effectively to ensure the reliability
and availability of a system.
● To apply various strategies for optimizing the access to disk storage devices.
● To apply various strategies for efficient memory utilization and page replacement in
virtual memory systems
1. Write a C program to Simulate the following CPU scheduling algorithms
a) FCFS b) SJF c) Round Robin d) Priority
2. Write a C program to Simulate IPC techniques
a) Pipes b) Message Queues c) Shared Memory
3. Write a C Program to Simulate Classical Problems of Synchronization
a) Readers-Writers b) Producers-Consumers c) Dining Philosophers
4. Write a C Program to simulate Bankers Algorithm for Dead Lock Avoidance
5. Write a C Programs to Simulate all page replacement algorithms
a) FIFO b) LRU c) Optimal Etc...
6. Write a C program to Simulate Disk Scheduling Algorithms
a) FCFS b) SSTF
7. Build a simple client-server program to transfer files from client to server.
8. Build a multithreaded server to transfer files from server to client. Each thread will
read one file and send it back.
Course Outcomes: After studying this course, students will be able to:
CO1: Compare the performance of various CPU Scheduling Algorithms
CO2: Implement Deadlock avoidance and Detection Algorithms
CO3: Implement Semaphores
CO4: Create processes and implement IPC
CO5: Analyze the performance of the various Page Replacement Algorithms