Learning Resources
This generated surface maps a learner-facing curriculum unit to its canonical source routes.
Curriculum surface
- Open learner-facing unit
- Curriculum path:
content/curriculum/systems/semester-05-os-networking/module-01-processes-scheduling/resources.md - App:
systems - Semester:
semester-05-os-networking - Module:
module-01-processes-scheduling - Unit kind:
resource - Curation level:
module_curated
Learning objectives
- Trace Learning Resources using the language of processes, scheduling policy, and kernel-visible state.
- Compare the abstraction in the learner page against concrete scheduler behavior you can observe or reason about on a real system.
- Use
operating-system-concepts,ostepto connect the learner explanation to metrics, tradeoffs, and debugging evidence.
Prerequisites
- Comfort reasoning about CPU, memory, and the kernel/user boundary from earlier systems work.
Source books
operating-system-conceptsostep
Source routes
Operating System Concepts
- /books/operating-system-concepts/chapter-01-exercises via
OS Concepts: 1.5.5 Cache Management,OS Concepts: Chapter 3 Exercises,OS Concepts: Chapter 4 Exercises - /books/operating-system-concepts/chapter-02-exercises via
OS Concepts: Programming Projects (Processes),OS Concepts: Programming Projects (Threads) - /books/operating-system-concepts/chapter-03-processes via
OS Concepts: 3.2.1 Scheduling Queues,OS Concepts: 3.3.1 Process Creation (Part 1),OS Concepts: 3.3.1 Process Creation (Part 2),OS Concepts: 3.3.2 Process Termination,OS Concepts: Chapter 3 Processes - /books/operating-system-concepts/chapter-04-threads-concurrency via
OS Concepts: 4.7.2 Linux Threads,OS Concepts: Chapter 4 Threads & Concurrency - /books/operating-system-concepts/chapter-05-cpu-scheduling via
OS Concepts: 5.2 Scheduling Criteria,OS Concepts: 5.3.3 Round-Robin,OS Concepts: 5.3.5 Multilevel Queue,OS Concepts: 5.5.1 Approaches to Multi-Processor Scheduling,OS Concepts: 5.5.4 Processor Affinity,OS Concepts: 5.6.3 Rate-Monotonic Scheduling,OS Concepts: 5.7.1 Example: Linux Scheduling (Part 1),OS Concepts: 5.7.1 Example: Linux Scheduling (Part 2),OS Concepts: 5.7.2 Example: Windows Scheduling,OS Concepts: 5.8.3 Simulations,OS Concepts: Chapter 5 CPU Scheduling,OS Concepts: Chapter 5 Practice Exercises
Ostep
- /books/ostep/chapter-02-virtualizing-the-cpu via
OSTEP 2.1: Virtualizing the CPU,OSTEP: CPU virtualization dialogue - /books/ostep/chapter-04-the-abstraction-a-process via
OSTEP 4.1: The Abstraction: A Process,OSTEP 4.3: Process Creation,OSTEP 4.4: Process States,OSTEP 4.5: Data Structures - /books/ostep/chapter-05-the-fork-system-call via
OSTEP 5.1: The fork() System Call,OSTEP 5.3: The exec() System Call,OSTEP 5.4: Why? Motivating the API,OSTEP 5.5: Other Parts of the API - /books/ostep/chapter-06-basic-technique-limited-direct-execution via
OSTEP 6.1: Limited Direct Execution,OSTEP 6.2: Problem 1 - Restricted Operations,OSTEP 6.3: Problem 2 - Switching,OSTEP 6.3: Switching (Part 2),OSTEP 6.3: Switching (Part 3),OSTEP 6.5: Summary (HOWLONGCONTEXTSWITCHESTAKE) - /books/ostep/chapter-07-workload-assumptions via
OSTEP 7.1: Workload Assumptions,OSTEP 7.1: Workload Assumptions (metrics),OSTEP 7.6: A New Metric: Response Time,OSTEP 7.7: Round Robin - /books/ostep/chapter-08-mlfq-basic-rules via
OSTEP 8.1: MLFQ Basic Rules,OSTEP 8.2: Attempt #1: How to Change Priority,OSTEP 8.5: Tuning MLFQ,OSTEP 8.6: MLFQ Summary - /books/ostep/chapter-09-basic-concept-tickets-represent-your-share via
OSTEP 9.1: Tickets Represent Your Share,OSTEP 9.2: Ticket Mechanisms,OSTEP 9.5: How to Assign Tickets?,OSTEP 9.7: Summary - /books/ostep/chapter-10-don-t-forget-synchronization via
OSTEP 10.2: Don't Forget Synchronization,OSTEP 10.4: Single-Queue Scheduling,OSTEP 10.5: Multi-Queue Scheduling,OSTEP 10.7: Summary - /books/ostep/chapter-19-tlb-basic-algorithm via
OSTEP 19.5: TLB Issue - Context Switches - /books/ostep/chapter-26-an-example-thread-creation via
OSTEP 26.1: Thread Creation,OSTEP 26.2: Why It Gets Worse - Shared Data,OSTEP 26: Concurrency: An Introduction
Supporting curriculum routes
No supporting curriculum routes linked yet.
External enrichment
- man 7 sched (
official_docs_companion) - Anchors scheduler concepts in the actual Linux process scheduling interface and policy vocabulary. - Linux Kernel Documentation: Scheduler (
optional_deep_dive) - Useful after the learner has the concept page, when they want to see how theory lands in kernel design.
AI companion modes
- Explain simply
- Diagnose my confusion
- Revision mode
- Connect forward / backward
Source-of-truth note
This teaching unit is learner-facing guidance assembled from multiple canonical book routes. Use the listed source books as the primary conceptual spine for Learning Resources, and treat outside material as supporting enrichment only.