版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第1页/共156页第2页/共156页第3页/共156页数据输入数据输入进行计算进行计算输出结果输出结果图图2.1 2.1 程序顺序执行程序顺序执行第4页/共156页 多道程序设计技术:多个程序并发执行多道程序设计技术:多个程序并发执行 程序并发执行时的特征:间断性、非封闭性、不可再现性程序并发执行时的特征:间断性、非封闭性、不可再现性输入输入1 1计算计算1 1输出输出1 1输入输入2 2输入输入3 3计算计算2 2输入输入4 4计算计算3 3输出输出2 2输出输出3 3第5页/共156页第6页/共156页 第7页/共156页 动态性动态性 并发性并发性 独立性独立性 异步性异步性第8页/共1
2、56页 第9页/共156页 第10页/共156页第11页/共156页 PCB1RunningP C B 2 ReadyP C B n BlockedPCB1PCB1PCB2PCB2PCBnPCBn第12页/共156页第13页/共156页就绪表起始地址就绪表起始地址某阻塞表起始地址某阻塞表起始地址PCB1 ReadyPCB2 BlockedPCB3 RunningPCB4 BlockedPCB5 ReadyPCB6 Ready就绪表就绪表某阻塞表某阻塞表进程进程PCB集合集合第14页/共156页第15页/共156页P C B 1 ReadyP C B 2 ReadyP C B n Ready就绪
3、队列指针就绪队列指针P C B 1 BlockedP C B 2 BlockedP C B n Blocked某阻塞队列指针某阻塞队列指针P C B 1 Running执行指针执行指针第16页/共156页第17页/共156页 第18页/共156页内存内存分派程序分派程序0进程进程A A进程进程B B进程进程C Cacbs图图2.6 2.6 三个进程同时驻留内存三个进程同时驻留内存程序计数器程序计数器第19页/共156页第20页/共156页超时超时29 s+030 s+131 s+232 s+333 s+434 s+51 a+02 a+13 a+24 a+35 a+46 a+535 a+636
4、a+737 a+838 a+939 a+1040 a+117 s+08 s+19 s+210 s+311 s+412 s+513 b+014 b+115 b+216 b+317 b+418 b+525 c+026 c+127 c+228 c+341 s+042s+143s+244s+345s+446s+519 s+020 s+121 s+222 s+323 s+424 s+5超时超时超时超时47 b+648 b+749 b+850 b+951 b+1052 b+11超时超时I/O请求请求第21页/共156页 未执行未执行执行执行进入进入退出退出分派分派暂停暂停图图2.8 2.8 两状态转换图两
5、状态转换图第22页/共156页处理机处理机进入进入队列队列分派分派退出退出暂停暂停图图 2.9 2.9 两状态队列模型两状态队列模型第23页/共156页第24页/共156页 执行状态(Running) 就绪状态(Ready) 阻塞状态(Blocked) 新状态(New) 终止状态(Terminated)第25页/共156页 第26页/共156页新建 就绪 执行 阻塞 终止接纳接纳分派分派/调度调度时间片完时间片完事件发生事件发生事件等待事件等待完成完成图图2.10 2.10 五状态进程模型五状态进程模型第27页/共156页第28页/共156页 第29页/共156页第30页/共156页图图2.1
6、12.11五状态队列模型五状态队列模型处理机处理机接纳接纳就绪队列就绪队列分派分派/调度调度完成完成时间片完时间片完等待事件等待事件事件发生事件发生阻塞队列阻塞队列(a)(a)单阻塞队列,单就绪队列单阻塞队列,单就绪队列处理机处理机接纳接纳就绪队列就绪队列分派分派/调度调度完成完成时间片完时间片完等待事件等待事件1阻塞队列阻塞队列1阻塞队列阻塞队列2事件发生事件发生1阻塞队列阻塞队列n等待事件等待事件2等待事件等待事件n事件发生事件发生2事件发生事件发生n(b)(b)多阻塞队列,单就绪队列多阻塞队列,单就绪队列第31页/共156页问题:问题:多个进程竞争内存资源多个进程竞争内存资源 第32页/
7、共156页解决方法解决方法 第33页/共156页(Swapping (Swapping ) 将内存中暂时不能运行的进程,或暂将内存中暂时不能运行的进程,或暂时不用的数据和程序,时不用的数据和程序,换出换出到外存,以腾出到外存,以腾出足够的内存空间,把已具备运行条件的进程,足够的内存空间,把已具备运行条件的进程,或进程所需要的数据和程序,或进程所需要的数据和程序,换入换入内存。内存。第34页/共156页进程的挂起状态进程的挂起状态 第35页/共156页第36页/共156页第37页/共156页第38页/共156页区分两个概念:区分两个概念:? ? 进程是否等待事件,进程是否等待事件,阻塞与否阻塞与
8、否? ? 进程是否被换出内存,进程是否被换出内存,挂起与否挂起与否种状态组合:种状态组合:就绪就绪:进程在内存,准备执行:进程在内存,准备执行阻塞阻塞:进程在内存,等待事件:进程在内存,等待事件 就绪就绪/ /挂起挂起:进程在外存,只要调入内存即可执行:进程在外存,只要调入内存即可执行阻塞阻塞/ /挂起挂起:进程在外存,等待事件:进程在外存,等待事件第39页/共156页注: 处理机可调度执行的进程有两种:可调度执行的进程有两种: 新创建的进程新创建的进程 或换入一个以前挂起的进程或换入一个以前挂起的进程 通常为避免增加系统负载,系统会通常为避免增加系统负载,系统会换入一个以前挂起的进程换入一个
9、以前挂起的进程执行。执行。第40页/共156页就绪/挂起新建 就绪 执行 阻塞阻塞/挂起 第41页/共156页 阻塞阻塞阻塞阻塞/ /挂起挂起 :OSOS通常将阻塞进程换出,以腾出内存空间通常将阻塞进程换出,以腾出内存空间 阻塞阻塞/ /挂起挂起 就绪就绪/ /挂起挂起: :当当阻塞阻塞/ /挂起挂起进程等待的事件发生时,可以将其进程等待的事件发生时,可以将其转换为转换为就绪就绪/ /挂起挂起 就绪就绪/ /挂起就绪挂起就绪:OSOS需要调入一个进程执行需要调入一个进程执行 就绪就绪 就绪就绪/ /挂起挂起:一般,:一般,OSOS挂起阻塞进程。但有时也会挂起就绪进程,挂起阻塞进程。但有时也会挂
10、起就绪进程,释放足够的内存空间释放足够的内存空间 新就绪新就绪/ /挂起(新挂起(新 就绪)就绪):新进程创建后,可以插入到就绪队列或就:新进程创建后,可以插入到就绪队列或就绪,挂起队列。若无足够的内存分配给新进程,则需要绪,挂起队列。若无足够的内存分配给新进程,则需要新新 就绪就绪/ /挂起挂起第42页/共156页 阻塞阻塞/ /挂起挂起 阻塞阻塞:当:当阻塞阻塞/ /挂起挂起队列中有一个进程的阻塞事件队列中有一个进程的阻塞事件可能会很快发生,则可将一个可能会很快发生,则可将一个阻塞阻塞/ /挂起挂起进程换入内存,变为进程换入内存,变为阻阻塞塞 执行执行 就绪就绪/ /挂起挂起:当执行进程的
11、时间片用完时,会转换为:当执行进程的时间片用完时,会转换为就绪就绪。 或,一个高优先级的或,一个高优先级的阻塞阻塞/ /挂起挂起进程正好变为非阻塞状态,进程正好变为非阻塞状态,OSOS可可以将执行进程转换为以将执行进程转换为就绪就绪/ /挂起挂起状态状态 所有状态所有状态 终止:终止:通常,通常,执行执行 终止终止。但某些。但某些OSOS中,父进程可中,父进程可以终止其子进程,使任何状态的进程都可转换为退出状态以终止其子进程,使任何状态的进程都可转换为退出状态第43页/共156页第44页/共156页 第45页/共156页 第46页/共156页第47页/共156页 第48页/共156页第49页/
12、共156页第50页/共156页第51页/共156页第52页/共156页1.为进程分配一个唯一标识号为进程分配一个唯一标识号ID 主进程表中主进程表中增加一个新的表项增加一个新的表项2.为进程分配空间为进程分配空间 : 用户地址空间、用户栈空用户地址空间、用户栈空间、间、PCB空间。若共享已有空间,则应建立空间。若共享已有空间,则应建立相应的链接。相应的链接。3.初始化初始化PCB:进程标识、处理机状态信息、进程标识、处理机状态信息、进程状态进程状态4.建立链接建立链接 :若调度队列是链表,则将新进程若调度队列是链表,则将新进程插入到就绪或就绪插入到就绪或就绪/挂起链表挂起链表5.建立或扩展其他
13、数据结构建立或扩展其他数据结构第53页/共156页第54页/共156页第55页/共156页第56页/共156页第57页/共156页 第58页/共156页 第59页/共156页第60页/共156页 第61页/共156页作用于进程之间的一种操作。当分派程序收回当前进作用于进程之间的一种操作。当分派程序收回当前进程的程的CPUCPU并准备把它分派给某个就绪进程时,该操作将被引用。并准备把它分派给某个就绪进程时,该操作将被引用。是进程内部所引用的一种操作。当用户程序转入系统是进程内部所引用的一种操作。当用户程序转入系统调用,或相反时,该操作将被引用。调用,或相反时,该操作将被引用。 进程切换一定引发模
14、式切换,反之则不然。进程切换一定引发模式切换,反之则不然。第62页/共156页第63页/共156页第64页/共156页第65页/共156页第66页/共156页第67页/共156页第68页/共156页第69页/共156页第70页/共156页 第71页/共156页 第72页/共156页 第73页/共156页第74页/共156页 第75页/共156页 第76页/共156页接纳接纳调度调度图图 2.13 多就绪队列调度多就绪队列调度处理机处理机完成完成等待事件等待事件事件发生事件发生阻塞队列阻塞队列就绪队列就绪队列0就绪队列就绪队列1就绪队列就绪队列n被剥夺被剥夺第77页/共156页第78页/共156
15、页 第79页/共156页第80页/共156页第81页/共156页 第82页/共156页 第83页/共156页长程调度长程调度第84页/共156页第85页/共156页 。第86页/共156页 第87页/共156页第88页/共156页 第89页/共156页第90页/共156页第91页/共156页第92页/共156页调度顺序调度顺序 P1 P2 P3 P4e1=16t1=16t2=28t3=32t4=35e2=12e3=4 e4=3平均周转时间平均周转时间 t=(t1+t2+t3+t4)/4=28t=(t1+t2+t3+t4)/4=28其中,其中,ti(i=1,2,3,4):ti(i=1,2,3,4
16、):进程的周转时间进程的周转时间 ,ei(i=1,2,3,4) : ei(i=1,2,3,4) : 进程预期执行时间进程预期执行时间第93页/共156页第94页/共156页 第95页/共156页第96页/共156页调度顺序调度顺序 P4 P3 P2 P1平均周转时间平均周转时间 t=(t1+t2+t3+t4)/4=16t=(t1+t2+t3+t4)/4=16图图2.17 2.17 短进程优先调度算法短进程优先调度算法其中,其中,ti(i=1,2,3,4):ti(i=1,2,3,4):进程的周转时间进程的周转时间 ,ei(i=1,2,3,4) : ei(i=1,2,3,4) : 进程预期执行时间
17、进程预期执行时间队列顺序队列顺序 P1 P2 P3 P4t1=35t2=19t3=7t4=3e1=16e2=12e3=4e4=3第97页/共156页 第98页/共156页 第99页/共156页基于时间片轮转调度基于时间片轮转调度主机主机终端终端1终端终端2终端终端n终端终端1 1服务进程服务进程终端终端2服务进程服务进程终端终端n服务进程服务进程图图2.18 一个基于时间片轮转调度的联机系统一个基于时间片轮转调度的联机系统第100页/共156页第101页/共156页 第102页/共156页第103页/共156页0 5 10 15 20 tP2P1P3P4q=1P2q=4P1P3P4图2.19
18、基于时间片轮转调度算法第104页/共156页时间片t1t2t3t4平均周转时间q =25q = 43531121523.25第105页/共156页 第106页/共156页第107页/共156页第108页/共156页 第109页/共156页第110页/共156页 第111页/共156页 第112页/共156页 第113页/共156页 第114页/共156页第115页/共156页第116页/共156页第117页/共156页其中,优先级按就绪队列其中,优先级按就绪队列0,1,,n逐级降低逐级降低 * 时间片按就绪队列时间片按就绪队列0,1,,n逐级增长逐级增长图图 2.20
19、 反馈调度反馈调度接纳接纳就绪队列就绪队列0就绪队列就绪队列1调度调度处理机处理机完成完成调度调度处理机处理机完成完成就绪队列就绪队列n调度调度处理机处理机完成完成第118页/共156页 第119页/共156页第120页/共156页 第121页/共156页第122页/共156页第123页/共156页第124页/共156页第125页/共156页 第126页/共156页 第127页/共156页 第128页/共156页第129页/共156页0速度速度优先级优先级高高低低小小 大大图图2.21 任务优先级是速度的单调递增函数任务优先级是速度的单调递增函数第130页/共156页第131页/共156页 第132页/共156页 第133页/共156页第134页/共156页 第135页/共156页第136页/共156页第137页/共156页 第138页/共156页第139页/共156页第140页/共156页第141页/共156页第142页/共156页第143页/共156页 第144页/共156页P线程库线程库用户用户空间空间内核内核空间空间(a)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论