FSU COP4610 / CGS 5765
Principles of Operating Systems (Spring 2021)
Instructor
Andy Wang
(awang@cs.fsu.edu)
Teaching Assistants
Woohyeong Kim, Juan Conde, and TBA
(cop4610t@cs.fsu.edu, subject: cop4610)
Textbook
Silberschatz, Galvin, and Gagne, Operating System Concepts, 10th Edition
Announcements
[Jan 1] Welcome to COP4610!
Lecture Slides
Lecture 1 (1/6/2021)
Course Syllabus
(DOC)
Course Information
(PPT)
Introduction and History
(PPT)
Homework 1 (posted on Canvas)
Reading: Chapter 1
Lecture 2 (1/8/2021)
Recitation
Lecture 3 (1/11/2021)
Concurrency: Threads, Address Spaces, and Processes
(PPT)
Lecture 4 (1/13/2021)
Genesis: From Raw Hardware to Processes
(PPT)
Applying for Graduate Schools
(PPT)
Homework 2 (posted on Canvas)
Reading: Chapter 2
Lecture 5 (1/15/2021)
Recitation
Lecture 6 (1/18/2021)
Martin Luther King Jr. Day
Lecture 7 (1/20/2021)
CPU Scheduling
(PPT)
Round robin example
(PPT)
Reading: Chapter 5
Lecture 8 (1/22/2021)
Recitation
Lecture 9 (1/25/2021)
Cooperating Threads
(PPT)
Synchronization
(PPT)
Project 1 Hints
(PPT)
Homework 3 (posted on Canvas)
Reading: Sections 4.1
Lecture 10 (1/27/2021)
Implementing Mutal Exclusion
(PPT)
Reading: Sections 6.4 - 6.5
Lecture 11 (1/29/2021)
Recitation
Lecture 12 (2/1/2021)
Semaphores and Bounded Buffer
(PPT)
More on Semaphores
(PPT)
Reading: Section 7.1.1
Homework 4 (posted on Canvas)
Lecture 13 (2/3/2021)
Exam review
(PPT)
Lecture 14 (2/5/2021)
Recitation
Lecture 15 (2/8/2021)
Exam 1 via Canvas
Lecture 16 (2/10/2021)
Exam 1 debrief
Lecture 17 (2/12/2021)
Recitation
Lecture 18 (2/15/2021)
Monitors, Condition Variables, and Readers-Writers
(PPT)
Homework 5 (posted on Canvas)
Lecture 19 (2/17/2021)
Deadlocks
(PPT)
Reading: Chapter 8
Lecture 20 (2/19/2021)
Recitation
Lecture 21 (2/22/2021)
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 22 (2/24/2021)
Address Translation
(PPT)
Lecture 23 (2/26/2021)
Recitation
Lecture 24 (3/1/2021)
Caching and TLBs
(PPT)
Virtual Memory
(PPT)
Reading: Sections 10.1 - 10.6
Lecture 25 (3/3/2021)
Device Management and Disk Management
(PPT)
Homework 7 (posted on Canvas)
Reading: Sections 11.1-11.2, 12.1-12.4
Lecture 26 (3/5/2021)
Recitation
Lecture 27 (3/8/2021)
Exam review
(PPT)
Lecture 28 (3/10/2021)
Exam 2 (please bring your ID)
Lecture 29 (3/12/2021)
Recitation
Lecture 30 (3/15/2021)
Exam 2 debrief
Lecture 31 (3/17/2020)
File Systems
(PPT)
Naming and Directories
(PPT)
Reading: Sections 12.1 - 12.3, 13.1 - 13.4
Lecture 32 (3/19/2021)
Recitation
Lecture 33 (3/22/2021)
Transactions and Reliability
(PPT)
Homework 8 (posted on Canvas)
Lecture 34 (3/24/2021)
Protection and Security
(PPT)
Reading: Sections 16, 17.5 - 17.7
Lecture 35 (3/26/2021)
Recitation
Lecture 36 (3/29/2021)
Network Protocols
(PPT)
Network and Distributed Systems
(PowerPoint
XP)
Reading: Sections 19.3 - 19.6
Homework 9 (posted on Canvas)
10-million-passwords.txt (right click on the link and click 'save as')
wordlist.10000.txt
Lecture 37 (3/31/2021)
Remote Procedure Call
(PPT)
Distributed File Systems
(PPT)
Lecture 38 (4/2/2021)
Recitation
Lecture 39 (4/5/2021)
Final review
(PPT)
Homework 10 (posted on Canvas)
Lecture 40 (4/7/2021)
Composite-File File Sytsem
(PPTX)
Lecture 41 (4/9/2021)
Recitation
Lecture 42 (4/12/2021)
TrueErase
(PPTX)
Lecture 43 (4/14/2021)
Automated Worm Fingerprinting
(PPTX)
Lecture 44 (4/16/2021)
Recitation
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: August 6, 2020