Operating System Syllabus - BCIS (PU)

View and download full syllabus of Operating System

Course Description

Course Description:

The students will become familiar with the basics of operating systems and the feature controlling of modern operating system.  The course helps in providing general understanding of structure of modern computers, purpose, structure and functions of operating systems with illustration of key OS aspects by examples

Course Outcomes:

By the end of the course you should be able to

  • describe the general architecture of computers
  • describe, contrast and compare differing structures for operating systems
  • understand and analyse theory and implementation of: processes, resource control (concurrency etc.), physical and virtual memory, scheduling, I/O and files

Unit Contents

Course Contents

Unit 1: Introduction                                                                                      5 Hours

OS concepts (brief history), Importance and functions of OS, Concepts of Uniprogramming, Multiprogramming, and Parallel Programming, Evolution of OS, Types of OS: Sequential, Batch, Multiprogramming (multitasking), Multiprocessing (multiprocessor), Time Sharing, Real Time, Distributed, Embedded, Kernel, OS architectures (structures): Monolithic, Microkernel, Layered, Client-server, Virtual machine, Operating System services: System calls, Shell commands, Shell programming, OS Examples: DOS, UNIX, Linux, MS-Windows, Handheld OS etc

Unit2: Process and Thread Management                                                   6 Hours

Introduction to Process: Process description, Process states, Process Control Block (PCB), Threads, Process vs Threads, Scheduler and its types: Short term, Medium term and Long term, Scheduling and its types: preemptive and non-preemptive, Process Scheduling algorithms: FCFS, SJF, SRTF, RR, Priority, HRN, Multi-level, Multi-level Feedback, Thread Scheduling, Multiprocessor scheduling concepts

Unit 3: Inter Process Communication and Synchronization                    6 Hours

Introduction to IPC, Process Communication Mechanisms: Message Passing, Remote Procedure Call (RPC), Shared Resource (Memory), Resource sharing, Concurrent process, Critical region, Race condition, Solution of race condition: Mutual exclusion, Mutual exclusion algorithms: Locks, Test and Set Lock (TSL), Peterson’s algorithms, Semaphore, and Mutex, Monitor, Process Synchronization

Classical problems of Process Synchronization: Readers-Writers Problem, Producer-Consumer Problem, Sleeping Barber Problem, Dining Philosopher Problems

Unit 4: Deadlock                                                                                           5 Hours

Process Deadlock, Reusable, Consumable Resources, Causes (Conditions) of Deadlock: Mutual Exclusion, Hold and Wait, No Preemption, and Circular Wait, Deadlock Handling, Prevention, Avoidance: Ostrich Algorithm, Bankler’s Algorithm, Detection, Recovery, Others issues: Database deadlock, Communication deadlock, Livelock, Starvation

Unit 5: Memory Management                                                                    7 Hours

Concepts of memory and its hierarchy, Memory address: Logical and Physical address, Concept of swapping, Managing Free Memory Space: First Fit, Best Fit, Next Fit, and Worst Fit, Coalescing and Compaction, Memory Management Techniques, Contigious: Resident Monitor, Multiprogramming with fixed and variable partition, Non-Contigious: Paging, Segmentation, Paging with segmentation, Demand Paging, Virtual Memory Management, Page Replacement Algorithms: FIFO, NRU, LRU, Clock, Optimal, Thrashing

Unit 6: Input/Output Management and Disk Scheduling                        5 Hours          

I/O Devices, I/O Techniques: Programmed I/O, Interrupt-driven I/O, and Direct Memory Access (DMA), Principle I/O hardware: I/O devices, Device controllers, DMA, I/O software: Polling, Interrupt, I/O software layer, Disk, Formatting, Arm scheduling algorithms: FCFS, SSTF, Elevator (Scan), C-Scan, Look, C-Look

Unit 7: File System Management                                                                4 Hours

File Naming, File Organization and access, File Directories and paths, File Sharing, Record Blocking, File system implementation: Contigious, linked-list, linked list with table, I-nodes, Secondary File Storage Management, Examples: CD ROM file system, MS DOS file system, Unix file system

Unit 8: Security                                                                                             4 Hours

Security issues, Types of attacks, Security policy and Access control, Basics of cryptography: Encryption and Decryption, Protection mechanisms, Authentication, OS design considerations for security

Unit 9: Distributed Operating System                                                        6 Hours

Introduction to distributed system and distributed operating system, Goals and objectives, Distributed operating system (DOS) vs Network operating system (NOS), DOS as middleware, Communication in distributed system: client-server, RPC, and group communication, Mutual exclusion, Clock synchronization algorithm, Election algorithm

Lab Works:


Different lab works related to normal OS and distributed OS in Windows, and Linux OS.

Text and Reference Books

Text Books:

  1. Stalling William, "Operating Systems 6th Edition, Pearson Education, ISBN 978-81-317-2528-3
  2. Andrew S. Tanenbaum ,Modern Operating Systems, 3/E, ISBN-13: 9780136006633, PHI

Reference Books:

  1. Milan Milenkovic "Operating Systems Concepts and Design ", ISBN 9780074632727, TMGH
  2. Silbcrschatz A.,Galvin P., Gagne G.,"Operating System Concepts 8e",John Wiley and Sons,2003,ISBN 9812-53-055-X.
  3. J. Bach, “The Design of The Unix Operating System”, ISBN: 978-81-203-0516-8, PHI.
  4. Charles Crowley, “Operating Systems : A Design-oriented Approach” ISBN: 0074635514 TMH.
Download Syllabus
  • Short Name OS
  • Course code CMP 266
  • Semester Fifth Semester
  • Full Marks 100
  • Pass Marks 45
  • Credit 3 hrs
  • Elective/Compulsary Compulsary