67808 – Operating Systems Course
|
Course Plan
| Date | Material | Reading | Notes | |
|---|---|---|---|---|
| 1 | 09Mar09 11Mar09 | PURIM: no exercises in first week! Ex1: cost of trap DEADLINE: 26 Mar 2009 |
||
| 12Mar09 | Introduction What the operating system does Hardware support for privileged execution |
Stallings 2.1, 1.4 Silberschatz 1.1, 1.5, 2.3 |
PDF Background on Architecture: |
|
| 2 | 16Mar09 18Mar09 | Administration and rules Introduction to Unix and system calls Explanation of ex1 |
Bach 1 | PDF |
| 19Mar09 | Processes What is a process Processes vs. threads Motivation for multiprogramming |
Stallings 3.1, 3.4-5, 4.1 Silberschatz 3.1, 4.1-3 |
||
| 3 | 23Mar09 25Mar09 | Signals Signals in unix, signal races |
Online guide: Signals Online guide: Static C Libraries |
PDF |
| 26Mar09 | CPU scheduling Metrics and dependence on workload Preemption and priority-based scheduling |
Stallings 9 Silberschatz 5.1-3 |
||
| 4 | 30Mar09 01Apr09 | User-Level Threads Implementing threads with setjmp and longjmp Explanation of Ex2 Ex2: a user-level thread library DEADLINE: 30 Apr 2009 |
Stallings 4.1 Bach 6.4 |
PDF |
| 02Apr09 | Concurrency Problems with concurrent access to shared data Mutual exclusion algorithms Semaphores |
|||
| PESAH | ||||
| 5 | 20Apr09 22Apr09 | PTHREADS POSIX threads programming |
Online guide: PThreads cpp files | PDF |
| 23Apr09 | Deadlock The problem of deadlock Avoidance and prevention of deadlock |
Stallings 6.1-6 Silberschatz 7.1-5 |
||
| 6 | 27Apr09 29Apr09 | YOM HA'ATZMA'UT: no exercises! | ||
| 30Apr09 | Memory management Structure of the address space Segmentation and contiguous allocation |
Stallings 1.5, 7.1-2, 7.4 Silberschatz 8.1, 8.3, 8.6 |
||
| 7 | 04May09 06May09 | Concurrent programming problems Readers-writers lock Ex3: concurrent programming DEADLINE: 21 May 2009 |
PDF |
|
| 07May09 | Virtual memory Paging concepts, hardware support, and page replacement algorithms Thrashing and swapping |
Stallings 7.3, 8.1-2 Silberschatz 8.2, 8.4-5, 9.1-6 |
||
| 8 | 11May09 13May09 | Memory Management Hardware support in real systems |
Silberschatz 9 | PDF |
| 14May09 | File Systems What is a file File naming and directories Data access and caching |
Stallings 12.1, 12.3-4, 16.2 Silberschatz 10.1, 10.3, 10.6, 14.4-5 |
PDF Disk access: |
|
| 9 | 18May09 20May09 | Structure of the traditional Unix file system Ex4: LRU replacements DEADLINE: 8 Jun 2009 |
Silberschatz 12, 14 | PDF |
| 21May09 | YOM HASTUDENT: no lecture | |||
| 10 | 25May09 27May09 | UNIX file system API | Bach 4 | PDF |
| 28May09 | SHAVU'OT: no lecture | |||
| 11 | 01Jun09 03Jun09 | Internet Sockets API Ex5: socket programming DEADLINE: 22 Jun 2009 |
Online guide cpp files | PDF |
| 04Jun09 | Communication Naming and name servers Programming interfaces Client-server systems |
Stallings 14.1 Silberschatz 3.4-6 |
||
| 12 | 08Jun09 10Jun09 | Inter Process Communication (IPC) | Online guide | PDF |
| 11Jun09 | Protocol stacks Layered network model TCP/IP TCP congestion and flow control |
Stallings 13.1-2 Silberschatz 16.6 |
PDF ISO OSI: |
|
| 13 | 15Jun09 17Jun09 | Fun stuff Random numbers |
PDF |
|
| 18Jun09 | Performance evaluation Simulation, analysis, and workloads Queueing theory and the M/M/1 queue Open vs. closed systems |
PDF Self Similarity: |
||
| 14 | 22Jun09 24Jun09 | Security | PDF | |
| 25Jun09 | Advanced Topics Distributed systems: principles, remote file access, and load balancing Security and authentication Operating system structure: layering and microkernels |
Stallings 2.3, 4.3 Silberschatz 2.8 |
||
Books