スケジューリング(Scheduling)

コンピュータが「どの仕事をいつやるか」を決める仕組み。

Scheduling is a core OS function that allocates the limited CPU resource among competing processes. Schedulers aim to maximize CPU utilization, ensure fairness, and minimize response time. Common algorithms include Round Robin, First-Come-First-Served, and Priority Scheduling.

        graph LR
  Center["スケジューリング(Scheduling)"]:::main
  Rel_incident_response["incident-response"]:::related -.-> Center
  click Rel_incident_response "/terms/incident-response"
  classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
  classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
  classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
  classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
  linkStyle default stroke:#4b5563,stroke-width:2px;

      

🧒 5歳でもわかるように説明

注文がたくさん入ったキッチンのシェフを想像してください。ステーキを先に焼くか、サラダを先に作るか、全部の料理が時間通りに出るように順番を決める必要があります。コンピュータの中で、この「順番決め」をするのがスケジューリングです。

🤓 Expert Deep Dive

Preemptive scheduling allows the OS to forcibly interrupt a running process to give another one a turn. Multi-level feedback queues (MLFQ) dynamically adjust process priorities based on their behavior (I/O bound vs CPU bound) to optimize both throughput and interactivity.

📚 出典