v FSU COP4610 / CGS 5765 -- Operating Systems (Fall 2022)

FSU COP4610 / CGS 5765
Principles of Operating Systems (Fall 2022)

Instructor
Andy Wang (awang@cs.fsu.edu)

Teaching Assistants
TBA (cop4610t@cs.fsu.edu, subject: cop4610)

Textbook
Silberschatz, Galvin, and Gagne, Operating System Concepts, 10th Edition


Announcements

[Dec 3] Welcome to COP4610!


Lecture Slides

Lecture 1 (8/23/2022)
Course Syllabus (DOCX)
Course Information (PPT)
Introduction and History (PPT)
Homework 1 (posted on Canvas)
Reading: Chapter 1

Lecture 2 (8/25/2022)
Concurrency: Threads, Address Spaces, and Processes (PPT)
Applying for Graduate Schools (PPT)

Lecture 3 (8/30/2022)
Genesis: From Raw Hardware to Processes (PPTX)
Homework 2 (posted on Canvas)
Reading: Chapter 2

Lecture 4 (9/1/2022)
CPU Scheduling (PPT)
Round robin example (PPT)
Reading: Chapter 5

Lecture 5 (9/6/2022)
Cooperating Threads (PPT)
Synchronization (PPT)
Project 1 Hints (PPT)
Homework 3 (posted on Canvas)
Reading: Sections 4.1

Lecture 6 (9/8/2022)
Implementing Mutal Exclusion (PPT)
Reading: Sections 6.4 - 6.5

Lecture 7 (9/13/2022)
Recitation

Lecture 8 (9/15/2022)
Semaphores and Bounded Buffer (PPT)
More on Semaphores (PPT)
Reading: Section 7.1.1
Homework 4 (posted on Canvas)

Lecture 9 (9/20/2022)
Exam review (PPT)

Lecture 10 (9/22/2022)
Exam 1 via Canvas

Lecture 11 (9/27/2022)
No classes due to hurricane Ian

Lecture 12 (9/29/2022)
No classes due to hurricane Ian

Lecture 13 (10/4/2022)
Exam 1 debrief
Monitors, Condition Variables, and Readers-Writers (PPT)
Homework 5 (posted on Canvas)

Lecture 14 (10/6/2022)
Deadlocks (PPT)
Reading: Chapter 8

Lecture 15 (10/11/2022)
Concurrency Conclusion (PPT)
Memory Protection (PPT)
Homework 6 (posted on Canvas)
Reading: Sections 9.1 - 9.4
Optional: Why threads are a bad idea, by John Ousterhout (PPTX)

Lecture 16 (10/13/2022)
Address Translation (PPT)

Lecture 17 (10/18/2022)
Caching and TLBs (PPT)
Reading: Sections 10.1 - 10.6

Lecture 18 (10/20/2022)
Virtual Memory (PPT)
Homework 7 (posted on Canvas)
Reading: Sections 11.1-11.2, 12.1-12.4

Lecture 19 (10/25/2022)
Device Management and Disk Management (PPT)

Lecture 20 (10/27/2022)
Exam review (PPT)

Lecture 21 (11/1/2022)
Exam 2 via Canvas

Lecture 22 (11/3/2022)
Exam 2 debrief
File Systems (PPT)
Naming and Directories (PPT)
Reading: Sections 12.1 - 12.3, 13.1 - 13.4

Lecture 23 (11/8/2022)
Transactions and Reliability (PPT)
Homework 8 (posted on Canvas)

Lecture 24 (11/10/2022)
No classes due to storm

Lecture 25 (11/15/2022)
Protection and Security (PPT)
Reading: Sections 16, 17.5 - 17.7
Homework 9 (posted on Canvas)
10-million-passwords.txt ( right click on the link and click 'save as')
wordlist.10000.txt

Lecture 26 (11/17/2022)
Network Protocols (PPT)
Network and Distributed Systems (PowerPoint XP)
Reading: Sections 19.3 - 19.6

Lecture 27 (11/22/2022)
Remote Procedure Call (PPT)
Distributed File Systems (PPT)
Homework 10 (posted on Canvas)

Lecture 28 (11/24/2022)
Thanksgiving Day Holiday

Lecture 29 (11/29/2022)
Final review (PPT)

Lecture 30 (12/1/2022)
Automated Worm Fingerprinting (PPTX)


Useful Resources

Discussion board

Lab resources
Lab Web page
Cross-Referecing Linux

Books
Gary Nutt, Kernel Projects for Linux
Kernighan, Ritchie, The C Programming Language (2nd Edition)
Corbet, Rubini, and Kroah-Hartman, Linux Device Drivers
Arpaci-Dusseau, Arpaci-Dusseau, Operating Systems: Three Easy Pieces
Tanenbaum and Woodhull, Operating Systems Design and Implementation (3rd Edition)
Maxwell, Linux Core Kernel Commentary
Tanenbaum, Modern Operating Systems (3rd Edition)


awang@cs.fsu.edu
Last modified on: July 1, 2022