CSCI 415/515 - Fall 2024
Systems Programming
Signals and Timers


Monday, Sept 23, 2024

Readings
The Linux Programming Interface:
- Ch 20: Signals: Fundamental Concepts (20.1 - 20.12, 20.14)
Materials

Wednesday, Sept 25, 2024

Readings
The Linux Programming Interface:
  • Ch 20: Signals: Fundamental Concepts
    • 20.13: Changing Signal Dispositions: sigaction()
  • Ch 21: Signals: Signal Handlers
    • 21.1: Designing Signal Handlers
    • 21.4: The SA_SIGINFO Flag
    • 21.5: Interruption and Restarting of System Calls
  • Ch 22: Signals: Advanced Features
    • 22.6: Timing and Order of Signal Delivery
    • 22.7: Implementation and Portability of signal()
    • 22.8: Realtime Signals
Materials

Friday, Sept 27, 2024

Readings
The Linux Programming Interface:
  • Ch 22: Signals: Advanced Features
    • 22.9: Waiting for a Signal Using a Mask: sigsuspend
    • 22.10: Synchronously Waiting for a Signal
    • 22.11: Fetching Signals via a File Descriptor
Materials

Monday, Sep 30, 2024

Readings
The Linux Programming Interface:
  • Ch 23: Signals: Timers and Sleeping
    • 23.1: Interval Timers
    • 23.4: Suspending Execution for a Fixed Interval (Sleeping)
    • 23.5: POSIX Clocks
    • 23.6: POSIX Interval Timers
  • Ch 10: Time
    • 10.1: Calendar Time
    • 10.2: Time-Conversion Functions
Materials

Wednesday, Oct 2, 2024

Readings
Shell Programming in Unix, Linux and OS X:
skim:
    skim:
  • Ch 1: A Quick Review of the Basics
  • Ch 2: What is the Shell?
  • Ch 3: Tools of the Trade
  • Ch 4: And Away We Go
  • Ch 5: Can I Quote You on That?
  • Ch 6: Passing Arguments
  • Ch 7: Decisions, Decisions
  • Ch 8: 'Round and 'Round She Goes