SE101 2019




ICS lectures (Organization) is on Wed. 3-4 and Fri. 1-2 (even-numbered weeks). Note that the ZOOM number is 460778966, and the ZOOM password is 02651700.

ICS lectures (System Software) is on Thu. 9-10. Note that the ZOOM number is 330931656, and the ZOOM password is 02596530.

We will release the Spring 2020 assignments as the semester moves along. The contents of this calendar for days more than two weeks in the future may be missing.

MondayTuesday WednesdayThursday Friday
2020-03-02
2020-03-03
2020-03-04
LEC 1: Logical Design & HCL
Preparation: Book sections 4.2
Slides: Lecture-0
Slides: Lecture-1
2020-03-05
LEC 1: OS & Exceptions & Processes
Preparation: Book sections 1.7, 8.1
Slides: Lecture-1
2020-03-06
Assigned: Homework #1
2020-03-09
Lab #4: Y86 Simulator
Course: Organization
2020-03-10
2020-03-11
LEC 2: SEQ Impl
Preparation: Book sections 4.3.1-4.3.3
Slides: Lecture-2

EXE 1: Online (Zoom)
Preparation: Exercise-1 Solution-1
2020-03-12
LEC 2: Process Control
Preparation: Book sections 8.2
Slides: Lecture-2
2020-03-13
LEC 3: SEQ Impl II
Preparation: Book sections 4.3.4
Slides: Lecture-3 Lecture-3(ext)

DUE: Homework #1 Solution #1
Assigned: Homework #2
2020-03-16
Lab #5: Y86 Assembler
Course: Organization
2020-03-17
2020-03-18
LEC 4: Pipeline
Preparation: Book sections 4.4, 4.5.1-4
Slides: Lecture-4

EXE 2: Online (Zoom)
Preparation: Exercise-2 Solution-2
2020-03-19
LEC 3: Fork & Wait
Preparation: Book sections 8.3, 8.4
Slides: Lecture-3
2020-03-20
DUE: Homework #2 Solution #2
Assigned: Homework #3
2020-03-23
DUE: Lab #4
2020-03-24
2020-03-25
LEC 5: Hazard
Preparation: Book sections 4.5.5-6
Slides: Lecture-5

EXE 3: Online (Zoom)
Preparation: Exercise-3 Solution-3
2020-03-26
LEC 4: Signal
Preparation: Book sections 8.5
Slides: Lecture-4
2020-03-27
LEC 6: Implementation
Preparation: Book sections 4.5.7-9
Slides: Lecture-6
DUE: Homework #3 Solution #3
Assigned: Homework #4
2020-03-30
DUE: Lab #5
Lab #6: Processor Part3
Course: Organization
2020-03-31
2020-04-01
LEC 7: Machine-Independent Optimization
Preparation: Book sections 5.1~5.6
Slides: Lecture-7

EXE 4: Online (Zoom)
Preparation: Exercise-4 Solution-4
2020-04-02
LEC 5: Signal II
Preparation: Book sections 8.5
Slides: Lecture-5
2020-04-03
DUE: Homework #4 Solution #4
Assigned: Homework #5
2020-04-06
2020-04-07
2020-04-08
LEC 8: Modern Processors
Preparation: Book sections 5.7~5.11
Slides: Lecture-8

EXE 5: Online (Zoom)
Preparation: Exercise-5 Solution-5
2020-04-09
LEC 6: Nonlocal Jump
Preparation: Book sections 8.6
Slides: Lecture-6
2020-04-10
LEC 9: Performance Tuning
Preparation: Book sections 5.12~5.14
Slides: Lecture-9
DUE: Homework #5 Solution #5
Assigned: Homework #6
2020-04-13
DUE: Lab #6
2020-04-14
2020-04-15
LEC 10: Storage: Disk & RAM
Preparation: Book sections 6.1
Slides: Lecture-10

EXE 6: Online (Zoom)
Preparation: Exercise-6 Solution-6
2020-04-16
LEC 7: Unix I/O
Preparation: Book sections 10.1-4, 10.6-9
Slides: Lecture-7
2020-04-17
DUE: Homework #6 Solution #6
Assigned: Homework #7
2020-04-20
Lab #7: Tiny Shell
Course: System Software
2020-04-21
2020-04-22
LEC 11: Locality
Preparation: Book sections 6.2-6.4
Slides: Lecture-11

EXE 7: Online (Zoom)
Preparation: Exercise-7 Solution-7
2020-04-23
LEC 8: Robust & Standard I/O
Preparation: Book sections 10.5, 10.10-11
Slides: Lecture-8
2020-04-24
LEC 12: Cache-Friendly Code
Preparation: Book sections 6.4-6
Slides: Lecture-12
DUE: Homework #7 Solution #7
Assigned: Homework #8
2020-04-27
2020-04-28
2020-04-29
LEC 13: Linking
Preparation: Book sections 7.1-7.2
Slides: Lecture-13

EXE 8: Online (Zoom)
Preparation: Exercise-8 Solution-8
2020-04-30
LEC 9: Network
Preparation: Book sections 11.1-3
Slides: Lecture-9
2020-05-01
Labor Day
2020-05-04
DUE: Lab #7
Lab #8: Cache
Reference: Waside Blocking
Reference: Code Style (from CMU)
Course: Organization
2020-05-05
2020-05-06
LEC 14: Symbol
Preparation: Book sections 7.3-7.5
Slides: Lecture-14

EXE 9: Online (Zoom)
Preparation: Exercise-9 Solution-9
2020-05-07
LEC 10: Socket
Preparation: Book sections 11.4
Slides: Lecture-10
2020-05-08
LEC 15: Relocation & Loading
Preparation: Book sections 7.6-7.9
Slides: Lecture-15
DUE: Homework #8 Solution #8
Assigned: Homework #9
2020-05-11
2020-05-12
2020-05-13
LEC 16: Dynamic Linking & PIC
Preparation: Book sections 7.10-7.12
Slides: Lecture-16

EXE 10: Online (Zoom)
Preparation: Exercise-10 Solution-10
2020-05-14
LEC 11: Web Server
Preparation: Book sections 11.5-11.6
Slides: Lecture-11
2020-05-15
DUE: Homework #9 Solution #9
Assigned: Homework #10
2020-05-18
DUE: Lab #8
Lab #9: Proxy
Course: System Software
2020-05-19
2020-05-20
LEC 17: Dynamic Memory Allocation
Preparation: Book sections 9.9
Slides: Lecture-17
Slides: Lecture-17 II

EXE 11: Online (Zoom)
Preparation: Exercise-11 Solution-11
2020-05-21
LEC 12: Concurrency Programming
Preparation: Book sections 12.1-12.3
Slides: Lecture-12
2020-05-22
LEC 18: Virtual Memory
Preparation: Book sections 9.1~9.5
Slides: Lecture-18
DUE: Homework #10 Solution #10
Assigned: Homework #11
2020-05-25
2020-05-26
2020-05-27
LEC 19: Address Translation
Preparation: Book sections 9.6, 9.7.1
Slides: Lecture-19

EXE 12: Online (Zoom)
Preparation: Exercise-12 Solution-12
2020-05-28
LEC 13: Synchronization
Preparation: Book sections 12.4, 12.5
Slides: Lecture-13
2020-05-29
DUE: Homework #11 Solution #11
Assigned: Homework #12
2020-06-01
DUE: Lab #9
Lab #10: Memory Allocator
Reference: Scoreboard
Course: Organization
2020-06-02
2020-06-03
LEC 20: Case Study: Linux Memory
Preparation: Book sections 9.7.2, 9.8
Slides: Lecture-20

EXE 13: Online (Zoom)
Preparation: Exercise-13 Solution-13
2020-06-04
LEC 14: Concurrent Issues
Preparation: Book sections 12.6, 12.7
Slides: Lecture-14
2020-06-05
LEC 21: Garbage Collection
Preparation: Book sections 9.10-11
Slides: Lecture-21
DUE: Homework #12 Solution #12
Assigned: Homework #13
2020-06-08
2020-06-09
2020-06-10
LEC 22: Process Scheduling
Slides: Lecture-22

EXE 14: Online (Zoom)
Preparation: Exercise-14 Solution-14
2020-06-11
LEC 15: Locks
Slides: Lecture-15
References: Locks
2020-06-12
DUE: Homework #13 Solution #13
Assigned: Homework #14
2020-06-15
DUE: Lab #10
2020-06-16
2020-06-17
LEC 23: Lock-based Concurrent DS
Slides: Lecture-23

EXE 15: Online Q&A
2020-06-18
LEC 16: Conditional Variables
Slides: Lecture-16
2020-06-19
LEC 24: Process Scheduling
Slides: Lecture-24
DUE: Homework #14 Solution #14
2020-06-22
Exam (Organization): 8:30~10:30
Location: Zoom (96356376771)
考卷 答题纸 承诺书 考卷答案
2020-06-23
Final exam week
2020-06-24
Final exam week
2020-06-25
Dragon Boat Festival
2020-06-26
Dragon Boat Festival
2020-06-29
Final exam week
2020-06-30
Final exam week
2020-07-01
Final exam week
2020-07-02
Final exam week
2020-07-03
Exam (System Software): 12:20~14:20
Location: Zoom (96805082283)
考卷 答题纸 承诺书 考卷答案

ICS lectures are in ZY-413 on Tuesday 7-8, and tutorials are in DSY 502/503/504/507 at 18:00~20:00 on Wednesday

We will release the Fall 2019 assignments as the semester moves along. The contents of this calendar for days more than two weeks in the future may be missing.

MondayTuesday WednesdayThursday Friday
sep 9
sep 10
LEC 1: Introduction
Preparation: Book prefaces 7~9, and book sections 1.2, 1.4.1, Before 1.7.1, 1.7.3, 1.8, 1.9.2
Slides: Lecture-1
sep 11
sep 12
sep 13
Mid-Autumn Festival
sep 16
sep 17
LEC 2: C Programming Language, Bits & Bytes
Preparation: Book sections 1.1, 2.1.1 1.2 2.1.2 2.1.6-2.1.9
Slides: Lecture-2
Assigned: Homework #1
sep 18
TUT 1: Env Setup, Shell, Tools
Preparation: VMware Player Debian
Slides: Tutorial-1
Tasks: Shell
Reference: Create VM (Slides) Install Debian (Slides Video)
Download VM (Link)
sep 19
sep 20
sep 23
sep 24
LEC 3: Bit-level Ops, Pointers
Preparation: Book sections 1.2, 1.7.3, 2.1.2, 2.1.6-9
Slides: Lecture-3
DUE: Homework #1 Solution #1
Assigned: Homework #2
sep 25
TUT 2: APT, SVN and Toolchain
Preparation: Debian & Shell
Slides: Tutorial-2
Tasks: Tools
sep 26
sep 27
sep 30
oct 1 (oct 12)
LEC 5: Arithmetic Operations
Preparation: Book sections 2.3
Slides: Lecture-5
oct 2
National Day
oct 3
National Day
oct 4
oct 7
oct 8
LEC 4: Logical Ops, Encodings
Preparation: Book sections 2.1.3-5, 2.2
Slides: Lecture-4
DUE: Homework #2 Solution #2
Assigned: Homework #3
oct 9
EXE 1:
oct 10
oct 11
oct 14
Lab #1: Bit-level Ops
oct 15
LEC 6: X86 Historical Perspective, Machine Execution
Preparation: Book sections 3.1, 3.4
Slides: Lecture-6
DUE: Homework #3 Solution #3
Assigned: Homework #4
oct 16
TUT 3: Debugging
Preparation: C Programming
Slides: Tutorial-3
Tasks: Debugging
oct 17
oct 18
oct 21
oct 22
LEC 7: Data Move
Preparation: Book sections 3.4
Slides: Lecture-7
DUE: Homework #4 Solution #4
Assigned: Homework #5
oct 23
EXE 2:
oct 24
oct 25
oct 28
DUE: Lab #1
oct 29
LEC 8: Control, CC
Preparation: Book sections 3.6.1-2
Slides: Lecture-8
DUE: Homework #5 Solution #5
Assigned: Homework #6
oct 30
Quiz 1
Paper Solution
oct 31
nov 1
nov 4
nov 5 (nov 9)
LEC 9: Control
Preparation: Book sections 3.6.3-8
Slides: Lecture-9
DUE: Homework #6 Solution #6
Assigned: Homework #7
nov 6
EXE 3:
nov 7
nov 8
nov 11
nov 12
LEC 10: Procedure Call
Preparation: Book sections 3.7
Slides: Lecture-10
DUE: Homework #7 Solution #7
Assigned: Homework #8
nov 13
TUT 4: Assembly & GDB
Preparation: Assembly
Slides: Tutorial-4
Tasks: Assembly
Reference: GDB-Ref
nov 14
nov 15
nov 18
Lab #2: Bombing
Reference: Stats
nov 19
LEC 11: Array
Preparation: Book sections 3.8
Slides: Lecture-11
DUE: Homework #8 Solution #8
Assigned: Homework #9
nov 20
Quiz 2
Paper Solution
nov 21
nov 22
nov 25
nov 26
LEC 12: Heterogeneous DS & Alignment
Preparation: Book sections section 3.9
Slides: Lecture-12
DUE: Homework #9 Solution #9
Assigned: Homework #10
nov 27
EXE 5:
nov 28
nov 29
dec 2
DUE: Lab #2
Lab #3: Attacking
Handout: target
Reference: Scoreboard
dec 3
LEC 13: Pointer & Buffer Overflow
Preparation: Book sections 3.10
Slides: Lecture-13
DUE: Homework #10 Solution #10
Assigned: Homework #11
dec 4
EXE 6:
dec 5
dec 6
dec 9
dec 10
LEC 14: Floating Point
Preparation: Book sections 3.11
Slides: Lecture-14
DUE: Homework #11 Solution #11
Assigned: Homework #12
dec 11
EXE 7:
dec 12
dec 13
dec 16
DUE: Lab #3
dec 17
LEC 15: Floating-Point Code
Preparation: Book sections 3.11
Slides: Lecture-15
DUE: Homework #12 Solution #12
Assigned: Homework #13
dec 18
Quiz 3
Paper Solution
dec 19
dec 20
dec 23
dec 24
LEC 16: Y86
Preparation: Book sections 4.1
Slides: Lecture-16
DUE: Homework #13 Solution #13
Assigned: Homework #14
DUE: Homework #14 Solution #14
dec 25
Online Test: 18:00~20:00
Location: SE Machine Room 3108
Lab2: Stats Lab3: target Scoreboard
dec 26
dec 27
dec 30
Final exam week
dec 31
Final exam week
jan 1
Final exam week
jan 2
Final exam week
jan 3
Final exam week
jan 6
Final exam week
jan 7
Final Exam: 10:30~12:30
Location: DSY 508 and 509
Paper-A Solution-A Paper-B Solution-B Stat.
jan 8
Final exam week
jan 9
Final exam week
jan 10
Final exam week

Go to Top // ICS Home Page
Questions or comments regarding ICS course? Send e-mail to the course Staffs or TAs.
Last updated: Sun. Sep 11 2018