Operating System (OS)
Course Title: Operating System (OS)
Course No: ENCT 331
Nature of the Course: Theory + Lab
Semester: 5
Full Marks: 60 + 40 + 25
Pass Marks: 24 + 16 + 8
Credit Hours: 3
Course Description
Course Objectives
Course Contents
- Process description
- Process states
- Process control
- First come first serve (FCFS)
- Shortest job first (SJF)
- Shortest remaining time (SRT)
- Round robin (RR)
- Highest response ratio next (HRNN)
- Completely fair scheduler (CFS) used in Linux
- Principles of I/O hardware and software
- I/O software layer
- Disk technologies: magnetic disk, SSD, NVMe storage
- RAID
- Concept of stable storage, cost per bit comparison
- Memory address, swapping, and managing free memory space
- Virtual memory management; Paging; Segmentation
- Page replacement algorithms (FIFO, LRU, LFU, optimal), page fault, and hit ratio
- Allocation of frames
- Thrashing
Laboratory Works
- 1.Basic Unix commands and shell programming
- 2.Implementation of the ls and grep commands
- 3.Programs using the I/O system calls of the Unix operating system
- 4.Implementation of scheduling algorithms (FCFS, round robin) and the producer-consumer problem using semaphores
- 5.Implementation of some memory management schemes, such as paging and segmentation
- 6.Project work
Reference Books
- 1.Tanenbaum, A. S., Bos, H. (2009). Modern operating systems. PHI Learning.
- 2.Stallings, W. (2012). Operating systems: Internals and design principles. Pearson Education.
- 3.Chaturvedi, A., Rai, B. L. (2011). Unix and shell programming. University Science Press.