CS 241: Systems Programming

DateTopic and readingAssignments
Week 1
Wed, Aug 27Introduction [slides]
No reading
Fri, Aug 29UNIX and the shell
Reading
  • LCL. Chapters 1–5.
Week 2
Mon, Sep 01No class: Labor Day
No reading
Wed, Sep 03Shell 2
Reading
  • LCL. Chapters 6–10, chapter 8 is optional.
Fri, Sep 05Environment and expansion
Reading
  • LCL. Chapter 11 and optionally chapter 13.
Week 3
Mon, Sep 08Version control and Git
Reading
  • Git book. Sections 1.1, 1.3, 1.6, 1.7, 2.1, and 2.2.
Wed, Sep 10Shell scripting 1
Reading
  • LCL. Chapters 24–27.
Fri, Sep 12Shell scripting 2
Reading
  • LCL. Chapters 29, 31–33.
Week 4
Mon, Sep 15Introduction to Rust
Reading
  • Rust book. §1.2 and 1.3; read §1.1 for installation instructions on your own computer, if you want.
Wed, Sep 17Basic Rust programming
Reading
Fri, Sep 19More Rust programming
Reading
Week 5
Mon, Sep 22Ownership in Rust
Reading
Wed, Sep 24References
Reading
Fri, Sep 26Slices
Reading
Week 6
Mon, Sep 29Structure types
Reading
Wed, Oct 01Enumerations
Reading
Fri, Oct 03Processes
Reading
Week 7
Mon, Oct 06Modules in Rust
Reading
Wed, Oct 08System calls I
Reading
Fri, Oct 10Unsafe Rust and pointers
No reading
Week 8
Mon, Oct 13System calls II
Reading
Wed, Oct 15Generics and traits
Reading
Fri, Oct 17Project work day
No reading
Week 9
Mon, Oct 20No class: fall break
No reading
    Wed, Oct 22No class: fall break
    No reading
    Fri, Oct 24No class: fall break
    No reading
    Week 10
    Mon, Oct 27Generics and traits 2
    No reading
    Wed, Oct 29Lifetimes
    Reading
    Fri, Oct 31UNIX Signals
    Reading
    Week 11
    Mon, Nov 03Advanced Git
    Reading
    Wed, Nov 05Closures
    Reading
    Fri, Nov 07More closures
    No reading
    Week 12
    Mon, Nov 10More threads
    Reading
    Wed, Nov 12Networking
    Reading
    Fri, Nov 14More networking
    Reading
    Week 13
    Mon, Nov 17More networking
    No reading
    Wed, Nov 19Static Libraries
    Reading
    • I.L. Taylor. Linkers. Read Linkers parts 1, 2, and 3.
    Fri, Nov 21Dynamic Libraries
    Reading
    Week 14
    Mon, Nov 24Project work day
    No reading
    • Project work day
    Wed, Nov 26No class: Thanksgiving
    No reading
    Fri, Nov 28No class: Thanksgiving
    No reading
    Week 15
    Mon, Dec 01Regular expressions I
    Reading
    • LCL. Chapter 19.
    • Lab 11: Networking
    Wed, Dec 03Regular expressions II
    No reading
    Fri, Dec 05Memory unsafety: Introduction to control flow hijacking
    No reading
    Week 16
    Mon, Dec 08TBA
    No reading
    • Project work day
    Wed, Dec 10Class wrap up
    No reading