OPERATING SYSTEM
CT
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
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
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 (4 hours)
9. System administration
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”, 3 rd Edition, PHI
2. Stalling William, “Operating Systems”, 6th Edition, Pearson Education
3. Silbcrschatz A.,Galvin P., Gagne G., “Operating System Concepts”, 8 th
Edition, John Wiley and Sons,
4. Milan Milenkovic, “Operating Systems Concepts and Design”, TMGH
5. Das Sumitabha, “Unix Concepts and Applications”, 3 rd 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.
3 Comments
It’d be better if marks distribution could be added.
Could you enlist the marks distribution too ?
where are the marks distribution