SE101 2014




ICS lectures are in ZY-205 on Wednesday 3-4 and Fridays 7-8, and tutorials are in XXX at 18:00~19:40 on Wednesday.

We will release the Fall 2014 assignments as the semester moves along. The contents of this calendar for days more than two weeks in the future may be missing.
The final version of the slides will be updated after each class.

MondayTuesday WednesdayThursday Friday
2014-09-15
2014-09-16
2014-09-17
LEC 1: Machine-Independent Optimization
Preparation: Book sections 5.2, 5.3, 5.4~5.6, 5.1
Slides: Lecture-1
2014-09-18
Lab #7: Processor
2014-09-19
LEC 2: More Code Optimization and Modern Processors
Preparation: Book sections 5.8~5.12, 5.7
Slides: Lecture-2
Assigned: Homework #1 (updated)
2014-09-22
2014-09-23
2014-09-24
LEC 3: Modern Processors & More Code Optimization
Preparation: Book sections 5.7, 5.8
Slides: Lecture-3
Group Information: Groups
2014-09-25
2014-09-26
LEC 4: More Code Optimization & Memory Hierarchy
Preparation: Book sections 5.7, 5.8, 6.1
Slides: Lecture-4
DUE: Homework #1 Solution #1
Assigned: Homework #2
2014-09-29
2014-09-30
2014-10-01
National Day
2014-10-02
2014-10-03
2014-10-06
2014-10-07
2014-10-08
LEC 5: Memory Hierarchy
Preparation: Book sections 6.1
2014-10-09
DUE: Lab #7 stat
2014-10-10
LEC 6: Memory Hierarchy
Preparation: Book sections 6.1, 6.2, 6.3, 6.4
Slides: Lecture-5
DUE: Homework #2 Solution #2
Assigned: Homework #3
2014-10-13
2014-10-14
2014-10-15
LEC 7: Memory Hierarchy
Preparation: Book sections 6.4
Slides: Lecture-6
2014-10-16
2014-10-17
LEC 8: Memory Hierarchy & Exceptional Control Flow
Preparation: Book sections 6.5, 6.6, 1.7, 8.2.1, 8.2.2, 8.2.3
Slides: Lecture-7
Slides: Lecture-8
DUE: Homework #3 Solution #3
Assigned: Homework #4
2014-10-20
Lab #8: Cache
Reference: Waside Blocking
2014-10-21
2014-10-22
LEC 9: Exceptional Control Flow II
Preparation: Book sections 8.1.4, 8.2, 8.3, 8.4
Slides: Lecture-9
Tutorial: Measurement of cache parameters
2014-10-23
2014-10-24
LEC 10: Exceptional Control Flow III
Preparation: Book sections 8.4
Slides: Lecture-10
DUE: Homework #4 Solution #4
Assigned: Homework #5
2014-10-27
2014-10-28
2014-10-29
LEC 11: Exceptional Control Flow IV
Preparation: Book sections 8.4, 8.5.1~8.5.3
Slides: Lecture-11
2014-10-30
2014-10-31
LEC 12: Exceptional Control Flow V
Preparation: Book sections 8.5, 8.6
Slides: Lecture-12
DUE: Homework #5 Solution #5
Assigned: Homework #6
2014-11-03
DUE: Lab #8
2014-11-04
2014-11-05
LEC 13: System-Level I/O
Preparation: Book sections 10.1~10.3, 10.5~10.7, 10.4, 10.8
Slides: Lecture-13
2014-11-06
Lab #9: Shell
2014-11-07
LEC 14: Robust & Standard I/O
Preparation: Book sections 10.4, 10.8
Slides: Lecture-14
DUE: Homework #6 Solution #6
Assigned: Homework #7
2014-11-10
2014-11-11
2014-11-12
LEC 15: Networking Programming
Preparation: Book sections 11.3, 11.4
Slides: Lecture-15
2014-11-13
2014-11-14
LEC 16: Networking Programming
Preparation: Book sections 11.4
Slides: Lecture-16
DUE: Homework #7 Solution #7
Assigned: Homework #8
2014-11-17
2014-11-18
2014-11-19
Middle Exam: 10:00~12:00
Location: ZY 205 ZY 209
Paper Solution Stat.
2014-11-20
2014-11-21
SJTU sports meeting
2014-11-24
2014-11-25
2014-11-26
LEC 17: Networking Programming
Preparation: Book sections 11.4
2014-11-27
DUE: Lab #9
2014-11-28
LEC 18: Middle Exam Solution
Slides: Problem 4,5,6
Slides: Problem 1,2,3,7
DUE: Homework #8 Solution #8
2014-12-01
2014-12-02
2014-12-03
LEC 19: Concurrent Programming
Preparation: Book sections 12.1-12.3
Slides: Lecture-17
Tutorial: ARP RARP
2014-12-04
Lab #10: Proxy
2014-12-05
LEC 20: Concurrent Programming
Preparation: Book sections 12.1-12.3
Assigned: Homework #9
2014-12-08
2014-12-09
2014-12-10
LEC 21: Shared Variable & Semaphores
Preparation: Book sections 12.4,12.5
Slides: Lecture-18
2014-12-11
2014-12-12
LEC 22: Issues
Preparation: Book sections 12.5-12.7
Slides: Lecture-19
DUE: Homework #9 Solution #9
2014-12-15
2014-12-16
2014-12-17
LEC 23: Virtual Memory
Preparation: Book sections 9.1-9.5
Slides: Lecture-20
Tutorial: TLB
2014-12-18
DUE: Lab #10
2014-12-19
LEC 24: Virtual Memory II
Preparation: Book sections 10.6
Slides: Lecture-21
Assigned: Homework #10
2014-12-22
2014-12-23
2014-12-24
LEC 25: Virtual Memory III
Preparation: Book sections 9.7
Slides: Lecture-22
Problem: Page Table
2014-12-25
2014-12-26
LEC 26: Virtual Memory IV
Preparation: Book sections 10.7, 10.8
Slides: Lecture-23
DUE: Homework #10 Solution #10
Assigned: Homework #11
2014-12-29
2014-12-30
2014-12-31
LEC 27: BROP
Slides: Lecture-BROP
2015-01-01
2015-01-02
LEC 28: Review
Slides: Lecture-REVIEW
DUE: Homework #11 Solution #11
2015-01-05
Final exam week
2015-01-06
Final exam week
2015-01-07
Final Exam : 8:00 ~ 10:00
Location: : DZY 4-201 DZY 4-301
Paper-A Solution-A
Paper-B Solution-B
Stat.

2015-01-08
Final exam week
2015-01-09
Final exam week
2015-01-12
Final exam week
2015-01-13
Final exam week
2015-01-14
Final exam week
2015-01-15
Final exam week
2015-01-16
Final exam week

ICS lectures are in ZY-100 on Tuesday 9-10 and Fridays 1-2, and tutorials are in DZY-1-203/1-204/1-303/1-304 at 18:00~19:40 on Wednesday

We will release the Spring 2014 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
feb 24
feb 25
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.1
Slides: Lecture-1
feb 26
TUT 1: Env Setup, Shell, Tools
Preparation: VMware Player Debian
Slides: Tutorial-1
Tasks: Shell
Reference: Create VM (Slides) Install Debian (Slides Video)
feb 27
feb 28
LEC 2: C Programming Language, Bits & Bytes
Preparation: Book sections 1.1, 2.1.1
Slides: Lecture-2
Assigned: Homework #1
mar 3
mar 4
LEC 3: Bit-level Ops
Preparation: Book sections 1.2, 2.1.3 2.1.7-2.1.8
Slides: Lecture-3
mar 5
TUT 2: APT, SVN and Toolchain
Preparation: Debian & Shell
Slides: Tutorial-2
Tasks: Tools
mar 6
mar 7
LEC 4: Logical Ops
Preparation: Book sections 2.1.9-2.1.10, 2.1.2
Slides: Lecture-4
DUE: Homework #1 Solution #1
Assigned: Homework #2
mar 10
mar 11
LEC 5: Data Representation
Preparation: Book sections 2.1.3-2.1.6
Slides: Lecture-5
mar 12
TUT 3: Debugging
Preparation: C Programing
Slides: Tutorial-3
Tasks: Debugging
mar 13
Lab #1: Bit-level Ops
mar 14
LEC 6: Encodings
Preparation: Book sections 2.2
Slides: Lecture-6
DUE: Homework #2 Solution #2
Assigned: Homework #3
mar 17
mar 18
LEC 7: Conversions & Arithmetic Ops
Preparation: Book sections 2.2, 2.3
Slides: Lecture-7
mar 19
mar 20
mar 21
LEC 8: Memory & Registers
Preparation: Book sections 3.1-3.4
Slides: Lecture-8
DUE: Homework #3 Solution #3
Assigned: Homework #4
mar 24
mar 25
LEC 9: Data Movement Instructions & C Pointers
Preparation: Book sections 3.1-3.4
Slides: Lecture-9
mar 26
TUT 4: Assembly & GDB
Preparation: Assembly
Slides: Tutorial-4
Tasks: Assembly
Reference: GDB-Ref
mar 27
DUE: Lab #1
mar 28
LEC 10: Data Manipulation, Conditional Code
Preparation: Book sections 3.5, 3.6.1, 3.6.2
Slides: Lecture-10
DUE: Homework #4 Solution #4
Assigned: Homework #5
mar 31
apr 1
LEC 11: Control Flow Constructs in ASM
Preparation: Book sections section 3.6
Examples: strcmp strcpy
Slides: Lecture-11
apr 2
EXE 1: Slides: Group1&2
apr 3
Lab #2: Bombing
Reference: Stats
apr 4
LEC 12: Procedure Call
Preparation: Book sections 3.6
Slides: Lecture-12
DUE: Homework #5 Solution #5
Assigned: Homework #6
apr 7
apr 8
LEC 13: Array
Preparation: Book sections 3.7
Slides: Lecture-13
apr 9
EXE 2:
apr 10
apr 11
LEC 14: Pointer & Struct & Union
Preparation: Book sections 3.8, 3.9
Slides: Lecture-14
DUE: Homework #6 Solution #6
Assigned: Homework #7
apr 14
apr 15
LEC 15: Buffer Overflow
Preparation: Book sections 3.10, 3.12
Slides: Lecture-15
apr 16
EXE 3:
apr 17
DUE: Lab #2
apr 18
LEC 16: x86-64
Preparation: Book sections 3.13
Slides: Lecture-16
DUE: Homework #7 Solution #7
Assigned: Homework #8
apr 21
apr 22
LEC 17: Floating Point
Preparation: Book sections 2.4
Slides: Lecture-17
apr 23
EXE 4:
apr 24
Lab #3: Buffer Overflow
Code: Handout
Reference: Scoreboard
apr 25
LEC 18: Y86
Preparation: Book sections 4.1
Slides: Lecture-18
Reference: y86 instruction set
DUE: Homework #8 Solution #8
Assigned: Homework #9
apr 28
apr 29
LEC 19: Static Linking
Preparation: Book sections 7.1-7.5
Slides: Lecture-19
apr 30
may 1
Labor Day
may 2
Labor Day
may 5
may 6
LEC 20: Symbols & Symbol Table
Preparation: Book sections 7.5-7.7
Slides: Lecture-20
may 7
Middle Exam: 18:00~20:00
Location: DSY 203 DSY 204
Paper Solution Stat.
may 8
DUE: Lab #3
Lab #4: Y86 Simulator
may 9
LEC 21: Relocation & Dynamic Linking
Preparation: Book sections 7.6-7.9
Slides: Lecture-21
DUE: Homework #9 Solution #9
Assigned: Homework #10
may 12
may 13
LEC 22: PIC
Preparation: Book sections 7.10-7.12
Slides: Lecture-22
may 14
Online Test: 18:00~20:00
Location: SE Machine Room
Group-1: 18:00~19:00
Group-2: 19:00~20:00
Reference: Stats Scoreboard Handout
may 15
may 16
LEC 23: Logical Design & HCL
Preparation: Book sections 4.1-4.2
Slides: Lecture-23
DUE: Homework #10 Solution #10
Assigned: Homework #11
may 19
may 20
LEC 24: SEQ Stages
Preparation: Book sections 4.3.1-4.3.3
Slides: Lecture-24
Reference: cheatsheet
may 21
may 22
DUE: Lab #4
Lab #5: Y86 Assembler Intro
may 23
LEC 25: SEQ Implementation
Preparation: Book sections 4.3.2, 4.3.4
Slides: Lecture-25
DUE: Homework #11 Solution #11
Assigned: Homework #12
may 26
may 27
LEC 26: Principles of Pipelining & SEQ+
Preparation: Book sections 4.4, 4.5.1-4.5.4
Slides: Lecture-26
may 28
EXE 5:
may 29
may 30
LEC 27: Data Hazard
Preparation: Book sections 4.5.5-4.5.7
Slides: Lecture-27
DUE: Homework #12 Solution #12
Assigned: Homework #13
jun 2
Dragon Boat Festival
jun 3
LEC 28: Control Hazard
Preparation: Book sections 4.5.8, 4.5.10-4.5.11
Slides: Lecture-6
jun 4
EXE 6: Answers
jun 5
DUE: Lab #5
jun 6
LEC 29: Exception
Preparation: Book sections 4.5.9, 4.5.12
Slides: Lecture-8
DUE: Homework #13 Solution #13
Assigned: Homework #14
jun 9
jun 10
LEC 30: Dynamic Memory Allocation
Preparation: Book sections 9.9
Slides: Lecture-30
jun 11
EXE 7:
jun 12
jun 13
LEC 31: Simple Memory Allocator
Preparation: Book sections 9.9
Slides: Lecture-31
DUE: Homework #14 Solution #14
Assigned: Homework #15 Solution #15
jun 16
Final exam week
jun 17
Final exam week
jun 18
Final exam week
jun 19
Final exam week
jun 20
Final Exam: 8:00~10:00
Location: DZY 4-301 DZY 4-401
Paper-A Solution-A Paper-B Solution-B Stat.
jun 23
Final exam week
jun 24
Final exam week
jun 25
Final exam week
jun 26
Final exam week
jun 27
Final exam week
jun 30
jul 1
Lab #6: Memory Allocator
jul 2
jul 3
jul 4
jun 7
jun 8
jun 9
jun 10
jun 11
jul 14
DUE: Lab #6
jul 15
jul 16
jul 17
jul 18
jul 21
jul 22
jul 23
jul 24
jul 25

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