SYST 44288 – Operating Systems & Systems Programming

SYST 44288 – Operating Systems & Systems Programming

Assignment 4 – Security Code Audit

Due Date: See SLATE calendar




As for assignments 2 and 3, for this assignment, work in groups of two.


Select an information security utility from the list of utilities below. Build (ie. compile) and run the program so that you are familiar with the program’s purpose and operation. Then,  audit (ie. read) the source code and discuss how the program works, paying special attention to the system calls, concurrency and other OS related features it uses. You should focus only on the core functionality of the utility and not on peripheral matters like database connections, GUI elements, error handling and logging. The purpose of this assignment is to understand how pieces of “professional” software use system calls, concurrency and other sophisticated programming techniques. You will then prepare a short report detailing the more interesting parts of the program you have audited.

Your report should include an overall discussion of the utility including what it does, how it functions, an overview of the code base (ie. what files do what, how are they organized) and a more detailed discussion of the key parts of the code as described above. Make sure to include snippets of code and references to other libraries where appropriate.


The List:



Grading Rubric

  • 4 Point – General discussion of program and how it functions.
  • 4 Point – Overview of code base.
  • 10 Points – Detailed discussion of the core code functionality.
  • 2 Point – References: including snippets of code, and reference to libraries.

Total: 20 points.



  1. Include the names of your group at the top of the report.
  2. Your submission should be in a single word file in the following format, where lastname1 is the lastname of student1 and lastname2 is the lastname of student2:


  1. Upload your report in Word to the SLATE dropbo

Order Now