CS170 : Operating Systems Fall 2012, 4 units http://www.cs.ucsb

advertisement
CS170 : Operating Systems
Fall 2012, 4 units
http://www.cs.ucsb.edu/∼cs170
Instructor: Prof. Tao Yang, Department of Computer Science (tyang@cs.ucsb.edu, HFH building, Room
5113).
Office hours: M W 11-12(or by appointments or just stop by).
TA: Wei Zhang (wei@cs.ucsb.edu), Qin Zhou (qinzhou@cs.ucsb.edu).
Class code, location, and time: Lec Mon/Wed 2-3:15 Phelp PHELP 1160. Discussion 08607 Tuesday
11:00-11:50 PHELP 1440 or 08615 Wednesday 1:00- 1:50 NH 1109
Description: This course covers the design and implementation of operating systems. The class projects
involve extensive C++/C programming to build an operating system with the following functionality: thread
management, multiprogramming, virtual memory, and file systems.
Prerequisite: Algorithms/data structure, C++/C, Linux or UNIX experience, and basic computer architecture knowledge.
Text Book: Operating System Concepts Essentials, by Abraham Silberschatz, Peter Baer Galvin, Greg
Gagne.
Or you may use “Operating System Concepts” , by Abraham Silberschatz, Peter Baer Galvin, Greg Gagne.
8th edition or 7 edition ( check with me for the previous edition). Publisher: John Wiley & Sons, Inc.
Additional reading material: Available from the class web site.
Discussion group: TA will create one and will add your emails from the registered student list.
Grading (tentative): Practice exercises (8%) Programming Projects (50% total. 10% for Project 1. 20%
for Project 2. 20% for Project 3). Midterm (16%), and Final (26%).
Tentative Schedule:
• Week 1. Introduction to OS. Processes and threads.
Students: Get familiar with C++/C and Linux programming such as Makefile. Form project groups
(2 persons/group).
• Week 2.: Nachos programming projects. Thread Synchronization.
• Week 3. More on Synchronization and project 1.
• Week 4. Address translation and memory management. File system interface. Project 2.
• Week 5. Virtual memory. More on Project 2.
• Week 6. File system implementation. Storage. Project 3.
• Week 7/8 I/O and storage. More on Project 3.
• Week 9. CPU Scheduling.
• Weeks 10. Advanced topics and preparation for the final exam.
Deadlines:
Oct 10 Wed: Project 0
Oct 15 Mon: Exercise set 1
Oct 22 Mon: Project 1
Nov 5 Mon: Midterm exam
Nov 9 Wed: Project 2
Nov 14 Mon: Exercise set 2
Nov 29 Mon: Project 3
Dec 3 Mon: Exercise set 3
Dec 8 week: Final exam
1
Download