Back to: Rensselaer Home Gerard's home page Gerard's courses
Fall 2006
Course: CSCI-4210H01 Operating Systems
 
Course Syllabus Notes Internet and Email Grading Course Policy Scores Assignments Exams Examples Links FAQ WebCT / LMS

Syllabus

Instructor Name: Gerard Weatherby Starting Date of Course: September 6, 2006
Office Location: None
Office Hours: By appointment Email Address: gerardw@rh.edu

Meetings:

Wednesdays 5:30-8:30 pm
Overview:
In this course, we'll cover the fundamentals of operating systems. About 1/4 of the course is devoted to developing a minimum set of proficiency in the C++ programming language. Note that this is a technicial course designed for the computer science professional; a substantial amount of programming is required. A substantial amount of programming is required.

Prerequisites:

CISH-4010 (Discrete Mathematics) and CISH-4020 (Object Structures). You should be able to write simple programs in some computer language and understand the following concepts: classes and objects, inheritance, encapsulation, polymorphism.

Objectives:

Texts:
A. C++ Primer, 3rd Edition, Stan Lippman, ISBN 0201824701 or C++ Primer, 4th Edition, Lippman, LaJoie, Moo, ISBN 0201721481
B. Operating System Concepts, Seventh Edition, Silberschatz, Galvin, Gagne, ISBN 0-471-69466-5
Reading assignments should be done before the listed class meeting. As there is a lot of material, especially in the C++ Primer, students may wish to skim the material and then review in detail those items mentioned in class. In general texts do not need to be brought to class.
Note the midterm and final will occur during the first part of class.

Hardcopy notes will not be distributed. Students should download and print the notes before coming to class.

Meeting Day Date Topic Full screen slides Reading In-class drawings
1 Wed 09/06/06 C++ Intro C++ Intro   Dwgs
2 Wed 09/13/06 C++ memory C++ memory A. 1-8 Dwgs
3 Wed 09/20/06 operators, STL operators, STL A 9-14 16 17 20 Dwgs
4 Wed 09/27/06 Overview , Processes Processes B 1-3 Dwgs
5 Wed 10/04/06 Threads Threads B 4 Dwgs
6 Wed 10/11/06 CPU Scheduling CPU Scheduling B 5 Slides with dwg
7 Wed 10/18/06 Process Synchronization , Process Synchronization , B 6 Slides with dwg, Dwgs
8 Wed 10/25/06 Deadlocks Deadlocks B 7 Dwgs
9 Wed 11/01/06 Memory Management Memory Management B 8 Dwgs
10 Wed 11/08/06 midterm Virtual Memory Virtual Memory B 9
11 Wed 11/15/06 File Systems, I/0 Subsystems, Mass Storage File Systems, I/0 Subsystems, Mass Storage B 10-14
12 Wed 11/22/06 Protection, Security Protection, Security B 14 15
13 Wed 11/29/06 Advanced Memory and Security ,Linux Advanced Memory and Security ,Linux B 16-18
14 Wed 12/06/06 Real time systems, Presentations Real time systems, Presentations B 19
15 Wed 12/13/06 Presentations / Final    

Internet and e-mail

Some information necessary to succeed in the course will only be available via the Operating System Internet web page or the list server (see below.) The SUN accounts automatically provided to each student provide access to an e-mail account and web browser, or you may use your own. Students should:

Operating Systems Grading
Assignments 180
Report 80
Mid-term 50
Final 50
Total 360

Assignments are one or two weeks in length and utilize the C++ language to implement and emphasize concepts presented in lecture. Assignments may build on previous assignments. Assignments will be graded on the correct implementation of data structure(s), correct use of programming language constructs, robustness of implementation, and documentation.

You must research and provide a written and oral presentation on some aspect of a particular operating system. Topics must be approved by the instructor. See the assignments page for more information.

The midterm and final exams are closed book and notes, and last 1 1/2 hours in length. The final exam will cover the entire course but will emphasize material presented in the final semester.

There are specific requirements for hardcopy assigments which must be followed.

The student is responsible for ensuring the material required by the assignment is turned in. Excuses such as 'Someone from work must have taken my printout' and 'I know I forgot the output but you can see the code is correct' will not be accepted. There are no redos, extra credit projects, etc.

The only deviations from this policy will be due to serious injury or illness of the student or immediate family member. Contact me as soon as practical in this event.

Final grades will be curved using a modified Z-score. Raw scores above 90% or a z-score above 1 (i.e. your score is more than one standard deviation above class average) will be awarded an "A." Raw scores above 80% or a z-score above -1 will be awarded a "B." The instructor may, at his discretion, lower the minimum score for an A or B at the end of the semester based on inspection of the score distribution.

Compilers

All assignments will be coded in C++. Some assignments will include starting code. The starting code will be developed using Visual C++ 6.0, which is also the compiler used in the classrooms. A C++ compiler is located on the SUN system, but you may have to port some code from Windows to Unix. You may also purchase a commercial C++ compiler. The Microsoft .NET version of Visual C++, Borland, or Linux C++ compilers may also be used. The instructor will only provide support for the Visual C++ or Sun C++ development environments.

Operating Systems Policy

Office hours are class meeting days by appointment. Since class meets one day a week, attendance is essential and will be noted. You are highly encouraged to utilize the listserv and email to contact me with questions and problems. Assignments must be handed in on time. In order to allow prompt return of assignments, they will not be accepted late. In general, makeup exams will not be given. If you anticipate being unable to attend class, please notify me before class to make arrangements for any assignments that may be due. If an emergency arises, please contact me.

In order to facilitate the answering of questions, Rensselaer at Hartford has set up a listserv. This will allow you to contact each other as well as myself with questions pertaining to course content, assignments, or the use of the compiler. To subscribe, send an email to "listserv@rh.edu" and include the line "subscribe opsys421" in the message body. See http://www.rh.edu/tis/listserv.html. Alternatively, you can use a the use the form found on http://www.charlesconsulting.com/scripts/listserv.pl. To unsubscribe, use the instructions you received when you subscribed or use this link. Students are responsible for information posted to the listserv. Questions regarding assignments or general questions should sent to the listserv. This ensures all students have access to the same information. Only questions regarding a specific situation should be sent directly to me. General questions sent directly to me may be returned unanswered with a request to repost the question to the listserv.

Academic Integrity

Student-teacher relationships are built on trust. For example, students must trust that teachers have made appropriate decisions about the structure and content of the courses they teach, and teachers must trust that the assignments which students turn in are their own. Acts, which violate this trust, undermine the educational process.

The Rensselaer Handbookdefines various forms of Academic Dishonesty and procedures for responding to them. All forms are violations of the trust between students and teachers. Students should familiarize themselves with this portion of the Rensselaer Handbook and should note that the penalties for plagiarism and other forms of cheating can be quite harsh.

The expectation is every student will do their own work. Discussion, exchange of ideas, assistance in debugging or illustrating concepts with sample code is okay and encouraged, but the expectation is each student will submit assignments they have typed, compiled, and testing themselves. This is the default condition at Rensselaer unless otherwise specified by the instructor. Any form of collaboration on the individual portions of this course will be considered as cheating and I will take immediate action to stop such behavior. Penalties for students who violate the code of academic honesty include dismissal from Rensselaer at Hartford. (See the student catalog or review online at http://www.rh.edu/publications/handbook/current/policies.html)

Hardcopy requirements
The following requirements apply to hardcopy submissions:

Inclement weather policy
See official Rensselaer at Hartford policy. Bottom line: your safety is more important than getting to class. If you feel you're circumstances preclude you from getting here safetly, don't come. Email me when you can.

Valid HTML 4.01!Valid CSS!



Last Updated: Thursday, February 22 2007 08:46
Rensselaer at Hartford, 275 Windsor St, Hartford, CT 06120
For more information: 1-800-433-4723 or info@rh.edu
Please send questions, comments or suggestions to webmaster@rh.edu