Logo

BITM Operating System

bitmsemester 4

Operating System

Subject Code: IT241

Course Title: Operating System

Course No: IT241

Nature of Course: Theory & Practical

Full Marks: 60

Pass Marks: 30

Credit Hours: 3

Course Description

This course includes the basic concepts of operating system. It consists of process management, deadlocks and process synchronization, memory management techniques, File system implementation, I/O device management principles, Operating system security, Distributed operating system. It also includes case study on Linux, Windows and Mobile operating system.

Course Objective

This course aims to provide the students both theoretical and practical knowledge of operating system components such a scheduler, memory manager, file system handlers and I/O device managers, operating system security.

Course Contents

Course Contents Teaching Methodology Teaching Hours
Unit 1: Operating System Overview (4 Hrs.)
Introduction of Operating System Lecture/Lab
Evolution of Operating System
Types of OS
Function of Operating System
System Call
Handling System Calls
Operating System Structures
Kernel and its types
Shell
Open-Source Operating Systems
Unit 2: Processes and Threads (11 Hrs.)
Process vs Program Lecture/Lab
Multiprogramming
Process Model
Process Creation
Process States
Process Control Block
Threads
Thread vs Process
User and Kernel Space Threads
Inter Process Communication: Race Condition, Critical Regions, Implementing Mutual Exclusion: Mutual Exclusion with Busy Waiting (Disabling Interrupts, Lock Variables, Strict Alteration, Peterson’s Solution, Test and Set Lock), Sleep and Wakeup, Semaphore, Monitors, Message Passing
Process Scheduling: Introduction and aim, Batch System Scheduling (First-Come First-Served, Shortest Job First, Shortest Remaining Time Next), Interactive System Scheduling (Round-Robin Scheduling, Priority Scheduling, Multiple Queues)
Classical IPC problems: Producer Consumer, Sleeping Barber, Dining Philosopher Problem
Unit 3: Deadlocks (5 Hrs.)
Introduction Lecture/Lab
Deadlock Characterization
Preemptable and Non-preemptable Resources
Resource Allocation Graph
Conditions for Resource Deadlock
Handling Deadlocks: Ostrich Algorithm, Deadlock prevention, Deadlock Avoidance: Banker’ Algorithm, Deadlock Detection (For Single and Multiple Resource Instances), Recovery from Deadlock (Through Preemption and Rollback)
Unit 4: Memory Management (8 Hrs.)
Introduction Lecture/Lab
Logical vs. Physical Address Spaces
Monoprogramming vs. Multiprogramming
Modelling Multiprogramming
Relocation and Protection
Memory Management with Swapping: Bitmaps and Linked-list
Memory Allocation Strategies: Fixed-partition and Variable-partition strategies
Virtual memory: Paging, Page Table, Structure of Page Table, Handling Page Faults, TLB’s, Page Replacement Algorithms: FIFO, Second Chance, LRU, Optimal, LFU, Clock, WS-Clock, Concept of Locality of Reference
Segmentation: Need of Segmentation, its drawbacks, Segmentation with Paging
Unit 5: File Management (6 Hrs.)
File Overview: File Naming, File Structure, File Types, File Access, File Attributes, File Operations Lecture/Lab
Single Level, two Level and Hierarchical Directory Systems
File System Layout
Implementing Files: Contiguous allocation, Linked List Allocation, Linked List Allocation using Table in Memory, Inodes
Directory Operations
Path Names
Directory Implementation
Shared Files
Free Space Management: Bitmaps, Linked List
Unit 6: Device Management (6 Hrs.)
Classification of I/O devices Lecture/Lab
Controllers
Memory Mapped I/O
DMA Operation
Interrupts
Goals of I/O Software
Handling I/O (Programmed I/O, Interrupt Driven I/O, I/O using DMA)
I/O Software Layers (Interrupt Handlers, Device Drivers)
Disk Structure
Disk Scheduling (FCFS, SSTF, SCAN, CSCAN, LOOK, CLOOK)
Disk Formatting (Cylinder Skew, Interleaving, Error handling)
RAID
Unit 7: Operating System Security (2 Hrs.)
Basic Concepts of Operating System Security Lecture/Lab
Security Problems
Authentication and Authorization Mechanisms
Controlling access to resources
model of secure system
Unit 8: Distributed Operating System (2 Hrs.)
Introduction Lecture/Lab
Advantages of Distributed operating system over centralized operating System
Communication Structure in Distributed system
message passing in Distributed System
Remote file Access
Unit 9: Case Study (4 Hrs.)
Windows Operating System Lecture/Lab
Linux Operating System
Mobile Operating System

Text Books

1. A. S. Tanenbaum, H. Bos “Modern Operating Systems”, Pearson Education, Inc., Fourth edition, 2016.
2. A. Silberschatz, P. B. Galvin and G. Gagne, “Operating System Concepts”, John Wiley & Sons (ASIA) Pvt. Ltd, Tenth Edition, 2018.
3. H. M. Deitel, P. J. Deitel, and D. R. Choffnes, “Operating Systems, Pearson Education, Inc., Third Edition, 2003.
4. W. Stallings, “Operating Systems: Internals and Design Principles”, Pearson Education, Inc., 2018 Ninth Edition

Lab Works

The laboratory work includes solving problems in operating system covering all the listed topic above.