AL3452 Operating Systems Syllabus:

AL3452 Operating Systems Syllabus – Anna University Regulation 2021

COURSE OBJECTIVES:

 To understand the basics and functions of operating systems.
 To understand Processes and Threads
 To analyze Scheduling algorithms and process synchronization.
 To understand the concept of Deadlocks.
 To analyze various memory management schemes.
 To be familiar with I/O management and File systems.
 To be familiar with the basics of virtual machines and Mobile OS like iOS and Android.

UNIT I INTRODUCTION

Computer System – Elements and organization; Operating System Overview – Objectives and Functions – Evolution of Operating System; Operating System Structures – Operating System Services – User Operating System Interface – System Calls – System Programs – Design and Implementation – Structuring methods.

UNIT II PROCESS MANAGEMENT

Processes – Process Concept – Process Scheduling – Operations on Processes – Inter-process Communication; CPU Scheduling – Scheduling criteria – Scheduling algorithms: Threads – Multithread Models – Threading issues; Process Synchronization – The critical-section problem – Synchronization hardware – Semaphores – Mutex – Classical problems of synchronization – Monitors; Deadlock – Methods for handling deadlocks, Deadlock prevention, Deadlock avoidance, Deadlock detection, Recovery from deadlock.

UNIT III MEMORY MANAGEMENT

Main Memory – Swapping – Contiguous Memory Allocation – Paging – Structure of the Page Table – Segmentation, Segmentation with paging; Virtual Memory – Demand Paging – Copy on Write – Page Replacement – Allocation of Frames –Thrashing.

UNIT IV STORAGE MANAGEMENT

Mass Storage system – Disk Structure – Disk Scheduling and Management; File-System Interface – File concept – Access methods – Directory Structure – Directory organization – File system mounting – File Sharing and Protection; File System Implementation – File System Structure – Directory implementation – Allocation Methods – Free Space Management; I/O Systems – I/O Hardware, Application I/O interface, Kernel I/O subsystem.

UNIT V VIRTUAL MACHINES AND MOBILE OS

Virtual Machines – History, Benefits and Features, Building Blocks, Types of Virtual Machines and their Implementations, Virtualization and Operating-System Components; Mobile OS – iOS and Android.

45 PERIODS

PRACTICAL EXERCISES: 30 PERIODS

1. Installation of Operating system : Windows/ Linux
2. Illustrate UNIX commands and Shell Programming
3. Process Management using System Calls : Fork, Exec, Getpid, Exit, Wait, Close
4. Write C programs to implement the various CPU Scheduling Algorithms
5. Illustrate the inter process communication strategy
6. Implement mutual exclusion by Semaphores
7. Write a C program to avoid Deadlock using Banker’s Algorithm
8. Write a C program to Implement Deadlock Detection Algorithm
9. Write C program to implement Threading
10. Implement the paging Technique using C program
11. Write C programs to implement the following Memory Allocation Methods
a. First Fit b. Worst Fit c. Best Fit
12. Write C programs to implement the various Page Replacement Algorithms
13. Write C programs to Implement the various File Organization Techniques
14. Implement the following File Allocation Strategies using C programs
a. Sequential b. Indexed c. Linked
15. Write C programs for the implementation of various disk scheduling algorithms

COURSE OUTCOMES:

At the end of this course, the students will be able to:
CO1: Analyze various scheduling algorithms and process synchronization.
CO2 : Explain deadlock, prevention and avoidance algorithms.
CO3 : Compare and contrast various memory management schemes.
CO4 : Explain the functionality of file systems I/O systems, and Virtualization
CO5 : Compare iOS and Android Operating Systems.

TOTAL:75 PERIODS

TEXTBOOKS

1. Abraham Silberschatz, Peter Baer Galvin and Greg Gagne, “Operating System Concepts”, 9th Edition, John Wiley and Sons Inc., 2018.
2. Andrew S Tanenbaum, “Modern Operating Systems”, Pearson, 4th Edition, New Delhi, 2016.

REFERENCES

1. Ramaz Elmasri, A. Gil Carrick, David Levine, “Operating Systems – A Spiral Approach”, Tata McGraw Hill Edition, 2010.
2. William Stallings, “Operating Systems: Internals and Design Principles”, 7th Edition, Prentice Hall, 2018.
3. Achyut S.Godbole, Atul Kahate, “Operating Systems”, McGraw Hill Education, 2016.