第3章 进程.ppt
《第3章 进程.ppt》由会员分享,可在线阅读,更多相关《第3章 进程.ppt(67页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第3章章 进程管理进程管理3.1多道程序设计n多道程序设计技术n采用多道程序设计技术应注意的问题n存储保护n程序浮动n资源的分配和调度n采用多道程序设计技术的原因n提高资源的利用率多道程序设计的优点n提高了处理器的利用率n充分利用外围设备资源n发挥了处理器和外围设备之间以及外围设备之间的并行处理能力多道程序设计的问题n可能延长程序的执行时间n并行工作道数与系统效率不成正比n并行的道数要根据系统配置的资源和用户对资源的要求来确定n主存空间大小n外围设备数量n多个程序同时要求使用同一个资源n合理搭配PUSH(S,TOP,X)POP(S,TOP,X)BEGIN BEGIN TOP=TOP+1 X=
2、S(TOP)S(TOP)=X TOP=TOP-1 END END如果两个程序段按如下顺序执行,结果如何?T1:PUSH:TOP=TOP+1T2:POP:X=S(TOP)TOP=TOP-1T3:PUSH:S(TOP)=X我们没有得到预期的结果。结论:结论:系统中运行着的程序之间存在一些约束,破坏了程序的封闭性和可再现性。问题:如何解决?进程的概念n为了描述程序执行过程的“走走停停”,引入了进程。n一个程序在一个数据集上的一次执行。n进程是动态的。n进程和程序的联系和区别:n一个程序可以对应多个进程。n程序是静态的,进程是动态的。n可重入程序(纯代码):执行过程中不变的代码。进程的特性n并发性:系
3、统中同时存在着若干进程。n动态性:进程状态不断变化。n独立性:进程是分配资源的独立单位。n交往性:与其它进程交换信息。n异步性:以不可预知的速度向前推进。n结构性:一个进程包括三个部分:程序,数据,进程控制块。进程控制块(PCB)n定义定义:描述进程外部特性的数据结构。n内容内容:n标识信息:进程标识符;特征;当前状态。n说明信息:拥有资源和等待资源。内存地址、I/O设备、外存、数据区等。n管理信息:进程优先数;队列指针。n现场信息:记录进程释放处理机时的现场信息,PSW、通用寄存器等。n作用作用:PCB是进程存在的唯一标志。进程的动态、并发特性通过PCB表现出来。进程状态及其转换n运行状态:
4、占有处理机。n就绪状态:进程拥有了除CPU之外的所有资源。n等待状态:进程在等待某事件发生。如读磁盘、读文件等。n一个进程在整个生命周期中,由于所拥有的资源不同,状态不断变化。进程状态及其转换进程状态及其转换 进程基本状态 就绪:拥有了除CPU之外的所有资源。运行:进程在CPU上运行。等待:进程等待某事件发生,如:读磁盘,打印、读文件等等。进程状态之间的转换 创建一个进程时,进程处于就绪状态。随着拥有(或等待)的资源不同,进程在不同的状态下转换。进程的整个生命周期就是在不同的状态转换中。就绪运行等待创建撤消进程调度时间片到;更高优先级进程事件已发生等待某事件注 意1、进程的三个基本状态。2、什
5、么事件可以导致进程状态之间的转换。3、一个进程的状态转换可能引起其它进程的状态转换。例如:一个进程从运行等待,就会有另一个进程从就绪运行。4、哪些状态的转换是可能的,哪些是不可能的。如:等待运行()。5、一个完整的进程由程序、数据、进程控制快组成。进程的任何状态变化都在PCB之中反映出来。进程队列n处在就绪状态和等待状态的进程不止一个。(但在任一时刻,处在运行状态的进程最多只有一个)。n引起进程状态变化的原因也很多。n如何组织、管理这些进程?nPCB中有一个连接指针,用于组织PCB。n就绪队列和等待队列。n根据等待的事件不同,可以组织多个等待队列。进程队列的实现方式n线性方式线性方式n原理:为
6、PCB预留一定的空间,即确定了系统中PCB的最大数目,把所有进程的PCB都放在这个表中。n优点:最简单,最容易实现。n缺点:若用户很多,则无法创建新的进程;查找一个进程的效率很低。n链接方式:(C语言中的链表概念)n原理:按进程状态,放在不同队列中。n队列的组织:按等待原因;按优先级进程队列的实现方式索引方式:利用索引表记录不同状态的进程。一种状态就对应一张索引表。索引表中存放PCB的地址。优点:访问速度快,直接访问。缺点:索引表本身要占用存储空间。就绪索引表问 题n由谁来创建进程?n谁来实现进程的转换?n谁负责将进程从一个队列转移到另一个队列?进程控制进程控制1、进程控制的内容:创建进程;撤
7、消进程;挂起进程;阻塞进程;唤醒进程等等。2、原语:为完成某些特定的功能而编制的一段系统程序。特点:不可中断。也称做“原子操作”。3、用于进程控制的原语:创建原语撤消原语唤醒原语阻塞原语创建原语n功能:创建一个进程。n流程:申请一个空PCB为新进程分配资源加入就绪队列有?Y报告出错信息撤消原语n功能:回收进程所占有所有资源。n流程:找到要撤消的进程收回进程所占有资源将PCB加入空PCB队列终止其所有子进程阻塞原语n进程由运行运行等待的状态转换。n流程:将进程状态改变为等待将进程PCB加入相应的等待队列转进程调度保存现场信息在PCB中唤醒原语 n功能:实现进程状态由等待就绪的转换。n流程:从等待
8、队列中找到该进程将进程状态改变为“就绪”将进程加入就绪队列若进程具有较高优先级,则设置重新调度标志3.4 UNIX系统中的进程nUNIX进程的组成nUNIX进程的状态nUNIX进程的创建和终止nUNIX进程的换入、换出nUNIX进程的睡眠与唤醒1、UNIX进程的组成n进程控制块、正文段、数据段三部分组成n进程控制块 P46n基本块:nproc结构n常驻内存n包含信息:标识信息、有关进程非常驻主存部分的信息,进程调度的信息,其它信息。n扩充块:user结构,磁盘对换区n包含信息:标识、现场保护、主存管理、文件读写、系统调用、进程控制与管理。1、UNIX进程的组成n正文段 P50n含义:供多个进程
9、共享的程序。n正文表text:指出正文段在主存和磁盘上的位置、段的大小、共享进程数等。1、UNIX进程的组成n数据段:三部分组成n用户栈区n用户数据区n系统工作区n核心栈nUser区n进程数据结构之间的联系:P51 图3-9 2、UNIX进程的状态nP52 图3-10n创建:用fork系统调用n就绪n内存就绪n交换区就绪n睡眠n内存睡眠n交换区睡眠n运行n僵死:用exit系统调用3、UNIX进程的创建和终止nUNIX进程树 P53 图3-11n0号进程:交换进程,核心态n进程调度n进程在主存和磁盘进行交换n1号进程n用户态n初始化进程n用户注册时创建login进程nLogin进程n注册成功时创
10、建SHELL进程nSHELL进程n用户进程进程的创建n用fork创建进程(0、1号进程除外)n子进程可以共享父进程的正文段和已打开的文件n父子进程可以并发执行nFork的主要工作:n在进程表PROC中找一个表项n为子进程分配一个唯一的标识号n把父进程的proc复制到子进程的proc中n按父进程的p-size分配内存进程的终止n用EXIT终止自己n用WAIT等待子进程结束n用EXEC执行命令nP55 图3-13 表示了系统调用之间的关系进程的换入换出n由0号进程完成n执行sched 程序,流程见P56的图3-14nRunout和runin标志的作用nRunout:对换区中没有要换进的进程,置1n
11、Runin:没有可换出的进程,置“1”nUNIX规定:一个进程被换出前必须至少在内存中驻留2S。进程的睡眠与唤醒n进程的睡眠n睡眠的原因n睡眠的时机nSleep 程序n判断runin标志n进程的唤醒n唤醒的时机nWakeup 程序n判断runout标志3.5 中断技术n中断驱动/事件驱动n中断的含义n中断的分类n中断系统:硬件与软件的结合n中断响应过程n中断优先级和中断屏蔽.unix 中断n中断事件和异常情况n处理器状态字n中断级别:级n级:异常情况n级:软件中断n:硬件中断n中断处理过程:现场保护、分析处理、恢复现场三个阶段3.7 处理机调度输入设备输入井后备作业作业调度内存进程进程调度CP
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第3章 进程
限制150内