314451 : OPERATING SYSTEM
Teaching Scheme: Lectures: 4 Hours/Week
Examination Scheme:
InSemester Assessment: Phase I – 30 Marks
EndSemester Assessment : Phase II – 70 Marks
Prerequisites :Computer Organization and Data Structure
Course Objectives :
1. To Introduce basic concepts and functions of modern operating systems
2. To Understand the concept of process, and thread management
3. To Understand how the resources are scheduled and managed
4. To Understand the concepts of process synchronization and deadlock
5. To know the concept of I/O and File management
6. To Understand various Memory management techniques
7. To be aware of latest trends in Operating Systems
Course Outcomes :
At the end of this course, students would be able to
1. Possess knowledge of the role of Operating Systems and their types.
2. Apply the concept of a process, thread and scheduling algorithms.
3. Apply the concepts of process synchronization and how it is achieved.
4. Realize the concept of deadlock and different ways to handle it.
5. Realize various memory management techniques.
6. Realize the concept of I/O management and File system
Unit – I Operating System Overview 8 Hours
Operating System Objectives and Functions, The Evolution of Operating Systems, Developments Leading to Modern Operating Systems, Virtual Machines, OS Design Considerations for Multiprocessor and Multicore architectures, Microsoft Windows Overview, Modern UNIX Systems, Linux, Android. Booting Process of all the above operating systems.
Unit II Process Description And Control 10 Hours
Process: Concept of a Process, Process States, Process Description, Process Control (Process creation, Waiting for the process/processes, Loading programs into processes and Process Termination), Execution of the Operating System.
Threads: Processes and Threads, Concept of Multithreading, Types of Threads, Thread programming Using pthreads, Multicore processors and threads , Linux Process and Thread Management, Android Process and Thread Management
Scheduling: Uniprocessor Scheduling Types of Scheduling, Scheduling Algorithms, and Thread Scheduling, An introduction to Multiprocessor and RealTime Scheduling, Traditional UNIX Scheduling, Linux Scheduling.
Unit III Concurrency: Mutual Exclusion And Synchronization 8 Hours
Concurrency: Process/thread Synchronization and Mutual Exclusion Principles of Concurrency, Requirements for Mutual Exclusion, Mutual Exclusion: Hardware Support, Operating System Support (Semaphores and Mutex), Programming Language Support (Monitors),
Classical synchronization problems: Readers/Writers Problem, Producer and Consumer problem.
Concurrency : Deadlock and Starvation Principles of Deadlock, Deadlock Prevention, Deadlock Avoidance, Deadlock detection, An Integrated Deadlock Strategy, Example: Dining Philosophers Problem, Linux interprocess communication and concurrency mechanisms, Android Interprocess communication mechanisms and concurrency mechanisms
Unit IV Memory Management 8 Hours
Memory Management: Memory Management Requirements, Memory Partitioning: Fixed Partitioning, Dynamic Partitioning, Buddy System, Relocation, Paging, Segmentation.
Virtual Memory: Hardware and Control Structures, Operating System Software, Linux Memory Management, Windows Memory Management, Android Memory Management.
Unit – V Input/Output And Files 8 Hours
I/O Management and Disk Scheduling: I/O Devices, Organization of the I/O Function, Operating System Design Issues, I/O Buffering, Disk Scheduling, Disk Cache, Linux I/O.
File Management: Overview, File Organization and Access, File Directories, File Sharing, Record Blocking, Secondary Storage Management, Linux Virtual File System, Android File Management.
Unit VI Recent And Future Trends In OS 6 Hours
Linux Kernel Module Programming, Embedded Operating Systems: Characteristics of Embedded Systems, Embedded Linux, and Application specific OS. Basic services of NACH Operating System.
Introduction to Service Oriented Operating System (SOOS), Introduction to Ubuntu EDGE OS, etc.
Text Books :
William Stallings, Operating System: Internals and Design Principles, Prentice Hall, 8th Edition, 2014, ISBN10: 0133805913 • ISBN13: 9780133805918
Abraham Silberschatz, Peter Baer Galvin and Greg Gagne, Operating System Concepts, John Wiley & Sons ,Inc., 9th Edition,2012, ISBN 9781118063330
Maurice J. Bach, “Design of UNIX Operating System”, PHI
Reference Books :
Tom Adelstein and Bill Lubanovic, Linux System Administration, O'Reilly Media, Inc., 1st Edition, 2007.ISBN10: 0596009526 | ISBN13: 9780596009526
Harvey M. Deitel, Operating Systems, Prentice Hall, 3rd Edition,2003, ISBN10: 0131828274 | ISBN13: 9780131828278
Andrew S. Tanenbaum, Modern Operating System, Prentice Hall, 3rd Edition, 2007,ISBN10: 0136006639 | ISBN13: 9780136006633
Operating System in depth by Thomson