Linux 调度器学习资料整理

引言

系统中的 CPU 数量有限,而用户希望「同时」得到服务的进程(任务)常常会多于可用的 CPU 核数,这时就需要聪明的任务调度器来为我们实现 CPU 虚拟化,让每个进程都能得到服务。调度器需要照顾到任务的响应时间(否则用户会在敲击键盘后等很久,体验很渣),还要保证一定的周转时间(CPU 密集型的任务期望获得更多的连续运行时间,从而利用 CPU 缓存亲和性,频繁的任务切换会导致一些性能损失,尤其是现代系统 TLB miss, Page Fault 惩罚非常严重),同时还不能让某些低优先级的任务饿死。可见调度器是实现多任务的核心,现代操作系统必备。

一直以来,各路 Linux Hackers 都希望能为 Linux 提供这样一个调度器,它能够在桌面系统上有较好的交互性,而在高负载的服务器上有较好的吞吐量。

以下列举一些学习资料,可以进一步了解!

学习资料

0%