A study of systems programming concepts and software, including the C programming language, Unix programming environment, and operating system interface. Students develop their abilities in these areas through programming exercises and projects.
Prerequisite(s): Grade of C or higher in COS 250 and COS 285.
Learning Outcomes
By the end of this course, students will be able to:
- Use many common unix commands and tools.
- Design and implement programs in C that directly use operating system-level functionality such as terminal modes, timers, signals, pipes, and the file system.
- Apply the principles of concurrency through unix processes and threads.
Textbook
Understanding Unix/Linux Programming by Bruce Molay.
Syllabus
Offered
Spring even years
