第2章_进程管理2(1).ppt

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2.1前趋图、顺序执行、并发执行 2.2 进程的描述 1.进程的定义,是程序的一次执行过程,是资源分配的单位。 2.进程与程序的区别 3.进程的状态以及状态转换 基本状态,以及直接怎么转换,转换条件 * PCB是操作系统中最重要的数据结构,是进程存在的唯一标志;是独立运行的基本单位的标志。 * 能实现间断性运行方式:现场信息保存的地方 * 提供进程调度所需要的信息; * 实现与其他进程的同步与通信 2.2.4 进程控制块PCB * 提供进程管理所需要的信息,所有资源的列表 复习上节课内容: 进程实体:程序、数据、PCB 2.3进 程 控 制 * 为了确保系统的安全性,常将处理机的执行状态分为系统态和用户态。 * 进程控制由操作系统内核实现,运行于系统态。 OS内核是由一些与硬件紧密相关的模块和运行频率较高的模块构成,例如中断,进程管理,进程调度的,驱动程序等等。内核常驻内存,受特殊保护,为了效率高和安全性。 * 原语(Primitive)是由若干条指令组成的,用于完成特定功能的一个特殊过程。它与一般过程的区别在于:它们是原子操作(Action Operation),不能被打断。 进程控制: 进程创建、 进程终结、进程的阻塞与唤醒 2.4.1 进程同步的基本概念 1、两种形式的制约关系(并发进程间的关系) * 资源共享关系 * 相互合作关系 (间接相互制约)互斥解决 (直接相互制约)同步解决 进程间彼此无关,进程同步要确保诸进程互斥的访问临界资源。(银行账号) 进程间存在先后次序关系,进程同步要确保诸进程在执行次序上的协调,时间上无差错。(司机售票员) 2. 临界资源 3. 临界区 4.同步机制遵循的规则(期望) 空闲让进 忙则等待 有限等待 让权等待 硬件的理解 解决方式: 1. 关中断 缺点: 滥用关中断,会有严重后果 关中断时间过长,效率会低 不适用多cpu系统 2、3都是相当于加锁方式原理: 如果锁lock=true,就while循环等待; 一旦false了,马上出循环,lock=true,并使用资源; 使用完资源了,lock=false 原子操作TS boolean TS(boolean *lock) { boolean old; old=*lock; *lock=TRUE; return old; } Do{ …… while TS(lock); critical section; lock:=FALSE; remainder section; } while(TRUE); Void swap(boolean *a, Boolean *b) { Boolean temp; Temp=*a; *a=*b; *b=temp } do{ key=TRUE; do{ swap(lock,key); }while(key!=FALSE); cricical section; lock=FALSE; 。。。 }while(TRUE) 1、整型信号量 1965年荷兰学者Dijkstra提出信号量机制,定义一个整型信号量表示资源数目。通过两个标准的原子操作:wait(S)和signal(S)来访问。这两个操作一般被分别称为P、V操作。 wait(S){ while (S≤0); S=S-1; } signal(S){ S =S+1;} P 操作:实现资源的分配 V 操作:实现资源的回收 2.4.3 信号量机制 2、记录型信号量 整型信号量机制: 未遵循“让权等待”的准则; 进程可能处于“忙等”的状态。 记录型信号量机制: 整型变量value:代表资源数目; 进程链表指针L:链接等待该资源的进程。 wait(semaphore *S) { S-value--; if (S-value<0 ) block(S-list) } signal(semaphore *S) S-value++; if (S-value<=0 ) wakeup(S-list) } 2、记录型信号量 typedef struct { int value; Block_List * list; } semaphore (1)S.value的初值表示系统中某类资源的数目, 因而又称为资源信号量,每次wait操作意味着进程请求一个单位的该类资源

文档评论(0)

qingfengxulai + 关注
实名认证
内容提供者

文档来源于网络

1亿VIP精品文档

相关文档