计算机操作系统教程(第三版)左万历_课件.ppt

上传人:asd****56 文档编号:87331093 上传时间:2023-04-16 格式:PPT 页数:64 大小:3.27MB
返回 下载 相关 举报
计算机操作系统教程(第三版)左万历_课件.ppt_第1页
第1页 / 共64页
计算机操作系统教程(第三版)左万历_课件.ppt_第2页
第2页 / 共64页
点击查看更多>>
资源描述

《计算机操作系统教程(第三版)左万历_课件.ppt》由会员分享,可在线阅读,更多相关《计算机操作系统教程(第三版)左万历_课件.ppt(64页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、导航导航结束结束第二章第二章 进程、线程与作业进程、线程与作业2.1 多道程序设计多道程序设计Multi-programming2.2 进程的引入进程的引入Process 2.3 线程与轻进程线程与轻进程Thread and light-weighted process2.4 作业作业JobActive objects1导航导航结束结束2.1 多道程序设计多道程序设计 Multi-programming全部全部处部时间处部时间作作业道数业道数吞吐量吞吐量=提高系统效率提高系统效率(吞吐量吞吐量)多道程序设计目标多道程序设计目标2导航导航结束结束2.1.1 单道程序设计的缺点单道程序设计的缺点2

2、.1.2 多道程序设计的提出多道程序设计的提出2.1.3 多道程序设计的问题多道程序设计的问题3导航导航结束结束2.1.1 单道程序设计的缺点单道程序设计的缺点处理机利用率低处理机利用率低设备利用率低设备利用率低内存利用率低内存利用率低运行程序运行程序ACPU设备设备1运行程序运行程序Att1t2t5t6设备设备24导航导航结束结束2.1.2 多道程序设计的提出多道程序设计的提出CPU设备设备1程序程序Att1t2t5t6设备设备2程序程序B提高处理机、设备、内存等各种资源的提高处理机、设备、内存等各种资源的利用率,从而提高系统效率。利用率,从而提高系统效率。程序程序At3t45导航导航结束结

3、束2.1.2 多道程序设计的提出多道程序设计的提出(Cont.)增加同时运行程序的道数可以提高资源增加同时运行程序的道数可以提高资源利用率,从而提高系统效率,但道数应利用率,从而提高系统效率,但道数应与系统资源数量相当。与系统资源数量相当。道数过少,系统资源利用率低。道数过少,系统资源利用率低。道数过多,系统开销道数过多,系统开销(system overhead)增大,程序响应速度下降。增大,程序响应速度下降。6导航导航结束结束2.1.3 多道程序设计的问题多道程序设计的问题处理机资源的管理处理机资源的管理程序个数程序个数 处理机个数处理机个数(如何分配如何分配?)存储资源的管理存储资源的管理

4、地址空间的相对独立性、共享性地址空间的相对独立性、共享性内存、外存内存、外存(swap space)的分配与去配的分配与去配设备资源管理设备资源管理分配策略分配策略IO控制控制7导航导航结束结束程序的并序执行程序的并序执行程序的顺序执行程序的顺序执行8导航导航结束结束2.2 进程的引入进程的引入2.2.1 进程的概念进程的概念2.2.2 进程状态及状进程状态及状态转换态转换2.2.3 进程控制块进程控制块2.2.4 进程的组成与进程的组成与上下文上下文2.2.5 进程的队列进程的队列2.2.6 进程的类型与特征进程的类型与特征2.2.7 进程间相互联系与进程间相互联系与相互作用相互作用2.2.

5、8 进程的创建与撤销进程的创建与撤销2.2.9 进程与程序间的联进程与程序间的联系与差别系与差别9导航导航结束结束多道系统中的程序:多道系统中的程序:推进,暂停,推进,暂停,推进,暂停,推进,暂停,推进,暂停,推进,暂停,推进,暂停,推进,暂停,.暂停:保存现场暂停:保存现场(PSW+PC,寄存器)寄存器)推进:恢复现场推进:恢复现场(寄存器,寄存器,PSW+PC)暂停原因:暂停原因:(1)自身原因:等待资源,启动自身原因:等待资源,启动IO (2)剥夺剥夺CPU给其它程序运行机给其它程序运行机会会2.2 进程的引入(Cont.)10导航导航结束结束2.2.1 进程的概念进程的概念定义:定义:

6、可参与并发执行的程序称为进程。可参与并发执行的程序称为进程。进程是具有一定独立功能的程序关于一个数进程是具有一定独立功能的程序关于一个数据集合的一次运行活动。据集合的一次运行活动。定义强调两个方面:定义强调两个方面:动态:执行中的程序动态:执行中的程序;并发:可与其他进程同时执行。并发:可与其他进程同时执行。11导航导航结束结束并发并发 vs.并行并行并发:并发:concurrent宏观同时,宏观同时,“交替执行交替执行”,不要求多个,不要求多个CPU并行:并行:parallel微观同时,要求多个微观同时,要求多个CPU“并行算法并行算法”12导航导航结束结束2.2.2 进程状态及状态转换进程

7、状态及状态转换2.2.2.1 进程状态进程状态(基本状态基本状态)运行态运行态(RUN):占有占有CPU正在向前推进正在向前推进就绪态就绪态(READY):可以运行可以运行,但,但未未得到得到CPU等待态等待态(WAIT):等待某一事件发生等待某一事件发生2.2.2.2 状态转换状态转换就绪就绪运行:获得处理机运行:获得处理机运行运行就绪:剥夺处理机就绪:剥夺处理机运行运行等待:申请资源未得到,启动等待:申请资源未得到,启动IO等待等待就绪:得到资源,就绪:得到资源,IO中断中断13导航导航结束结束就绪就绪等待等待运行运行获得处理机获得处理机剥夺处理机剥夺处理机等待事件等待事件事件发生事件发生

8、2.2.2.2 进程状态转换图进程状态转换图演示演示14导航导航结束结束2.2.2.2 进程状态转换图就绪就绪等待等待运行运行获得处理机获得处理机剥夺处理机剥夺处理机等待事件等待事件事件发生事件发生初创初创终止终止创建创建结束结束15导航导航结束结束2.2.3 进程控制块进程控制块(PCB)标志进程存在的数据结构,其中保存系标志进程存在的数据结构,其中保存系统管理进程所需的全部信息统管理进程所需的全部信息PCB内容内容:(不同系统不尽相同不同系统不尽相同)进程标识进程标识(pid)家族联系家族联系进程状态进程状态 地址信息地址信息现场信息现场信息 打开文件打开文件调度参数调度参数 消息指针消息

9、指针所属用户所属用户(uid)队列指针队列指针PCB是进程存在的唯一是进程存在的唯一标志。进程的创建,进标志。进程的创建,进程的撤销程的撤销请见教材请见教材29页分析页分析Process Control Block16导航导航结束结束2.2.4 进程的组成与上下文进程的组成与上下文进程的组成进程的组成进程控制块进程控制块(process control block)建立进程建立进程建立建立PCB撤销撤销PCB撤销进程撤销进程程序程序代码代码(code)数据数据(data)堆栈堆栈(stack+heap)n栈:保存返回点、参数、返回值、局部变量栈:保存返回点、参数、返回值、局部变量n堆:动态变量

10、堆:动态变量17导航导航结束结束2.2.4 进程的组成与上下文进程的组成与上下文进程的表记进程的表记PCB程序程序PCB代码代码数据数据+堆栈堆栈表记表记1表记表记2系统空间系统空间用户空间用户空间18导航导航结束结束2.2.4 进程的组成与上下文进程的组成与上下文l进程上下文(进程上下文(process context)进程的物理实体与支持进程运行的物理环境统称为进程的物理实体与支持进程运行的物理环境统称为进程上下文进程上下文lPCB+程序程序l系统环境:地址空间,系统栈,打开文件表,系统环境:地址空间,系统栈,打开文件表,l上下文切换(上下文切换(context switch)由一个进程的

11、上下文转到另外一个进程的上下文由一个进程的上下文转到另外一个进程的上下文l系统开销(系统开销(system overhead)运行操作系统程序完成系统管理工作所花费的时间运行操作系统程序完成系统管理工作所花费的时间和空间和空间19导航导航结束结束2.2.5 进程的队列PCBPCBPCBhead1.就绪队列:系统一个或若干个(根据调度算法确定)就绪队列:系统一个或若干个(根据调度算法确定)2.等待队列:每个等待事件一个等待队列:每个等待事件一个3.运行运行 队列:每个处理机一个队列:每个处理机一个PCB构成的队列:(不一定构成的队列:(不一定FIFO,单向或双向)单向或双向)20导航导航结束结束

12、进程队列模型就绪队列就绪队列等待队列等待队列1等待队列等待队列2等待队列等待队列nCPU创建创建完成完成时间片用完时间片用完等待事件等待事件1等待事件等待事件2等待事件等待事件n事件事件1发生发生事件事件2发生发生事件事件n发生发生21导航导航结束结束2.2.6 进程的类型与特征进程的类型与特征进程类型进程类型系统进程系统进程运行操作系统程序,完成系统管理运行操作系统程序,完成系统管理(服务服务)功能功能.用户进程用户进程运行用户运行用户(应用应用)程序,为用户服务。程序,为用户服务。22导航导航结束结束2.2.6 进程的类型与特征进程的类型与特征(Cont.)进程的特征进程的特征并发性并发性

13、:可以与其它进程一道向前推进;:可以与其它进程一道向前推进;动态性动态性:动态产生、消亡,生存期内状态动:动态产生、消亡,生存期内状态动态变化;态变化;独立性独立性:一个进程是可以调度的基本单位;:一个进程是可以调度的基本单位;交互性交互性:同时运行的进程可能发生相互作用;:同时运行的进程可能发生相互作用;异步性异步性:进程以各自独立,不可预知的速度:进程以各自独立,不可预知的速度向前推进;向前推进;结构性结构性:每个进程有一个:每个进程有一个PCB。23导航导航结束结束2.2.7 进程间相互联系与相互作用进程间相互联系与相互作用相互联系相互联系相关进程相关进程同一家族的进程同一家族的进程可以

14、共享文件,需要相互通讯,协调推进速度可以共享文件,需要相互通讯,协调推进速度父进程可以监视子进程,子进程完成父进程交给父进程可以监视子进程,子进程完成父进程交给的任务。的任务。无关进程无关进程没有逻辑关系、同时执行的进程。没有逻辑关系、同时执行的进程。有资源竞争关系,互斥、死锁、饿死。有资源竞争关系,互斥、死锁、饿死。24导航导航结束结束2.2.7 进程间相互联系与相互作用相互作用1.1.直接相互作用:发生在相关进程之间直接相互作用:发生在相关进程之间直接相互作用:发生在相关进程之间直接相互作用:发生在相关进程之间2.2.间接相互作用:发生在任何进程之间间接相互作用:发生在任何进程之间间接相互

15、作用:发生在任何进程之间间接相互作用:发生在任何进程之间RP2P1syncsendreceiveP1:P2:holdwait25导航导航结束结束2.2.8 进程的创建与撤销进程的创建与撤销进程的创建进程的创建建立建立PCB,分配内存,加载程序,入就绪链分配内存,加载程序,入就绪链UNIX:pid=fork()进程的撤销进程的撤销去配资源,撤销去配资源,撤销PCB,通知父进程通知父进程UNIX:exit()除初始进程外,其它进程由除初始进程外,其它进程由(父父)进程创建,并进程创建,并形成进程家族。形成进程家族。演示演示26导航导航结束结束 操作系统一旦发现了要求创建进程的事件后,操作系统一旦发

16、现了要求创建进程的事件后,便调用进程创建原语按以下过程创建一新进程:便调用进程创建原语按以下过程创建一新进程:申请一个空闲的申请一个空闲的PCBPCB为新进程分配资源为新进程分配资源对对PCBPCB初始化初始化将将PCBPCB插入就绪队列插入就绪队列返回一个进程标识号返回一个进程标识号27导航导航结束结束在运行?在运行?NYNY由标识符在由标识符在PCBPCB集中找集中找PCBPCB并读状态并读状态归还占有资源归还占有资源从所在队列从所在队列(索引表索引表)撤消撤消PCBPCB中止运行重置调度标志中止运行重置调度标志终止所有子孙进程终止所有子孙进程有子孙进程?有子孙进程?进程的终止过程进程的终

17、止过程28导航导航结束结束2.2.9 进程与程序的联系与差别进程与程序的联系与差别进程与程序的联系进程与程序的联系进程包括一个程序进程包括一个程序进程存在的目的就是执行这个程序进程存在的目的就是执行这个程序进程与程序的差别进程与程序的差别程序静态,进程动态程序静态,进程动态程序可长期保存,进程有生存期程序可长期保存,进程有生存期一个程序可对应多个进程,一个进程只能执行一个一个程序可对应多个进程,一个进程只能执行一个程序程序29导航导航结束结束2.3 线程与轻进程线程与轻进程2.3.1 线程的引入线程的引入2.3.2 线程的概念线程的概念2.3.3 线程的结构线程的结构2.3.4 线程控制块线程

18、控制块2.3.5 线程的实现线程的实现2.3.6 线程的应用线程的应用2.3.7 Java线程线程ThreadLight-weighted process30导航导航结束结束2.3.1 线程的引入线程的引入进程切换进程切换上下文涉及内容多,开销大,上下文涉及内容多,开销大,“笨重笨重”PCB+程序程序系统环境:地址空间,系统栈,打开文件表,系统环境:地址空间,系统栈,打开文件表,相关进程之间耦合关系差相关进程之间耦合关系差解决方案解决方案Multi-threading同一进程中包含多个线程同一进程中包含多个线程上下文只涉及寄存器和用户栈,切换速度快上下文只涉及寄存器和用户栈,切换速度快相关线程

19、之间通讯方便、快捷相关线程之间通讯方便、快捷31导航导航结束结束2.3.2 线程的概念线程的概念进程中一个相对独立的执行流。进程中一个相对独立的执行流。进程中一个相对独立的执行流。进程中一个相对独立的执行流。进程进程进程进程 vs.vs.线程线程线程线程进程是资源分配单位进程是资源分配单位进程是资源分配单位进程是资源分配单位线程是执行单位线程是执行单位线程是执行单位线程是执行单位多线程优点多线程优点多线程优点多线程优点切换速度快(地址空间不变)切换速度快(地址空间不变)切换速度快(地址空间不变)切换速度快(地址空间不变)(light weightedlight weighted)系统开销小系统

20、开销小系统开销小系统开销小通讯容易(共享数据空间)通讯容易(共享数据空间)通讯容易(共享数据空间)通讯容易(共享数据空间)322.3.3 线程结构线程结构寄存器寄存器静态数据静态数据程序代码程序代码 栈栈寄存器寄存器进程进程2动动 态态 堆堆内存内存多进程结构(用户视图)多进程结构(用户视图)静态数据静态数据程序代码程序代码 栈栈进程进程1动动 态态 堆堆内存内存寄存器寄存器332.3.3 线程结构线程结构静态数据静态数据程序代码程序代码 栈栈栈栈寄存器寄存器寄存器寄存器线程线程1:线程线程2:进程进程动动 态态 堆堆内存内存多线程多线程结构(用户视图)结构(用户视图)34导航导航结束结束2.

21、3.3 线程结构(另一种表示)text segmentdata segmentProgram counterTask:35导航导航结束结束2.3.4 线程控制块线程控制块nTCB(Thread control block)n标志线程存在的数据结构,标志线程存在的数据结构,其中包含对线程管理需要的全部其中包含对线程管理需要的全部信息信息n内容内容n线程标识线程标识n线程状态线程状态n调度参数调度参数n现场现场(通用寄存器通用寄存器,PC,SP)n链接指针链接指针n存放位置存放位置n用户级线程:目态空间(运行系统)用户级线程:目态空间(运行系统)n核心级线程:系统空间核心级线程:系统空间36导航导

22、航结束结束2.3.5 线程的实现2.3.1 用户级别线程User-level thread2.3.2 核心级别线程Kernel-level thread2.3.3 混合线程Hybrid approach 37导航导航结束结束2.3.5.1 用户级别线程用户级别线程实现方法:实现方法:基于基于library函数,系统不可见函数,系统不可见线程创建、撤销、状态转换在目态完成线程创建、撤销、状态转换在目态完成TCB在用户空间,每个进程一个系统栈在用户空间,每个进程一个系统栈优点:优点:不依赖于操作系统,调度灵活不依赖于操作系统,调度灵活同一进程中多线程切换速度快同一进程中多线程切换速度快(不需进入操

23、作系统不需进入操作系统)缺点:缺点:同一进程中多个线程不能真正并行同一进程中多个线程不能真正并行一个线程进入系统受阻,进程中其它线程不能执行一个线程进入系统受阻,进程中其它线程不能执行382.3.5.1 用户级别线程用户级别线程运行系统运行系统TCB进程进程线程线程核心栈核心栈进程表进程表用用户户空空间间系系统统空空间间39导航导航结束结束2.3.5.2 核心级别线程核心级别线程实现方法:实现方法:基于系统调用基于系统调用创建、撤销、状态转换由操作系统完成创建、撤销、状态转换由操作系统完成优点:优点:同一进程内多线程可以并行执行同一进程内多线程可以并行执行一线程进入核心等待,其它线程仍可执行一

24、线程进入核心等待,其它线程仍可执行缺点:缺点:系统开销大,同一进程内多线程切换速度慢系统开销大,同一进程内多线程切换速度慢调度算法不能灵活控制调度算法不能灵活控制402.3.5.2 核心级别线程核心级别线程进程进程线程线程核心栈核心栈进程表进程表用用户户空空间间系系统统空空间间TCB41导航导航结束结束2.3.5.3 混合线程混合线程Solaris例子例子User level thread:由由Lib程序支持(创建程序支持(创建,调度)调度)Light weighted process(LWP):由由Lib程序支持程序支持每个每个task至少一个至少一个LWP用戶级别线程与用戶级别线程与LWP

25、可以多对多可以多对多LWP对操作系统可见对操作系统可见只有与只有与LWP相联系的用户线程向前推进相联系的用户线程向前推进Kernel level thread:由由kernel 支持支持每个每个LWP与唯一一个核心线程对应与唯一一个核心线程对应核心线程可与核心线程可与CPU多对多,可对一多对多,可对一422.3.5.3 混合线程混合线程(Solaris)CPUtask1task2task3kernelUser level threadLightweight processKernel thread43导航导航结束结束2.3.6 线程的应用线程的应用内在的多控制流内在的多控制流,需要共享数据需要

26、共享数据生产消费问题生产消费问题多线程优于多进程多线程优于多进程快快100倍倍!提高处理机与设备的并行性提高处理机与设备的并行性多处理机环境多处理机环境提高处理机利用率,加快进程推进速度提高处理机利用率,加快进程推进速度44导航导航结束结束2.3.6 线程的应用线程的应用例子:例子:Word字处理(不同代码)字处理(不同代码)交互编辑交互编辑(T1)词法检查词法检查(T2)定时保存定时保存(T3)HTTP server(相同代码)相同代码)对每个对每个http请求,请求,pop up一个线程一个线程45导航导航结束结束2.4 作业(作业(Job)作业概念作业概念用户要求计算机系统为其完成的计算

27、任务集合。用户要求计算机系统为其完成的计算任务集合。作业步(作业步(job step)作业处理过程中一个相对独立的步骤作业处理过程中一个相对独立的步骤一般一个作业步可由一个进程完成一般一个作业步可由一个进程完成某些作业步之间可以并行某些作业步之间可以并行作业分类作业分类批处理作业批处理作业交互式作业交互式作业46导航导航结束结束2.4.1 批处理作业批处理作业作业控制语言作业控制语言(JCL)描述批处理作业控制意图的语言描述批处理作业控制意图的语言作业说明书作业说明书(JCL语句的序列)语句的序列)一般一特殊符号起始一般一特殊符号起始$JOB J1$FORTN$LINK$EXEC$ENDJOB

28、作业控制程序作业控制程序解释并处理作业说明书的程序解释并处理作业说明书的程序作业控制进程作业控制进程执行作业控制程序的进程执行作业控制程序的进程47作业控制进程作业控制进程读入读入作业内容作业内容释放输入井空间释放输入井空间顺取顺取作业控制语句作业控制语句是是结束语句结束语句 执行该作业步执行该作业步(可能创建子进程可能创建子进程)申请输出井空间申请输出井空间输出作业结果输出作业结果进程自我终止进程自我终止FT48导航导航结束结束2.4.2 交互式作业交互式作业 帐户管理帐户管理/etc/passwd文件文件(用户名用户名,口令口令,用户根目录用户根目录,同组用户同组用户,余额余额)创建与撤销

29、创建与撤销创建:创建:用户提供(用户名用户提供(用户名,口令口令,资金)资金)系统操作员建立(根目录系统操作员建立(根目录/usr/zhang,填写填写passwd文件)文件)撤销:撤销:删除该用户目录及所有文件删除该用户目录及所有文件在在passwd文件中清除对应文件中清除对应entry49导航导航结束结束2.4.2 交互式作业交互式作业注册与注销注册与注销注册:注册:logon:用户名用户名password:*(使用使用)注销:注销:显式注销:显式注销:nlogoff隐式注销:隐式注销:n(如(如5分钟无输入命令)分钟无输入命令)50命令解释程序命令解释程序提示符提示符$读入终端命令读入终

30、端命令分析分析Logout内部命令内部命令处理处理建立子进程建立子进程后台命令后台命令等子进程结束等子进程结束输出子进程号输出子进程号记帐记帐TFTFFT51导航导航结束结束小结:作业、进程、线程小结:作业、进程、线程作业与进程作业与进程作业进入内存后变为进程作业进入内存后变为进程一个作业通常与多个进程相对应一个作业通常与多个进程相对应进程与线程进程与线程一个进程一般包含多个线程,至少包含一个一个进程一般包含多个线程,至少包含一个线程线程不支持多线程的系统,可视为单线程进程不支持多线程的系统,可视为单线程进程52导航导航结束结束 2.5.1 Java线程线程 Java线程四种基本状态线程四种基

31、本状态 New:新建的线程新建的线程Runnable:可运行状态可运行状态Blocked:封锁状态封锁状态Dead:终止状态终止状态 53导航导航结束结束Java线程线程JavaJava线程状态之间的转换关系图线程状态之间的转换关系图 Sleep()Suspend()IORunnableBlockedDeadNewStart()Stop()Resume()54导航导航结束结束JAVA线程线程与与JVMJava线程是由线程是由Java虚拟机虚拟机JVM支持的支持的 JVM位于操作系统之上位于操作系统之上 Java线程与操作系统线程之间的对应关线程与操作系统线程之间的对应关系由系由JVM确定确定

32、对于对于Windows NT的的JVM,Java线程与操线程与操作系统线程具有一对一关系作系统线程具有一对一关系;对于对于Solaris的的JVM,其对应关系为多对多其对应关系为多对多.55导航导航结束结束2.5.2 Linux进程与线程进程与线程 进程与线程在系统内部具有统一的表示进程与线程在系统内部具有统一的表示进程与线程的差别通过与进程与线程的差别通过与fork不同的另不同的另外一个系统调用外一个系统调用clone体现出来体现出来 Clone系统调用的形式系统调用的形式 pidpid=clone(function,stack_ptr,sharing_flag,argclone(funct

33、ion,stack_ptr,sharing_flag,arg)Sharing-flag:Sharing-flag:nCLONE_VM,CLONE_FILES,CLONE_SIGHAND,CLONE_PIDCLONE_VM,CLONE_FILES,CLONE_SIGHAND,CLONE_PID562.5.3 Windows2000/XPWindows2000/XP进程、线程与纤程进程、线程与纤程 进程进程在在Win32环境中创建进程的过程环境中创建进程的过程当当Win32应用执行应用执行CreateProcess调用,消息被发调用,消息被发给给Win32子系统,后者调用进程管理器创建进程,子系统

34、,后者调用进程管理器创建进程,进程管理器调用进程管理器调用OM创建进程对象,然后返回对象把创建进程对象,然后返回对象把柄给柄给Win32.Win32子系统再次调用进程管理器为该子系统再次调用进程管理器为该进程创建线程,最后进程创建线程,最后Win32将把柄返给新进程和线将把柄返给新进程和线程程 在在XP下查看进程的下查看进程的DOS命令:命令:tasklist57对象头部属性对象头部属性Type:Process对象体属性对象体属性进程标识(进程标识(Process id)访问令牌(访问令牌(Access token)基础优先级(基础优先级(Base priority)缺省亲合处理机(缺省亲合处

35、理机(Default processor affinity)配额限制(配额限制(Quota limits)执行时间(执行时间(Execution time)输入输入/输出记数(输出记数(I/O counters)执行执行/调试端口(调试端口(Exception/debugging ports)退出状态(退出状态(exit status)服务服务创建进程(创建进程(Create process)打开进程(打开进程(Open process)查询进程信息(查询进程信息(Query process information)设置进程信息(设置进程信息(Set process information)当

36、前进程(当前进程(Current process)终止进程(终止进程(Terminate process)分分 配配/释释 放放 虚虚 拟拟 存存 储储(Allocate/free virtual memory)读读/写虚拟存储(写虚拟存储(Read/write virtual memory)保护虚拟存储(保护虚拟存储(Protect virtual memory)加锁加锁/开锁虚存(开锁虚存(Lock/unlock virtual memory)查询虚拟存储(查询虚拟存储(Query virtual memory)刷新虚拟存储(刷新虚拟存储(Flush virtual memory)进进程程

37、对对象象描述描述图图 58对象头部属性对象头部属性属性属性类型:线程(类型:线程(Type:thread)属性属性客户标识(客户标识(client id)线程上下文(线程上下文(thread context)动态优先级(动态优先级(dynamic priority)处理机亲合掩码(处理机亲合掩码(thread processor affinitythread processor affinity)已执行时间(已执行时间(thread execution timethread execution time)警觉状态(警觉状态(alert statusalert status)挂起记数(挂起记数(

38、suspension countsuspension count)非角色令牌(非角色令牌(impersonation tokenimpersonation token)终止端口(终止端口(termination porttermination port)终终止状止状态态(exit statusexit status)服务服务创建线程(创建线程(Create thread)打开线程(打开线程(Open thread)查询线程状态(查询线程状态(Query thread information)设置线程状态(设置线程状态(Set thread information)当前线程(当前线程(Curre

39、nt thread)终止线程(终止线程(Terminate thread)取上下文(取上下文(Get context)置上下文(置上下文(Set context)挂起(挂起(Suspend)恢复(恢复(Resume)警示线程(警示线程(Alert thread)测试线程警示(测试线程警示(Test thread alert)注册终止端口(注册终止端口(Register termination port)线线程程对对象象描述描述图图 59导航导航结束结束就绪就绪等待等待初始初始备用备用运行运行转换转换终止终止创建线程对象创建线程对象重新初始化重新初始化执行完执行完入就绪队列入就绪队列剥夺剥夺唤醒

40、唤醒唤醒栈在外唤醒栈在外换入内核栈换入内核栈切换切换选中选中等待某对象等待某对象抢先抢先Windows线程状态转换图线程状态转换图 60导航导航结束结束第二章第二章 重点难点学习提示重点难点学习提示1、进程的基本概念、进程的基本概念(1)为什么要引入进程:引入进程是为了使内存中的多道程)为什么要引入进程:引入进程是为了使内存中的多道程序程序能够正确地并发执行。序程序能够正确地并发执行。(2)进程的基本特征:)进程的基本特征:动态性、并发性、独立性、异步性和动态性、并发性、独立性、异步性和结构特征结构特征、交互性;、交互性;注意进程和程序的异同。注意进程和程序的异同。(3)进程的基本状态:)进程

41、的基本状态:就绪,执行,阻塞就绪,执行,阻塞。掌握三种状态的。掌握三种状态的转换原因。转换原因。(4)进程控制块。掌握)进程控制块。掌握PCB的作用及包含的内容。的作用及包含的内容。61导航导航结束结束2、线程的基本概念、线程的基本概念(1)为什么引入线程为什么引入线程(2)线程的特征:线程的特征:轻型、可独立运行、可共轻型、可独立运行、可共享其所隶属的进程所拥有的资源。享其所隶属的进程所拥有的资源。(3)如何创建和终止线程。如何创建和终止线程。62导航导航结束结束3、PCB的作用是什么?为什么说的作用是什么?为什么说PCB是进程存在的惟一标是进程存在的惟一标志?志?解:进程控制块的作用:是使

42、一个在多道程序环境下,不解:进程控制块的作用:是使一个在多道程序环境下,不能独立运行的程序,成为一个能独立运行的基本单位、一能独立运行的程序,成为一个能独立运行的基本单位、一个能与其他进程并发执行的进程。个能与其他进程并发执行的进程。v在创建进程时,系统将为他配置一个在创建进程时,系统将为他配置一个PCB;v 在进程调度时,在进程调度时,v执行中的进程,执行中的进程,v当进程因某种原因而暂停执行时,也必须将断点的现场当进程因某种原因而暂停执行时,也必须将断点的现场信息保存到它的信息保存到它的PCB中;中;v当进程结束时,系统将回收它的当进程结束时,系统将回收它的PCB。63导航导航结束结束在创

43、建进程时,在创建进程时,系统将为他配置一个系统将为他配置一个PCB;在进程调度在进程调度时时,系统将根据,系统将根据PCB中的状态和优先级等信息来选择新中的状态和优先级等信息来选择新进程,然后将老进程的现场信息保存到它的进程,然后将老进程的现场信息保存到它的PCB中,再中,再根据新进程根据新进程PCB中所保存的处理机状态信息来恢复运行中所保存的处理机状态信息来恢复运行的现场;的现场;执行中的进程,执行中的进程,如果需要访问文件或需要与合如果需要访问文件或需要与合作进程实现同步或通信,则也都需要访问作进程实现同步或通信,则也都需要访问PCB;当当进程进程因某种原因而因某种原因而暂停执行暂停执行时,也必须将断点的现场信息保时,也必须将断点的现场信息保存到它的存到它的PCB中;中;当进程结束时当进程结束时,系统将回收它的,系统将回收它的PCB。可见,在进程的整个生命周期中,可见,在进程的整个生命周期中,系统总是通过其系统总是通过其PCB对进程进行控制和管理对进程进行控制和管理,所以说,所以说PCB是进程存在的是进程存在的惟一标志。惟一标志。64

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 其他杂项

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com