Course Syllabus

Time and place: Mon/Wed, 3:00pm - 4:20pm, JTB 120
Class web page (slides and recordings): https://mars-research.github.io/cs5965/
Piazza sign up link: https://piazza.com/utah/fall2025/cs59656465  (sign up code: o3ffe3z4k2m)
Gradescope (homework assignments and quizzes): TBD
Office Hours: 
Anton - TBD
Class Overview

cs5965 teaches advanced topics in operating systems through a hands-on engineering approach. As a student in this class, you will build a small but functional operating system kernel. In contrast to cs6465 this is an implementation-heavy class (i.e., mostly working on the code).

We will use Rust (well, this is the language the industry will be using for building new systems code) to boot into main(), implement core pieces of the operating system: memory allocator, ELF loader, page table and address spaces, processes, and finally context switching and scheduling. We will spend some time learning the tools that are typically used for quick prototyping and debugging of a new kernel, e.g., QEMU/KVM emulator, GDB, etc. 

This class is for students who plan to stay in the systems field, not just building new OS kernels and hypervisors, but working on parts of modern cloud and datacenter infrastructure, be an expert in low-level systems security, be able to work on cycle-level code optimizations for warehouse-scale AI and big data systems, etc. I.e., you will have a rare skill to work with the teams developing macOS and iOS kernels, XNU, Windows and Linux kernels, novel hypervisors like Amazon Nitro and Firecracker, etc. This is a rare and potentially well-compensated skill.

This class is different from cs6465 taught in 2024. In the future, the idea is to have two versions of this class. This class (cs5965) focused on development and implementation and another cs6465 focused on research topics in the systems field.

Homework: 90%, in-class activities: 10%.
You can submit late homework assignments 3 days after the deadline for 90% of your grade.

Cheating policy

Working with others on assignments is a good way to learn the material and is encouraged. However, there are limits to the degree of cooperation that is permitted. Students may discuss among themselves the meaning of homework problems and possible approaches to solving them. Any written portion of an assignment, however, is to be done strictly on an individual basis. Note the School of Computing's Academic Misconduct Policy. BOTTOM LINE: You may not copy from another student or from any other source, and you may not allow another student to copy your work!! Any violation of the above is considered to be cheating and will result in a reduced or a failing grade in the class. TAs will be on the lookout for solution sets that appear very similar. Also, if your class rank in the assignments is significantly different from your class rank in the exams, only your rank in the exams will count towards your grade. 

School of Computing policies

SoC academic misconduct policy https://www.cs.utah.edu/academic-misconduct/
SoC academic policies https://handbook.cs.utah.edu/current/Academics/policies.php
CoE policies (updated per semester) https://www.coe.utah.edu/students/current/semester-guidelines/

Special needs

The University of Utah seeks to provide equal access to its programs, services and activities for people with disabilities. If you will need accommodations in the class, reasonable prior notice needs to be given to the Center for Disability Services, 162 Olpin Union Building, 581-5020 (V/TDD). CDS will work with you and the instructor to make arrangements for accommodations. All written information in this course can be made available in alternative format with prior notification to the Center for Disability Services. 

SafeU

The University of Utah values the safety of all campus community members. To report suspicious activity or to request a courtesy escort, call campus police at 801-585-COPS (801-585-2677). You will receive important emergency alerts and safety messages regarding campus safety via text message. For more information regarding safety and to view available training resources, including helpful videos, visit SAFEU

Sexual Misconduct

Title IX makes it clear that violence and harassment based on sex and gender (which Includes sexual orientation and gender identity/expression) is a civil rights offense subject to the same kinds of accountability and the same kinds of support applied to offenses against other protected categories such as race, national origin, color, religion, age, status as a person with a disability, veteran's status or genetic information. If you or someone you know has been harassed or assaulted, you are encouraged to report it to the Title IX Coordinator in the Office of Equal Opportunity and Affirmative Action, 135 Park Building, 801-581-8365, or the Office of the Dean of Students, 270 Union Building, 801-581-7066. For support and confidential consultation, contact the Center for Student Wellness, 426 SSB, 801-581-7776. To report to the police, contact the Department of Public Safety, 801-585-2677(COPS).