Class Webpage: CIS343
Operating Systems
Computer Science Dept Spelman College Atlanta, GA 30314 Course NEWS: Assignment due date is postponed to Fri, 8am, Apr. 16 2004. Office hours are cancelled tomorrow because the building is closed, and will resume on Monday. |
Course Overview
Instructor Information
Lectures
Programming
Assignments
Labs
Homework
|
Course OverviewWelcome to the operating systems(OS) course at Spelman College. This is a Junior level course for computer science majors. The prequisites of this course are CIS213 (Foundations of Computer Science). In many ways this course is like a capstone for the first few years of CS undergraduate study. An operating system is perhaps the most complex collection of software that exist. In this course you will learn the concepts needed for designing modern operating systems. We will be discussing how the OS interfaces with the application software and the hardware of the computer system. We will investigate all of the key features of a modern operating system including process/thread scheduling and management, memory management, deadlock detection and avoidance, file management, disk scheduling and management, and some collection of advanced topics including security and networking. My philosophy behind the way the class is structured is that "you learn by doing". This reinforces the lecture material, and allows you to experience the subtle differences between ideas/concepts and implementation. For this reason, this class has a significant implementation component with a decreased amount of "questions and answers" required homework assignments. The implementation component is based on a series of projects that have been nicely integrated with the laboratory component of the course. The projects are stand-alone systems programming assignments that will be introduced in lab. You are given a week or more for each project. Projects are considered individual work, but you may consult with others on ideas. InstructorProf. Charles R. Hardnett Room 219 Tapley 404-270-5880 Office Hours: M 2p-4p, W 1p-3p, and by appt. TAsShelley Robinson Room 227 or 223 Science Bldg Office Hours: Sun 6-8p, Thu 6-8pm, Mon 8-9p Lecture LinksThe lecture notes are provided as PDF files where 2 slides are printed per page to save trees J. The lectures are listed in order by chapter, but not necessarily the order in which they will be covered. |
|
|
Project AssignmentsThe project assignments are extensions of the lab work. Lab LinksThis course is accompanied by a 1 hour lab that has required attendance. The labs will serve as the means to reinforce lecture material and provide introductions to the programming assignments. The lab materials are located at the ends of the selected chapters. Below is the lab schedule for the semester including the content. Self-Study Questions (Homework)Self-Study assignments are not graded in this course. The solutions are available in my office. Homework should be completed to keep up with the concepts in class as well as prepare you to take quizzes and exams. In general, the higher numbered questions are the more difficult questions. Chapter 1 1, 3, 5, 6, 7, 8, 9, 10, 16, and 17 Chapter 2 1, 3, 5, 7, and 11 (most of these will require you to write some code. The code is minimal. If you have trouble, consult the solutions. This practice will help you with your lab work) Chapter 3 1, 2, 3, and 4. (if you desire to do #5 or #6, please see me) Chapter 4 1, 2, 3, 4, 6, 7, 8, 10, 15, and 17 Chapter 5 1, 2, 3, 5, 6, 7, 9, 11, 12, and 14 Chapter 6 1, 2, 3, 4, 5, 6, and 7 (#8 is an interesting programming problem) Chapter 7 1, 3, 4, 5, 6, 7, 8, 9, and 10 Chapter 8 1, 3, 4, 5, 7, and 10 Chapter 9 1, 2, 3, 7, 8, and 9 Chapter 10 1, 2, 3, 4, 7, and 11 Chapter 11 1, 2, 4, 5, 6, 7, 8, 9, and 12 Chapter 12 1, 2, 4, 5, 9, 10, 11, 12, and 17 Chapter 13 6, 7, 8, 9, 11, and 16 (download this mail file) Chapter 14 1, 2, 3, 4, 5, 6, 7, 14, and 15 Chapter 15 1, 2, 4, 5, 6, 7, and 8 Supplemental MaterialThis material is to be used by the students as a supplement to the other materials in the class. C++ Reference (C libraries also) Solaris Software Developer Page (General Page) Programming API (Interesting for this class) The Spelman College CS Dept Standard Coding Style Back to TOP |