http://www.cs.uiuc.edu/class/sp07/cs241/icons/info.gif

CS 241 Fall 2009
System Programming

 

 

11-11:50am MWF

1404 Siebel Center for Computer Science

 

 

Schedule and Lecture/Discussion Notes

Important: The table below is an approximate timeline and content. It may change slightly from time to time to accommodate the pace of the class. Note that all lecture slides are linked-in until the end of the semester. Slides are only an aid and should not be thought of as a comprehensive study source. Slides given in class may differ slightly from those online. Your attendance is kindly requested. For details and background on topics covered in class please refer to the reading list.  

Note on Mapping: If you have Stallings 5th edition and RR 2nd edition, here is a mapping of the current textbook chapters to Stallings and RR chapters:

1 (S1), 2(RR1), 3(RR-appendix A), 4(S3), 5(S4), 6(RR2), 7(RR3), 8(RR12), 9(S5), 10(S6), 12(RR13), 13(RR14), 14(S9), 15(RR8), 16(RR9), 17(RR-appendix B), 18(S11), 19(S12), 20(RR5), 21(S7), 22(S8).

Week

Date

Lecture

Topic

Readings

 MPs and HWs

  Comments

Discussion

1

08/24-08/28

1

Introduction and Course Overview (ppt)

     

None

2

Introduction to an OS (ppt)
Brief Introduction to C (ppt)
Common Pitfalls in C Programming (ppt)

 


How to study guide

 

 

3

 

Chapter 1

 

 

2

08/31-09/04

4

 Chapter 2

C tutorial here.

MP0 Out

SMP0: Experiment with the POSIX programming environment, C and refresh your knowledge from cs225

C Programs
(ppt, pdf)

5

 

System Calls (ppt)

 

I/O Syscall tutorial here.

Use Chapter 3 for reference as needed.

Note: Chapter 3 gives a really good overview of UNIX survival skills: man pages, compilation, header files, libraries, macros, makefiles, debugging, etc -  all you need to know before you start using UNIX.

6

Processes and Programs (ppt)

Chapter 4 (Sec 3.1 - Sec. 3.4)

Chapter 7 (Sec 3.1 - Sec 3.4)

 

SMP1: Learn the basics of system calls for creating and managing processes.

3

09/07-09/11

7

No Lecture
(University Holidy)
 

MP0 Due
MP1 Out

 

 

Processes
(ppt, pdf)

8

Processes and Threads (ppt)

Chapter 5 (Sec 4.1), Chapter 7 (all), Chapter 8 (Sec 12.1 - Sec 12.4)

9

Threads (ppt)

Chapter 8 (all)

 

 

4

09/14-09/18

10

pThreads (ppt)

MP1 Due
MP2 Out

SMP2: POSIX Threads

Pthreads
(ppt, pdf, code)

11

Scheduling Principles (ppt)

Chapter 9 (Sec 5.1, 5.2), Chapter 11.

12

Scheduling Policies (ppt)

Chapter 9 (Sec 5.3)

 

 

5

09/21-09/25

13

Synchronization (ppt)

Chapter 12 (Sec 13.1-13.3),

Chapter 13

MP2 Due
MP3 Out

SMP3: Scheduling

Scheduling
(ppt, pdf)

14

Semaphores (ppt)

Chapter 14 (Sec 9.1, 9.2).

15

Semaphores and Mutex

 

 

6

09/28-10/02

16

Semaphores and Mutex

MP3 Due
MP4 Out

SMP4: Synchronization

Semaphores
(ppt, pdf, code)

17

Semaphores and Mutex (ppt)

18

Signals, Signal Mask and Modification of Signal Masks (ppt)

Chapter 15 (Sec 8.1 - Sec. 8.4)

 

 

7

10/05-10/09

19

Signals, Signal Handlers, Waiting for Signals, Signals and Threads (ppt)

Chapter 15 (all)

MP4 Due
HW1 Out

 

 

Signals & Timers (ppt, pdf, code)

20

Introduction to Timers And Clocks (ppt)

Chapter 16 (Sec 9.1 - Sec 9.3)

 

 

21

Introduction to Timers And Clocks (ppt)

Chapter 16 (Sec 9.1 - Sec 9.3)

 

 

8

10/12-10/16

22

Review for Midterm

 

HW1 Due

 

No Section

23

Midterm (Oct 14th; In-Class)

 

 

24

Classic Synchronization Problems (ppt)

 

 

9

10/19-10/23

25

Classic Synchronization Problems

MP5 Out

LMP1: Synchronizations, Deadlocks, and RAGs

MP5 + Deadlocks + Classical Synchronization Problems
(ppt, pdf, code)

26

Deadlock Handling (ppt)

Chapter 10 (Sec 6.1 - Sec 6.6)

 

 

27

Queueing Theory (ppt)

 

10

10/26-10/30

28

I/0 Devices and Files, filesystem, inodes, etc. (ppt)

 

 

 

File I/O
(ppt, pdf)

29

I/0 Devices and Files, filesystem, inodes, etc. (ppt)

 

 

 

 

30

I/0 Devices and Files, filesystem, inodes, etc. (ppt)

 

 

 

11

 

11/02-11/06

31

I/0 Devices and Files, filesystem, inodes, etc. (ppt)

 

MP5 Due
MP6 Out

LPM2: Memory Management

Memory Management
(ppt, pdf)

32

I/0 Devices and Files, filesystem, inodes, etc. (ppt)

 

 

 

33

Virtual Memory (ppt)

 

Paging Example (pdf)Effective Access Time Example (pdf)

Two-Level Page Table Examples(pdf),  

12

11/09-11/13

34

Virtual Memory (ppt)

 

 

Memory Management
Problem Set
(ppt, pdf)

 

35

Virtual Memory (ppt)

 

 

 

36

Virtual Memory (ppt)

 

 

 

13

11/16-11/20

34

Virtual Memory (ppt)

 

 

 

 

35

Networking (ppt)

 

 

 

36

Networking (ppt)

 

MP6 Due
MP7 Out

 

14

11/30-12/4

37

Networking (ppt)

 

 HW2 Out

Networking and Socket
(ppt, pdf, code)

 

38

Netwokring (ppt)

 

 

 

39

Applications

 

 

 

15

12/7-12/11

40

Applications

 

 HW2 Due

(No section, reading day)

 

41

Final Q&A

 

 MP7 Due

 

42

---