COSC450 OPERATING SYSTEM, FALL 2025 (9/1/2025 ~ 12/12/2025)
Week |
Lecture Notes |
Announcement |
||
Week-01 (09/01/25 ~ 09/05/25) |
Note #0 .PDF · Introduction to Operating System |
Note #1 .PDF Overview of Operating System · What is operating system · Macroscopic view of computer system · Computer Structure – Von Newmann Architecture · Von Newmann Bottleneck · Instruction cycle · History of Computer system o First Generation -vacuum tubes and plugboards o Second Generation – Transistors and Batch System o Third Generation – IC and multiprogramming o Fourth Generation – Personal computer and LSI (VLSI, ULSI) o Fifth Generation – Mobile Computers |
|
|
Week-02 (09/08/25 ~ 09/12/25) |
Note #2 .PDF Overview of Operating System · Computer system architecture o CPU o Interrupt and Implementation o Memory Hierarchy o Input/Out devices o Buses – parallel and serial buses o Single and Multiprocessor System Types · Operating System Implementation o Multiprogramming o Multitasking o Dual-Mode Multimode Operation |
Note #3 .PDF Overview of Operating System · OS as a Resources Manager o Process Management o Memory Management o File Management o Input / Output System Management o Deadlock Management o Cache Management · Operating System Structures o Monolithic o Layered System o Microkernels o Virtual machine o Client-Server module o Exokernels |
|
|
Week-03 (09/15/25 ~ 09/19/25) |
Note #4 .PDF Process & Thread Management · Processes · Process Model · Process Creation · Process Termination · Process States · Process Table (Process Control Block) · Process with Multiple-Threads · Process Scheduling o Scheduling Queues o CPU Scheduling o Context Switch · Process Creation in Linux · Process Termination in Linux · Android Process Hierarchy |
Note #5 .PDF Process & Thread Management · Interprocess Communication o With Shared Memory (shared memory in Linux) o With Message Passing (message Queue, socket in Linux) · Direct Communication · Indirect Communication · Message Passing Synchronization o Blocking o Non-blocking · Queueing · Threads o Overview of Threads o Benefit of Threads o Multicore Programming with Threads |
|
|
Week-04 (09/22/25 ~ 09/26/25) |
Note #6 .PDF Process & Thread Management · Thread Implementation o User level thread o Kernel level thread · Multithreading Model o Many-to-one o One-to-One o Many-to-Many · The Thread Library · The Threading Issues o Issues with fork(), exec() o Signal handling o Thread termination o Thread local storage o Scheduler Activations |
Note #7 .PDF Process & Thread Management · Scheduler o Long-Term, Short-Term (CPU), Memory · Scheduling Queues · Preemptive or Non-preemptive Scheduling · Scheduling Criteria · CPU Scheduling (Shot-term Scheduler) o FCFS (First Come First Serve) o Shortest Job First o Shortest Remaining Time o Round Robin o Priority Queue o Guaranteed Scheduling o Lottery Scheduling |
Note #8 .PDF Process & Thread Management · Multi-Processor Scheduling o Approaches to Multiple Processor Scheduling o Scheduling for Multicore processors · Fine Grained multithreading · Coarse-Grained multithreading · Load Balancing Note #9 .PDF · Real-Time CPU Scheduling o Minimizing Latency o Preemptive Priority-Based Scheduling o Rate-Monotonic Scheduling o Earliest-Deadline-First Scheduling o Proportional Share Scheduling · Criteria for selecting an algorithm |
Mini-Test #1 (9/25/25) Note #1, #2, #3 .PDF |
Week-05 (09/29/25 ~ 10/03/25) |
Note #10 .PDF Process & Thread Management · Inter-Process Communication · Race Condition · Critical Section (or region) · Solutions for Mutual Exclusion in a Critical Section o With Busy Waiting · Disabling Interrupts –non-preemptive kernel · Lock Variables –violating the first necessary condition (mutual exclusion ) · Strict Alternation –violating the second necessary condition ( block by a process outside critical section) · Peterson’s Solution · Hardware Solution o Test and Set Lock – o Memory Barriers o Atomic Variable · Priority Inversion problems with busy waiting |
Note #11 .PDF Process & Thread Management · Mutual Exclusion in a Critical Section with Sleep and Wake up o Producer Consumer Problem o Race Condition Producer Consumer problem o Semaphore · Concept of Semaphore · Semaphore Operation · Semaphore Implementation · Producer Consumer problem with semaphores · Careless Usage of semaphore causes deadlock o Dining Philosophers Problem o Reader’s and Writer’s Problem o Mutexes o Monitor · Implementation of Monitor · Producer Consumer with Monitor o Message Passing · Producer Consumer with Message Passing |
|
|
Week-06 (10/06/25 ~ 10/10/25) |
Note #12 .PDF Memory Management · With Mono-Process · With Multi-Processes · Multi-process with Fixed partition- o With separate input Queue o With single input Queue · Multi-process with variable partition · Modeling Multiprogramming · Swapping · Free Memory Space Management o With Bitmap o With Free-List § Memory allocation algorithm – first, best, worst, next fit |
|
|
|
Week-07 (10/13/25 ~ 10/17/25) |
Note
#13 .PDF Memory Management ·
Memory Management Contin. o
Virtual Memory o
Virtual Memory with Paging § Page
tables § Physical
Address Mapping(MMU) |
|
|
Mini-Test #2 (10/14/25) Note #4, #5, #6, #7, #10, #11 |
Week-08 (10/20/25 ~ 10/24/25) |
Fall Break (10/20/25., 10/21/25) |
Note
#14 .PDF Memory Management ·
Virtual Memory with Paging o
Page Table with Hardware Support ·
Translation Look-Aside Buffer o
Page Table Structure ·
Shared Pages ·
Multilevel Page Table ·
Hashed Page Table ·
Inverted Page table |
|
Midterm #1 (10/23/25) Note 1, 2, 3, 4, 5, 6, 7, 10, 11 |
Week-09 (10/27/25 ~ 10/31/25) |
|
|
|
|
Week-10 (11/03/25 ~ 11/07/25) |
|
|
|
|
Week-11 (11/10/25 ~ 11/14/25) |
|
|
|
|
Week-12 (11/17/25 ~ 11/21/25) |
|
|
|
|
Week-13 (11/24/25 ~ 11/28/25) |
|
Thanksgiving Break (11/26/25 ~ 11/28/25) |
|
|
Week-14 (12/01/25 ~ 12/05/25) |
|
|
|
|
Week-15 (12/08/25 ~ 12/12/25) |
|
|
|
|
Final Exam (12/15/25 ~ 12/19/25) |
|
|
|
|