Operating Systems
Operating Systems
1. Silberschatz, P.B. Galvin, G. Gagne, Operating System Concepts, 9th edition, John Wiley Publications.
Additional Resources
1. Dhamdhere, D. M. (2006). Operating Systems: A Concept-based Approach. 2nd edition. Tata McGraw-Hill
Education.
2. Kernighan, B. W., & Rob Pike, R. (1984). The Unix programming environment (Vol. 270). Englewood
Cliffs, NJ: Prentice-Hall
3. Stallings, W. (2018). Operating Systems: Internals and Design Principles. 9th edition. Pearson Education.
4. Tanenbaum, A. S. (2007). Modern Operating Systems. 3rd edition. Pearson Education.
1. Write a program (using fork() and/or exec() commands) where parent and child execute:
a) same program, same code.
b) same program, different code.
c) before terminating, the parent waits for the child to finish its task.
2. Write a program to report behaviour of Linux kernel including kernel version, CPU type and
model. (CPU information)
3. Write a program to report behaviour of Linux kernel including information on 19 configured
memory, amount of free and used memory. (memory information)
4. Write a program to print file details including owner access permissions, file access time,
where file name is given as argument.
5. Write a program to copy files using system calls.
6. Write a program to implement FCFS scheduling algorithm.
7. Write a program to implement Round Robin scheduling algorithm.
8. Write a program to implement SJF scheduling algorithm.
9. Write a program to implement non-preemptive priority based scheduling algorithm.
10. Write a program to implement preemptive priority based scheduling algorithm.
11. Write a program to implement SRJF scheduling algorithm.
12. Write a program to calculate sum of n numbers using thread library.
13. Write a program to implement first-fit, best-fit and worst-fit allocation strategies.