还剩27页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
Windows操作系统课件-第3章调度CONTENTS•调度概述•进程调度目录•线程调度•I/O调度•实时调度•死锁与饥饿CHAPTER01调度概述进程与线程进程是程序的一次执进程和线程是操作系行,具有独立的内存统进行资源分配和调空间和系统资源度的基本单位线程是进程内的一条执行路径,共享进程的内存空间和系统资源调度的重要性010203提高系统吞吐量保证公平性提高响应时间通过合理调度,使处理器为每个进程或线程提供公通过优先调度重要或紧急始终保持忙碌状态,提高平的执行机会,避免某些的任务,减少用户等待时系统资源的利用率进程或线程长时间等待间调度器的组件和功能队列管理上下文管理优先级管理时间管理负责保存和恢复进程或负责维护待处理任务的负责确定任务的优先级,负责记录任务的执行时线程的上下文信息,包队列,按照一定的顺序根据任务的特性、资源间,进行时间片轮转等括寄存器状态、内存信排列任务需求等因素进行调度调度策略的管理息等CHAPTER02进程调度进程状态01020304就绪状态运行状态阻塞状态终止状态进程已获得除CPU之外所需进程正在占用CPU执行进程因等待某个条件成立而无进程正常结束或异常终止的所有资源,等待CPU调度法继续执行,如等待I/O操作完成进程优先级静态优先级在进程创建时确定,不会改变动态优先级根据进程的行为和系统负载动态调整进程调度算法先来先服务(FCFS)最短作业优先(SJF)按照进程到达的先后顺序进行调度优先调度执行时间最短的进程优先级调度多级反馈队列调度根据进程优先级进行调度将进程按照优先级放入不同的队列,再从最高优先级队列中选取进程执行进程切换上下文切换保存和恢复运行进程的上下文(包括CPU寄存器和内存中的信息),以便在需要时可以恢复执行切换开销上下文切换过程中需要保存和恢复的上下文信息较多,有一定的时间开销CHAPTER03线程调度线程状态就绪状态挂起状态线程已经准备好运行,但因为线程被暂停执行,需要手动恢其他线程占用CPU,所以暂时复不能执行阻塞状态终止状态线程因等待某个资源或事件而线程执行完毕或被中止暂时不能执行线程优先级高优先级低优先级默认优先级线程具有高优先级,可以线程具有低优先级,可能线程具有默认优先级,通优先获得CPU时间需要等待较长时间才能获常介于高优先级和低优先得CPU时间级之间线程调度算法01020304先到先服务(FCFS)多级队列调度将线程最短进程优先(SPN)优先级调度按照线程按照线程到达的顺序进分成多个队列,按照队优先调度最短的进程优先级进行调度行调度列的优先级进行调度线程切换上下文切换内核模式到用户模式切换保存当前线程的执行环境,恢复新线当线程完成内核访问时,从内核模式程的执行环境,并开始执行新线程切换回用户模式用户模式到内核模式切换当线程需要访问内核资源时,从用户模式切换到内核模式CHAPTER04I/O调度I/O请求队列I/O请求队列定义01I/O请求队列是用于存储等待的I/O请求的列表当一个应用程序发出一个I/O请求时,该请求会被添加到相应的I/O请求队列中多队列处理02为了提高I/O处理的效率,Windows操作系统可能会为不同类型的I/O请求创建多个队列,例如读请求队列和写请求队列优先级队列03根据I/O请求的优先级,操作系统可以将它们分配到不同的队列中,以便优先处理紧急或重要的请求I/O调度算法先来先服务算法最短作业优先算法按照I/O请求到达的顺序进行调度,优先处理等待时间最短的I/O请求先到达的请求先被处理循环轮转算法扫描算法按照固定的顺序循环处理每个I/O请从前往后扫描I/O请求队列,遇到满求,确保每个请求都得到处理足条件的请求就进行处理,直到队列末尾或满足一定条件为止电梯算法移动臂原理电梯算法通过移动臂在磁盘上移动,电梯算法定义依次处理每个柱面上的I/O请求,直到达到另一端或满足一定条件为电梯算法是一种I/O调度算法,模止拟了电梯的运行方式,从一端移动到另一端处理I/O请求优化策略为了提高I/O调度的效率,电梯算法可以采取一些优化策略,例如预取、合并和重排等CHAPTER05实时调度实时任务的特点确定性的执行时间优先级要求实时任务必须在确定的时间内完成,否则实时任务通常具有较高的优先级,以确保会影响系统的实时性其及时完成资源需求可靠性要求实时任务可能需要独占某些资源,以确保实时任务要求系统具有高可靠性,以避免其不受其他任务干扰任务失败或数据丢失实时调度算法静态调度算法在任务执行前,预先确定任务的执行顺序和时间片分配动态调度算法根据系统状态和任务需求,动态地调整任务的执行顺序和时间片分配最短剩余时间优先算法选择剩余时间最短的任务优先执行优先级调度算法根据任务的优先级进行调度,优先级高的任务先执行硬实时与软实时硬实时系统要求任务必须在确定的时间内完成,否则会导致严重的后果,如系统崩溃或数据丢失软实时系统允许任务在规定的时间内完成,但延迟时间较长也不会导致严重后果CHAPTER06死锁与饥饿死锁的定义与条件死锁定义在多进程环境中,两个或多个进程无限期地等待对方释放资源的现象死锁条件互斥、占有并等待、非抢占、环路等待死锁的预防与检测预防策略避免死锁的常用方法有设置资源分级、采用银行家算法等检测策略定期检测系统是否存在死锁,一旦发现立即解除饥饿及其解决方案饥饿定义进程因长时间得不到所需资源而无法继续执行的现象解决方案采用公平调度策略,如时间片轮转法,确保每个进程都能获得一定量的资源THANKS[感谢观看]。
个人认证
优秀文档
获得点赞 0