15-213/18-213/15-513: Introduction to Computer Systems (ICS)
18-613: Foundations of Computer Systems

Spring 2019
15-213/18-213 Lecture: TR 1:30-2:50, Rashid Auditorium, Seth Goldstein and Brandon Lucia
15-513: Lecture slides and videos via course web page, Brian Railing
18-613: 15-513 + additional lectures (schedule), TR 12:00-1:20, DH A302, simulcast to 9am--10:20am B23 110 (SV Campus), Franz Franchetti
12 units

The ICS course provides a programmer's view of how computer systems execute programs, store information, and communicate. It enables students to become more effective programmers, especially in dealing with issues of performance, portability and robustness. It also serves as a foundation for courses on compilers, networks, operating systems, and computer architecture, 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, networking technology and protocols, and supporting concurrent computation.

Course Syllabus

Prerequisites: 15-122


What's New?

  • 7 January 2019.
    • First day of class is January 15.
    • Lab 0 will be posted January 15 and is due January 22.
    • The first recitation will be on January 28.
    • There will be a Linux Boot Camp on January 20.
  • 6 January 2019.
    • Web page and syllabus are under construction. Should be complete by January 14.

Getting Help

Piazza Piazza
Email Please use Piazza for help, instead of email. Posts to Piazza are private by default.
Tutoring Drop in tutoring, at the Tepper Quadrangle 3807 Corridor (Monday: 8:30-11pm, Wednesday: 8:30-11pm)
Office Hours WeH 5207, Sunday-Thursday, 5pm-9pm (5:30pm on Thursday)
We use an online queue. You can add yourself from anywhere, but you must be in the room when your name is called.
Office hours for Profs. Goldstein, Lucia, Railing, and Franchetti are given below.

Course Materials

Schedule Lecture schedule, slides, recitation notes, readings, and code
18-613 18-613 Lecture schedule and specific material
Assignments Details of assignments, due dates, and policies
Exams Information about quizzes, exams, and final
Lab Machines Instructions for using the lab machines
Resources Additional course resources

Course Information

For details See the course syllabus for details (below is just a few overview bits).
Lectures TR 1:30-2:50 Rashid Auditorium
18-613 Lectures TR 12:00-1:20, DH A302, simulcast to 9am--10:20am B23 110 (SV Campus), see (schedule)
Recitations Section A: Mon 9:30-10:20, GHC 4101 (TA: Kashish)
Section B: Mon 10:30-11:20, DH 1209 (TA: Sophie and Marysia)
Section C: Mon 11:30-12:20, DH 1209 (TA: Satoru)
Section D: Mon 12:30-1:20, DH 1209 (TA: Bradley)
Section E: Mon 1:30-2:20, PH A19 (TA: Minji and Niko)
Section F: Mon 2:30-3:20, PH A19 (TA: Urvi)
Section G: Mon 3:30-4:20, PH 225B (TA: Eugene and Cyrus)
Section H: Mon 4:30-5:20, GHC 4301 (TA: Jiayi and Emma)
Section I: Mon 4:30-5:20, GHC 4102 (TA: Bhavini and Rashmi)
Section J: Mon 5:30-6:20, DH 1209 (TA: Ishita)
Section 18-613 A: Wed 4:30pm-5:50pm, HH B131 (TA: Qingsheng)
Section 18-613 B: Wed 4:30pm-5:50pm BH A53 (TA: Guillaume)
Section 18-613 C: Wed 6:30pm-7:50pm HH B131 (TA: Nishal)
Section 18-613 SA: Wed 5pm-6:20pm B23 211 SV (TA: Chaoqun, Ruiyang, and Shaoquan)
Textbooks Randal E. Bryant and David R. O'Hallaron,
Computer Systems: A Programmer's Perspective, Third Edition, Pearson, 2016
  Brian W. Kernighan and Dennis M. Ritchie,
The C Programming Language, Second Edition, Prentice Hall, 1988
Credit 12 units
Grading Composed from total lab performance (50%) and total exam performance (50%).
Labs There are 8 labs (L0-L7), not evenly weighted. See the assignments page for the breakdown.
Exams There is one midterm exam, in class, closed book (20%).
There is a final exam, in class, closed book (30%).
Home http://www.cs.cmu.edu/~213
Questions Piazza, office hours
Canvas We are using Canvas for this course to conduct ungraded, in-class quizzes. Your grading information will be kept up to date in Autolab, not in Canvas.
Canvas 18-613 The 18-613 section has a secondary Canvas 18-613. 18-613 students will use the standard Canvas for all lecture, assignment, and lab specific information but will find 18-613 specific lectures, recitations, and other material in the secondary Canvas instance.
Course Directory /afs/cs/academic/class/15213-s19/

Instructors

Name Seth Goldstein Brandon Lucia Brian Railing Franz Franchetti
Contact seth@cmu.edu
x8-3828
blucia@cmu.edu
x8-9192
bpr@cs.cmu.edu
x8-3143
franzf@ece.cmu.edu
x8-8297
Office GHC 7111 CIC 4110 GHC 6005 HH A312
Office Hours TBD TBD TBD Tues 3:15pm-4:15pm

ECE Course Hub (HH 1112)

They are open 9am-5pm Monday-Friday.