+ - 0:00:00
Notes for current slide
Notes for next slide

CSCI 340 Operating Systems

Final Exam Topics


Top   1/7

© Stewart Weiss. CC-BY-SA.

Table of Contents

Computer Systems
Operating System Overview
Processes
Threads

Top   2/7

© Stewart Weiss. CC-BY-SA.

Threads

  • Kernel level
  • Thread libraries
  • Implementations: 1:1, M:1, M:N, two-level
  • Scheduler Activations
  • Implicit Threading
  • Parallelizing Compilers
  • Types of Implicit Threading
  • Thread Pools
  • Fork-Join Parallelism
  • OpenMP
  • Grand Central Dispatch
  • Threading Issues related to fork() and exec()
  • Signals and Signal Handling
Top   3/7

© Stewart Weiss. CC-BY-SA.

Scheduling

  • FCFS
  • Shortest Job First
  • SRTF
  • Round Robin
  • Priority scheduling
  • Priority queues
  • Multilevel feedback queues
  • System Contention Scope
  • Process Contention Scope
  • Multiprocessor Scheduling Issues
  • Logical Versus Physical Processors
  • Asymmetric Multiprocessing System Scheduling
  • Symmetric Multiprocessor Scheduling
  • Shared Ready Queues
  • Per-Processor Ready Queues
  • Load Balancing
  • Migration Issues
  • Processor Affinity
  • NUMA Nodes
  • Hardware Multithreading
Top   4/7

© Stewart Weiss. CC-BY-SA.

Synchronization Tools

  • Synchronization Mechanisms
  • Race Conditions
  • Race Conditions in the Kernel
  • Preemptive Kernels
  • Re-entrant Kernels
  • The Critical Section Problem
  • The Conditions A Solution Must Satisfy
  • Peterson's Algorithm
  • Limitations of Peterson's Algorithm
  • Memory Barriers
  • Hardware Support for Critical Section Solutions
  • Bus locking
  • Hardware Primitives
  • The Test-and-Set Instruction
  • Compare-and-Swap Instruction
  • Implementing Test-and-Set With Compare-and-Swap
  • Spinlocks
  • Ensuring Bounded Waiting Using Locks
  • Atomic Variables
  • Mutex Locks
  • Semaphores
  • Binary Semaphores for Mutual Exclusion
  • Counting Semaphores
  • Liveness
  • Priority Inversion
Top   5/7

© Stewart Weiss. CC-BY-SA.

Synchronization Problems

  • The Bounded Buffer Problem
  • Producer and Consumer Problem
  • The Readers-Writers Problem
  • Alternative Preferences in Readers Writers Problem
  • Reader-Writer Locks
  • The Dining Philosophers Problem
  • A Naive Solution Using Semaphores
  • Synchronization in the Modern Linux Kernel
  • Spinlocks in Linux
  • Mutexes in Linux
  • Semaphores in Linux
Top   6/7

© Stewart Weiss. CC-BY-SA.

Deadlock

  • Examples of Deadlock
  • Formal Model of a Resource Allocation System
  • Reusable Resource Graphs
  • Characterizing Deadlock: Four Necessary Conditions
  • Circular Waiting and Cycles: Theorems
  • Prevention Methods
  • Avoidance Algorithms
  • Safe and Unsafe System States
  • The Banker's Algorithm
  • Deadlock Detection - ~
Top   7/7

© Stewart Weiss. CC-BY-SA.

Table of Contents

Computer Systems
Operating System Overview
Processes
Threads

Top   2/7
Paused

Help

Keyboard shortcuts

, , Pg Up, k Go to previous slide
, , Pg Dn, Space, j Go to next slide
Home Go to first slide
End Go to last slide
Number + Return Go to specific slide
b / m / f Toggle blackout / mirrored / fullscreen mode
c Clone slideshow
p Toggle presenter mode
t Restart the presentation timer
?, h Toggle this help
Esc Back to slideshow