Operating System
0%
Course Title: Operating System
Course No: BDS202
Nature of the Course: Theory + Lab
Semester: 3
Full Marks: 45 + 30
Pass Marks: 18 + 12
Credit Hours: 3
Course Description
Course Objectives
Course Contents
2.9. Inter Process Communication
- Race Condition
- Mutual Exclusion
- Critical Regions
2.10. Implementing Mutual Exclusion
- Mutual Exclusion with Busy Waiting (Disabling Interrupts, Lock Variables, Strict Alteration, Peterson's Solution, Test and Set Lock)
- Producer Consumer Problem
- Semaphore
- Operation on Semaphore
- Solution to producer consumer problem using Semaphore
- Message Passing
- Classical IPC problem: Dining Philosopher Problem, Readers Writer, Sleeping Barber (Concept Only)
2.11. Process Scheduling
- Introduction
- Preemptive and non Preemptive Scheduling
- Scheduling Criteria
- Batch System Scheduling (First-Come First Served, Shortest Job First, Shortest Remaining Time Next)
- Interactive System Scheduling (Round-Robin Scheduling, Priority Scheduling)
- Multilevel Scheduling Concept
3.6. Handling Deadlocks
- Ostrich Algorithm
- Deadlock prevention
- Safe and Unsafe state
- Deadlock Avoidance: Banker's Algorithm
- Deadlock Detection
- Recovery from Deadlock (Through Preemption and Rollback)
4.6. Memory Management with Swapping
- Bitmaps
- Linked-list
4.7. Memory Allocation Strategies
- Fixed-partition strategies
- Variable-partition strategies
4.8. Virtual memory
- Paging
- Page Table
- Structure of Page Table
- Multilevel Page Table
- Logical to Physical Address Translation
- TLB
- Page Fault
- Handling Page Faults
- Page Replacement Algorithms: FIFO, LRU, Optimal, LFU, Second Chance and Replacement
- Concept of Locality of Reference
- Segmentation
- Segmentation with Paging (Multics)
5.1. File Overview
- File Naming
- File Structure
- File Types
- File Access
- File Attributes
- File Operations
5.4. Implementing Files
- Contiguous allocation
- Linked List Allocation
- Inode
- Directory Operations
- Path Names
- Directory Implementation
- Shared Files
5.5. Free Space Management
- Bitmaps
- Linked List
Laboratory Works
- 1.LINUX and MS-DOS Commands
- 2.Process creation, termination in any operating system
- 3.Thread Creation using POSIX Library
- 4.Implementation of process scheduling algorithms
- 5.Implementation of solution to critical section problem
- 6.Implementation of Banker algorithm
- 7.Implementation of memory allocation techniques
- 8.Implementation of page replacement algorithm
- 9.Implementation of disk scheduling algorithm
Reference Books
- 1.Andrew S. Tanenbaum, Modern Operating Systems, 2nd Edition, Prentice-Hall.
- 2.Silberschatz, Galvin and Gagne, Operating System Concepts, 6th Edition, Addition Wesley.
- 3.Stallings, W. (2009). Operating systems: Internals and Design Principles. Prentice Hall.
- 4.Van Steen, M., & Tanenbaum, A. S. (2017). Distributed systems. Create space Independent Publishing Platform.