吉林大学数据结构课件第三章中断与处理机调度.ppt

吉林大学数据结构课件第三章中断与处理机调度.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
优先级提升 优先级提升 IO操作完成 事件等待结束 前台进程中的线程完成一个等待操作 由于窗口活动而唤醒GUI线程 就绪超过一定时限,未获得处理机 优先级提升不会超过15 抢占CPU 抢先情形 被唤醒线程优先级高于运行线程优先级; 某线程的优先级动态变化 被抢先线程 回到相应就绪队列 时间配额 实时线程:重新分配完整时间配额 其它线程:保持剩余配额 时间配额(quantum) 配额长度:6--36 时钟中断(15ms发生一次)减3,2--12次时钟中断(30ms--180ms)配额用完 配额用完后进入就绪队列,优先级下降 SMP上的线程调度 线程与CPU的亲合关系 每个进程有一个处理器亲合掩码,缺省为所有处理器的集合 线程继承其进程的亲合掩码 亲合掩码可以修改 SetProcessAffinityMask, SetThreadAffinityMask; SMP上的线程调度 线程的理想处理器(Ideal processor) 首选处理器: 第二处理器:(在内核线程控制块中) 理想处理器确定 线程创建时随机确定, 分散各个线程与处理机对应关系。 线程可修改SetThreadIdealProcessor 就绪线程对处理器的选择 有空闲处理器 首选处理器 第二处理器 当前执行处理器(正执行调度代码) 由高到低顺序找空闲的处理器 无空闲处理器,考虑抢先 首选处理器 第二处理器 可运行编号最大处理器 不能抢先进入相应的就绪队列 处理器对就绪线程的选择 空闲处理器调度 线程上次在此CPU上运行(二级缓冲利用) 线程的理想处理器是该CPU 处于就绪状态时间超过2个quantum 优先级别大于等于24 作业 #1 进程切换时需要保存哪些现场信息?请尽量考虑完全。 由核心返回目态程序时,进程的PSW和PC为何必须用一条机器指令同时恢复? 对如下三个实时任务: T1=100, C1=50; T2=200, C2=30; T3=500, C3=100. 采用EDF算法和RMS算法是否可调度?如是画出对应的Gantt图,否则说明原因。 人有了知识,就会具备各种分析能力, 明辨是非的能力。 所以我们要勤恳读书,广泛阅读, 古人说“书中自有黄金屋。 ”通过阅读科技书籍,我们能丰富知识, 培养逻辑思维能力; 通过阅读文学作品,我们能提高文学鉴赏水平, 培养文学情趣; 通过阅读报刊,我们能增长见识,扩大自己的知识面。 有许多书籍还能培养我们的道德情操, 给我们巨大的精神力量, 鼓舞我们前进。 * 3.3.1 交换与中级调度 术语 交换(swapping) 中级调度(mid-level scheduling) 并发度(degree of multi-programming) 目标:控制并发度 并发度过高 系统开销大 响应速度慢 内存等资源紧张 进程(线程)频繁进入等待状态 More deadlocks 3.3.1 交换与中级调度 剥夺 就绪 等待 运行 选中 等待事件 事件发生 就绪 挂起 等待 挂起 无 终止 创建 创建 结束 换出 换出 换入 换入 事件发生 UNIX的中级调度(sched #0) 移入SRUN状态进程 如内存不够, 移出SWAIT和SSTOP状态进程; 如还不够,移出SSLEEP和SRUN状态进程; 条件: 待移入进程在外存时间=3秒; 待移出进程在内存时间=2秒。 3.3.2 作业与高级调度 作业状态: 提交: 输入机向输入井传送 后备: 在输入井,尚未进入内存 执行: 分解为进程,在内存处理 完成: 处理完毕,结果在输出井 退出: 由输出井向打印机传送 3.3.2 作业与高级调度 状态转换: 提交?后备: 由SPOOLing输入进程完成 Simultaneous Peripheral Operation On-Line 后备?执行: 由作业调度(1)(高级调度)完成 高级调度: 系统进程 执行?完成: 由作业调度(2)完成 完成?退出: 由SPOOLing输出进程完成 提交 后备 执行 完成 退出 SPOOLing输入 作业调度1 作业调度2 SPOOLing输出 3.3.2 作业与高级调度(Cont.) 批处理作业调度程序(1): 在后备作业集合中选择作业,并为其建立作业控制进程来处理该作业。 作业调度程序(1) 内存已有n 道作业 等 待 T 输入井中有后备作业 等 待 F 访问磁盘中作业控制表 根据作业控制块中控制参数 按作业调度算法选择后备作业 作业状态标志为“执行” 为该作业建立作业控制进程 3.3.2 作业与高级调度(Cont.) 2. 批处理作业调度程序(2) 对终止的作业控制进程进行善后处理。 作业调度程序(2) 有终止的作业控制进程 等 待 F

文档评论(0)

44488569 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:5101121231000003

1亿VIP精品文档

相关文档