03第三章中断与处理机调度1.ppt

  1. 1、本文档共73页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
03第三章中断与处理机调度1

3.6.2 Windows 2000/XP线程调度 Main Features: Thread level scheduling; Real time + foreground + background; real time: no deadline scheduling; foreground: GUI window background: non-interactive Preemptive + dynamic priority + RR + Feed back; Symmetric Multi-Processor(SMP) support; 优先级别 16个实时优先级(16-31) 一些内核线程 应用程序提升为实时优先级需要有权限 不是真正意义上的实时调度 15个可变线程优先级(1-15) 基本优先级 线程基本优先级继承进程基本优先级, 可上下浮动2 如: 进程基本优先级4, 其线程基本优先级2—6, 当前优先级 在基本优先级与15之间浮动 可动态提升 运行完一个quantum之后自动下降, 不低于基本优先级 1个系统线程优先级(0) Windows优先级 31 … 28 … 24 … 19 … 16 15 … 8 … … 2 1 0 实时(系统)线程 可变(用户)线程 页面清0守护线程 当前优先级 基本优先级(继承得到,上下浮动2,最低为1) (下浮) (上浮) 优先级提升 优先级提升 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 调度级别与多级调度 3.3.1 交换与中级调度 Swapping and mid-level scheduling 3.3.2 作业与高级调度 Job and high-level scheduling 处理机调度为低级调度 CPU scheduling = low level scheduling 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秒; 待移

文档评论(0)

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

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

1亿VIP精品文档

相关文档