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. Problem set deadlines are for college; DCE students’ deadlines are 1 day later.


Calendar

Mon Tue Wed Thu Fri
Week 1 8/30 Unit 1: Data representation
8/31 Overview & Exploring memory
9/1 Assignment 1 released
Week 2 9/4 9/5 Objects, memory, undefined behavior
CS:APP3e §1, 2.1-2.2, 9.11
9/6 9/7 Segments, size and alignment
CS:APP3e §3.7–3.9
9/8-9/10 Assignment 1
intermediate checkin due 9/10
Week 3 9/11 9/12 Computer arithmetic, signed integers
CS:APP3e §2.2–2.3
9/13 9/14 Integer undefined behavior, segments 9/15 Assignment 1 due
Week 4 9/18 9/19 Garbage collection
CS:APP3e §9.9–9.11
9/20 Unit 2: Assembly & machine programming
9/21 Instructions, data movement
CS:APP3e §3.2–3.6
9/22
Week 5 9/25 9/26 Compiling and linking, calling conventions
CS:APP3e §3.7, §7 (skim)
9/27 9/28 Memory addressing, conditionals, debugging, system calls
CS:APP3e §3.6, 3.8, 3.9; §8.1 (preview),
9/30 (Saturday) Assignment 2 due
Week 6 10/2 Unit 3: Storage hierarchy
10/3 Storage hierarchy and buffer cache
CS:APP3e §6.1-6.2, 10.1-10.4
10/4 10/5 Standard IO and single-slot cache
CS:APP3e §10.5, 10.10–10.11
10/6
Week 7 10/9 10/10 Data structure design
CS:APP3e §6.5-6.6
10/11 10/12 Midterm IN EMERSON 105 10/13
Week 8 10/16 10/17 Memory-mapped I/O
CS:APP3e §9.8
10/18 Unit 4: Kernel programming
10/19 Virtual Memory
10/20 Assignment 3 due
Week 9 10/23 10/24 Privilege and exceptional control flow
CS:APP3e §8.1–8.3
10/25 10/26 Processes and protection
CS:APP3e §8.4, 9.4–9.5, 9.8.2–9.8.3
10/27
Week 10 10/30 10/31 Fork and process control
CS:APP3e §8.4
11/1 Unit 5: Process management
11/2 Subprocesses and signals
CS:APP3e §8.5–8.7
11/3 Assignment 4 due
Week 11 11/6 11/7 Exec and wait
CS:APP3e §12.1
11/8 11/9 Pipes and redirection
CS:APP3e §8.5, 10.9
11/10
Week 12 11/13 11/14 Signals, race conditions, and blocking 11/15 11/16 Unit 6: Concurrency
Synchronization
11/17 Assignment 5 due
Week 13 11/20 11/21 Networking 11/22 11/23 11/24
Week 14 11/27 11/28 Building a robust server 11/29 11/30 Implementing synchronization 12/1
Reading period 12/4 12/5 Assignment 6 due 12/6 12/7 12/8
Finals week 12/11 12/12 12/13 12/14 12/15

Calendar