EECS 3221

Operating Systems


Syllabus
Notes
Notices
Dates
FAQs
Contact Info
Marks
Logout
Last Modified:
May 11 2021

Course Description


This course will cover the fundamental concepts that underlie operating systems, including multiprogramming, concurrent processes, CPU scheduling, deadlocks, memory management, file systems, protection and security. Many examples from real systems are given to illustrate the application of particular concepts.
  • Introduction, (basic definitions, OS components and structures).
  • Processes (scheduling, communication, operations).
  • Threads (multi-thread programming, multi-core systems, thread libraries and implementations).
  • Process Synchronization (critical section problem, deadlocks, software and hardware solutions, mutex locks, semaphores, monitors, classic problems).
  • CPU Scheduling (Criteria and algorithms, thread scheduling, multiproicessor scheduling, real-time scheduling).
  • Main Memory (swappiung, memory allocation, segmentation, paging, structure of page tables).
  • Virtual memory (demand paging, copy on write, page replacement, allocation, thrashing, memory mapped files, allocating kernel memory).
  • Mass Storage (Disk organization, attachment, scheduling, management, swap space).
  • File System Interface (access methods, directories, mounting, sharing, protection)
  • File System Implementation (file system structure, directory implementation, allocation methods, efficiency, recovery)

Lecture Hours

Tue. and Thu. 11:30-1:00 on zoom. Office hours Tue and Thu. 1:00-1:30. Normally my office hours are in my office Lass. 3049 but now are on zoom.

Programming Assignments

There will be three programming assignments involving process operations, threads and synchronization and memory management. The programming language is C and the programs will have to run on our Linux systems. Each assignment is worth 10%.

Tests

There will be a midterm worth 25% and a final worth 45%. The final will cover all the material in the course. Both the midterm and the final will be on eclass, open book.

Text

The text is A. Silberschatz, P.B. Galvin, G. Gagne, “Operating System Concepts,” 10th Edition, John Wiley & Sons, 2018.

Last Modified: May 11 2021