Books / Open textbooks Operating System: The Basics by Patrick McClanahan Read here Read at LibreTextsPDF PublisherSan Joaquin Delta College SubjectsEngineering LicenceCC BY-SA, as LibreTexts states it Who can readTweens profiles and older, judged from its title and subjects Contents LibreTexts writes equations in TeX, and here they show as TeX; the PDF has them typeset. 1: The Basics - An Overview1.1: Introduction to Operating Systems1.2 Starting with the Basics1.3 The Processor - History1.3.1: The Processor - Components1.3.2: The Processor - Bus1.4 Instruction Cycles1.4.1 Instruction Cycles - Fetch1.4.2 Instruction Cycles - Instruction Primer1.5 Interrupts1.6 Memory Hierarchy1.7 Cache Memory1.7.1 Cache Memory - Multilevel Cache1.7.2 Cache Memory - Locality of reference1.8 Direct Memory Access1.9 Multiprocessor and Multicore Systems2: Operating System Overview2.1: Function of the Operating System2.2: Types of Operating Systems2.2.1: Types of Operating Systems (continued)2.2.2: Types of Operating Systems (continued)2.3: Difference between multitasking, multithreading and multiprocessing2.3.1: Difference between multitasking, multithreading and multiprocessing (continued)2.3.2: Difference between Multiprogramming, multitasking, multithreading and multiprocessing (continued)3: Processes - What and How3.1: Processes3.2: Process States3.3 Process Description3.4: Process Control3.5: Execution within the Operating System3.5.1 : Execution within the Operating System - Dual Mode4: Threads4.1: Process and Threads4.2: Thread Types4.2.1: Thread Types - Models4.3: Thread Relationships4.4: Benefits of Multithreading5: Concurrency and Process Synchronization5.1: Introduction to Concurrency5.2: Process Synchronization5.3: Mutual Exclusion5.4: Interprocess Communication5.4.1: IPC - Semaphores5.4.2: IPC - Monitors5.4.3: IPC - Message Passing / Shared Memory6: Concurrency: Deadlock and Starvation6.1: Concept and Principles of Deadlock6.2: Deadlock Detection and Prevention6.3: Starvation6.4: Dining Philosopher Problem7: Memory Management7.1: Random Access Memory (RAM) and Read Only Memory (ROM)7.2: Memory Hierarchy7.3: Requirements for Memory Management7.4: Memory Partitioning7.4.1: Fixed Partitioning7.4.2: Variable Partitioning7.4.3: Buddy System7.5: Logical vs Physical Address7.6: Paging7.7: Segmentation8: Virtual Memory8.1: Memory Paging8.1.1: Memory Paging - Page Replacement8.2: Virtual Memory in the Operating System9: Uniprocessor CPU Scheduling9.1: Types of Processor Scheduling9.2: Scheduling Algorithms10: Multiprocessor Scheduling10.1: The Question10.2: Multiprocessor Scheduling12: File Management12.1: Overview12.2: Files12.2.1: Files (continued)12.3: Directory12.4: File Sharing