CS 350 - Operating Systems

Course Outline

Lectures

Section Time / Days Bldg Room Instructor
LEC 001 01:00-02:20 Tue Thu MC 2017 Zille Huma Kamal
LEC 002 02:30-03:50 Tue Thu MC 2017 Zille Huma Kamal


Online Discussion Forum (Piazza)


Course Personnel and Office Hours

Instructors

Name Contact Office Hours
Zille Huma Kamal kzillehu@uwaterloo.ca
(Include CS350 in subject line)
Please use Piazza for general questions and comments.
Fri 10am-12pm (noon)
Teams
or by appointment.

Instructional Apprentices (IA)

Name Contact Office Hours
Haoyu Gu Please use Piazza for questions and comments. TBD
Aimilios (Emil) Tsalapatis Please use Piazza for questions and comments. TBD

Instructional Support Coordinator (ISC)

Name Contact Office Location
Olga Zorin ozorin@uwaterloo.ca, x33005
Contact for questions regarding verification of illness or other documents, enrollment, alternative arrangements, or other administrative questions.
DC 3115


Course Description

An introduction to the fundamentals of operating system function, design, and implementation. Topics include concurrency, synchronization, processes, threads, scheduling, memory management, file systems, device management, and security.

Course Objectives

Provides an introduction to operating systems: what they do, how they are used, and how they are implemented.

Course Overview

Recommended text

Operating Systems: Three Easy Pieces by R. Arpaci-Dusseau and A. Arpaci-Dusseau.

This is an on-line textbook, available as a free download in PDF format, or for purchase in hard copy. Links to the textbook are available from the reading materials page.

Required Course Notes

You are required to bring the course notes with you to class and to take notes during class. The course notes are available from the reading materials page. You can print them or download them to your computer or mobile device for use during class. The course notes are not intended to be stand alone. Class attendance is required.


Assignments

All the assignments should be submitted electronically. Submission instructions are found in the assignment specifications.

Assignment Weight of course grade
A0 2%
A1 11%
A2 8%
A3 14%
TOTAL 35%

Assignments marks can be viewed using command line. Instructions will be posted on Piazza.

Assignment marking reappraisal requests:
If there is a problem with the marking your assignment, you may request that your assignment be reappraised. To do this:

Slip Days Policies

Each assignment has a due date and a due time, which will be posted on the course web page. Assignments use a system of "slip days" to give you some flexibility with the assignment deadlines. Each person starts the term with five (5) slip days, which can be used to push back assignment deadlines. Slip days work as follows:

Assignments that are submitted late (with no slip days to cover them) will not be accepted and will receive a mark of 0%.


Grading Scheme

First, component marks will be determined as follows:

Component Weight Description
A 35% Your weighted average grade on assignments, expressed as a percentage, and calculated according to the individual assignment weights above.
M 20% (or 15%, if needs to be online) Your midterm exam grade, expressed as a percentage.
F 45% (or 30%, if needs to be online) Your final exam grade, expressed as a percentage.

Note that if any exam has to be scheduled online, the exam portion of the grade difference for the online exam will be proportionally spread across the assignments.

Then, we will apply the following algorithm to determine your final course grade:

Normal  = 0.35*A + 0.20*M + 0.45*F 
Exam = (0.20*M + 0.45*F) / 0.65

if ( Exam < 50% ) {
    Course Grade = min (46, Normal, Exam)
} else {
    Course Grade = Normal
}    

Note in particular that you must pass the weighted average of the midterm and the final exam in order to pass the course.


Mental Health

If you or anyone you know experiences any academic stress, difficult life events, or feelings like anxiety or depression, we strongly encourage you to seek support.

On-campus Resources

Off-campus Resources


Diversity

It is our intent that students from all diverse backgrounds and perspectives be well served by this course, and that students' learning needs be addressed both in and out of class. We recognize the immense value of the diversity in identities, perspectives, and contributions that students bring, and the benefit it has on our educational environment. Your suggestions are encouraged and appreciated. Please let us know ways to improve the effectiveness of the course for you personally or for other students or student groups. In particular:


Academic Integrity

Academic Integrity: In order to maintain a culture of academic integrity, members of the University of Waterloo community are expected to promote honesty, trust, fairness, respect and responsibility. All members of the UW community are expected to hold to the highest standard of academic integrity in their studies, teaching, and research. The Office of Academic Integrity's website contains detailed information on UW policy for students and faculty. This site explains why academic integrity is important and how students can avoid academic misconduct. It also identifies resources available on campus for students and faculty to help achieve academic integrity in - and out - of the classroom.

MOSS (Measure of Software Similarities) is used in this course as a mean of comparing students' assignments to ensure academic integrity.

Grievance: A student who believes that a decision affecting some aspect of his or her university life has been unfair or unreasonable may have grounds for initiating a grievance, as outlined by Policy 70 - Student Petitions and Grievances. When in doubt please be certain to contact the department's administrative assistant who will provide further assistance.

Discipline: A student is expected to know what constitutes academic integrity, to avoid committing an academic offence, and to take responsibility for his or her actions. A student who is unsure whether an action constitutes an offence, or who needs help in learning how to avoid offences (e.g., plagiarism, cheating) or about 'rules' for group work/collaboration should seek guidance from the course instructor, academic advisor, or the undergraduate Associate Dean. For information on categories of offences and types of penalties, students should refer to Policy 71 - Student Discipline Students may also view the University's Guidelines for the Assessment of Penalties.

Avoiding Academic Offenses: Most students are unaware of the line between acceptable and unacceptable academic behaviour, especially when discussing assignments with classmates and using the work of other students. For information on commonly misunderstood academic offenses and how to avoid them, students should refer to the Faculty of Mathematics Cheating and Student Academic Discipline Guidelines.

Please Notes that: If you took the course previously and wish to reuse you assignments, you may, IF:

  1. you request permission, by email, of an instructor, AND
  2. your previous assignments were NOT penalized for cheating previously, AND
  3. you understand that we will be running anti-cheating software on your submission again AND the results may differ.

Appeals: A decision made or penalty imposed under Policy 70 - Student Petitions and Grievances (other than a petition) or Policy 71 - Student Discipline may be appealed if there is grounds to do so. A student who believes he or she has a ground for an appeal should refer to Policy 72 - Student Appeals.


Note for Students with Disabilities: The AccessAbility Services (AAS), located in Needles Hall, Room 1401, collaborates with all academic departments to arrange appropriate accommodations for students with disabilities without compromising the academic integrity of the curriculum. If you require academic accommodations to lessen the impact of your disability, please register with them at the beginning of each academic term.