摘要:通信(communication)是指进程间的信息交换。根据通信内容可分为控制信息的交换和数据的交换。控制信息的交换称为低级通信,进程的同步与互斥是通过信号量来实现通信的,属于低级信息。数据的交换称为高级通信。高级通信的类型有共享存储系统和消息传递系统和管道通信。高级通信的方式有直接通信和间接通信。
2.1.2题机与进程管理
进程(process)是资源分配和独立运行的基本单位。研究操作系统的进程,实质上是研究系统中诸进程之间的并发特性以及进程之间的相互制约性。
4.进程通信与管程
进程通信
通信(communication)是指进程间的信息交换。根据通信内容可分为控制信息的交换和数据的交换。控制信息的交换称为低级通信,进程的同步与互斥是通过信号量来实现通信的,属于低级信息。数据的交换称为高级通信。高级通信的类型有共享存储系统和消息传递系统和管道通信。高级通信的方式有直接通信和间接通信。
管程
汉森(BrinsbHansen)和霍尔(Hoare)提出了另一种同步机制管程。
管程是由一些共享数据、一组能为并发进程执行的作用在共享数据上的操作的集合、初始代码以及存取权组成的,也即共享数据及在其上操作的一组过程就构成了管程。进程可以在任何需要资源的时候调用管程,且在任一时刻最多只有一个进程能够真正地进入管程,其他的只能等待。管程提供了一种可以允许多进程安全有效地共享抽象数据类型的机制。
每一个管程都有一个名字I形式如下:
Type<管程名>=monitor<管程变量说明>:
define<(能被其他模块引用的)过程名列表〉;procedure<过程名>(<形式参数表>)begin
<过程体>;end;_
procedure<过程名>(<形式参数表>)begin
〈过程体>;
end;
begin
<管程的局部数据初始化语句>;
End.
编辑推荐:系统架构师教程第1章:绪论
软考备考资料免费领取
去领取