ÃÛÌÒ´«Ã½

Electrical Engineering and Computer Science

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, “Advanced 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)Ìý

  1. Use low level system calls to control program flow, Input/Output, and determine system characteristics.Ìý
  2. Evaluate the tradeoffs between low level system calls and the equivalent standard calls.Ìý
  3. Understand the difficulties in providing a uniform interface to system facilities in disparate operating systems.Ìý
  4. Read and understand a specification for a network service.Ìý

Specific Goals –ÌýÌý

EAC Crit. 3 OutcomesÌý

Specific Goals –ÌýÌý

CAC Crit. 3 OutcomesÌý

Topics

  1. Standards and Conventions (POSIX, SUSE, etc.)Ìý
  2. File Systems and Calls – examine iostreams, C Standard I/O Library, and low level calls.Ìý
  3. Processes – initialization, control and status.ÌýÌý
  4. Signals and signal handling, asynchronous I/OÌý
  5. Networking applications and IPCÌý
  6. MPIÌý
  7. Flex, Bison, and parsingÌý
  8. Process relationships and daemonsÌý