This page contains Syllabus of Operating System of BCA.

Title Operating System
Short Name OS
Course code CACS251
Nature of course Theory + Practical
Semester fourth-semester
Full marks 60 + 20 + 20
Pass marks 24 + 8 + 8
Credit Hrs 3
Elective/Compulsary Compulsary

Course Description

Course Description 

This course includes the topics that help students understand operating system and it's functionality along with its types.

Course Objectives 

The general objectives of this subject are to provide the basic feature, function and interface with the hardware and application software to run the computer smoothly.

Units and Unit Content

1. Introduction to Operating System
teaching hours: 2 hrs

History, Introduction and Generation of Operating System, Objectives(Resource Manager and Extended Machine), Types of Operating system, Function of Operating system.

2. Operating System Structure
teaching hours: 2 hrs
Introduction, Layered System, Kernel, Types of Kernel (Monolithic/Macro Kernel and Micro / Exo-Kernel), Client-Server Model, Virtual Machines, Shell.
3. Process Management
teaching hours: 15 hrs

Process Concepts: Definitions of Process, The Process Model, Process States, Process State Transition, The Process Control Block,Operations on Processes (Creation, Termination, Hierarchies, Implementation), Cooperating Processes, System Calls (Process Management, File Management, Directory Management).

Threads: Definitions of Threads, Types Of Thread Process(Single and Multithreaded Process), Benefits of Multithread, Multithreading Models (Many-to-One-Model, One-to-OneModel, Many-to-Many Model).

Inter-Process Communication and Synchronization: Introduction, Race Condition, Critical Regions, Avoiding Critical Region: Mutual Exclusion And Serializability; Mutual Exclusion Conditions, Proposals for Achieving Mutual Exclusion: Disabling Interrupts, Lock Variable, Strict Alteration (Peterson's Solution), The TSL Instruction, Sleep and Wakeup, Types of Mutual Exclusion (Semaphore, Monitors, Mutexes, Message Passing, Bounded Buffer), Serializability: Locking Protocols and Time Stamp Protocols; Classical IPC Problems (Dinning Philosophers Problems, The Readers and Writers Problem, The Sleeping Barber's Problem).

Process Scheduling: Basic Concept, Type of Scheduling (Preemptive Scheduling, Nonpreemptive Scheduling, Batch, Interactive, Real Time Scheduling), Scheduling Criteria or Performance Analysis, Scheduling Algorithm(Round-Robin, First Come First Served, Shortest-Job- First, Shortest Process Next, Shortest Remaining Time Next, Real Time, Priority Fair Share, Guaranteed, Lottery Scheduling, HRN, Multiple Queue, Multilevel Feedback Queue); Some Numerical Examples on Scheduling.

4. Deadlocks
teaching hours: 4 hrs

System Model, System Resources: Premptable and Non-Preemptable; Conditions for Resource Deadlocks, Deadlock Modeling, The OSTRICH Algorithm, Method of Handling Deadlocks, Deadlock Prevention, Deadlock Avidance: Banker's Algorithm, Deadlock Detection: Resource Allocation Graph, Recovery from Deadlock.

5. Memory Management
teaching hours: 7 hrs

Basic Memory Management: Introduction, Memory Hierarchy, Logical Versus Physical Adress Space, Memory Management with Swapping: Memory Management with Bitmaps and with Linked List; Memory Management without Swapping, Contigous-Memory Allocation: Memory Protection, Memory Allocation, Fragmentation(Inter Fragmentation and External Fragmentation); Mom-Contiguous Memory Allocation, Fixed Partitioning Vs. Variable Partitioning, Relocation and Protection, Coalescing and Compaction.

Virtual Memory: Background, Paging, Structure of Page Table: Hierarchical Page Table, Hashed Page Table, Inverted Page Table, Shared Page Table, Block Mapping Vs. Direct Mapping, Demand Paging, Page Replacement and Page Faults, Page Raplacement Algorithms:FIFO,OPR,LRU, SCP; Some Numerical Examples on Page Replacement, Thrashing, Segementation, Segmentation With Paging. 

6. Input/Output Device Management
teaching hours: 4 hrs

Principle of I/O Devices, Device Controllers, Memory Mapped I/O, Direct Memory Acess; Principle of I/O Software: Goals of I/O Software, Program I/O, Interrupt - Driven I/O, I/O Using DMA; I/O Software Layers: Interrupts Handler, Device Drivers, Device Independent I/O Software, User-Space I/O Software; Disk Hardware; Disk Scheduling: Seek Time, Rational Delay, Transfer Time; Disk Scheduling Algorithms: FCFS Scheduling, SSTF Scheduling, SCAN Scheduling, C-SCAN Scheduling, Lock Scheduling

7. File System Interface Management
teaching hours: 2 hrs

File Concept: File Naming, File Type, File Access, File Attributes, File Operation and File Operation and File Descriptors: Ddirectories: Single-Level Directory Systems, Hierarchical Directory Syatems, Patth Names, Directory Operation; Access Methods: Sequential, Directory Operation; Access methods: Sequntial, Direct;  Protection: Types of Acess Control List, Access Control Matrix

8. Security Management
teaching hours: 3 hrs
Introduction, Security Problems, User Authentication: Passwords, password Vulnerabilities, Encrypted password, One Time Password and Biometries password; User Authorization, Program Threats: Trojan Horse, Trap Door,  Stack and Buffer Overflow; System Threats: Worms, Viruses, Denial of Services.
9. Distributed Operating System
teaching hours: 4 hrs

Introduction. Advantages of Distributed System over Centralized System. Advantages of Distributed System over Independent PCs, Disadvantages of Distributed System, Hardware and Software Concepts, Communication in Distributed Systems, Message Passing, Remote Procedure Call, Process in Distribution System, Clock Synchronization. 


10. Case Study
teaching hours: 2 hrs

DOS and Windows Operating System, Unix Operating System, Linux Operating System 

Lab and Practical works

Laboratory Works 

Lab works should be done covering all the topics listed above and a small project work should be carried out using the concept learnt in this course. Project should be assigned on Individual Basis.