CS010 607: Operating Systems Lab
Objectives • To provide a practical exposure of all algorithms and behaviour of processes in the system with respect to all its timings. • This lab also explains the allocation of process in the memory with some memory management techniques.
(Implement the following on LINUX platform. Use C for high level language implementation)
- Basic UNIX commands
- Shell programming
- Command syntax
- Write simple functions with basic tests, loops, patterns
- Write programs using the following system calls of UNIX operating system: fork, exec, getpid, exit, wait, close, stat, opendir, readdir
- Write programs using the I/O system calls of UNIX operating system (open, read, write, etc)
- Write C programs to simulate UNIX commands like ls, grep, etc.
- Given the list of processes, their CPU burst times and arrival times, display/print the Gantt chart for FCFS and SJF. For each of the scheduling policies, compute and print the average waiting time and average turnaround time
- Given the list of processes, their CPU burst times and arrival times, display/print the Gantt chart for Priority and Round robin. For each of the scheduling policies, compute and print the average waiting time and average turnaround time
- Implement the Producer – Consumer problem using semaphores.
- Implement inter-process communication using shared memory.
- Implement some memory management schemes