Class Notes

Class notes will be placed here as they are created. These notes are for my use, but are provided for your convenience. In addition, programs created in class will be posted as they are created. My plan is to cover as much of the first 15 chapters of the book as possible. This may change as the semester progresses. The contents of this page will change.
  • Chapter 1, Introduction
    • Overview.
    • Interrupts.
    • Memory and I/O.
    • Sort of the end of the chapter..
  • The Arduino Nano
    • Nano Intro.
    • Some Basic Programming.
    • The Lab Build.
    • Interrupts.
    • Prep for the Homework.
    • Timers.
    • Code for this section
  • A history of OS
    • Part I
    • THE EVOLUTION OF OPERATING SYSTEMS by Per Brinch Hansen.
  • Chapter 3, Processes
    • Process Overview.
    • Creating Processes in Linux.
    • Context Switch.
    • Exit Status.
    • Interprocess Communications
      • Overview
        • Signals.
        • Code for signals. (I accedentally did signals in a differnt location)
      • Posix Shared Memory example.
      • Posix Message Queues.
      • A very quick look at sockets.
    • Code for this section.
  • Chapter 6/7, Synchronization
  • Chapter 4, Threads and Concurrency
  • Chapter 8, Deadlock
    • Overview.
    • Hardware.
    • Intro To Threads.
    • POSIX threads.
    • Mutex.
    • Bounded Buffer Problem..
    • Semaphores.
    • Monitors.
    • Two More Problems.
    • Code for this section.
  • Chapter 5, CPU Scheduling
  • Chapter 9, Main Memory
  • Chapter 10, Virtual Memory
  • File Systems
  • Chapter 12, I/O Systems
  • Chapter 13, File-System Interface
  • Chapter 14, File-System Implementation
  • Chapter 15, File-System Internals