Syllabus
CS 492 - Operating Systems

DISCLAIMER: This syllabus is a living document. While policies are unlikely to change dramatically, I reserve the right to change them if I deem it necessary to adapt to changing circumstances.

Course Info

Instructor Ryan Tsang
Contact rtsang1@stevens.edu
Office GS 247
Office Hours TBD
Prereqs CS 392
Course Assistants
Name Email OH
Aya Salama asalama@stevens.edu W 4:00pm - 6:00pm GS 226
Duncan Lynch dlynch3@stevens.edu T 11:00am - 1:00pm GS 328
Brayden Abo babo@stevens.edu T 12:00pm - 2:00pm GS 226
Links
Materials
  • Tanenbaum and Bos. Modern Operating Systems. 5th Edition.
  • Corbet, Rubini, and Kroah-Hartman. Linux Device Drivers. 3rd Edition. [Online]
  • (Optional) Bovet and Cesati. Understanding the Linux Kernel. 3rd Edition. [Online]
  • Additional material will be posted on Canvas as needed

Course Description

The use and internals of modern operating systems. Lectures focus on internals whereas programming assignments focus on use of the operating system interface.

Major topics include:

  • Processes
  • Concurrency and Multithreading
  • Memory Management
  • Virtual Memory
  • Shared Libraries
  • File System Data Structures
  • Input/Output

Student Learning Outcomes

  • I am able to explain how preemptively scheduled processes and threads provide an abstraction that a program is the only one executing.
  • I am able to explain how virtual memory provies an abstraction of physical memory.
  • I am able to explain how an operating system’s input/output architecture provides an abstraction that every data source or sink behaves identically.
  • I am able to explain how the data structures of the UNIX file system serve to map file names to blocks of a storage device.
  • I am able to explain in detail how a system call is made and returns.
  • I am able to write a multi-threaded C program that uses at least one classical synchronization mechanism to solve at least one classical synchronization problem.

Course Topics

Topic Reading
Introduction MOS 1, 10.2; LDD 1
Introduction to Linux MOS 1.6, 10.2; LDD 1
Processes and Threads MOS 2.1 - 2.2, 6.1
Scheduling MOS 2.4
Concurrency MOS 2.3, 2.5
Memory Management MOS 3.1 - 3.2
Virtual Memory MOS 3.3 - 3.5, 3.7
File Systems MOS 4.1 - 4.3
Input/Output MOS 4.4, 5.1 - 5.4

Grade Breakdown

Category Percentage
Quizzes 10%
Programming Assignments 30%
Group Project 20%
Midterm Exam 20%
Final Exam 20%

Letter grades will be assigned by bins tentatively as follows:

Grade Threshold
A ≥ 92.5%
A- ≥ 90.0%
B+ ≥ 87.5%
B ≥ 82.5%
B- ≥ 80.0%
C+ ≥ 77.5%
C ≥ 72.5%
C- ≥ 70.0%
D+ ≥ 67.5%
D ≥ 60.0%
F < 60.0%

Grade bins may be adjusted at the end of the semester.

Course Policies

You, your instructor, and the course assistants are bound by the Stevens Honor System. Honor System violations will always be reported to the Honor Board without exception.

Students are responsible for being aware of policies made via:

  • this syllabus
  • in-class
  • discord
  • email

Programming Assignments

  • Programming Assignments must be completed individually and the vast majority of your work should be original. You are encouraged to discuss the problems with your classmates but you must not share implementation details. If you are unsure whether you have shared too much, discuss the situation with the instructor before submitting.

  • If at any point you use even a small part of an external source, whether this is an online resource, another student’s code, or an LLM-generated example, you MUST cite the source. Copying from from an external source without citation will result in, at minimum, an automatic zero for the assignment.

  • We will use anti-plagiarism tools on assignments to verifiy similarity of solutions. If tools indicate a high likelihood of plagiarism, it will be treated as a violation of the Stevens Honor System.

  • Attempting to fake/hard-code results in any portion of a programming assignment will result in a zero on the entirety of the assignment.

Assignment Late Policy

Note: this policy applies only to programming assignments.

  • You have 3 total slip days to use throughout the semester for homework extensions. Slip days are applied automatically. Do not email the instructor to use them.

  • Following any slip days used, there will be a 20% penalty for each additional day late. The last day to submit an assignment for a maximum 50% penalty will be explicitly stated on the the assignment instructions.

  • There is a 10 minute grace period for assignment submissions before slip days or penalties are applied.

Exams and Quizzes

Exams and quizzes are conducted in-person. All accomodation requests must be registered with the Office of Disability Services at least 1 week before the relevant accomodation would apply.

  • You may not use any electronic devices during exams or quizzes. This includes, but is not limited to:

    • Laptops
    • Cell Phones
    • Tablets
    • Smart Watches
    • Smart Glasses
  • You may not work with or talk to other students during exams.

  • You may use one, double-sided, 8.5 x 11 page of handwritten notes on exams only. No other materials are permitted. Using notes that are not handwritten or larger than the indicated size will result in a penalty on the final exam score.

Regrade Requests

  • Students have 3 days after grades are posted to inform your grader and the instructor of a problem. Regrade requests submitted after 3 days have passed will be ignored.

Academic Integrity

Generative AI

You may use generative AI technology, e.g. Chat-GPT, with care to generate ideas and brainstorm. However, you should note that the material generated by these programs may be inaccurate, incomplete, or otherwise problematic. You may treat these programs like a virtual fellow student: you are allowed to “discuss” with them at a conceptual level (though be aware that the information they provide may be inaccurate), but you cannot share solutions or code in either direction. Presenting AI-generated work as your own is plagiarism. If you include material generated by an AI program, it should be cited like any other reference material and clearly attributed. Any plagiarism or other form of cheating will be dealt with under relevant Stevens policies.

Undergraduate Honor System

Enrollment into the undergraduate class of Stevens Institute of Technology signifies a student’s commitment to the Honor System. Accordingly, the provisions of the Stevens Honor System apply to all undergraduate students in coursework and Honor Board proceedings. It is the responsibility of each student to become acquainted with and to uphold the ideals set forth in the Honor System Constitution. More information about the Honor System including the constitution, bylaws, investigative procedures, and the penalty matrix can be found online.

The following pledge shall be written in full and signed by every student on all submitted work (including, but not limited to, homework, projects, lab reports, code, quizzes and exams) that is assigned by the course instructor. No work shall be graded unless the pledge is written in full and signed.

“I pledge my honor that I have abided by the Stevens Honor System.”

Reporting Honor System Violations. Students who believe a violation of the Honor System has been committed should report it within ten business days of the suspected violation. Students have the option to remain anonymous and can report violations online.

Accomodations

Stevens Institute of Technology is dedicated to providing appropriate accommodations to students with documented disabilities. The Office of Disability Services (ODS) works with undergraduate and graduate students with learning disabilities, attention deficit-hyperactivity disorders, physical disabilities, sensory impairments, psychiatric disorders, and other disabilities to help students achieve their academic and personal potential. They facilitate equitable access to the educational programs and opportunities offered at Stevens and coordinate reasonable accommodations for eligible students. These services are designed to encourage independence and self-advocacy with support from the ODS staff. The ODS staff will facilitate the provision of accommodations on a case-by-case basis.

For more information about Disability Services and the process to receive accommodations, visit their website. If you have any other questions, please contact the Office of Disability Services at disabilityservices@stevens.edu or by phone at 201.216.3748.

Disability Services Confidentiality Policy

Student Disability Files are kept separate from academic files and are stored in a secure location within the Office of Disability Services. The Family Educational Rights Privacy Act (FERPA, 20 U.S.C. 1232g; 34CFR, Part 99) regulates disclosure of disability documentation and records maintained by Stevens Disability Services. According to this act, prior written consent by the student is required before our Disability Services office may release disability documentation or records to anyone. An exception is made in unusual circumstances, such as the case of health and safety emergencies.

Inclusivity

Stevens Institute of Technology believes that diversity and inclusiveness are essential to excellence in academic discourse and innovation. In this class, the perspective of people of all races, ethnicities, gender expressions and gender identities, religions, sexual orientations, disabilities, socioeconomic backgrounds, and nationalities will be respected and viewed as a resource and benefit throughout the semester. Suggestions to further diversify class materials and assignments are encouraged. If any course meetings conflict with your religious events, please do not hesitate to reach out to your instructor to make alternative arrangements.

You are expected to treat your instructor and all other participants in the course with courtesy and respect. Disrespectful conduct and harassing statements will not be tolerated and may result in disciplinary actions.

Name and Pronoun Usage. As this course includes group work and class discussion, it is vitally important for us to create an educational environment of inclusion and mutual respect. This includes the ability for all students to have their chosen gender pronoun(s) and chosen name affirmed. If the class roster does not align with your pronouns and/or name, please inform the instructor of the necessary changes.

Religious Holidays. Stevens is a diverse community that is committed to providing equitable educational opportunities and supporting students of all ethnicities and belief systems. Religious observance is an essential reflection of that rich diversity.

Students will not be subject to any grade penalties for missing a class, examination, or any other course requirement due to religious observance. In addition, students will not be asked to choose between religious observance and academic work. Therefore, students should inform the instructor at the beginning of the semester if a requirement for this course conflicts with religious observance so that accommodations can be made for students to observe religious practices and complete the requirements for the course.

Mental Health Resources

Part of being successful in the classroom involves a focus on your whole self, including your mental health. While you are at Stevens, there are many resources to promote and support mental health. The Office of Counseling and Psychological Services (CAPS) offers free and confidential services to all enrolled students who are struggling to cope with personal issues (e.g., difficulty adjusting to college or trouble managing stress) or psychological difficulties (e.g., anxiety and depression). Appointments can be made by phone (201-216-5177), online, or in person on the 2nd Floor of the Student Wellness Center.

Emergency Information

In the event of an urgent or emergent concern about your own safety or the safety of someone else in the Stevens community, please immediately call the Stevens Campus Police at 201-216-5105 or on their emergency line at 201-216-3911. These phone lines are staffed 24/7, year-round. For students who do not reside near the campus and require emergency support, please contact your local emergency response providers at 911 or via your local police precinct. Other 24/7 national resources for students dealing with mental health crises include the National Suicide Prevention Lifeline (1-800-273-8255) and the Crisis Text Line (text “Home” to 741-741). If you are concerned about the wellbeing of another Stevens student, and the matter is not urgent or time sensitive, please email the CARE Team at care@stevens.edu. A member of the CARE Team will respond to your concern as soon as possible.