OS LAB Syllabus
OS LAB Syllabus
22MCA0309 0 1 2 2
Pre-Requisites C, Java Semester III
Course Objectives:
Student will be able to
Implement Operating System concepts in Programming Languages
Course Outcomes (CO): Student will be able to
1. Execute Basics of Linux Commands
2. Simulate OS Concepts
List of programs to be implemented:
1. Practicing of Basic UNIX Commands.
2. Write programs using the following UNIX operating system calls Fork, exec, getpid, exit, wait, close, stat, opendir
and readdir
3. Simulate UNIX commands like cp, ls, grep, etc.,
4. Simulate the following CPU scheduling algorithms: a) Round Robin b) SJF c) FCFS d) Priority
5. Simulate all file allocation strategies: a) Sequential b) Indexed c) Linked
6. Simulate MVT and MFT
7. Simulate all File Organization Techniques a) Single level directory b) Two level c) Hierarchical d) DAG
8. Simulate Bankers Algorithm for Deadlock Avoidance
9. Simulate Bankers Algorithm for Deadlock Prevention
10. Simulate all page replacement algorithms a) FIFO b) LRU c) LFU Etc. …
11. Simulate Paging Technique of memory management
12. Control the number of ports opened by the operating system with a) Semaphore b) monitors
13. Simulate how parent and child processes use shared memory and address space
14. Simulate sleeping barber problem
15. Simulate dining philosopher’s problem
16. Simulate producer and consumer problem using threads (use java)
17. Simulate little’s formula to predict next burst time of a process for SJF scheduling algorithm.
18. Develop a code to detect a cycle in wait-for graph
REFERENCES :
1. "Operating Systems Concepts with Java" , Abraham Silberschatz , Wiley Plus Set, 2006
2. "Practical System Programming with C - Pragmatic Example Applications in Linux and Unix-Based Operating
Systems", Sri Manikanta Palakollu, Apress publishers, 2020
3. "Introduction to Operating System Design and Implementation - The OSP 2 Approach", Michael Kifer, Scott Smolka,
Springer London, 2007
4. "Principles of Modern Operating Systems", Jose M Garrido, Richard Schlesinger, Kenneth Hoganson, Jones &
Bartlett Learning, 2011
5. "UNIX The Textbook", Syed Mansoor Sarwar, Robert M. Koretsky , CRC Press, Third Edition, 2016
6. "Beginning Linux Programming", Neil Matthew, Richard Stones , Wiley, 2008
7. "Linux System Programming Techniques - Become a Proficient Linux System Programmer Using Expert Recipes and
Techniques", Jack-Benny Persson, Packt, 2021
WEB REFERENCES :
1. https://www.sanfoundry.com/
2. https://www.geeksforgeeks.org/
3. https://www.javatpoint.com/
4. https://www.javatpoint.com/
5. https://www.cse.iitb.ac.in/~mythili/os/