- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
操作系统——进程管理23
第二章 进程管理;程序:一个在时间上按严格次序,前后相继的操作序列。体现的是程序员要求的顺序步骤。;例:A、B两程序,每个都是等待输入2s,执行1s,等待输入2s,执行1s ,…,如此重复60次。如果两程序单道顺序执行,共需多少时间? CPU利用率是多少?;二、程序并发执行和资源共享
1.程序并发执行:逻辑上相互独立的一组程序交替地在处理机上执行。;程序A;…;程序S;2.1 进程的概念三、并发执行的特征;四、进程的引入和描述
1.进程(Process):
进程是程序在并发环境中的一次执行过程
进程是程序在一个数据集合上运行过程,是系统资源分配和调度的一个独立单位。
进程可定义为一个数据结构和能在其上进行操作的一个程序。;2.进程的特性
(1)进程:是程序的一次运行的活动,是动态的概念,具有自己的生命周期
程序:是一组有序的指令,是一种静态的概念;
(2)不同进程可以执行同一个程序-程序和进程无一一对应关系。
(3)进程是一个能独立运行的单位,具有并发性。
而通常的程序段是不能作为一个独立运行的单位。
进程与程序的联系
进程不能脱离具体程序而虚设,程序规定了相应进程所要完成的动作;1.进程和程序的根本区别在于 。
A. 是否被调入内存中
B. 是否占有处理机 C. 静态与动态特点 ;分到CPU;1.在单处理机系统中,若同时存在有10个进程,则处于就绪队列中的进程最多为 个。处于运行状态的进程最多为 个
A. 0 B. 1
C. 9 D. 10;六、进程的组成
组成: ;2.1 进程的概念六、进程的组成;3. PCB在内存中的物理组织方式
PCB表:所有PCB按一定的方式组织起来的结构。-放在内存系统区;2.1 进程的概念六、进程的组成;2.2 有关进程的操作;1、创建:当一个程序模块获得一个数据块和一进程控制块后就创建了一个进程。
;2.2 有关进程的操作;一、同步;;OUTPUT;二、互斥与临界区
互斥:进程因为共享资源而产生的制约关系,例如打印机的使用
临界资源(Critical Resource)--CR:一次只允许一个进程使用的资源。既可以是硬件资源又可以是软件资源
临界区(Critical Section)—CS区:每个进程中访问临界资??的代码。
访问临界资源的原则:禁止共享临界资源的进程同时进入临界区;2.3 进程的相互作用和通信;临界区cs;三、用锁操作原语实现互斥;四、P、V操作
1.信号量(信号灯):反映资源使用情况的一个数据结构。
;2. P、V操作原语:;例:两独立的进程A、B,A负责为用户分配打印机,B负责为用户释放打印机。两个进程共享一个打印机分配表.,用P,V操作实现互斥.;P(s);P(s);4. P、V原语实现简单同步
例:设一个输入进程IOP和一个输出打印进程COP
当缓冲区为空时,IOP才能将数据放入缓冲区,
当缓冲区中满时,COP打印进程才能取出数据打印。
;供者进程;供者进程;1.V操作V(S),S为一信号量,执行V操作时完成以下操作:S=S+1,若S0,则继续执行;若S0则 。
A. 将进程阻塞,插入等待队列
B. 将队列中的一个进程移出,使之处于运行状态
C. 将队列中的一个进程移出,使之处于就绪状态
D. 将进程变为挂起状态;同步:当缓冲池全满时,表示供过于求,生产者必须等待,同时唤醒消费者;当缓冲池全空时,表示供不应求,消费者应等待,同时唤醒生产者。
互斥:缓冲池是临界资源,所有生产者与消费者都要使用它,而且都要改变它的状态,因此,关于缓冲池的操作必须是互斥的。;关系描述:设:
(1) 公用(互斥)信号量mutex:用于实现临界区互斥,初值为1;
(2) 生产者私有信号量empty:指示空缓冲块数目,初值为n,;
(3) 消费者私有信号量full:指示满缓冲块数目,初值为0,;
(4) 整型量i和j:初值均为0,i指示满缓冲块序号头指针,j指示空缓冲块序号头指针,均指向下一可用缓冲块。; 生产者进程: 消费者进程:
L:P(empty); K:P(full);
P(mutex); P(mutex);
产品送往buffer(j); 从buffer(i)中取产品;
j=(j+1) mod n; i=(i+1) mod n;
V(full); V(empty);
V(mutex); V(mutex);
goto L; goto K;;结论:无论是生产者还是消费者进程中,P操作的次序不能颠倒;V操作次序可以
文档评论(0)