Skip to content

This course introduces key operating system concepts such as processes, threads, scheduling, synchronization, memory management, and file I/O subsystems. It covers Unix commands and system calls for process management, interprocess communication, and I/O. Students will gain hands-on experience in managing and interacting with Unix systems.

Notifications You must be signed in to change notification settings

shafakhat/CS403PC-Operating-Systems

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CS403PC - Operating-Systems

Description:

This course introduces key operating system concepts such as processes, threads, scheduling, synchronization, memory management, and file I/O subsystems. It covers Unix commands and system calls for process management, interprocess communication, and I/O. Students will gain hands-on experience in managing and interacting with Unix systems.

Prerequisites:

  1. A course on “Computer Programming and Data Structures”.
  2. A course on “Computer Organization and Architecture”.

Course Objectives:

  1. Introduce operating system concepts (i.e., processes, threads, scheduling, synchronization,deadlocks, memory management, file and I/O subsystems andprotection)
  2. Introduce the issues to be considered in the design and development of operating system.
  3. Introduce basic Unix commands, system call interface for process management,interprocesscommunication and I/O in Unix.

Course Outcomes:

  1. Will be able to control access to a computer and the files that may be shared.
  2. Demonstrate the knowledge of the components of computers and their respectiveroles incomputing.
  3. Ability to recognize and resolve user problems with standard operating environments.
  4. Gain practical knowledge of how programming languages, operating systems,andarchitectures interact and how to use each effectively.

SYLLABUS:

UNIT - I

Operating System [CHAPTER 1]

  • Introduction, Simple Batch, Multiprogrammed, Timeshared, Personal Computer, Parallel, Distributed Systems, Real-Time Systems, System components.

Operating System Structures [CHAPTER 2]

-Operating System services, System Calls, Structures.

Processes [CHAPTER 3]

  • Process concepts and scheduling, Operations on processes, Threads, Cooperating Processes.

UNIT - II

CPU Scheduling: [CHAPTER 5]

  • Scheduling Criteria, Scheduling Algorithms, Multi-Processor Scheduling.

System call interface for process management: [CHAPTER 2]

  • fork, exit, wait, waitpid, exec

Deadlocks: [CHAPTER 8]

  • System Model, Deadlocks Characterization, Methods for Handling Deadlocks,Deadlock Prevention, Deadlock Avoidance, Deadlock Detection, and Recovery from Deadlock.

UNIT - III

Process Management and Synchronization: [CHAPTER 6]

  • The Critical Section Problem, Hardware Support for Synchronization, Semaphores, and Classical Problems of Synchronization, Critical Regions, Monitors

Interprocess Communication Mechanisms: [CHAPTER 3]

  • IPC between processes on a single computer system, IPC between processes on different systems, using pipes, FIFOs, message queues, shared memory.

UNIT - IV

Memory Management and Virtual Memory: [CHAPTER 9, 10]

  • Logical versus Physical Address Space, Swapping, Contiguous Allocation, Paging, Segmentation, Segmentation with Paging, DemandPaging, Page Replacement, Page Replacement Algorithms.

UNIT - V

File System Interface and Operations: [CHAPTER 13, 14]

  • Access methods, Directory Structure, Protection, File System Structure, Allocation methods, Free-space Management. Usage of open, create, read, write, close, lseek, stat, ioctl system calls.

PRESCRIBED TEXT BOOKS:

  1. Operating System Principles- Abraham Silberchatz, Peter B. Galvin, Greg Gagne 7th Edition,John Wiley.
  2. Advanced programming in the UNIX environment, W.R. Stevens, Pearson education.

REFERENCE BOOKS:

  1. Operating Systems- Internals and Design Principles, William Stallings, Fifth Edition–2005, Pearson Education/PHI
  2. OperatingSystem A Design Approach- Crowley, TMH.
  3. Modern Operating Systems, Andrew S. Tanenbaum 2nd edition, Pearson/PHI
  4. UNIX programming environment, Kernighan and Pike, PHI/ Pearson Education
  5. UNIX Internals -The New Frontiers, U. Vahalia, Pearson Education.

About

This course introduces key operating system concepts such as processes, threads, scheduling, synchronization, memory management, and file I/O subsystems. It covers Unix commands and system calls for process management, interprocess communication, and I/O. Students will gain hands-on experience in managing and interacting with Unix systems.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published