Introduction: Computer System Organization, Architecture, Operation, Process Management – Memory Management – Storage Management – Operating System – Process concept – Process scheduling – Operations on processes – Cooperating processes – Inter process communication. Threads: Multi-threading Models – Threading issues. Lab Practice: Basic UNIX Commands and system calls of UNIX operating system: fork, exec, getpid, exit, wait, close, stat, opendir, readdir, open, read, write Simple Shell program - Conditional Statements - Testing and Loops Develop Application using Inter Process communication (using shared memory, pipes or message queues)
CPU Scheduling: Scheduling criteria – Scheduling algorithms – Multiple-processor scheduling – Real time scheduling – Algorithm Evaluation. Process Synchronization: The critical-section problem – Synchronization hardware – Semaphores – Classical problems of synchronization. Deadlock: System model – Deadlock characterization – Methods for handling deadlocks – Deadlock prevention – Deadlock avoidance – Deadlock detection – Recovery from deadlock. Lab Practice: Print Gantt chart for FCFS, SJF, Priority & Round Robin for a set of process compute and print the average waiting time and average turnaround time for a given set of processes Implement Producer – Consumer problem using semaphores Simulate an Algorithm for Dead Lock Detection
Memory Management: Background – Swapping – Contiguous memory allocation – Paging – Segmentation – Segmentation with paging. Virtual Memory: Background – Demand paging – Process creation – Page replacement – Allocation of frames – Thrashing Lab Practice: Implement memory management schemes
File concept: Access methods – Directory structure – Files System Mounting – File Sharing – Protection. File System Implementation: Directory implementation – Allocation methods – Free-space management. Lab Practice: Implement any one file allocation technique (Linked, Indexed or Contiguous)
I/O Systems: I/O Hardware – Application I/O interface – Kernel I/O subsystem – Streams – performance. Mass-Storage Structure: Disk scheduling – Disk management – Swap-space management – RAID – disk attachment – stable storage – teritiary storage. Case study: I/O in Linux. Lab Practice: Given an array of disk track numbers and initial head position using FCFS, C- SCAN, SSTF find the total number of seek operations done to access all the requested tracks
Reference Book:
1 Gary Nutt, “Operating Systems”, Third Edition, Pearson Education, 2004. 2 Harvey M. Deitel, “Operating Systems”, Third Edition, Pearson Education, 2004. 3 Abraham Silberschatz, Peter Baer Galvin and Greg Gagne, “Operating System Concepts”, 9th Edition, John Wiley and Sons Inc., 2012. 4 William Stallings, “Operating Systems – Internals and Design Principles”, 7th Edition, Prentice Hall, 2011.
Text Book:
1 Silberschatz, Galvin, and Gagne, “Operating System Concepts”, Ninth Edition, Wiley India Pvt Ltd, 2009. 2 Andrew S. Tanenbaum, “Modern Operating Systems”, Fourth Edition, Pearson Education, 2010.