CS456 - Systems Programming

Course Description

The catalog description for this course is:

"An introduction to both program translation and operating systems. There will be a survey of topics such as: top-down and bottom-up parsing, scanning, code generation, symbol table management, linkers and loaders, batch processing systems, interacting processes, multiprogramming systems, and memory management."

Learning Outcomes

  • Solid understanding of the Unix/Linux API.
  • Basic understanding of programming language translation.

Recommended text

Most information required for the course is available on-line. Sources that can be used for the course include the following.

  • The Unix on-line manual pages (man command)
  • The GNU info pages (info command)
  • "Linux System Programming: Talking Directly to the Kernel and C Library, Edition 2", Robert Love (O’Reilly)
  • "Flex & Bison", by John Levine (O’Reilly)
  • Wikipedia.org
  • Tutorials Point: