- Mastering Linux Kernel Development
- Raghu Bharadwaj
- 110字
- 2021-07-08 09:47:22
Process schedulers
The effectiveness of any operating system is proportional to its ability to fairly schedule all contending processes. The process scheduler is the core component of the kernel, which computes and decides when and for how long a process gets CPU time. Ideally, processes require a timeslice of the CPU to run, so schedulers essentially need to allocate slices of processor time fairly among processes.
A scheduler typically has to:
- Avoid process starvation
- Manage priority scheduling
- Maximize throughput of all processes
- Ensure low turnaround time
- Ensure even resource usage
- Avoid CPU hogging
- Consider process' behavioral patterns for prioritization
- Elegantly subsidize under heavy load
- Handle scheduling on multiple cores efficiently
推薦閱讀
- Monkey Game Development:Beginner's Guide
- SQL Server 2016從入門到精通(視頻教學超值版)
- 數據結構習題精解(C語言實現+微課視頻)
- Implementing Cisco Networking Solutions
- 深度強化學習算法與實踐:基于PyTorch的實現
- 概率成形編碼調制技術理論及應用
- 從0到1:Python數據分析
- 深入淺出PostgreSQL
- Android嵌入式系統程序開發:基于Cortex-A8(第2版)
- Python開發基礎
- 面向對象程序設計及C++(第3版)
- 基于MATLAB的控制系統仿真及應用
- 前端架構設計
- Java EE輕量級解決方案:S2SH
- Java服務端研發知識圖譜