2017/Schedule

From CS61
Jump to: navigation, search

Computer Science 61 and E61
Systems Programming and Machine Organization
Fall 2017

Schedule

The schedule will remain tentative all term.

Recommended readings are generally from the textbook, CS:APP3e.


Calendar

Mon Tue Wed Thu Fri
Week 1 8/31 Unit 1: Fundamentals
9/1 Overview & Exploring Memory
Exercise
9/2 Assignment 1 released
Week 2 9/5 9/6 Data Representation
CS:APP3e Ch 1, 2.1-2.2, 3.11
Lecture - Exercise
9/7 9/8 Undefined behavior and arenas
Lecture - Exercise
9/9
Week 3 9/12 9/13 Arenas redux
Lecture
9/14 9/15 Garbage collection
Exercise
9/16 Assignment 1 due
Week 4 9/19 Unit 2: Machine programming
9/20 Data Movement
Lecture - Exercise
9/21 9/22 Addressing Modes & Control Instructions
Lecture - Exercise
9/23
Week 5 9/26 9/27 Calling Conventions
Lecture - Exercise
9/28 Unit 3: Storage hierarchy
9/29 Processor cache & cache model
CS:APP3e 6.3-6.4
Exercise
9/30 Assignment 2 due
Week 6 10/3 10/4 Storage hierarchy and buffer cache
CS:APP3e 6.1-6.2, 10.1-10.4
Lecture - Exercise
10/5 10/6 Standard IO and single-slot cache
CS:APP3e 10.5, 10.10–10.11
Lecture - Exercise
10/7
Week 7 10/10 10/11 Data structure design
CS:APP3e 6.5-6.6

Lecture - Exercise

10/12 10/13 Midterm 10/14
Week 8 10/17 10/18 Memory-mapped I/O
CS:APP3e 9.8

Lecture - Exercise

10/19 Unit 4: Kernel programming
10/20 Virtual Memory
CS:APP3e 9.1–9.2, 9.6–9.7
10/21 Assignment 3 due (extended to Monday)
Week 9 10/24 10/25 Privilege and exceptional control flow
CS:APP3e 8.1–8.3
Lecture - Exercise
10/26 10/27 Processes and protection
CS:APP3e 8.4, 9.4–9.5, 9.8.2–9.8.3
Exercise
10/28
Week 10 10/31 11/1 Fork and process control
CS:APP3e 8.4
Lecture - Exercise
11/2 Unit 5: Process management
11/3 Subprocesses and signals
CS:APP3e 8.5–8.7
Lecture - Exercise
11/5 Assignment 4 due (extended to Saturday)
Week 11 11/7 11/8 Exec and wait
CS:APP3e 12.1
Lecture - Exercise
11/9 11/10 Pipes and redirection
CS:APP3e 8.5, 10.9
Lecture - Exercise
11/11
Week 12 11/14 11/15 Signals, race conditions, and blocking
Lecture - Exercise
11/16 11/17 Unit 6: Concurrency
Synchronization
Lecture - Exercise
11/18 Assignment 5 due
Week 13 11/21 11/22 Networking
Lecture
11/23 11/24 11/25
Week 14 11/28 11/29 Building a robust server
Exercise
11/30 12/1 Implementing synchronization
Lecture - Exercise
12/2
Reading period 12/5 12/6 Assignment 6 due 12/7 12/8 12/9
Finals week 12/12 12/13 12/14 12/15
Final (2:00pm, Lowell Lecture Hall)
12/16


Calendar