Operating System
0%
Course Title: Operating System
Course No: ENCT 254
Nature of the Course: Theory + Lab
Semester: 4
Full Marks: 40 + 60 + 25
Pass Marks: 16 + 24 + 10
Credit Hours: 3
Course Description
Course Objectives
Course Contents
1. Introduction
6 hrs
2.2. Scheduling algorithms
- 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
4.1. I/O management
- 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
4.2. Memory Management
- Memory address, swapping and managing free memory space
- Virtual memory management, paging, segmentation
- Page replacement algorithms (FIFO, LRU, LFU), page fault and hit ratio
- Allocation of frames
- Thrashing
5. File Systems
3 hrs
Laboratory Works
- 1.Basic Unix commands
- 2.Shell Programming
- 3.Implementation of the ls and grep commands
- 4.Programs using the I/O system calls of the UNIX operating system
- 5.Implementation of scheduling algorithms and the producer-consumer problem using semaphores
- 6.Implementation of some memory management schemes such as paging and segmentation
- 7.Term Project
Reference Books
- 1.Tanenbaum, A.S., Bos, H. (2024). Modern Operating Systems. 3rd Edition. PHI.
- 2.Stalling, W. (2008). Operating Systems. 6th Edition. Pearson Education.
- 3.Chaturvedi, A., Rai, B.L. (2017). UNIX and Shell Programming. University Science Press.