OPERATING SYSTEM [CT] - SYLLABUS
Lecture : 3 Year : III
Tutorial : 1 Part : II
Practical : 1.5
Course Objective:
The objective of the course is to be familiar with the different aspects of operating system and use the idea in designing operating system.
1. Introduction (5 hours)
1.1. Operating System and Function
1.2. Evolution of Operating System
1.3. Type of Operating System: Batch, Interactive, Multiprocessing, Time Sharing and Real Time System
1.4. Operating System Components
1.5. Operating System Structure: Monolithic, Layered, Micro-Kernel, Client-Server, Virtual Machine
1.6. Operating System Services
1.6.1. System calls
1.6.2. Shell commands
1.6.3. Shell programming
1.7. Examples of O. S.: UNIX, Linux, MS-Windows, Handheld OS.
2. Process Management (6 hours)
2.1. Introduction to Process
2.1.1. Process description
2.1.2. Process states
2.1.3. Process control
2.2. Threads
2.3. Processes and Threads
2.4. Scheduling
2.4.1. Types of scheduling
2.4.2. Scheduling in batch system
2.4.3. Scheduling in Interactive System
2.4.4. Scheduling in Real Time System
2.4.5. Thread Scheduling
2.5. Multiprocessor Scheduling concept
3. Process Communication and Synchronization (5 hours)
3.1. Principles of Concurrency
3.2. Critical Region
3.3. Race Condition
3.4. Mutual Exclusion
3.5. Semaphores and Mutex
3.6. Message Passing
3.7. Monitors
3.8. Classical Problems of Synchronization: Readers-Writers Problem, Producer Consumer Problem, Dining Philosopher problem
4. Memory Management (6 hours)
4.1. Memory address, Swapping and Managing Free Memory Space
4.2. Resident Monitor
4.3. Multiprogramming with Fixed Partition
4.4. Multiprogramming With Variable Partition
4.5. Multiple Base Register
4.6. Virtual Memory Management
4.6.1. Paging
4.6.2. Segmentation
4.6.3. Paged Segmentation
4.7. Demand Paging
4.8. Performance
4.9. Page Replacement Algorithms
4.10. Allocation of Frames
4.11. Thrashing
5. File Systems (6 hours)
5.1. File: Name, Structure, Types, Access, Attribute, Operations
5.2. Directory and File Paths
5.3. File System Implementation
5.3.1. Selecting Block Size
5.3.2. Impact of Block Size Selection
5.3.3. Implementing File: Contiguous Allocation, Link List Allocation, Link List Allocation with Table, Inode
5.3.4. Implementing Directory
5.4. Impact of Allocation Policy on Fragmentation
5.5. Mapping File Blocks on The Disk Platter
5.6. File System Performance
5.7. Example File Systems: CD ROM file system, MS-DOS file system, Unix File system
6. I/O Management & Disk Scheduling (4 hours)
6.1. Principles of I/O Hardware
6.2. Principles of I/O software
6.3. I/O software Layer
6.4. Disk
6.4.1. Hardware
6.4.2. Formatting
6.4.3. Arm scheduling
6.4.4. Error handling
6.4.5. Stable Storage
7. Deadlock (5 hours)
7.1. Principles of deadlock
7.2. Deadlock Prevention
7.3. Deadlock Avoidance
7.4. Deadlock Detection
7.5. Recovery from deadlock
7.6. An Integrated Deadlock Strategies
7.7. Other Issues: Two phase locking, Communication Deadlock, Livelock, Starvation
8. Security (4 hours)
8.1. Security breaches
8.2. Types of Attacks
8.3. Security Policy and Access Control
8.4. Basics of Cryptography
8.5. Protection Mechanisms
8.6. Authentication
8.7. OS Design Considerations For Security
8.8. Access Control Lists And OS Support
9. System administration (4 hours)
9.1. Administration Tasks
9.2. User Account Management
9.3. Start And Shutdown Procedures
9.4. Setting up Operational Environment for a New User
9.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
Reference Books:
1. Andrew S. Tanenbaum, “Modern Operating Systems”, 3rd Edition, PHI
2. Stalling William, “Operating Systems”, 6th Edition, Pearson Education
3. Silbcrschatz A.,Galvin P., Gagne G., “Operating System Concepts”, 8th Edition, John Wiley and Sons,
4. Milan Milenkovic, “Operating Systems Concepts and Design”, TMGH
5. Das Sumitabha, “Unix Concepts and Applications”, 3rd Edition, Tata McGraw Hill, 2003
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 of the syllabus. The evaluation scheme will be as indicated in the table below.
Lecture : 3 Year : III
Tutorial : 1 Part : II
Practical : 1.5
Course Objective:
The objective of the course is to be familiar with the different aspects of operating system and use the idea in designing operating system.
1. Introduction (5 hours)
1.1. Operating System and Function
1.2. Evolution of Operating System
1.3. Type of Operating System: Batch, Interactive, Multiprocessing, Time Sharing and Real Time System
1.4. Operating System Components
1.5. Operating System Structure: Monolithic, Layered, Micro-Kernel, Client-Server, Virtual Machine
1.6. Operating System Services
1.6.1. System calls
1.6.2. Shell commands
1.6.3. Shell programming
1.7. Examples of O. S.: UNIX, Linux, MS-Windows, Handheld OS.
2. Process Management (6 hours)
2.1. Introduction to Process
2.1.1. Process description
2.1.2. Process states
2.1.3. Process control
2.2. Threads
2.3. Processes and Threads
2.4. Scheduling
2.4.1. Types of scheduling
2.4.2. Scheduling in batch system
2.4.3. Scheduling in Interactive System
2.4.4. Scheduling in Real Time System
2.4.5. Thread Scheduling
2.5. Multiprocessor Scheduling concept
3. Process Communication and Synchronization (5 hours)
3.1. Principles of Concurrency
3.2. Critical Region
3.3. Race Condition
3.4. Mutual Exclusion
3.5. Semaphores and Mutex
3.6. Message Passing
3.7. Monitors
3.8. Classical Problems of Synchronization: Readers-Writers Problem, Producer Consumer Problem, Dining Philosopher problem
4. Memory Management (6 hours)
4.1. Memory address, Swapping and Managing Free Memory Space
4.2. Resident Monitor
4.3. Multiprogramming with Fixed Partition
4.4. Multiprogramming With Variable Partition
4.5. Multiple Base Register
4.6. Virtual Memory Management
4.6.1. Paging
4.6.2. Segmentation
4.6.3. Paged Segmentation
4.7. Demand Paging
4.8. Performance
4.9. Page Replacement Algorithms
4.10. Allocation of Frames
4.11. Thrashing
5. File Systems (6 hours)
5.1. File: Name, Structure, Types, Access, Attribute, Operations
5.2. Directory and File Paths
5.3. File System Implementation
5.3.1. Selecting Block Size
5.3.2. Impact of Block Size Selection
5.3.3. Implementing File: Contiguous Allocation, Link List Allocation, Link List Allocation with Table, Inode
5.3.4. Implementing Directory
5.4. Impact of Allocation Policy on Fragmentation
5.5. Mapping File Blocks on The Disk Platter
5.6. File System Performance
5.7. Example File Systems: CD ROM file system, MS-DOS file system, Unix File system
6. I/O Management & Disk Scheduling (4 hours)
6.1. Principles of I/O Hardware
6.2. Principles of I/O software
6.3. I/O software Layer
6.4. Disk
6.4.1. Hardware
6.4.2. Formatting
6.4.3. Arm scheduling
6.4.4. Error handling
6.4.5. Stable Storage
7. Deadlock (5 hours)
7.1. Principles of deadlock
7.2. Deadlock Prevention
7.3. Deadlock Avoidance
7.4. Deadlock Detection
7.5. Recovery from deadlock
7.6. An Integrated Deadlock Strategies
7.7. Other Issues: Two phase locking, Communication Deadlock, Livelock, Starvation
8. Security (4 hours)
8.1. Security breaches
8.2. Types of Attacks
8.3. Security Policy and Access Control
8.4. Basics of Cryptography
8.5. Protection Mechanisms
8.6. Authentication
8.7. OS Design Considerations For Security
8.8. Access Control Lists And OS Support
9. System administration (4 hours)
9.1. Administration Tasks
9.2. User Account Management
9.3. Start And Shutdown Procedures
9.4. Setting up Operational Environment for a New User
9.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
Reference Books:
1. Andrew S. Tanenbaum, “Modern Operating Systems”, 3rd Edition, PHI
2. Stalling William, “Operating Systems”, 6th Edition, Pearson Education
3. Silbcrschatz A.,Galvin P., Gagne G., “Operating System Concepts”, 8th Edition, John Wiley and Sons,
4. Milan Milenkovic, “Operating Systems Concepts and Design”, TMGH
5. Das Sumitabha, “Unix Concepts and Applications”, 3rd Edition, Tata McGraw Hill, 2003
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 of the syllabus. The evaluation scheme will be as indicated in the table below.
Chapters
|
Hour
|
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
|
*There
may be minor deviation in marks distribution
No comments:
Post a Comment