EECS 4520 - Advanced Systems Programming听Course Syllabus
Credits/Contact Hours
4 credit hours & 220 minutes lecture contact hours per week.听听
Textbook
Richard Stevens and Stephen A. Rago, 鈥淎dvanced Programming in the UNIX庐 Environment (3rd Edition)鈥, Addison-Wesley, ISBN-13 978-0321637734听
Course Information
Pertinent concepts of systems programming. Topics covered include: synchronization,
distributed programming models, kernel design, peripheral handling, file systems and
security history and methods.
Prerequisite: EECS 3540: Systems and Systems Programming听
听Elective or Required Course: Elective.听
Specific Goals - Student Learning Objectives听(SLOs)听
- Use low level system calls to control program flow, Input/Output, and determine system characteristics.听
- Evaluate the tradeoffs between low level system calls and the equivalent standard calls.听
- Understand the difficulties in providing a uniform interface to system facilities in disparate operating systems.听
- Read and understand a specification for a network service.听
Specific Goals 鈥撎听
EAC Crit. 3 Outcomes听
Specific Goals 鈥撎听
CAC Crit. 3 Outcomes听
Topics
- Standards and Conventions (POSIX, SUSE, etc.)听
- File Systems and Calls 鈥 examine iostreams, C Standard I/O Library, and low level calls.听
- Processes 鈥 initialization, control and status.听听
- Signals and signal handling, asynchronous I/O听
- Networking applications and IPC听
- MPI听
- Flex, Bison, and parsing听
- Process relationships and daemons听