CSE430 -- Operating Systems, Spring 2014

Disclaimer:

This is a set of notes that summarize the class coverage of material. By no means is this comprehensive or is a substitute for class notes and attendance. Also, updating of this page is not guaranteed to be frequent.

 This page will be updated as class progresses....

Class 1:

Class 2:  (Chapters 1 and 2)

·         History

·         Efficiency of operations

·         Resident Monitors

·         Evolution of Operating Systems

·         [notes] // no audio, malfunction

Class 3:

·         Efficiency, overlapping I/O

·         Types of OSs

·         Computer systems – CPU, memory

·         Interrupts and Interrupt handling

·         [notes] [audio]

Class 4:

·         Interrupts

·         System Calls

·         Protection

·         Kernel Structure

·         [notes] [audio]

Class 5:

·         Layering, modularity

·         Separation of policy and mechanisms – microkernels

·         OS Boot and Secure Boot

·         Vulnerabilities and patching

·         [notes] [audio (partial)]

Class 6: (Chapter 3)

·         Kernel Modules

·         Compile, Link, Load

·         Programs and Processes

·         [notes] [audio (partial)]

Class 7: (Chapter 6)

·         Processes and PCB

·         Context Switching

·         Scheduling – Metrics, non-preemptive, FIFO, SJF

·         Round Robin and Quanta

·         [notes] [audio]

Class 8:

·         Multilevel Queues

·         Evaluating Schedulers

·         Linux Schedulers

·         [notes]

Class 9: (Chapter 4)

·         Threads, sharing

·         Why threads, race conditions

·         User and Kernel threads

·         Starting threads

·         [notes] [audio]

Class 10: (Chapter 5)

·         Threads again

·         Race conditions and conflicts

·         Critical section problem

·         Railroad problem – and software solutions

·         [notes] [audio]

Class 11:

·         Dekker, Peterson and Lamport Bakery [slides]

·         [notes] [audio]

Class 12:

·         Lamport Bakery, contd

·         Atomicity via Hardware

·         Disabling and test-and-set

·         Spin locks, mutex locks

·         [notes] [audio]

Class 13:

·         Project 2 details

·         Semaphores – definition (see Dijkstras notes on this topic)

·         [notes]

Class 14:

·         Semaphores

·         Producer Consumer

·         Readers and writers

·         [notes] [audio]

Class 15:

·         Readers and writers (some code here)

·         [notes] [audio]

Class 16:

·         Readers and writers – version 2

·         Dining Philosophers

·         Deadlock free solution to Dining Philo

·          [notes]

Class 17:

·         How to implement semaphores

·         [notes]

Class 18:

·         Semaphores in project

·         pthreads and mutex

·         Monitors

·         [notes] [audio]

Class 19:

·         Monitors and programs – monitor program samples

·         Pthreads and monitors

·         Monitor-semaphore equivalence

·         [notes] [audio]

Class 20:

·         Memory Management

·         Physical Memory and memory allocation

·         Compile, Link, Load

·         [notes] [audio]

Class 21:

·         Paging concept

·         Page tables, address translations

·         TLB (cache)

·         [notes] [audio]

Class 22:

·         Paging shortcomings

·         Segmentation

·         Segmentation + paging

·         [notes] [audio]

Class 23:

·         VAX memory architecture ref1 ref2

·         Pentium memory

·         Virtual memory and Demand Paging

·         Page fault handling

·          [notes]

Class 24:

·         Paging, page replacement

·         OPT, LRU, LRU-approximations

·         Deadlocks

·          [notes] [audio]

Class 25:

·         Deadlocks – RAG and WFG

·         Deadlock Prevention

·         Deadlock Avoidance

·          [notes] [audio]

 

Class 26:

·         Banker’s Algo

·         Deadlock Detection

·         Deadlock recovery

·          [notes] [audio]

Class 27:

·         File Systems

·         Data, metadata, disks and the problem

·         Structure of the Unix file system

·         System calls

·          [notes] [audio]

Class 28:

·         Device management

·         Interfaces to Devices

·         Device Drivers, Interrupts

·         Disk head scheduling

·          [notes] [audio]

Class 28:

·         Review class

·          [notes] [audio]