Operating System
0%
Course Title: Operating System
Course No: CACS251
Nature of the Course: Theory + Lab
Semester: 4
Full Marks: 60 + 20 + 20
Pass Marks: 24 + 8 + 8
Credit Hours: 3
Course Description
Course Objectives
Course Contents
2.4. Types of Kernel
- Monolithic/Macro Kernel
- Micro / Exo-Kernel
3. Process Management
15 hrs
3.1. Process Concepts
- Definitions
- Models
- States
- State Transitions
- Process Control Block (PCB)
- Operations
- Cooperating Processes
- System Calls
3.2. Threads
- Definitions
- Types of Thread Processes
- Benefits
- Multithreading Models
3.3. Inter-Process Communication and Synchronization
- Race Conditions
- Critical Regions
- Mutual Exclusion and Serializability
- Proposals for Achieving Mutual Exclusion
- Mutexes
- Semaphores
- Monitors
- Message Passing
- Bounded Buffers
- Locking Protocols
- Time Stamp Protocols
- Classical IPC Problems
3.4. Process Scheduling
- Basic Concepts
- Types of Scheduling
- Scheduling Criteria
- Scheduling Algorithms
4. Deadlocks
4 hrs
4.1. System Model and Resources
- Preemptable Resources
- Non-Preemptable Resources
4.5. Methods of handling deadlocks
- Prevention
- Avoidance
- Detection
- Recovery
5. Memory Management
7 hrs
5.1. Basic Memory Management
- Memory Hierarchy
- Logical vs. Physical Address Space
- Swapping
- Contiguous-Memory Allocation
- Non-Contiguous Allocation
- Relocation
- Protection
- Coalescing
- Compaction
5.2. Virtual Memory
- Paging
- Page Table Structures
- Block Mapping vs. Direct Mapping
- Demand Paging
- Page Replacement Algorithms
- Thrashing
- Segmentation with Paging
6.1. Principles of I/O Hardware
- Device Controllers
- Memory Mapped I/O
- Direct Memory Access (DMA)
6.2. Principles of I/O Software
- Goals
- Programmed I/O
- Interrupt-Driven I/O
6.3. I/O Software Layers
- Interrupt Handlers
- Device Drivers
- Device Independent Software
- User-Space I/O Software
6.4. Disk Management
- Hardware
- Scheduling
- Scheduling Algorithms
7.1. File Concepts
- Naming
- Structure
- Types
- Access
- Attributes
- Operations
- Descriptors
7.2. Directories
- Single-Level
- Hierarchical
- Path Names
- Directory Operations
7.3. Access Methods
- Sequential
- Direct
7.4. Protection
- Types of Access
- Access Control List
- Access Control Matrix
8.2. User Authentication
- Passwords
- Biometrics
8.4. Program Threats
- Trojan Horse
- Trap Door
- Stack and Buffer Overflow
8.5. System Threats
- Worms
- Viruses
- Denial of Services
Laboratory Works
- 1.Operating System Concepts Implementation
Text Books
- 1.Modern Operating System 6/e, Andrew S. Tanenbaum, PHI, 2011/12
- 2.Operating System Concepts 8/e, Silberschatz, P.B. Galvin, G. Gagne, Wiley India, 2014
Reference Books
- 1.Distributed Operating System, Andrew S. Tanenbaum, Pearson
- 2.System Programming and Operating System, D M Dhamdhere, Tata McGraw-Hill, 2009
- 3.Operating Systems Principles and Design, P. Pal Choudhury, PHI, 2011