CSC 346 - Operating Systems
Fall 2002 - Section 00 - Curtis 206 - MWF 12:00-12:50
Course Description
Development of systems programming; operating system concepts including multiprogramming, time-sharing, concurrency, synchronization and deadlock problems, virtual memory management, file systems and resource-sharing.
Prerequisites
CSC 134, officially. However, students who have received a grade of B or better in CSC 133 would be well-equipped to take this course without having CSC 134.
Course Objectives
Textbook
Nutt, G.; Operating Systems, A Modern Perspective; 2 ed. Lab update; Addison Wesley; 2002. ISBN: 0-201-74196-2.
Course Resources
Resources for this course will be placed in the following location on the campus network: H:\users\nlippinc\csc346. Additionally, some Linux-related resources may be made available in Curtis 101.
Software
MS Visual C++ is required for Windows-based lab assignments and is available in computer labs on-campus. GNU gcc and g++ (Linux C, C++ compilers) are required for Linux-based assignments and are available in Curtis 101.
Instructor
Norman Lippincott
Asst. Professor, Computer Science
Office: Curtis 105
Phone: 610-437-4471, ext. 6197
e-mail:
nlippinc@cedarcrest.eduOffice Hours
Monday: 1:00-3:00, 5:30-6:30
Tuesday: 5:30-6:30
Wednesday: 1:00-3:00
Friday: 1:00-3:00
Assessment Overview
Grades for this course will be based on the following assessment items with weights as shown:
Lab Assignments (6) 50%
Tests (2) 25%
Final Exam 20%
Class Participation 5%
A final score is calculated as a weighted average and rounded to the nearest full percent. Final grade is then awarded according to the following scale:
93-100 A 73-76 C
90-92 A- 70-71 C-
87-89 B+ 67-69 D+
83-86 B 60-66 D
80-82 B- 0-59 F
77-79 C+
Assessment
Lab Assignments
Assignments for the course will consist of both lab-based and written components, and are to be done outside of class. Some assignments will be Windows-based and some Linux-based. All facilities needed to complete lab assignments are available in on-campus computer labs.
The assignments require the student to explore operating systems concepts in a hands-on environment beyond the theoretical aspects covered in class.
Tests
Tests will be written and will consist of short-answer questions, problems, and essays. Through tests, the student shows competence in operating systems terminology, underlying operating systems principles, and how those principles apply in specific situations.
Final Exam
The final exam format is the same as that of the tests, but longer.
Class Participation
Students who are active and attentive members of the class may receive up to 5 points for class participation. Students who engage in side conversations during class time should expect no more than 3 points for class participation.
Due Dates and Late Work
Assignments are due at the beginning of class on the day they are due. By turning in assignments on time your work will be graded and returned in a timely manner (typically within one week), and with comments as appropriate.
Work turned in late will be subject to any or all of the following:
Extra Credit
Requests for extra credit will be handled on a case-by-case basis. Typically, requests for extra credit will be granted for the purpose of improving a poor test score or assignment grade. Extra credit assignments will be directly related to the material that was the source of difficulty for the student, and gives the student a chance to show that she has, in fact, overcome that difficulty.
General Policies
Honor Philosophy
The Cedar Crest College Student Handbook, Honor Philosophy part III, Community Standards for Academic Conduct, includes the following:
"As a student at Cedar Crest College, each student shall:
Unless specifically designated by the instructor, assignments for this course are individual assignments, not group projects. It is reasonable and appropriate for students to discuss an assignment outside of class, particularly for programming projects. However, the actual assignment work, whether programming or written, is to be one’s own. It is not appropriate to collaborate on programming assignments, nor is it appropriate to copy another student’s program (or other assignment), alter the program’s (or assignment’s) appearance (e.g. changing formatting, variable names, output text), and present it as your own individual work. Evidence of such behavior will be considered a violation of the Honor Philosophy and will result in a grade of zero for the assignment. A second offense will result in a grade of "F" for the course.
Classroom Protocol
Appropriate classroom behavior is implicit in the Cedar Crest Honor Code. Such behavior is defined and guided by complete protection for the rights of all students and faculty to a courteous, respectful classroom environment. That environment is free from distractions such as late arrivals, early departures, inappropriate conversations, and any other behaviors that might disrupt instruction and/or compromise students’ access to their Cedar Crest College education.
Attendance
Regular attendance is an important factor contributing to student’s success in the class. Although much of the material covered in class comes from the textbook, some course content may come from instructor’s notes or other resources, and may be delivered only in lecture form. The student is responsible for all material covered in class, and should arrange to get notes from another student in the event of absence from class. The instructor’s notes are not available for perusal by the students.
Your instructor keeps an attendance record for the class, however this record does not directly affect the student’s grade. If a student has excessive absence and is not showing responsibility for the course material, an academic performance notice will be issued to the Advising Center.
If a student will be absent on the day of a test, arrangements for a makeup must be made in advance of the test. Failure to do so will result in a grade of zero for the test.
Students with Disabilities
Students with documented disabilities who may need academic accommodations should discuss these needs with their professors during the first two weeks of class. Students with disabilities who wish to request accommodations should contact the Advising Center.
Computer Classrooms
When classes are conducted in computer classrooms, the computers are to be used only for activities directly related to the class. Use of class computers for other activities, such as web browsing, e-mail, games, instant messaging, and so on, is not permitted. Be aware that such activity not only distracts you from the class, but distracts other students as well. Students who engage in such activity during class will receive a reduced class participation grade.
Course Schedule
The following is a tentative schedule for the course and may be adjusted as necessary during the semester.
|
Mon |
Wed |
Fri |
Topic / Reading |
Assignments |
|
8/26 |
Course Intro Ch. 1 – Introduction |
|||
|
8/28 |
||||
|
8/30 |
Ch. 2 – Using the Operating System |
Lab Assignment 1 Due: 9/13 |
||
|
9/4 |
||||
|
9/6 |
Ch. 3 – Operating System Organization |
|||
|
9/9 |
||||
|
9/11 |
Ch. 4 – Computer Organization |
|||
|
9/13 |
||||
|
9/16 |
Lab Assignment 2 Due: 9/27 |
|||
|
9/18 |
Ch. 5 – Device Management |
|||
|
9/20 |
||||
|
9/23 |
||||
|
9/25 |
Ch. 6 – Process Management |
|||
|
9/27 |
||||
|
9/30 |
Test 1 |
|||
|
10/2 |
Ch. 6 – Process Management (continued) |
Lab Assignment 3 Due: 10/18 |
||
|
10/4 |
||||
|
10/7 |
Ch. 7 – Scheduling |
|||
|
10/9 |
||||
|
10/11 |
||||
|
10/16 |
Ch. 8 – Basic Synchronization Principles |
|||
|
10/18 |
||||
|
10/21 |
Lab Assignment 4 Due: 11/1 |
|||
|
10/23 |
Ch. 9 – High-level Synchronization |
|||
|
10/25 |
||||
|
10/28 |
Ch. 10 – Deadlock |
|||
|
10/30 |
||||
|
11/1 |
Ch. 11 – Memory Management |
|||
|
11/4 |
Lab Assignment 5 Due: 11/15 |
|||
|
11/6 |
||||
|
11/8 |
Test 2 |
|||
|
11/11 |
Ch. 12 – Virtual Memory |
|||
|
11/13 |
||||
|
11/15 |
||||
|
11/18 |
Ch. 13 – File Management |
Lab Assignment 6 Due: 12/6 |
||
|
11/20 |
||||
|
11/22 |
||||
|
11/25 |
Ch. 14 – Protection and Security |
|||
|
12/2 |
||||
|
12/4 |
Ch. 16 – Remote Files Ch. 17 – Distributed Computing |
|||
|
12/6 |
||||
|
12/9 |
||||
|
Final Exam |