页面置换、作业调度、进程调度(转)

来源:互联网 发布:怎么查询公司海关数据 编辑:程序博客网 时间:2024/05/22 17:26

页面置换、作业调度和进程调度他们之间有很多相似的地方,作业跟进程调度之间尤为相似,之前一直搞不清他们之间的区别跟联系,你是不是也跟我有一样的感受呢?看完这篇文章或许会让你对他们有更清晰的认识。




页面置换算法:

1,先进先出FIFO:淘汰最早进入cache的信息块。

2,最近最少使用Least recently used(LRU):首先淘汰最长时间未被使用的页面(强调时间)。

3,最近最少使用Least Frequently Used(LFU):淘汰一定时期内被访问次数最少的页(强调次数)。[LFU和LRU的区别](http://blog.csdn.net/summerhust/article/details/6867171)

3,随机替换:用随机数发生器随机产生一个信息块号,然后淘汰掉。

4:优化替换:此方法必须先执行一次程序,然后根据cache替换情况对接下来的信息块进行替换。

5:最佳置换:淘汰规则是将以后永远不会用到或者最长时间不会用到的信息块淘汰掉。此方法能够最大限度的减少缺页率,但是这是一种理想的方法,现实是无法实现的,只能作为其他置换算法的一个衡量标准。





作业调度:

1,先来先服务:按作业的到达时间进行调度,先到达先调度。

2,最短作业优先:优先执行所需时间最短的作业。

3,优先数:优先执行优先级高的作业。

4,最高响应比优先:优先执行响应比高的作业。响应比=(等待时间+计算时间)/计算时间。



进程调度:

1,先进先出:跟作业调度的先来先服务差不多,先执行最先进入就绪队列的进程。

2,最短优先:跟作业调度的短作业优先差不多,优先执行所需时间最短的进程。

3,最高响应比:跟作业调度的最高响应比差不多,优先执行响应比高的进程。响应比=(等待时间+要求服务的时间)/要求服务的时间。

4,优先级:跟作业调度的优先级算法差不多,优先执行优先级高的进程。

5:时间片轮转:按照先进先出的规则给进程分配时间片,时间片结束后不管有没有执行完,都将执行下一进程。

6,多级反馈队列调度算法(剥夺式):进程在进入待调度的队列等待时,首先进入优先级最高的Q1等待—>首先调度优先级高的队列中的进程。若高优先级中队列中已没有调度的进程,则调度次优先级队列中的进程。例如:Q1,Q2,Q3三个队列,只有在Q1中没有进程等待时才去调度Q2,同理,只有Q1,Q2都为空时才会去调度Q3。——>3、对于同一个队列中的各个进程,按照时间片轮转法调度。比如Q1队列的时间片为N,那么Q1中的作业在经历了N个时间片后若还没有完成,则进入Q2队列等待,若Q2的时间片用完后作业还不能完成,一直进入下一级队列,直至完成。——》4、在低优先级的队列中的进程在运行时,又有新到达的作业,那么在运行完这个时间片后,CPU马上分配给新到达的作业(剥夺式)。 

7,最短剩余时间调度算法(剥夺式):”SRT(Shortest Remaining Time)”(允许比当前进程剩余时间更短的进程来抢占)


看到这里,大家会发现作业调度跟进程调度是如此的相似,那么他们之间到底有什么关系呢?一起看下面这张图:



由上图可以看出,作业调度跟进程调度是密切相关的,首先进行作业调度将使之进入就绪队列,然后进行进程调度,或者进程执行完毕继续下面的进程,或者挂起等待下一轮的调度。下面结合生活中的例子分析一下两级调度。

第一级的作业调度是会将一批作业同时装入内存,以淋浴公共澡堂为例,里面可能只有1个水龙头,但可以一次让三四个人一起进去洗,因为洗澡的人并不是总要占着水龙头,只要相互错开就行了。那么澡堂就可以规定一次进三个人,三个洗完,再进三个。


第二级调度就是进程调度了,三个人同时用水龙头,那这个水龙头就相当于CPU,当然也可以多个水龙头,那就是多处理器了。洗的过程中,三个人可能有的在搓澡,有的在帮别人搓澡,也有可能都打完香皂就等冲水了,那让谁用水龙头呢?一般就是排先后,先申请的先用原则,但也不一定,比如有一个人说给我十秒钟冲一下就洗完了,那就是个短作业,不妨让他先用,洗完他就走了,这样大家的平均等待时间会缩短,也算是提高了效率;再就是有一个人可能在洗的过程中突然被洗发水迷了眼,所以需要赶紧冲一下,这就是高优先级的作业了,不同优先级之间,先可着高优先级的进行调度,这也是一种原则。所以总的来说,进程调度是在多个就绪进程中按一定的策略选出当前应执行的进程,合适与否,是按一定的策略遴选出来的。


关于低级调度、高级调度、中级调度:

作业调度又称宏观调度或高级调度,其主要任务是按一定的原则对外存上处于后备状态的作业进行选择,给选中的作业分配内存,输入输出设备等必要的资源,并建立相应的进程,以使该作业的进程获得竞争处理机的权利.
进程调度又称微观调度或低级调度,其主要任务是按照某种策略和方法选取一个处于就绪状态的进程,将处理机分配给它.为了提高内存利用率和系统吞吐量,引入了中级调度.


转自:http://blog.csdn.net/liushuijinger/article/details/7586653#comments


原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 头发长得太慢怎么办 空气刘海剪多了怎么办 下颌骨宽显脸大怎么办 头发干枯毛躁自然卷怎么办 剪了齐刘海好丑怎么办 刘海剪得太短了怎么办 刘海分界处秃了怎么办 短发烫内扣外翻怎么办 刚剪的刘海好丑怎么办 齐刘海剪得太短怎么办 头发烫过太卷了怎么办? 头发烫了不卷怎么办 头发烫的显老气怎么办 烫了短发显老气怎么办 才烫的头发不卷怎么办 剪了短发显老气怎么办 头发染的巨黑怎么办 染黑头发太黑了怎么办 画眼线老是晕妆怎么办 闷青色染的太绿怎么办 血氧饱和度80多怎么办 染发前洗了头发怎么办 剪了短发后悔了怎么办 短发被剪的太短怎么办 短发剪得太短怎么办 烫头发后洗头了怎么办 头发染得太黄了怎么办 烫发后一直掉发怎么办 头发染的太黄了怎么办 头发染色太浅了怎么办 怀孕60天没有胎心怎么办 染了深褐色很黑怎么办 路边停车费没交怎么办 3岁宝宝难入睡怎么办 一上火眼睛就肿怎么办 孩子上火眼睛红有眼屎怎么办 孩子眼屎多又黄怎么办 眼睛皮周围红痒怎么办 新买的拖鞋有味怎么办 毛巾变得滑滑的怎么办 买的挂钩粘不住怎么办