Yang Xiao Home

CS 270 (Fall 2026)
Systems Programming

Course Information

Instructor: Yang Xiao (contact: xiaoy[AT]uky.edu)
Meeting Times: T/R 3:30-4:45 PM
Office Hour: Hardymon Rm 233, Wed 2:00 PM – 4:00 PM
TA: TBD, Office Hour: TBD, EE Annex 205

Course Description

This course provides an introduction to computer systems and explores computer architecture, operating systems, and networks from a programmer's perspective. The course also introduces advanced programming and debugging tools. Topics include hardware instruction sets, machine language and C language program representations, linking/loading, operating systems (process management, scheduling, memory management, interprocess communication, and file systems), network programming (socket programming and web protocols), and common security attacks and solutions.

Textbooks and Materials

Required Textbook: R. Bryant and D. O'Hallaron, Computer Systems: A Programmer's Perspective, third edition, Pearson, 2016. ISBN 978-0-13-409266-9.
Strongly Recommended Textbook: B. Kernighan and D. Ritchie, The C Programming Language, second edition, Prentice Hall, 1988. ISBN 0-13-110362-8. Why this text is strongly recommended: It is both (i) the best way to learn C language; and (ii) a great reference for the future. Why C language is important (at least for this course): Because C is the closest high-level language to machine language—It is designed so that you can know exactly what the machine is doing when it executes your programs.

Course Schedule (Tentative)

Week Date Agenda
(Lecture notes uploaded to Canvas the same day before class)
Text Reading Assignment
(H: Homework, L: Lab, P: Project)
1 08/25 T
08/27 R
Lec 0: Course intro + Lec 1: Intro to C: Portable Assembly Language
Lec 1 wrap-up + Lab 0: Your VM, the shell, basic C tool chain, gdb
2 09/01 T
09/03 R
3 09/08 T
09/10 R
4 09/15 R
09/17 T
5 09/22 T
09/24 R
6 09/29 T
10/01 R
7 10/06 T
10/08 R
8 10/13 T
10/15 R
9 10/20 T
10/22 R
10 10/27 T
10/29 R
Fall Break - no class

11 11/03 T
11/05 R
12 11/10 T
11/12 R
13 11/17 T
11/19 R

14 11/24 T
11/26 R

Thanksgiving Break - no class
15 12/01 T
12/03 R
16 12/08 T
12/10 R
(Prep Days)
(Reading Days) No class.
17 12/15 T
12/17 R
Final exam, Tuesday, December 15, 1:00 - 3:00 PM, in classroom

Learning/Research Resources

UK Libraries, Free Tutoring and Coaching at UK, Google Scholar, ACM Digital Library, IEEE Xplore.