学习之路 | 1 进程调度

进程调度

多任务

  多任务操作系统就是能同时并发地交互执行多个进程的操作系统。
  分类(非抢占式多任务,抢占式多任务)
        1.抢占式多任务
            在此模式下,由调度程序来决定什么时候停止一个进程的运行,以便其他进程能够得到执行机会。
            这个强制的挂起动作就叫做抢占。
            进程在被抢占之前能够运行的时间是预先设置好的,叫做进程的时间片。
            时间片就是进程能够在处理器上运行的时间。
        2.非抢占式多任务模式
            除非进程自己主动停止运行,否则它会一直执行。进程主动挂起的
            的操作叫做让步。
            》缺点
             调度程序无法对每个进程该执行多长时间做出统一规定。

Linux的进程调度

 原始的叫做O(1)调度器,现在采用CFS(完全公平调度算法)。
CFS以前又叫做“反转楼梯最后期限调度算法”(RSDL)   

策略

策略决定调度程序在何时让什么进程运行。调度器的策略往往就决定系统的整体印象,并且,还要负责优化使用处理器时间。无论从哪个方面来看,它都是至关重要的。

I/O消耗型进程:进程的大部分时间用来提交I/O请求或是等待I/O请求。
处理器耗费型进程:进程的时间大多用在了执行代码上。

推荐阅读更多精彩内容

  • 引言 当计算机系统处于就绪状态的用户进程数多于CPU数时,就会产生多个进程或线程同时竞争CPU的结果。假设现在只有...
    程序猿胖子阅读 5,996评论 1 3
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 123,207评论 18 134
  • Linux 进程管理与程序开发 进程是Linux事务管理的基本单元,所有的进程均拥有自己独立的处理环境和系统资源,...
    JamesPeng阅读 2,053评论 1 14
  • 又来到了一个老生常谈的问题,应用层软件开发的程序员要不要了解和深入学习操作系统呢? 今天就这个问题开始,来谈谈操...
    tangsl阅读 3,191评论 0 22
  • 这次回老家。感触最深的就是姥姥。她确实老了。去年看她的时候还可以自己走路。现在已经靠一个助力的支撑拐杖了。更让人担...
    沉睡的鱼鱼鱼阅读 71评论 0 0
  • 去西雅图看望菁和她的小女儿是老早便计划好的。 记得年初,菁打电话告知我好消息的时候,我确确实实地为之雀跃。知晓在此...
    Daisy娘亲阅读 238评论 2 6