Tribhuvan University
Faculty of Management
Office of the Dean
Bachelor of Information Management (BIM)
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 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 Contents:
Lecture hours show the approximate classroom time allocated to each unit.
Unit 1.Operating System Overview
Introduction of Operating System , 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
Process vs Program, 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 an d 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
Introduction, 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
Introduction, Logical vs. Physical Address Spaces, Monoprogramming vs. Multi-programming, 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, Opt imal, LFU, Clock, WS -Clock, Concept of Locality of Reference , Segmentation: Need of Segmentation, its drawbacks, Segmentation with Paging.
Unit 5.File Management
File Overview: File Naming, File Structure, File Types, File Access, File Attributes, File Operations, 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
Classification of I /O devices, 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
Basic Concepts of Operating System Security, Security Problems, Authentication and Authorization Mechanisms, Controlling access to resources, model of secure system.
Unit 8.Distributed Operating System
Introduction, 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
Windows Operating System, Linux Operating System, Mobile Operating System. Laboratory Works: The laboratory work includes solving problems in operating system covering all the listed topic above.
Suggested Readings:
A. S. Tanenbaum, H. Bos “Modern Operating Systems”, Pearson Education, Inc., Fourth edition, 2016. A. Silberschatz, P. B. Galvin and G. Gagne, “Operating System Concepts”, John Wiley & Sons (ASIA) Pvt. Ltd, Tenth Edition, 2018. H. M. Deitel, P . J. Deitel, and D . R. Choffnes, “Operating Systems, Pearson Education, Inc. , Third Edition, 2003. W. Stallings, “Operating Systems: Internals and Design Principles ”, Pearson Education, Inc., 2018 Ninth Edition