CSC61504 — Operating Systems Mastery Study Report Taylor's College School of Computer Science | Confidential Academic Material Page CSC61504 OPERATING SYSTEMS Mastery - Level Academic Study Report 14 - Week Complete Coverage | 3 MLOs | 3 Assessment Types Bloom's Taxonomy C1 through C3 / A3 | Industry - Aligned Depth Module Leader: Afizan Azman | School of Computer Science Taylor's College | Credit Value: 4 | Year Level: 1 CSC61504 — Operating Systems Mastery Study Report Taylor's College School of Computer Science | Confidential Academic Material Page Contents Module Overview & Learning Framework ................................ ................................ ................................ ............................. 8 Assessment Structure ................................ ................................ ................................ ................................ ...................... 8 Module Learning Outcomes ................................ ................................ ................................ ................................ ............. 8 How to Use This Report ................................ ................................ ................................ ................................ ................... 8 1.1 What Is an Operating System? ................................ ................................ ................................ ................................ .. 9 1.1.1 Concept Overview — Layman Explanation ................................ ................................ ................................ ........ 9 1.1.2 Technical Explanation ................................ ................................ ................................ ................................ ........ 9 1.2 Purpose and Goals of an OS ................................ ................................ ................................ ................................ ... 10 1.2.1 Dual Goals: Convenience and Efficiency ................................ ................................ ................................ ......... 10 1.2.2 Core OS Responsibilities ................................ ................................ ................................ ................................ 10 1.3 Operating System Structure and Operations ................................ ................................ ................................ ........... 10 1.3.1 Monolithic Kernel ................................ ................................ ................................ ................................ ............. 10 1.3.2 Microkernel Architecture ................................ ................................ ................................ ................................ .. 10 1.3.3 Hybrid Kernel ................................ ................................ ................................ ................................ ................... 11 1.3.4 Exokernel and Unikernel ................................ ................................ ................................ ................................ .. 11 1.4 OS and Computing Environments ................................ ................................ ................................ ........................... 11 1.4.1 Traditional Desktop/Workstation ................................ ................................ ................................ ...................... 11 1.4.2 Server and Cloud Environments ................................ ................................ ................................ ...................... 11 1.4.3 Real - Time Operating Systems (RTOS) ................................ ................................ ................................ ............ 11 1.4.4 Mobile and Embedded ................................ ................................ ................................ ................................ ..... 12 1.5 Terminology Breakdown ................................ ................................ ................................ ................................ .......... 12 2.1 Operating System Services ................................ ................................ ................................ ................................ ..... 14 2.1.1 Services Provided to Users ................................ ................................ ................................ .............................. 14 2.1.2 Services for OS Efficiency (Not User - Facing) ................................ ................................ ................................ .. 14 2.2 User and Operating System Interface ................................ ................................ ................................ ..................... 14 2.2.1 Command - Line Interface (CLI) ................................ ................................ ................................ ......................... 14 2.2.2 Graphical User Interface (GUI) ................................ ................................ ................................ ........................ 14 2.2.3 Touch and Voice Interfaces ................................ ................................ ................................ ............................. 14 2.3 System Calls ................................ ................................ ................................ ................................ ........................... 15 2.3.1 What Is a System Call? ................................ ................................ ................................ ................................ .... 15 2.3.2 System Call Mechanism in Detail ................................ ................................ ................................ ..................... 15 2.3.3 Types of System Calls ................................ ................................ ................................ ................................ ..... 15 2.4 System Call Interface & API ................................ ................................ ................................ ................................ .... 16 2.4.1 The Role of the API ................................ ................................ ................................ ................................ .......... 16 2.4.2 Parameter Passing Methods ................................ ................................ ................................ ............................ 16 2.5 System Interface — Interrupts, Traps, and Exceptions ................................ ................................ ........................... 16 2.5.1 Interrupt - Driven I/O ................................ ................................ ................................ ................................ .......... 16 2.5.2 Trap vs. Interrupt vs. Exception ................................ ................................ ................................ ....................... 16 2.5.3 Direct Memory Access (DMA) ................................ ................................ ................................ .......................... 17 2.6 Terminology Breakdown ................................ ................................ ................................ ................................ .......... 17 3.1 Programs vs. Processes ................................ ................................ ................................ ................................ ......... 19 CSC61504 — Operating Systems Mastery Study Report Taylor's College School of Computer Science | Confidential Academic Material Page 3.1.1 The Fundamental Distinction ................................ ................................ ................................ ........................... 19 3.2 Process Structure and Memory Layout ................................ ................................ ................................ ................... 19 3.2.1 Process Address Space Segments ................................ ................................ ................................ .................. 19 3.2.2 Process Control Block (PCB) ................................ ................................ ................................ ........................... 19 3.3 Process States and State Transitions ................................ ................................ ................................ ..................... 20 3.3.1 The Five - State Model ................................ ................................ ................................ ................................ ....... 20 3.4 Process Creation ................................ ................................ ................................ ................................ ..................... 21 3.4.1 The fork() / exec() Model ................................ ................................ ................................ ................................ .. 21 3.4.2 Copy - on - Write (CoW) Optimisation ................................ ................................ ................................ .................. 21 3.4.3 Windows CreateProcess() ................................ ................................ ................................ ............................... 21 3.5 Process Scheduling ................................ ................................ ................................ ................................ ................. 21 3.6 Process Termination ................................ ................................ ................................ ................................ ............... 22 3.6.1 Normal and Abnormal Termination ................................ ................................ ................................ .................. 22 3.6.2 Cascading Termination ................................ ................................ ................................ ................................ .... 22 3.7 Terminology Breakdown ................................ ................................ ................................ ................................ .......... 22 4.1 Inter - Process Communication (IPC) ................................ ................................ ................................ ........................ 24 4.1.1 Why Processes Need to Communicate ................................ ................................ ................................ ............ 24 4.2 Shared Memory IPC ................................ ................................ ................................ ................................ ................ 24 4.2.1 Mechanism ................................ ................................ ................................ ................................ ....................... 24 4.2.2 The Synchronisation Problem ................................ ................................ ................................ .......................... 24 4.3 Message Passing IPC ................................ ................................ ................................ ................................ ............. 24 4.3.1 Mechanism ................................ ................................ ................................ ................................ ....................... 24 4.3.2 Direct vs. Indirect Communication ................................ ................................ ................................ ................... 25 4.4 Synchronisation Mechanisms ................................ ................................ ................................ ................................ .. 25 4.4.1 The Critical Section Problem ................................ ................................ ................................ ............................ 25 4.4.2 Peterson's Algorithm ................................ ................................ ................................ ................................ ........ 25 4.4.3 Mutex Locks (Mutual Exclusion Locks) ................................ ................................ ................................ ............ 26 4.4.4 Semaphores ................................ ................................ ................................ ................................ ..................... 26 4.4.5 Condition Variables ................................ ................................ ................................ ................................ .......... 26 4.5 Synchronisation Problems ................................ ................................ ................................ ................................ ....... 26 4.5.1 Race Condition ................................ ................................ ................................ ................................ ................ 26 4.5.2 Process Coordination ................................ ................................ ................................ ................................ ....... 27 5.1 Multiprogramming and Multiprocessing ................................ ................................ ................................ ................... 28 5.1.1 The Goal of CPU Scheduling ................................ ................................ ................................ ........................... 28 5.1.2 Preemptive vs. Non - Preemptive Scheduling ................................ ................................ ................................ .... 28 5.2 Scheduling Criteria ................................ ................................ ................................ ................................ .................. 28 5.3 Scheduling Algorithms ................................ ................................ ................................ ................................ ............. 29 5.3.1 First - Come, First - Served (FCFS) ................................ ................................ ................................ ..................... 29 5.3.2 Shortest - Job - First (SJF) ................................ ................................ ................................ ................................ ... 29 5.3.3 Shortest - Remaining - Time - First (SRTF) — Preemptive SJF ................................ ................................ ............ 29 5.3.4 Round Robin (RR) ................................ ................................ ................................ ................................ ............ 29 5.3.5 Priority Scheduling ................................ ................................ ................................ ................................ ........... 30 CSC61504 — Operating Systems Mastery Study Report Taylor's College School of Computer Science | Confidential Academic Material Page 5.3.6 Multilevel Queue Scheduling ................................ ................................ ................................ ............................ 30 5.3.7 Multilevel Feedback Queue (MLFQ) ................................ ................................ ................................ ................ 30 5.4 Context Switching ................................ ................................ ................................ ................................ .................... 31 5.4.1 Mechanism and Cost ................................ ................................ ................................ ................................ ....... 31 5.5 Linux Completely Fair Scheduler (CFS) ................................ ................................ ................................ .................. 31 6.1 Deadlock Definition and Characteristics ................................ ................................ ................................ .................. 32 6.1.1 Four Necessary Conditions (Coffman Conditions) ................................ ................................ ........................... 32 6.2 Resource Allocation Graph (RAG) ................................ ................................ ................................ .......................... 32 6.2.1 RAG Definition and Components ................................ ................................ ................................ ..................... 32 6.2.2 Deadlock Detection via RAG ................................ ................................ ................................ ............................ 32 6.3 Deadlock Handling Strategies ................................ ................................ ................................ ................................ 33 6.4 Deadlock Prevention ................................ ................................ ................................ ................................ ............... 33 6.4.1 Breaking Each Coffman Condition ................................ ................................ ................................ ................... 33 6.5 Deadlock Avoidance — Banker's Algorithm ................................ ................................ ................................ ............ 33 6.5.1 Safe State Concept ................................ ................................ ................................ ................................ .......... 33 6.5.2 Banker's Algorithm — Data Structures ................................ ................................ ................................ ............. 34 6.5.3 Safety Algorithm ................................ ................................ ................................ ................................ ............... 34 6.5.4 Worked Example ................................ ................................ ................................ ................................ .............. 34 6.6 Deadlock Detection and Recovery ................................ ................................ ................................ .......................... 34 6.6.1 Detection ................................ ................................ ................................ ................................ .......................... 34 6.6.2 Recovery ................................ ................................ ................................ ................................ .......................... 34 7.1 Memory Management Hardware ................................ ................................ ................................ ............................. 36 7.1.1 Base and Limit Registers ................................ ................................ ................................ ................................ 36 7.1.2 Memory Management Unit (MMU) ................................ ................................ ................................ ................... 36 7.2 Memory Protection ................................ ................................ ................................ ................................ .................. 36 7.2.1 Address Space Isolation ................................ ................................ ................................ ................................ .. 36 7.2.2 Privilege Levels and Kernel Space ................................ ................................ ................................ .................. 36 7.3 Memory Allocation Strategies ................................ ................................ ................................ ................................ .. 37 7.3.1 Contiguous Memory Allocation ................................ ................................ ................................ ........................ 37 7.3.2 Fragmentation ................................ ................................ ................................ ................................ .................. 37 7.3.3 Segmentation ................................ ................................ ................................ ................................ ................... 37 7.3.4 Paging ................................ ................................ ................................ ................................ .............................. 37 7.3.5 Translation Lookaside Buffer (TLB) ................................ ................................ ................................ .................. 38 7.4 Static vs. Dynamic Memory Allocation ................................ ................................ ................................ .................... 38 7.4.1 Static Allocation ................................ ................................ ................................ ................................ ............... 38 7.4.2 Dynamic Allocation — The Heap ................................ ................................ ................................ ..................... 38 8.1 Test Preparation Guide ................................ ................................ ................................ ................................ ........... 40 8.2 High - Priority Revision: Weeks 1 – 7 Condensed ................................ ................................ ................................ ....... 40 8.2.1 OS Fundamentals (Week 1) ................................ ................................ ................................ ............................. 40 8.2.2 System Structures (Week 2) ................................ ................................ ................................ ............................ 40 8.2.3 Process Management (Week 3) ................................ ................................ ................................ ....................... 40 8.2.4 IPC and Synchronisation (Week 4) ................................ ................................ ................................ .................. 40 CSC61504 — Operating Systems Mastery Study Report Taylor's College School of Computer Science | Confidential Academic Material Page 8.2.5 CPU Scheduling (Week 5) ................................ ................................ ................................ ............................... 40 8.2.6 Deadlocks (Week 6) ................................ ................................ ................................ ................................ ......... 40 8.2.7 Memory Management (Week 7) ................................ ................................ ................................ ....................... 40 8.3 Group Assignment Submission (Week 8) ................................ ................................ ................................ ................ 41 8.3.1 Expected Report Structure for Outstanding Grade (80 – 100%) ................................ ................................ ........ 41 9.1 Virtual Memory — Concept and Motivation ................................ ................................ ................................ ............. 42 9.2 Demand Paging ................................ ................................ ................................ ................................ ....................... 42 9.2.1 Mechanics ................................ ................................ ................................ ................................ ........................ 42 9.2.2 Effective Access Time with Demand Paging ................................ ................................ ................................ .... 42 9.3 Page Replacement Algorithms ................................ ................................ ................................ ................................ 42 9.3.1 The Page Replacement Problem ................................ ................................ ................................ ..................... 42 9.3.2 Optimal (OPT/Belady's) ................................ ................................ ................................ ................................ ... 43 9.3.3 FIFO (First - In, First - Out) ................................ ................................ ................................ ................................ .. 43 9.3.4 Least Recently Used (LRU) ................................ ................................ ................................ ............................. 43 9.3.5 LRU Approximations ................................ ................................ ................................ ................................ ........ 43 9.3.6 Algorithm Comparison ................................ ................................ ................................ ................................ ...... 43 9.4 Frame Allocation ................................ ................................ ................................ ................................ ..................... 44 9.4.1 Fixed vs. Priority Allocation ................................ ................................ ................................ .............................. 44 9.4.2 Global vs. Local Replacement ................................ ................................ ................................ ......................... 44 9.5 Thrashing ................................ ................................ ................................ ................................ ................................ 44 9.5.1 Definition and Cause ................................ ................................ ................................ ................................ ........ 44 9.5.2 Working Set Model ................................ ................................ ................................ ................................ ........... 44 10.1 Disk Structure and Fundamentals ................................ ................................ ................................ ......................... 46 10.1.1 HDD Physical Structure ................................ ................................ ................................ ................................ 46 10.1.2 Disk Access Time Components ................................ ................................ ................................ ..................... 46 10.2 Disk Scheduling Algorithms ................................ ................................ ................................ ................................ ... 46 10.2.1 Why Scheduling Matters ................................ ................................ ................................ ................................ 47 10.2.2 FCFS (First - Come, First - Served) ................................ ................................ ................................ ................... 47 10.2.3 SSTF (Shortest - Seek - Time - First) ................................ ................................ ................................ ................... 47 10.2.4 SCAN (Elevator Algorithm) ................................ ................................ ................................ ............................ 47 10.2.5 C - SCAN (Circular SCAN) ................................ ................................ ................................ ............................... 47 10.2.6 LOOK and C - LOOK ................................ ................................ ................................ ................................ ....... 47 10.3 Disk Management ................................ ................................ ................................ ................................ ................. 48 10.3.1 Disk Formatting ................................ ................................ ................................ ................................ .............. 48 10.3.2 Boot Block ................................ ................................ ................................ ................................ ...................... 48 10.3.3 Bad Block Management ................................ ................................ ................................ ................................ 48 10.4 RAID (Redundant Array of Independent Disks) ................................ ................................ ................................ ..... 48 11.1 File System Concepts ................................ ................................ ................................ ................................ ........... 50 11.2 File Attributes, Structures, and Operations ................................ ................................ ................................ ............ 50 11.2.1 File Attributes ................................ ................................ ................................ ................................ ................. 50 11.2.2 File Operations — System Calls ................................ ................................ ................................ .................... 50 11.3 File Types ................................ ................................ ................................ ................................ .............................. 51 CSC61504 — Operating Systems Mastery Study Report Taylor's College School of Computer Science | Confidential Academic Material Page 11.4 Directory Structure ................................ ................................ ................................ ................................ ................ 51 11.4.1 Directory Implementation ................................ ................................ ................................ ............................... 51 11.4.2 Directory Structures — Hierarchical ................................ ................................ ................................ ............... 51 11.5 Inode Structure (ext4) ................................ ................................ ................................ ................................ ............ 52 11.5.1 Inode Fields ................................ ................................ ................................ ................................ ................... 52 11.5.2 Block Allocation — Extents vs. Direct Pointers ................................ ................................ .............................. 52 11.6 File Protection ................................ ................................ ................................ ................................ ....................... 52 11.6.1 Unix Permission Model ................................ ................................ ................................ ................................ .. 52 11.6.2 Access Control Lists (ACLs) ................................ ................................ ................................ .......................... 52 11.7 File System Types ................................ ................................ ................................ ................................ ................. 52 12.1 What Is Parallel Computing? ................................ ................................ ................................ ................................ 54 12.2 Parallel Computing Architectures ................................ ................................ ................................ .......................... 54 12.2.1 Flynn's Taxonomy ................................ ................................ ................................ ................................ .......... 54 12.2.2 Shared Memory Multiprocessor (SMP) ................................ ................................ ................................ .......... 54 12.2.3 Distributed Memory (Cluster/MPP) ................................ ................................ ................................ ................. 55 12.2.4 NUMA (Non - Uniform Memory Access) ................................ ................................ ................................ .......... 55 12.3 Parallel Computing Metrics ................................ ................................ ................................ ................................ .... 55 12.3.1 Speedup and Amdahl's Law ................................ ................................ ................................ ........................... 55 12.3.2 Gustafson's Law ................................ ................................ ................................ ................................ ............. 55 12.4 Parallelism Models ................................ ................................ ................................ ................................ ................ 55 12.4.1 Thread - Based Parallelism ................................ ................................ ................................ .............................. 55 12.4.2 Process - Based Parallelism and MPI ................................ ................................ ................................ .............. 56 12.4.3 GPU Computing (SIMD Parallelism) ................................ ................................ ................................ .............. 56 13.1 OS Compatibility with Parallel Computing Frameworks ................................ ................................ ........................ 57 13.2 Multi - Threading OS Support ................................ ................................ ................................ ................................ .. 57 13.2.1 User - Level vs. Kernel - Level Threads ................................ ................................ ................................ ............. 57 13.2.2 Threading Models ................................ ................................ ................................ ................................ .......... 57 13.3 Multi - Core Scheduling Strategies ................................ ................................ ................................ .......................... 58 13.3.1 Load Balancing ................................ ................................ ................................ ................................ .............. 58 13.3.2 Processor Affinity ................................ ................................ ................................ ................................ ........... 58 13.3.3 Hyperthreading (SMT — Simultaneous Multi - Threading) ................................ ................................ ............... 58 13.4 OS Support for Parallel Frameworks ................................ ................................ ................................ ..................... 58 13.4.1 OpenMP and Thread Pools ................................ ................................ ................................ ............................ 58 13.4.2 MPI on Linux ................................ ................................ ................................ ................................ .................. 58 13.4.3 Container - Based Parallel Computing ................................ ................................ ................................ ............. 58 13.5 Performance Optimisation Tools ................................ ................................ ................................ ........................... 59 13.5.1 Profiling and Tracing ................................ ................................ ................................ ................................ ...... 59 13.5.2 Scalability Analysis ................................ ................................ ................................ ................................ ......... 59 13.6 Ease of Integration with Existing Infrastructure ................................ ................................ ................................ ..... 59 14.1 Individual Assignment — Final Assessment Overview ................................ ................................ .......................... 60 14.1.1 Outstanding Grade (80 – 100%) Criteria ................................ ................................ ................................ .......... 60 14.2 Cross - Module Integration — All Topics Connected ................................ ................................ ............................... 60 CSC61504 — Operating Systems Mastery Study Report Taylor's College School of Computer Science | Confidential Academic Material Page 14.2.1 The Complete OS Stack ................................ ................................ ................................ ................................ 60 14.3 Final Exam Preparation — Master Checklist ................................ ................................ ................................ ......... 61 14.3.1 Calculations You Must Be Able to Perform ................................ ................................ ................................ .... 61 Integrated MLO Coverage Summary ................................ ................................ ................................ ................................ .. 62 Cross - Topic Conceptual Map ................................ ................................ ................................ ................................ ............. 62 High - Priority Revision Checklist ................................ ................................ ................................ ................................ .......... 63 Must - Know Definitions ................................ ................................ ................................ ................................ .................... 63 Must - Know Calculations ................................ ................................ ................................ ................................ ................. 63 Must - Know Comparisons ................................ ................................ ................................ ................................ ............... 63 CSC61504 — Operating Systems Mastery Study Report Taylor's College School of Computer Science | Confidential Academic Material Page Module Overview & Learning Framework This mastery - level study report is structured around the three Module Learning Outcomes (MLOs) and 14 weeks of teaching content for CSC61504 Operating Systems. The report integrates conceptual clarity with technical depth, ensuring every topic is understoo d both intuitively and at the level required for professional and academic excellence. Assessment Structure Assessment Weight MLO Bloom's Level Nature Test (Written) 30% MLO1 C1 – Remember/Understand Conceptual knowledge of OS fundamentals Group Assignment 30% MLO2 A3 – Valuing/Applying Case study on real OS structure & functionality Individual Assignment (Final) 40% MLO3 C3 – Apply Practical problem - solving with all OS concepts Module Learning Outcomes MLO Description TGC Attribute MQF LO MLO1 (30%) Explain the basic concepts of operating systems TGC 4: Lifelong Learning (4.1 – 4.4) 4a Personal Skills MLO2 (30%) Describe the structure and functionality of an OS TGC 2a: Problem Solving (2a.6) 3e Numeracy Skills MLO3 (40%) Apply system fundamentals to solve computing problems TGC 2a: Problem Solving (2a.5) 3d Digital Skills How to Use This Report Each week follows a five - layer structure: (A) Intuitive concept overview with real - world analogy, (B) Full domain - level technical explanation, (C) Terminology breakdown, (D) Practical application layer with worked examples, and (E) Assessment alignment gui de. Cross - references are embedded throughout to highlight how concepts from earlier weeks scaffold later topics — a critical feature for holistic mastery. CSC61504 — Operating Systems Mastery Study Report Taylor's College School of Computer Science | Confidential Academic Material Page WEEK 1 Introduction to Operating Systems MLO1 | Bloom's C1 — Remember & Understand 1.1 What Is an Operating System? 1.1.1 Concept Overview — Layman Explanation 💡 Real - World Analogy Imagine a hotel. Guests (applications) arrive with requests — they want a room (CPU time), food (memory), telephone (I/O). The hotel manager (the OS) handles all requests, allocates resources fairly, prevents guests from entering other guests' rooms, and e nsures the hotel infrastructure runs smoothly. Guests never interact with the boiler room