Friday, September 10, 2010

CS1254 OPERATING SYSTEM LAB


ANNA UNIVERSITY CHENNAI: CHENNAI – 600 025
B.E DEGREE PROGRAMME COMPUTER SCIENCE AND ENGINEERING
(Offered in Colleges affiliated to Anna University)
CURRICULUM AND SYLLABUS – REGULATIONS – 2004 SEMESTER IV
CS1254 OPERATING SYSTEM LAB 0 0 3 100
(Implement the following on LINUX platform. Use C for high level language implementation)
1. Shell programming
- command syntax
- write simple functions
- basic tests
2. Shell programming
- loops
- patterns
- expansions
- substitutions

3. Write programs using the following system calls of UNIX operating system:
fork, exec, getpid, exit, wait, close, stat, opendir, readdir
4. Write programs using the I/O system calls of UNIX operating system (open, read, write, etc)
5. Write C programs to simulate UNIX commands like ls, grep, etc.
6. 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
7. 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
8. Implement the Producer – Consumer problem using semaphores.
9. Implement some memory management schemes – I
10. Implement some memory management schemes – II
Example for expt 9 & 10 :
Free space is maintained as a linked list of nodes with each node having the starting byte address and the ending byte address of a free block. Each memory request consists of the process-id and the amount of storage space required in bytes. Allocated memory space is again maintained as a linked list of nodes with each node having the process-id, starting byte address and the ending byte address of the allocated space.
When a process finishes (taken as input) the appropriate node from the allocated list should be deleted and this free disk space should be added to the free space list. [Care should be taken to merge contiguous free blocks into one single block. This results in deleting more than one node from the free space list and changing the start and end address in the appropriate node]. For allocation use first fit, worst fit and best fit.

0 comments:

Post a Comment