Introduction to Computer Systems (ICS)¶
Welcome to the XJTU-ICS course! This course offers a programmer’s perspective on how computer systems execute programs store data, and communicate with each other.
A key focus of the course is on developing your system programming skills. To achieve this, the course includes 6 hands-on lab assignments, which will help you strengthen your understanding of how systems operate at the code level. These lab assignments make up approximately 50% of your final grade, emphasizing the importance of practical programming in mastering the concepts covered in the course.
Enjoy!
Prerequisites: C Programming
Textbook: Randal E. Bryant and David R. O'Hallaron, Computer Systems: A Programmer's Perspective, Third Edition, Pearson, 2016
Announcements¶
Announcements for Week 6
Enjoy AttackLab!
DON'T CHEAT. Big Brother is watching you!
~ XJTU-ICS Course Staff
Getting Help¶
- Piazza
- QQ group: 1076865018
- Office Hours
- Danfeng Shan: 16:00-18:00, Every Thursday
- Hao Li: TBD
- TAs:
| Time/Date | Mon | Tues | Wed | Thur | Fri | Sat | Sun |
|---|---|---|---|---|---|---|---|
| 9:00-11:00 | 王子晋 | 王子晋 | |||||
| 14:00-16:00 | 刘子语 | 李雨轩 | |||||
| 16:00-18:00 | 唐堂 | 沈可瑞 | |||||
| 20:00-22:00 | 王亚男 | 刘畅 | 杜金诺 | 李雨轩 | 吴文正 | 杜金诺 | 田子牧 |
Schedule¶
| Week | Date | Lecture | Instructors | Materials | Reading | Labs |
|---|---|---|---|---|---|---|
| 1 | 2026-03-03 | Overview | Hao Li && Danfeng Shan | Slides | 1 | |
| 1 | 2026-03-05 | Bits, Bytes, & Integers | Danfeng Shan | Slides | 2.1 | DataLab out |
| 2 | 2026-03-10 | Bits, Bytes, & Integers | Danfeng Shan | Slides | 2.2-2.3 | |
| 2 | 2026-03-12 | Machine Prog: Basics | Danfeng Shan | Slides | 3.1 | BombLab out |
| 2 | 2026-03-15 | No Lecture | DataLab due | |||
| 3 | 2026-03-17 | Machine Prog: Basics | Danfeng Shan | Slides | 3.2-3.5 | |
| 3 | 2026-03-19 | Machine Prog: Control | Danfeng Shan | Slides | 3.6 | |
| 4 | 2026-03-24 | Machine Prog: Procedures | Danfeng Shan | Slides | 3.7 | |
| 4 | 2026-03-26 | Machine Prog: Data | Danfeng Shan | Slides | 3.8 | |
| 5 | 2026-03-31 | Machine Prog: Data | Danfeng Shan | Slides | 3.9 | |
| 5 | 2026-04-02 | Machine Prog: Advanced | Danfeng Shan | Slides | 3.10 | AttackLab out |
| 5 | 2026-04-05 | No Lecture | BombLab due | |||
| 6 | 2026-04-07 | No Lecture (XJTU 130th Anniversary) | ||||
| 6 | 2026-04-09 | Memory Hierarchy | Danfeng Shan | Slides | 6.1 | |
| 6 | 2026-04-11 | Memory Hierarchy | Danfeng Shan | 6.2-6.3 | ||
| 7 | 2026-04-14 | Cache Memories | Danfeng Shan | 6.4-6.7 | ||
| 7 | 2026-04-16 | Processor Architecture: Basics | Danfeng Shan | 4.1-4.2 | CacheSimLab out | |
| 7 | 2026-04-19 | No Lecture | AttackLab due | |||
| 8 | 2026-04-21 | Processor Architecture: Sequential | Danfeng Shan | 4.3 | ||
| 8 | 2026-04-23 | Processor Architecture: Pipeline | Danfeng Shan | 4.4-4.5 | ||
| 9 | 2026-04-28 | TBD | Hao Li | |||
| 9 | 2026-04-30 | TBD | Hao Li | CacheOptLab out | ||
| 9 | 2026-05-03 | No Lecture | CacheSimLab due | |||
| 10 | 2026-05-05 | No Lecture (Labour Day) | ||||
| 10 | 2026-05-07 | TBD | Hao Li | |||
| 10 | 2026-05-10 | No Lecture | CacheOptLab due |