【总结】进程描述与控制

2019-07-14 08:37发布

1,进程的特征:
  • 动态性
  • 并发性
  • 独立性
  • 异步性
2,进程的组成:由程序,数据集合,进程控制块(PCB)组成 3,进程控制块的作用:PCB是进程组成中最关键的部分
  • 每个进程都有唯一的进程控制块。
  • 操作系统是根据进程控制块对进程进行控制和管理的。
  • 进程的动态,并发等特征是利用PCB表现出来的。
  • PCB是进程存在的唯一标识。
4,PCB的组织方式:
  • 线性队列
  • 链接表
  • 索引结构
5,同步和互斥:
  • 进程间共同完成一项任务时直接发生相互作用的关系;
  • 排他性访问即竞争同一个物理资源相互制约;
6、同步机制应遵循的规则:
  • 空闲让进
  • 忙则等待
  • 有限等待
  • 让权等待
7、进程基本状态:
  • 就绪态   进程具备运行条件,但尚未占用CPU
  • 运行态  进程正在占用CPU
  • 阻塞态   进程由于等待某一事件不能享用CPU
8、进程状态的转换:
  • 就绪态-->运行态
  • 运行态-->就绪态
  • 运行态-->阻塞态
  • 阻塞态-->就绪态
9、什么是临界资源、临界区? 1)临界资源:一次仅允许一个进程使用的资源。 2)临界区:在每个进程中访问临界资源的那段程序。 3)互斥进入临界区的准则: (1)如果有若干进程要求进入空闲的临界区,一次仅允许一个进程进入。 (2)任何时候,处于临界区内的进程不可多于一个。如已有进程进入自己的临界区,则其它所有试图进入临界区的进程必须等待。 (3)进入临界区的进程要在有限时间内退出,以便其它进程能及时进入自己的临界区。 (4)如果进程不能进入自己的临界区,则应让出CPU,避免进程出现“忙等”现象。 10、信号量 1)信号量定义:信号量(信号灯)=<信号量的值,指向PCB的指针> 2)信号量的物理意义: (1)信号量的值大于0:表示当前资源可用数量 小于0:其绝对值表示等待使用该资源的进程个数 (2)信号量初值为非负的整数变量,代表资源数。 (3)信号量值可变,但仅能由P、V操作来改变。 11、P/V操作原语 1)P操作原语P(S) (1)P操作一次,S值减1,即S=S-1(请求分配一资源); (2)如果S≥0,则该进程继续执行;如果S<0表示无资源,则该进程的状态置为阻塞态,把相应的PCB连入该信号量队列的末尾,并放弃处理机,进行等待(直至另一个进程执行V(S)操作)。 2)V操作原语(荷兰语的等待)V(S) (1)V操作一次,S值加1,即S=S+1(释放一单位量资源); (2)如果S>0,表示有资源,则该进程继续执行;如果S≤0,则释放信号量队列上的第一个PCB所对应的进程(阻塞态改为就绪态),执行V操作的进程继续执行。 12、进程间简单同步与互斥的实现 1)用P,V原语实现互斥的一般模型 设互斥信号量mutex初值为1 2)用P、V原语操作实现简单同步的例子 S1缓冲区是否空(0表示不空,1表示空),初值S1=0; S2缓冲区是否满(0表示不满,1表示满),初值S2=0; 3)生产者——消费者问题(OS典型例子):mutex互斥信号量,初值为1;full满缓冲区数,初值为0;empty空缓冲区数,初值为N;