Ceng 328 Operating Systems

Operating systems course covers introductory issues in modern operating systems. Main emphasis is on single processor multitask systems. The main issues including processes and threads, inter-process communication and race conditions, memory management, file systems, I/O management and deadlocks are considered. All issues are practiced on UNIX/linux and Windows operating systems.

Course outline

1.      Introduction

·         Computer systems,

·         Operating system as a resource manager,

·         History of the Operating systems,

·         introduction to multiprogramming

2.      Process Management

·         Process Model

·         Race conditions

·         Inter-process communication

1.      Mutex

2.      Semaphores

3.      Monitors

·         Process Scheduling

3.      Memory Management

·         Swapping

·         Segmentation

·         Paging

·         Virtual Memory

·         Design issues for paging systems

4.      File Systems

·         File system implementation issues

·         Directories

·         Case Studies

1.      UNIX

2.      MS-DOS

3.      Windows

5.      Input/Output Management

6.      Deadlocks

Text book: Modern Operating Systems, A. Tanenbaum, 2nd Edition, Prentice Hall, ISBN: 0-13-031358-0

Announcements:

Linux Shell Commands (Lab work + exercises)

Exercise 2

Exercise 3

Sample questions

Exercise 4

Midterm exam: July 16, 2008 at 14:40

Midterm grades