- 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
推薦閱讀
- Objective-C應(yīng)用開發(fā)全程實錄
- INSTANT OpenCV Starter
- NLTK基礎(chǔ)教程:用NLTK和Python庫構(gòu)建機(jī)器學(xué)習(xí)應(yīng)用
- 少年輕松趣編程:用Scratch創(chuàng)作自己的小游戲
- EPLAN實戰(zhàn)設(shè)計
- Spring快速入門
- Java編程的邏輯
- Advanced Express Web Application Development
- Java SE實踐教程
- Application Development with Parse using iOS SDK
- Building Business Websites with Squarespace 7(Second Edition)
- Mastering VMware Horizon 7(Second Edition)
- Drupal 8 Development:Beginner's Guide(Second Edition)
- MongoDB Cookbook
- 網(wǎng)絡(luò)綜合布線與組網(wǎng)實戰(zhàn)指南