CMSC 421: Principles of Operating Systems

Instructor

Jason Tang (just call me Jason!)

Course Information

Course Title: CMSC 421: Principles of Operating Systems
Time & Place: Monday & Wednesday, 5:30pm – 6:45pm, Performing Arts 234

Prerequisites

This class has the following prerequisites:

Students must already be familiar with the C computer language. If you do not meet these prerequisites, you will be asked to drop the course.

Textbook

Operating System Concepts

The main textbook for this course is Operating System Concepts, Ninth Edition by Silberschatz, Galvin, and Gagne, colloquially known as the "Dinosaur Book".

The following books are also recommended. They are all excellent references and may prove useful in your future endeavors:

Course Description

An introduction to the fundamentals of operating systems. Formal principles are illustrated with examples and case studies of one or more contemporary operating systems.

This course requires several significant programming projects that teach how operating systems work by allowing students to write portions of a simple operating system. Thus, students should ensure that they've had a strong programming background before taking this class. Taking CMSC 421 at the same time as CMSC 341 is not recommended.

Topics

Grading

Your final grade will be computed from the following components:

    Homework (4 each 7%) 28%
    Projects (2 each 11%) 22%
    Midterm 20%
    Final Exam 30%
    Total = 100%

Your final letter grades will be based on the standard formula: 0 ≤ F < 60,   60 ≤ D < 70,   70 ≤ C < 80,   80 ≤ B < 90,   90 ≤ A ≤ 100. Curving, if any, will be determined after the final has been graded.

Grades are given for work done during the semester; incomplete grades will only be given for medical illness or other such dire circumstances.

Attendance

You are expected to attend all classes. If you miss a class, you are responsible for getting the notes and any verbal information given during class from a fellow classmate.

Homework and Projects

Programs are graded not just on correctness (producing the correct output) — neatness counts. Here neatness means that your program is well formatted (see Coding Standards and Indentation Standards), the output from your program is nicely presented, and that the logic in your program is straightforward. Sloppy code will be penalized.

If you cannot complete a programming assignment, you should still submit your code. Partial credit will be given for reasonable effort. Late work will not be accepted.

You will be submitting your programs electronically via the submit system. Assignments are normally due at exactly midnight, not several minutes afterwards. The deadline is strictly enforced by the submit system.

Once per semester, you may have a late submission, albeit with a 20% late penalty. Additional late submissions will not be graded and will be ignored.

Be aware that the GL system may go down from time to time. You are given ample time to complete your programs, so system downtimes are not necessarily an excuse for late submission.

Exams

There are two exams scheduled for this class. The midterm is on Wednesday, October 21. The final is Monday, December 14, from 6:00pm to 8:00pm.

Academic Integrity

When you submit your homework, project, and classwork, you are stating that the work was created by your own individual effort, or in the case of a group assignment, created solely by the effort of members of your group.

Receiving help from the instructor or from the teaching assistant does not violate this academic integrity policy.

You may also receive help from other sources. However, this help must be limited to:

The following is a non-exhaustive list of actions that clearly violate this academic integrity policy:

This policy recognizes that students can learn productively from many sources including from other students in the class. Thus, this policy allows small amounts of help but prohibits outright copying. Although, this leaves a gray area between "small amounts of help" and "outright copying", it is better that we live with some ambiguity than to have a clear-cut policy that deprives the students of productive learning opportunities. Students who have doubts about the propriety of an activity should consult the instructor.

Students who violate this academic integrity policy will receive a grade of 0 for that assignment. A second violation will also result in a reduction of one full letter grade in the student's final course grade. In the case where one student copies the program of another student, both students are considered to have violated this policy. Here, copying includes not just programs that are verbatim copies, but also programs that are substantially similar and could not have been produced independently.

Furthermore, all parties concerned will have their prior homework and programs checked.

Violations of this policy may be reported to the University's Academic Conduct Committee for further action. Egregious cases of cheating will be written up as a more serious infraction. In this case, you will not be allowed to drop the course. Also, a more serious infraction would appear as a permanent part of your student record and would be seen by potential employers when they ask for an official copy of your transcript.

For a more complete description of academic dishonesty, refer to the UMBC Undergraduate Student Academic Conduct Policy.

Email

In order to facilitate email communication, please observe the following guidelines for email sent to the instructor.

Class Lab

The ITE 240 Lab may be used by students enrolled in CMSC 421 for their project work. Students that are interested in using the lab should visit the Computer Science Department (ITE 325) to request access. The lab hours are Mon-Fri, 9:00am-9:00pm.

You will be able to access the lab using your UMBC student ID swipe cards. You must observe all the rules below, regarding usage of the lab:

Failure to observe all the lab rules will result in suspending your lab access, as well as further disciplinary actions as determined by Departmental and University policy.