cpu调度的一个小问题

吱吱吱吱涵 2016-03-30 10:00:02
cpu分派程序工作时,会产生分派延迟

进程切换时,叫做上下文切换

那么,上下文切换和分派程序有什么区别?不都是切换了进程吗?

此外,上下文切换的耗时和分派延迟,一样吗?哪一个长一些呢?
...全文
4581 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
lysysjw 2016-07-26
  • 打赏
  • 举报
回复
在Linux的kernel中,似乎没有听人提过"cpu分派程序",这个"分派程序"本身应该属于操作系统理论课程中的一个术语吧,从网络上看到有人提到"分派程序"的功能包括"切换上下文,切换到用户模式,跳转到用户程序的合适位置以重新启动这个程序"(这个说法可能不完全准确,因为并不一定是直接切换到用户模式),百科上有提到"分派器(分派程序)。分派器把由进程调度程序所选定的进程,从就绪队列中取出该进程,然后进行上下文切换,将处理机分配给它。"根据这些可以知道"分派程序"完成了从一个进程(的暂停)到另一个进程(的运行)的转换过程,也就是进程的调度过程,这个过程是有延迟的,主要延迟在调度算法的实现代码,不同进程寄存器现场的保存与还原等等具体细节上的时间消耗上.在Linux kernel中进程的调度经常被说是上下文的切换,而进程调度的程序说是调度器. "上下文切换"和"分派程序"思想是一样的,都是完成了进程的调度,不过在kernel中好像没有提"分派程序"这个说法.

1,025

社区成员

发帖
与我相关
我的任务
社区描述
Linux /Unix kernel支持不同的硬件体系,X86, ARM, MIPS, 等等
社区管理员
  • CPU和硬件区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧