ECE 329 Computer Systems Structures
Fall 2005

In this course students will learn the basics of operating systems, including the creation, management, and scheduling of threads and processes; process communication and synchronization; memory management; file systems; and protection. Programming assignments connect the theory with practice and enable students to further develop their programming skills.

Syllabus

Schedule

Week Topic Assignment
1 introduction / overview  
2 C programming language assignment #1 (9/7 W)
3 computer and O/S structures  
4 processes assignment #2 (9/21 W)
5 threads  
6 CPU scheduling I exam #1 (10/7 F)
7 CPU scheduling II  
8 process synchronization I assignment #3 (10/19 W)
9 process synchronization II  
10 deadlocks assignment #4 (11/7 M)
11 C++ programming language  
12 processes and threads on Windows exam #2 (11/18 F)
13 [break]  
14 file systems assignment #5 (12/7 W)
15I/O systems  

Final exam:  12/16 F, 8:00 - 11:00 AM

 

Textbook and Resources
Textbook:

Lectures

Lectures and review questions courtesy of Bill Reid:
 
The C programming language lecture
Chapter 1: Intdoduction lecture review questions
Chapter 2: Computer system stductures lecture review questions
Chapter 3: Operating system stductures lecture review questions
Chapter 4: Processes lecture review questions
Chapter 5: Threads lecture review questions
Chapter 6: CPU scheduling lecture review questions
Chapter 7: Process synchronization part1  part2 review questions
Chapter 8: Deadlocks lecture review questions
Chapter 9: Memory management lecture review questions
Chapter 10: Virtual memory lecture review questions
Chapter 11: File system interface lecture review questions
Chapter 12: File system implementation lecture review questions

C function reference courtesy of Bill Reid:

Assignments

To complement the theory with practice, you will implement several assignments in the C programming language.  Start by reading these general resources: Project guide -- Project grading -- Example project report .  These documents, as well as the assignments themselves, are courtesy of Bill Reid.
Administrivia

Instructor: Stan Birchfield, 207-A Riggs Hall, 656-5912, email:  stb at clemson
Grader: Nikhil Rane, email:  nrane at clemson
Lectures: 8:00-9:00am MWF, 227 Riggs Hall