2. Instructor Information
3. Course Objectives
This course provides fundamental concepts about how modern computer systems operate from a programmer's perspective, such as how computer systems execute programs, store information, and communicate. The course aims to enable students to become more effective programmers, especially in dealing with issues of performance, portability, and robustness. It also serves as a foundation for other systems courses on compilers, networks, operating systems, and computer architecture, where a deeper understanding of systems-level issues is required. The topics covered include machine-level code and its generation by optimizing compilers, performance evaluation and optimization, computer arithmetic, memory organization and management, networking technology and protocols, and supporting concurrent computation.
4. Prerequisites & require
CSED 273: Digital System (prefered)
Effective Programming Skills in C and UNIX
5. Grading
| Midterm Exam |
Final Exam |
Attendance |
Assignment |
Project |
Presentation/Discussion |
Laboratory/Practice |
Quiz |
Others |
Total |
|
|
|
|
|
|
|
|
|
|
| 비고 |
- Exam: 60% (Midterm: 30%/Final: 30%)
- Hands-on Projects in Labs: 30%
- Homework and Quiz: 10%
|
6. Course Materials
| Title |
Author |
Publisher |
Publication Year/Edition |
ISBN |
|
Computer Systems: A Programmer's Perspective
|
Randal E. Bryant and David R. O'Hallaron
|
Pearson
|
2025
|
978-0134092669
|
7. Course References
Web Asides of Textbook: https://csapp.cs.cmu.edu/3e/waside.html
8. Course Plan
Week 1: Introduction, Integer representation
Week 2: Integer, Floating-point representation
Week 3: Floating-point, Machine-level Basic (history, ISA concept)
Week 4: Machine-level Basic (registers, instruction mov, addressing mode)
Week 5: Arithmetic & Control instructions, Procedure Realization
Week 6: Procedure realization, Structured Data realization (Array, Structure, Union...)
Week 7: Advanced Topics (Memory Layout, Buffer Overflow)
Week 8: Mid-term Exam, Memory Hierarchy
Week 9: Cache Memories, Linking
Week 10: Exceptions & Processes, Non-loacl Jump
Week 11: I/O Sub-device control
Week 12: Virtual Memory
Week 13: Virtual Memory (cont.), Dynamic MA
Week 14: Dynamic MA (cont.), Networking
Week 15: Program optimization, Thread-level Parallelism
Week 16: Final exam
9. Course Operation
- Two 75-min lectures per week delivered by the instructor
- One 90-min Lab. session per week with TAs
- Attendance will NOT be evaluated; however, exceeding seven absences will result in FAIL of the course under POSTECH's regulations.
10. How to Teach & Remark
11. Supports for Students with a Disability
- Taking Course: interpreting services (for hearing impairment), Mobility and preferential seating assistances (for developmental disability), Note taking(for all kinds of disabilities) and etc.
- Taking Exam: Extended exam period (for all kinds of disabilities, if needed), Magnified exam papers (for sight disability), and etc.
- Please contact Center for Students with Disabilities (279-2434) for additional assistance