CSCI 415/515 - Fall 2022
Systems Programming
Signals and Timers
Monday, Sept 26, 2022
Readings
The Linux Programming Interface
:
- Ch 20: Signals: Fundamental Concepts (20.1 - 20.12, 20.14)
Materials
-
Signals: Fundamental Concepts
-
catch-sigint
-
catch-two
-
raise
-
pending
Wednesday, Sept 28, 2022
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
-
sigaction
-
sa_siginfo
-
sig_atomic
-
{send,catch}_sigqueue
Friday, Sept 30, 2022
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
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
Materials
-
sigsuspend
-
sigwaitinfo
-
signalfd
-
posix_timers
Monday, Oct 3, 2022
Readings
The Linux Programming Interface
:
Ch 10: Time
10.1: Calendar Time
10.2: Time-Conversion Functions
Shell Programming in Unix, Linux and OS X
:
skim:
Ch 1: A Quick Review of the Basics
Ch 2: What is the Shell?
Ch 3: Tools of the Trade
Materials
-
time
-
gettimeofday
-
gmtime
,
localtime
-
mktime
-
asctime
-
strftime
Wednesday, Oct 5, 2022
Readings
Shell Programming in Unix, Linux and OS X
:
skim:
Ch 4: And Away We Go
Ch 5: Can I Quote You on That?
Ch 6: Passing Arguments
Ch 7: Decisions, Decisions
Friday, Oct 7, 2022
Readings
Shell Programming in Unix, Linux and OS X
:
skim:
Ch 8: 'Round and 'Round She Goes
Ch 9: Reading and Printing Data?
Ch 12: Loose Ends