博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于操作系统的进程调度问题
阅读量:6327 次
发布时间:2019-06-22

本文共 816 字,大约阅读时间需要 2 分钟。

  进程调度分为高级、中级、低级调度:

  高级调度通常也称作业调度,用于决定把外存上处于后备队列中的哪些作业调入内存,准备执行;

  中级调度大多针对于分时系统,是按一定的算法在内存和外存之间进行进程对换,目的在于缓和内存的紧张;

  低级调度用于将内存中就绪队列中的作业分配处理机,使其执行。 

 

  进程调度通常有以下两种方式:

(1)非剥夺方式:分派程序一旦把处理机分配给某进程后便让它一直运行下去,直到进程完成或发生某事件而阻塞时,才把处理机分配给另一个进程。

(2)剥夺方式:当一个进程正在运行时,系统可以基于某种原则,剥夺已分配给它的处理机,将之分配给其它进程。剥夺原则有:优先权原则、短进程优先原则、时间片原则。

 

  进程调度分功能:

(1)记录系统中所有进程的执行情况;

(2)选择占有处理机的进程;

(3)进行进程上下文切换。

  

  那么什么时候会需要进行进程调度呢?

1.时间片到,即每个进程所分配的时间片用完后,要跳转到调度程序;

2.占用CPU的当前运行进程提出I/O操作,发起对内核的系统调用时,在系统调用结束后,跳转到调度程序;

3.当前运行进程对所有内核系统调用的结束时都要跳转到调度程序,根据当前的调度信息来决定下一个可以占用CPU的进程.

 

  进程调度算法:

1.先来先服务调度算法:选择一个最先进入队列的进程,把处理机分配给它,让它进入执行状态。

2.短进程优先调度算法:从就绪队列中选择一个CPU执行时间预期最短的进程,将处理器分配给它是指对执行时间短的进程优先调度的算法。

3.高优先级优先调度算法:分配给就绪进程队列中优先级最高的进程。

4.时间片轮转法:将CPU的处理时间分成固定大小的时间片让每个进程在就绪队列中的等待时间与享受服务的时间成比例。

5.多级反馈队列调度算法:系统按优先级设置N个就绪进程队列,第一级队列的优先级最高,其余队列的优先级逐个降低,第N级队列的优先级最低。

转载地址:http://cqdaa.baihongyu.com/

你可能感兴趣的文章
关系型数据库种类
查看>>
ajax回调函数中使用$(this)取不到对象的解决方法
查看>>
java实现折半排序算法
查看>>
1024程序员节,向改变世界的程序员致敬
查看>>
还在呼吸致命空气?专业的斐讯空气检测仪,让你生活更健康!
查看>>
每月亿行代码、全球数万研发,落地DevOps的协同平台DevCloud
查看>>
一朝创业,十年奋战,和信VENGD 4.0让终端不再是难题!
查看>>
蚂蚁金服董事长说以后出国只要三句话:你好,谢谢,支付宝
查看>>
GO语言用户调查:更多程序员选择在工作中使用该语言!
查看>>
Apache RocketMQ 顶级项目之路
查看>>
江苏沭阳持续推进“厕所革命” 乡村换新颜
查看>>
湖北襄阳:公交车全部加装驾驶区安防隔离门
查看>>
报告:上市公司环境信息披露总体水平略有上升
查看>>
新疆库尔勒越冬水禽种类逐年增加已达10种
查看>>
墨西哥输油管爆炸致71死:现场冒火球 偷油者伤亡惨重
查看>>
只有程序员才能看懂的10个段子,第一个就笑喷了!
查看>>
创新还是真的丑?苹果这个设备等了三年终于更新
查看>>
Elasticsearch就这么简单
查看>>
Envoy 中的 xDS REST 和 gRPC 协议详解
查看>>
gfx-rs/hal跨平台图形抽象库使用介绍
查看>>