Welcome Schedule Lab Hours

CSE 361: Introduction to Systems Software, Fall 2019

Instructor Teaching Assistants When & Where
Angelina Lee
Office hours:
Monday / Wednesday,
5:30-6:30pm Jolley 516
Zihao Chen, Noah Goldstein (head TA),
Yuchen Han, Clayton Knittel, Michael Liu,
Connor Monahan, Richard Wu, Yiheng Yao
Monday / Wednesday,
4-5:20pm Lopata 101



All enrolled students will be automatically signed up for the Piazza site. Please register as soon as you get your invitation. All questions should be posted to Piazza. Questions of a personal nature can be submitted as a private message. All questions emailed directly to the instructors or the TAs will receive the response "Please repost to Piazza," where both the question and the answer will reach its full audience. It is in everyone's interest that we maintain this policy; this is absolutely the most effective way to communicate.

Course Description

Introduction to the hardware and software foundations of computer systems. This course provides a programmer's perspective of how computer systems execute programs, store information, and communicate. The course material aims to enables students to become more effective programmers, especially in dealing with issues of performance, portability and robustness. It also serves as a foundation for other system courses, such as compilers, networks, and operating systems, where a deeper understanding of systems-level issues is required. Topics covered include: machine-level code and its generation by optimizing compilers, performance evaluation and optimization, computer arithmetic, memory organization and management, and supporting concurrent computation.


CSE 131 and CSE 132

Suggested prerequisite: Having CSE 332 helps, but it's not required. CSE 260 or something that makes you think a little bit about hardware may also help. There is no single class that will serve as the perfect prerequisite, but certainly having a few computer science classes under your belt will be a helpful preparation.

Required Text

Bryant and O'Hallaron, Computer Systems: A Programmer's Perspective, Third edition, Pearson, 2015.
(ISBN-10: 013409266X / ISBN-13: 978-0134092669)

Recommended Text: Kernighan & Ritchie, The C Programming Language, Second Edition, Prentice Hall, 1998.
(ISBN-10: 0131103628 / ISBN-13: 978-0131103627)

Other Material

Lecture notes, lab assignments, sample exams and their solutions will be posted on Piazza.

Grading Policy

Midterm: 20% Final: 25% Labs: 55% (Breakdown: 10/11/11/11/12)

Late Policy

You have two late days per project. It's automatically granted, so you don't even need to ask me or let me know that you want to use them. However, this also means that, beyond those two days, it will be very unlikely to get any more extension on the project.


The midterm exam will be in class on October 16 (Wednesday).
The final exam will be on Friday, December 13, from 6-8pm.
Plan to attend both. No alternate exam times will be available.

Disability Resources

Students with disabilities or suspected disabilities are strongly encouraged to both bring any additional considerations to the attention of the instructor and make full use of the University's Disability Resource Center.

Academic Integrity

Short version: Do not cheat.
Medium version: Violations of the Student Academic Integrity Policy include, but are not limited to:
(0) Looking for solutions online, (1) Plagiarism, (2) Cheating on an Examination, (3) Copying Or Collaborating On Assignments Without Permission, (4) Fabrication Or Falsification Of Data Or Records, (5) Other Forms Of Deceit, Dishonesty, Or Inappropriate Conduct.
Long version: see the Undergraduate Student Academic Integrity Policy.