Note: Since Spring 2021 is the first time this course is being taught, there’s some uncertainty about the pacing and non-textbook readings for various topics. Information will be filled in when possible, and past dates will be updated to reflect what was actually covered.
The following gives a schedule of topics covered by week. While this schedule is kept here for easy access, more detailed information is in Canvas where week-by-week materials and information is in the “Modules” area. All student tasks (including pre-class preparation, in-class activities, and assignments) are tagged with dates in Canvas, so keep an eye on the Calendar there to keep track of responsibilities. In addition to the material in Canvas, GitHub repositories are also available with code from in-class examples, which should be accessible to class members through the UNCG-CSC362-Spring2021 GitHub organization.
Topics: Course Intro, Role of the Operating System, and Virtual Machine Use
Textbook Reading: None
Handout: Syllabus
Resources: Class Virtual Machine Image (available soon)
Topics: Working with the Bash Shell, Common Tools, and Linux Security Basics
Textbook Reading: Chapter 2 and Section 14.1 (Security Terminology and Ethics)
Topics: Programming in C
Textbook Reading: Chapter 3
Topics: More C Programming and C Software Security
Textbook Reading: Section 14.2 (Security in C Programming)
Topics: Processes
Textbook Reading: Chapter 4
Topics: Memory – Segments, Allocation, etc.
Textbook Reading: Chapter 5
Topics: Filesystems
Textbook Reading: Chapter 12
Tuesday, March 9: Midterm Exam
Thursday Topics: Start Multithreaded Programming
Textbook Reading: Chapter 6
Topics: Finish Multithreaded Programming; Synchronization and Deadlock
Textbook Reading: Chapter 7
Topics: Interprocess Communication
Textbook Reading: Chapter 9
Topics: Networking
Textbook Reading: Chapter 11
Topics: Signals
Textbook Reading: Chapter 13
Topics: Network Security and Parallel and Distributed Computing
Textbook Reading: Section 14.3 (Cyber Security)
Topics: Virtualization and Containers
Textbook Reading: None
Thursday, May 6, 3:30-6:30