Ancient CS 61 Content Warning!!!!!1!!!
This is not the current version of the class.
This site was automatically translated from a wiki. The translation may have introduced mistakes (and the content might have been wrong to begin with).

Schedule

The schedule will remain tentative all term.

Recommended readings are generally from the textbook, CS:APP3e. Problem set deadlines are for college; DCE students’ deadlines are 1 day later.

STILL BEING UPDATED FOR 2018

Calendar

Mon

Tue

Wed

Thu

Fri

Week 1

9/3

Unit 1: Data representation
9/4 Overview & Exploring memory

9/5

9/6 Objects, memory, integer representation
CS:APP3e §1, 2.1-2.2, 9.11

9/7

Week 2

9/10

9/11 Layout
CS:APP3e §3.7–3.9

9/12

9/13 Undefined behavior
CS:APP3e §2.2–2.3

Sunday 9/16-Monday 9/17 Assignment 1
intermediate checkin due

Week 3

9/17

9/18 Integer undefined behavior, segments

9/19

9/20 Garbage collection
CS:APP3e §9.9–9.11

Sunday 9/23 Assignment 1 due

Week 4

9/24

Unit 2: Assembly & machine programming
9/26 Instructions, data movement
CS:APP3e §3.2–3.6

9/26

9/27 Compiling and linking, calling conventions
CS:APP3e §3.7, §7 (skim)

9/28

Week 5

10/1

10/2 Memory addressing, conditionals, debugging, system calls
CS:APP3e §3.6, 3.8, 3.9; §8.1 (preview)

10/3

Unit 3: Storage hierarchy
10/4 Storage hierarchy and buffer cache
CS:APP3e §6.1-6.2, 10.1-10.4

10/5 Assignment 2 due

Week 6

10/8

10/9 Standard IO and single-slot cache
CS:APP3e §10.5, 10.10–10.11

10/10

10/11 Data structure design
CS:APP3e §6.5-6.6

10/12

Week 7

10/15

10/16 Memory-mapped I/O
CS:APP3e §9.8

10/17 Midterm

Unit 4: Kernel programming
10/18 Virtual Memory

Sunday 10/21 Assignment 3 due

Week 8

10/22

10/23 Privilege and exceptional control flow
CS:APP3e §8.1–8.3

10/24

10/25 Processes and protection
CS:APP3e §8.4, 9.4–9.5, 9.8.2–9.8.3

10/26

Week 9

10/29

10/30 Fork and process control
CS:APP3e §8.4

10/31

11/1 Subprocesses and signals
CS:APP3e §8.5–8.7

11/2 Assignment 4 due

Week 10

11/5

Unit 5: Process management
11/6 Exec and Wait
CS:APP3e §12.1

11/7

11/8 Pipes and redirection
CS:APP3e §8.5, 10.9

11/9

Week 11

11/12

11/13 Signals, race conditions, and blocking

11/14

Unit 6: Concurrency
11/15 Synchronization

11/16 Assignment 5 due

Week 12

11/19

11/20 Networking

11/21

11/22

11/23

Week 13

11/26

11/27 Building a robust server

11/28

11/29 Implementing synchronization

11/30

Week 14

12/3

12/4 Last class

12/5

12/6

12/7

Reading period

12/10

12/11

12/12 Assignment 6 due by extension

12/13

12/14

Finals week

12/17

12/18

12/19

12/20

12/21

Calendar