OPERATING SYSTEM
CT 725 06

Lecture   : 3
Tutorial   : 1
Practical : 3/2

Course Objective:

To be familiar with the different aspects of operating system and use the idea in designing operating system.

  1. Introduction
    (5 hours)
    1. Operating System and Function
    2. Evolution of Operating System
    3. Type of Operating System: Batch, Interactive, Multiprocessing, Time Sharing and Real Time System
    4. Operating System Components
    5. Operating System Structure: Monolithic, Layered, Micro-Kernel, Client-Server, Virtual Machine
    6. Operating System Services
      1. System calls
      2. Shell commands
      3. Shell programming
    7. Examples of O. S.: UNIX, Linux, MS-Windows, Handheld OS.
  2. Process Management
    (6 hours)
    1. Introduction to Process
      1. Process description
      2. Process states
      3. Process control
    2. Threads
    3. Processes and Threads
    4. Scheduling
      1. Types of scheduling
      2. Scheduling in batch system
      3. Scheduling in Interactive System
      4. Scheduling in Real Time System
      5. Thread Scheduling
    5. Multiprocessor Scheduling concept
  3. Process Communication and Synchronization
    (5 hours)
    1. Principles of Concurrency
    2. Critical Region
    3. Race Condition
    4. Mutual Exclusion
    5. Semaphores and Mutex
    6. Message Passing
    7. Monitors
    8. Classical Problems of Synchronization: Readers-Writers Problem, Producer Consumer Problem, Dining Philosopher problem
  4. Memory Management
    (6 hours)
    1. Memory address, Swapping and Managing Free Memory Space
    2. Resident Monitor
    3. Multiprogramming with Fixed Partition
    4. Multiprogramming With Variable Partition
    5. Multiple Base Register
    6. Virtual Memory Management
      1. Paging
      2. Segmentation
      3. Paged Segmentation
    7. Demand Paging
    8. Performance
    9. Page Replacement Algorithms
    10. Allocation of Frames
    11. Thrashing
  5. File Systems
    (6 hours)
    1. File: Name, Structure, Types, Access, Attribute, Operations
    2. Directory and File Paths
    3. File System Implementation
      1. Selecting Block Size
      2. Impact of Block Size Selection
      3. Implementing File: Contiguous Allocation, Link List Allocation, Link List Allocation with Table, Inode
      4. Implementing Directory
    4. Impact of Allocation Policy on Fragmentation
    5. Mapping File Blocks on The Disk Platter
    6. File System Performance
    7. Example File Systems: CD ROM file system, MS-DOS file system, Unix File system
  6. I/O Management & Disk Scheduling
    (4 hours)
    1. Principles of I/O Hardware
    2. Principles of I/O software
    3. I/O software Layer
    4. Disk
      1. Hardware
      2. Formatting
      3. Arm scheduling
      4. Error handling
      5. Stable Storage
  7. Deadlock
    (5 hours)
    1. Principles of deadlock
    2. Deadlock Prevention
    3. Deadlock Avoidance
    4. Deadlock Detection
    5. Recovery from deadlock
    6. An Integrated Deadlock Strategies
    7. Other Issues: Two phase locking, Communication Deadlock, Livelock, Starvation
  8. Security
    (4 hours)
    1. Security breaches
    2. Types of Attacks
    3. Security Policy and Access Control
    4. Basics of Cryptography
    5. Protection Mechanisms
    6. Authentication
    7. OS Design Considerations For Security
    8. Access Control Lists And OS Support
  9. System administration
    (4 hours)
    1. Administration Tasks
    2. User Account Management
    3. Start And Shutdown Procedures
    4. Setting up Operational Environment for a New User
    5. AWK tool, Search, Sort tools, Shell scripts, Make tool

Practical:

  1. Shell commands, shell programming: write simple functions, basic tests, loops, patterns, expansions, substitutions
  2. Programs using the following system calls of UNIX operating system: fork, exec, getpid, exit, wait, close, stat, opendir, readdir
  3. Programs using the I/O system calls of UNIX operating system
  4. Implement the Producer – Consumer problem using semaphores.
  5. Implement some memory management schemes

References:

  1. Andrew S. Tanenbaum, "Modern Operating Systems", PHI.
  2. Stalling William, "Operating Systems", Pearson Education
  3. SilbcrschatzA.,Galvin P., Gagne G., "Operating System Concepts", John Wiley and Sons,
  4. Milan Milenkovic, "Operating Systems Concepts and Design", TMGH
  5. Das Sumitabha, "Unix Concepts and Applications", Tata McGraw Hill.
  6. M. J. Bach, "The Design of The Unix Operating System", PHI.
  7. Charles Crowley, "Operating Systems: A Design-oriented Approach", TMH.

Evaluation Scheme:

The questions will cover all the chapters in the syllabus. The evaluation scheme will be as indicated in the table below:

Chapter Hours Marks Distribution*
1 5 10
2 6 10
3 5 10
4 6 10
5 6 10
7 5 10
6, 8, 9 12 20
Total 45 80

*Note: There could be minor deviation in mark distribution.

Sponsered Ads