操作系统第二章 进程的调度

1.调度的概念,层次

        1.1 基本概念

                按照某种算法选择一个进程把处理机分配给它

                通俗理解:当有一堆任务要处理,但由于资源有限,这些事情没法同时处理。这就需要确定某种规则来决定处理这些任务的顺序,这就是“调度”研究的问题

        1.2 三个层次

                1> 高级调度(作业调度) 按照某种规则,从后备队列中选择合适的作业将其调入内存,并为其创建进程.

                2> 中级调度(内存调度) 按照某种规则,从挂起队列中选择合适的进程将(从外存)其调回内存(内存不足的时候)

                3> 低级调度(进程调度) 按照某种规则从就绪队列中选择一个进程为其分配处理机

        1.3 三层调度的联系,对比

                1.3.1 高级调度

                        1> 外存->内存(面向作业)

                        2> 发生频次: 最低

                1.3.2 中级调度

                        1> 外存->内存(面向进程)

                        2> 发生频次: 中等

                1.3.3 低级调度

                        1> 内存->CPU

                        2> 发生频次:最高

        1.4 一些补充

                1> 为减轻系统负载,提高资源利用率,暂时不执行的进程会被调到外存从而变为"挂起态"

               

                 2> 七状态模型:在五状态模型的基础上加上了"就绪挂起"和"阻塞挂起"俩种状态

                        

2.调度的目标

        2.1 CPU利用率

                利用率 = 忙碌时间/总时间

        2.2 系统吞吐量

                系统吞吐量 = 总共完成了多少作业/总共花费了多少时间

        2.3 周转时间

                1> 周转时间 = 作业完成时间 - 作业提交时间

                2> 平均周转时间 = 各个作业周转时间之和/作业数

                3> 带权周转时间 = 作业周转时间/作业实际运行的时间

                4> 平均带权周转时间 = 个作业周转时间之和/作业数

        2.4 等待时间

                1> 进程/作业 等待被服务的时间之和

                2> 平均等待时间,也就是各个作业/进程等待的平均值

        2.5 响应时间

                从用户提交到首次产生相应所用的时间

3.进程调度的时机与过程调度方式

        1. 时机

                       1.1 什么时候需要进程调度?

                                        1.1.1 主动放弃

                                                1> 进程正常终止

                                                2> 运行过程中发生异常而终止

                                                3> 主动阻塞(如等待I/O)

                                        1.1.2 被动放弃

                                                1> 分给进程的时间片用完

                                                2> 有更紧急的事情需要处理(如I/O中断)

                                                3> 有更高优先级的进程进入就绪队列

                       1.2 什么时候不能进行进程调度?

                                        1> 在处理中断的过程中

                                        2> 进程在操作系统内核程序临界区中

                                        3> 原子操作过程中(原语)

        2. 切换与过程

                        2.1 狭义的"调度"和切换的区别

                                        

                        2.2 切换过程

                                        1> 堆原来运行进程各种数据的保存

                                        2> 堆新的进程各种数据的恢复

                        2.3 重要结论

                                        进程调度,切换时有代价的,并不是调度越频繁,并发度越高

        3. 方式

                        3.1 非剥夺调度方式(非抢占式) 只能由当前运行的进程主动放弃CPU

                        3.2 剥夺调度方式(抢占式) 可由操作系统剥夺当前的CPU使用权

4.调度器和闲逛进程

        1.调度器

                1.1 概念: 调度器决定让谁去运行(调度算法),运行多少时间(时间片大小)

                1.2 调度时机  

                        1> 创建新进程

                        2> 进程退出

                        3> 运行进程阻塞

                        4> I/O中断发生                      

                

        2.闲逛进程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值