COSC450 OPERATING SYSTEM   (01/26/26 ~ 05/12/25)

Week

Lecture Notes

Announcement

Week-01

(01/26/26 ~ 01/30/26)

 

Note #0  .PDF

·         Introduction to COSC450

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

(02/02/26 ~ 02/06/26)

 

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

(02/09/26 ~ 02/13/26)

 

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

·         Blocking

·         Non-blocking

§  Queueing

·         Threads

o   Overview of Threads

o   Benefit of Threads

o   Multicore Programming with Threads

 

 

Mini-Test #1 (2/12/26)

Note #1, #2, #3

Week-04

(02/16/26 ~ 02/20/26)

 

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

 

 

Week-05

(02/23/26 ~ 02/27/26)

 

Note #9  .PDF

Process & Thread Management

·         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

 

Note #10  .PDF

Process & Thread Management

·         Race Condition

·         Critical Section (or region)

·         Solutions for Mutual Exclusion in a Critical Section

o   With Busy Waiting

·         Disabling Interrupts

·         Lock Variables

·         Strict Alternation

·         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

·         Solution for Mutual Exclusion in a Critical Section

o   With Sleep and Wake up

·         Producer Consumer Problem

·         Race Condition Producer Consumer problem

·         Semaphore

o   Concept of Semaphore

o   Semaphore Operation

o   Semaphore Implementation

o   Producer Consumer problem with semaphores

o   Careless Usage of semaphore causes deadlock

·         Dining Philosophers Problem

·         Reader’s and Writer’s Problem

·         Mutexes

·         Monitor

o   Implementation of Monitor

o   Producer Consumer with Monitor

·         Message Passing

o   Producer Consumer with Message Passing

 

 

Week-06

(03/02/26 ~ 03/06/26)

 

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

 

 

 

Mini-Test #2 (3/5/26)

Note #4, #5, #6, #7, #10, #11

Week-07

(03/09/26 ~ 03/13/26)

 

 

 

 

Midterm #1 (3/12/26)

Note 1, 2, 3, 4, 5, 6, 7, 10, 11

Week-08

(03/16/26 ~ 03/20/26)

 

 

Spring Break!

 

Week-09

(03/23/26 ~ 03/27/26)

 

 

 

 

 

Week-10

(03/30/26 ~ 04/03/26)

 

 

 

 

 

Week-11

(04/06/26 ~ 04/10/26)

 

 

 

 

 

Week-12

(04/13/26 ~ 04/17/26)

 

 

 

 

 

Week-13

(04/20/26 ~ 04/24/26)

 

 

 

 

 

Week-14

(04/27/26 ~ 05/01/26)

 

 

 

 

 

Week-26

(05/04/26 ~ 05/08/26)

 

 

 

 

 

Week-16

(05/11/26  ~ 05/12/26)

 

 

 

 

Final Exam Week

(05/14/26  ~ 05/20/26)

Final Exam: Comprehensive

·         Date: 5/14/26

·         Time: 10:45 A.M. ~ 1:15 P.M.