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 |
|
||||||||||||
| Links | |||||||||||||
| Materials |
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
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.