SE101 2018




ICS lectures are in DSY201 on Tuesday 7-8 and Friday 3-4, and bi-weekly tutorials are in XY 101/102/103/104 at 18:00~20:00 on Wednesday.

We will release the Spring 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
2019-02-25
2019-02-26
LEC 1: Storage: Disk & RAM
Preparation: Book sections 6.1
Slides: Lecture-1
2019-02-27
2019-02-28
2019-03-01
LEC 2: Locality
Preparation: Book sections 6.2-6.4
Slides: Lecture-2
Assigned: Homework #1
2019-03-04

Lab #7: Memory Allocator
Reference: Scoreboard
2019-03-05

LEC 3: Cache Memories
Preparation: Book sections 6.4
Slides: Lecture-3
2019-03-06
EXE 1: group info
2019-03-07
2019-03-08
LEC 4: Cache-Friendly Code
Preparation: Book sections 6.5, 6.6
Slides: Lecture-4
DUE: Homework #1 Solution #1
Assigned: Homework #2
2019-03-11

2019-03-12

LEC 5: Symbol & Linking
Preparation: Book sections 7.1-7.3
Slides: Lecture-5
2019-03-13

2019-03-14

2019-03-15
LEC 6: Symbol Resolution
Preparation: Book sections 7.4, 7.5
Slides: Lecture-6
DUE: Homework #2 Solution #2
Assigned: Homework #3
2019-03-18
DUE: Lab #7
Lab #8: Cache
Reference: Waside Blocking
2019-03-19
LEC 7: Relocation & Loading
Preparation: Book sections 7.6-7.8
Slides: Lecture-7
2019-03-20
EXE 2:
2019-03-21
2019-03-22
LEC 8: Dynamic Linking & PIC
Preparation: Book sections 7.8-7.12
Slides: Lecture-8
DUE: Homework #3 Solution #3
Assigned: Homework #4
2019-03-25
2019-03-26
LEC 9: OS & Exceptions & Processes
Preparation: Book sections 1.7, 8.1
Slides: Lecture-9
2019-03-27
2019-03-28
2019-03-29
LEC 10: Process Control
Preparation: Book sections 8.2
Slides: Lecture-10
DUE: Homework #4 Solution #4
Assigned: Homework #5
2019-04-01
DUE: Lab #8
2019-04-02
LEC 11: Fork & Wait
Preparation: Book sections 8.3, 8.4
Slides: Lecture-11
2019-04-03
EXE 3:
2019-04-04
2019-04-05
Tomb-Sweeping Day
2019-04-08
2019-04-09
LEC 12: Signal
Preparation: Book sections 8.5
Slides: Lecture-12
2019-04-10
2019-04-11
2019-04-12
LEC 13: Signal II
Preparation: Book sections 8.6
Slides: Lecture-13
DUE: Homework #6 Solution #5
Assigned: Homework #6
2019-04-15
Lab #9: Tiny Shell
2019-04-16
LEC 14: Nonlocal Jump
Preparation: Book sections
Slides: Lecture-14
2019-04-17
EXE 4:
2019-04-18
2019-04-19
LEC 15: Unix I/O
Preparation: Book sections 10.1-3, 10.5-7 10.4, 10.8
Slides: Lecture-15
DUE: Homework #7 Solution #6
Assigned: Homework #7
2019-04-22
2019-04-23
LEC 16: Robust & Standard I/O
Preparation: Book sections 10.5, 10.10-11
Slides: Lecture-16
2019-04-24
2019-04-25
2019-04-26
LEC 17: Network
Preparation: Book sections 11.1-3
Slides: Lecture-17
DUE: Homework #7 Solution #7
Assigned: Homework #8
2019-04-29
DUE: Lab #9
2019-04-30
LEC 18: Socket
Preparation: Book sections 11.4
Slides: Lecture-18
2019-05-01
Labour Day
2019-05-02
2019-05-03(05-05)
LEC 19: Web Server
Preparation: Book sections 11.5-11.6
Slides: Lecture-19
DUE: Homework #8 Solution #8
Assigned: Homework #9
2019-05-06
2019-05-07
Middle Exam: 14:00-16:00
Location: DSY 201 and DSY 211
Paper Solution
2019-05-08
2019-05-09
2019-05-10
LEC 20: Concurrency Programming
Preparation: Book sections 12.1-12.3
Slides: Lecture-20
DUE: Homework #9 Solution #9
Assigned: Homework #10
2019-05-13
2019-05-14
LEC 21: Synchronization
Preparation: Book sections 12.4, 12.5
Slides: Lecture-21
2019-05-15
EXE 5:
2018-05-16
2019-05-17
LEC 22: Concurrent Issues
Preparation: Book sections 12.6, 12.7
Slides: Lecture-22
DUE: Homework #10 Solution #10
Assigned: Homework #11
2019-05-20
Lab #10: Proxy
2019-05-21
LEC 23: Virtual Memory
Preparation: Book sections 9.1~9.5
Slides: Lecture-23
2019-05-22
2019-05-23
2019-05-24
LEC 24: Address Translation
Preparation: Book sections 9.6
Slides: Lecture-24
DUE: Homework #11 Solution #11
Assigned: Homework #12
2019-05-27
2019-05-28
LEC 25: Case Study: Linux Memory
Preparation: Book sections 9.7.1
Slides: Lecture-25
2019-05-29
EXE 6:
2019-05-30
2019-05-31
LEC 26: Memory Mapping
Preparation: Book sections 9.7.2, 9.8
Slides: Lecture-26
DUE: Homework #12 Solution #12
Assigned: Homework #13
2019-06-03
DUE: Lab #10
2019-06-04
LEC 27: Replacement Policy
Slides: Lecture-27
2019-06-05
2019-06-06
2019-06-07
Dragon Boat Festival
2019-06-10
2019-06-11
LEC 28: Locks
Slides: Lecture-28
2019-06-12
EXE 7:
2019-06-13
2019-06-14
LEC 29: Process Scheduling
Slides: Lecture-29
DUE: Homework #13 Solution #13
Assigned: Homework #14 Solution #14
2019-06-17
Final exam week
2019-06-18
Final exam week
2019-06-19
Final exam week
2019-06-20
Final exam week
2019-06-21
Final exam week
2019-06-24
Final exam week
2019-06-25
Final exam week
2019-06-26
Q & A Time: : 14:00 - 17:00
Location: : Software Building 3402
2019-06-27
Final exam week Final Exam : 10:30 ~ 12:30
Location: : DSY 105 and 106
Paper-A Solution-A
Paper-B Solution-B
Stat.

2019-06-28
Final exam week

ICS lectures are in DSY-102 on Tuesday 7-8 and Friday 3-4, and tutorials are in DSY 205/206 at 18:00~20:00 on Wednesday

We will release the Fall 2018 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 10
sep 11
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 12
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 13
sep 14
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 17
sep 18
LEC 3: Bit-level Ops
Preparation: Book sections 2.1.6-9
Slides: Lecture-3
sep 19
TUT 2: APT, SVN and Toolchain
Preparation: Debian & Shell
Slides: Tutorial-2
Tasks: Tools
sep 20
sep 21
LEC 4: Logical Ops, Encodings
Preparation: Book sections 2.1.2-5, 2.2
Slides: Lecture-4
DUE: Homework #1 Solution #1
Assigned: Homework #2
sep 24
Mid-Autumn Festival
sep 25
LEC 5: Arithmetic Operations
Preparation: Book sections 2.3
Slides: Lecture-5
sep 26
TUT 3: Debugging
Preparation: C Programming
Slides: Tutorial-3
Tasks: Debugging
sep 27
Lab #1: Bit-level Ops
sep 28
LEC 6: X86 Historical Perspective
Preparation: Book sections 2.3
Slides: Lecture-6
DUE: Homework #2 Solution #2
Assigned: Homework #3
oct 1
National Day
oct 2
National Day
oct 3
National Day
oct 4
oct 5 (sep 30)
LEC 7: Data Manipulation
Preparation: Book sections 3.1
Slides: Lecture-7
oct 8
oct 9
LEC 8: Control
Preparation: Book sections 3.6.5-7
Slides: Lecture-8
oct 10
EXE 1:
oct 11
oct 12
LEC 9: Jump
Preparation: Book sections 3.6
Slides: Lecture-9
DUE: Homework #3 Solution #3
Assigned: Homework #4
oct 15
DUE: Lab #1
oct 16
LEC 10: Procedure Call
Preparation: Book sections 3.7
Slides: Lecture-10
oct 17
TUT 4: Assembly & GDB
Preparation: Assembly
Slides: Tutorial-4
Tasks: Assembly
Reference: GDB-Ref
oct 18
Lab #2: Bombing
Reference: Stats
oct 19
LEC 11: Array
Preparation: Book sections section 3.8
Slides: Lecture-11
DUE: Homework #4 Solution #4
Assigned: Homework #5
oct 22
oct 23
LEC 12: Heterogeneous DS & Alignment & Pointer
Preparation: Book sections 3.9
Slides: Lecture-12
oct 24
EXE 2:
oct 25
oct 26
LEC 13: Pointer & Buffer Overflow
Preparation: Book sections 3.10
Slides: Lecture-13
DUE: Homework #5 Solution #5
Assigned: Homework #6
oct 29
DUE: Lab #2
oct 30
LEC 14: Floating Point
Preparation: Book sections 2.4
Reference: y86 instruction set
Slides: Lecture-14
oct 31
EXE 3:
nov 1
Lab #3: Attacking
Handout: target
Reference: Scoreboard
nov 2
LEC 15: Floating-Point Code
Preparation: Book sections 3.11
Slides: Lecture-15
DUE: Homework #6 Solution #6
nov 5
nov 6 (nov 3)
LEC 16: Y86
Preparation: Book sections 4.1
Slides: Lecture-16
Assigned: Homework #7
nov 7
EXE 4:
nov 8
nov 9
LEC 17: Logical Design & HCL
Preparation: Book sections 4.2
Slides: Lecture-17
DUE: Homework #7 Solution #7
Assigned: Homework #8
nov 12
DUE: Lab #3
nov 13
LEC 18: SEQ Impl
Preparation: Book sections 4.3.1-4.3.3
Slides: Lecture-18
nov 14
Q&A
nov 15
Lab #4: Y86 Simulator
nov 16
Middle Exam: 10:00~12:00
Location: Paper Solution Stat.
nov 19
nov 20
LEC 19: SEQ Impl II/III
Preparation: Book sections 4.3.4
Slides: Lecture-19
Slides: Lecture-20
nov 21
Online Test: 18:00~20:00
Location: SE Machine Room 3108
Lab2: Stats Lab3: target Scoreboard
nov 22
nov 23
Athletic Meeting
nov 26
DUE: Lab #4
Lab #5: Y86 Assembler
nov 27
LEC 21: Pipeline & Data Hazard
Preparation: Book sections 4.4, 4.5.1-6
Slides: Lecture-21
nov 28
EXE 4:
nov 29
nov 30
LEC 22: Control Hazard
Preparation: Book sections 4.5.7-8
Slides: Lecture-22
DUE: Homework #8 Solution #8
Assigned: Homework #9
dec 3
dec 4
LEC 23: Exception
Preparation: Book sections 4.5.9
Slides: Lecture-23
dec 5
EXE 5:
dec 6
dec 7
LEC 24: Machine-Independent Optimization
Preparation: Book sections 5.1~5.6
Slides: Lecture-24
DUE: Homework #9 Solution #9
Assigned: Homework #10
dec 10
DUE: Lab #5
Lab #6: Processor Part3
dec 11
LEC 25: Performance Tuning & Modern Processors
Preparation: Book sections 5.14, 5.7
Slides: Lecture-25
dec 12
EXE 6:
dec 13
dec 14
LEC 26: More Code Optimization
Preparation: Book sections 5.8~5.12
Slides: Lecture-26
DUE: Homework #10 Solution #10
Assigned: Homework #11
dec 17
dec 18
LEC 27: Dynamic Memory Allocation
Preparation: Book sections 9.9
Slides: Lecture-27
dec 19
EXE 7:
dec 20
dec 21
LEC 28: Simple Memory Allocator
Preparation: Book sections 9.9
Slides: Lecture-28
DUE: Homework #11 Solution #11
Assigned: Homework #12
dec 24
DUE: Lab #6
dec 25
LEC 29: Misc
Slides: Lecture-29
dec 26
dec 27
dec 28
LEC 30: Q & A
DUE: Homework #12 Solution #12
dec 31
Final exam week
jan 1
Final exam week
jan 2
jan 3
Final exam week
jan 4
Final exam week
jan 7
Final exam week
jan 8
Final exam week
jan 9
Q & A: 14:00-20:00
Location: Software Building 3-401
jan 10
Final Exam: 13:10~15:10
Location: DSY 308 and 309
Paper Solution
Stat.

jan 11
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