CPS 445: Systems Programming II/Winter 2006
Operating system structures, system calls and libraries, interprocess
communication, pipes, signals, times and timers, and threads.
Concepts presented in UNIX and C.
CPS 445 is a programming-intensive course and will serve as a gateway to
studies in networking and system administration.
Pre-requisite: CPS 444: Systems Programming I
Meeting times: M W 5:55-7:10p, MH 205
Dr. Saverio Perugini,
AN 145, 229-4079,
saverio at udayton dot edu,
OHs: M W 7:10-8:10p and by appointment.
||UNIX Systems Programming: Concurrency, Communication,
and Threads by K. A. Robbins and S.
Robbins. Prentice Hall, 2003. ISBN: 0-13-042411-0.
||The C Programming Language by B. W. Kernighan and D. M. Ritchie.
Prentice Hall, Second edition, 1988. ISBN: 0-13-110362-8
||The UNIX Programming Environment by B. W. Kernighan
and R. Pike.
Prentice Hall, Second edition, 1984. ISBN: 0-13-937681-X.
Lecture summaries and reading assignments:
(click on a date to view lecture summary for that class)
(how to submit assignments)
- Introduction and processes ([USP] Ch1-3):
- UNIX I/O, (special) files, and directories ([USP] Ch4-6):
- The Token Ring ([USP] Ch7):
- Signals ([USP] Ch8): Mar 20
- Command Shells ([USP] Ch11):
- Times and Timers ([USP] Ch9): Apr
Exam 1 (Jan 30, closed book, closed notes)
Exam 2 (Feb 27, closed book, closed notes)
Exam 3 (Apr 3, closed book, closed notes)
(5:55-7:45p, May 3, MH 205; comprehensive, closed book, closed notes)
(programming style guide)
Homeworks (50 pts each; from [USP]):
Projects (100 pts each; from [USP]):
- (coverage: Ch2; assigned: 1/18; due: 1/25):
An env utility (§2.12: pp. 54-55) or
Message Logging (§2.13: pp. 55-56)
- (coverage: Ch3; assigned: 2/1; due: 2/8):
Process Chains (§3.8: pp. 87-88) or
Process Fans (§3.9: pp. 88-89)
- (coverage: Ch4-5; assigned: 2/8; due: 2/15):
Atomic Logging (§4.9: pp. 135-141),
The which command (§5.5: pp. 173-174),
Biffing (§5.6: pp. 174-177),
News biff (§5.7: pp. 177-178), or
Traversing Directories (§5.8: pp. 179-181)
- (coverage: Ch6; assigned: 2/15; due: 2/22):
Audio (§6.7: pp. 219-221), Barriers (§6.8: pp. 221-222),
The stty Command (§6.9: p. 223), or
Client-Server Revisited (§6.10: p. 223)
- (coverage: Ch8; assigned: 3/29; due: 4/10):
Dumping Statistics (§8.9: p. 299) or
Spooling a Slow Device (§8.10: pp. 299-300)
- (coverage: §§11.5-11.7: pp. 386-401;
assigned: 4/10; due: 4/12):
Exercise 11.25 (p. 391) and Exercise 11.35 (p. 401)
- (coverage: §9.1: pp. 302-313 and §9.3: pp. 315-320;
assigned: 4/24; due: 4/26):
Exercise 9.13 (p. 319, with `How can you' removed
from the question) or modify timechild.c (p. 313) as
described in class
- (coverage: Ch1-7;
(Robbins and Robbins'
Ring Simulator User's Guide)
- assigned: 3/1; due: 3/8; 50 pts):
Pipelined Preprocessor (§7.9: pp. 243-245)
- assigned: 3/8; due: 3/22; 50 pts):
Parallel Ring Algorithms: Matrix multiplication (§7.10:
pp. 246, 249-250)
- (§11.8) Job Control for ush (coverage: Ch1-8, 11;
- assigned: 4/12; due: 4/19; 50 pts):
A job list object (§11.8.1, pp. 402-403)
- assigned: 4/12; due: 4/26; 50 pts):
The job list in ush (§11.8.2: pp. 403-404) and
Job control in ush (§11.8.3: p. 404)
CPS account access @ home
UNIX account access
CPS labs hours
Keeping your password safe
A beginner's guide to effective e-mail
If you are unable to log into your CPS (Windows
or UNIX) account or if you forgot your
CPS (Windows or UNIX) account password,
contact the CPS systems administrator, Mr. Halter, at
dean dot halter at notes dot udayton dot edu
and be as specific as possible. Mr. Halter's office is located in the back of
AN 131 and his office hours are M-F 8:00-5:00p.
Readings and resources: [USP] webpage (contains links to all programs in the text)
UD academic calendar
UD student handbook
Dr. Perugini welcomes
any feedback you may have on the style of the lectures,
the concepts presented in class, the course webpage,
homeworks, projects, deadlines, course and grading policies,
or your general
experience in the course.
© Saverio Perugini, Winter 2006, University of Dayton.
Permission to use ideas about
the organization of topics and any notes or material is granted,
provided suitable acknowledgments and citations are made.