何谓管程?管程由几部分组成?说明引入管程的必要性。

大学 必要性,正确答案 已帮助 人

何谓管程?管程由几部分组成?说明引入管程的必要性。

请帮忙给出正确答案和分析,谢谢!

热搜:vts系统由几个部分组成

答案解析

难度★★☆ 搜索
  • 正确答案:当共享资源用共享数据结构表示时资源管理程序可用对该数据结构进行操作的一组过程来表示如资源的请求和释放过程request和release。把这样一组相关的数据结构和过程一并归为管程。Hansan为管程所下的定义是:“一个管程定义了一个数据结构和能为并发进程所执行(在该数据结构上)的一组操作这组操作能同步进程和改变管程中的数据。”由定义可知管程由三部分组成: 1)局部于管程的共享变量说明; 2)该数据结构进行操作的一组过程; 3)对局部于管程的数据设置初始值的语句此外还需为该管程赋予一个名字。 管程的引入是为了解决临界区分散所带来的管理和控制问题。在没有管程之前对临界区的访问分散在各个进程之中不易发现和纠正分散在用户程序中的不正确地使用P、V操作等问题。管程将这些分散在各进程中的临界区集中起来并加以控制和管理管程一次只允许一个进程进入管程内从而既便于系统管理共享资源又能保证互斥。
    当共享资源用共享数据结构表示时,资源管理程序可用对该数据结构进行操作的一组过程来表示,如资源的请求和释放过程request和release。把这样一组相关的数据结构和过程一并归为管程。Hansan为管程所下的定义是:“一个管程定义了一个数据结构和能为并发进程所执行(在该数据结构上)的一组操作,这组操作能同步进程和改变管程中的数据。”由定义可知,管程由三部分组成:1)局部于管程的共享变量说明;2)该数据结构进行操作的一组过程;3)对局部于管程的数据设置初始值的语句,此外,还需为该管程赋予一个名字。管程的引入是为了解决临界区分散所带来的管理和控制问题。在没有管程之前,对临界区的访问分散在各个进程之中,不易发现和纠正分散在用户程序中的不正确地使用P、V操作等问题。管程将这些分散在各进程中的临界区集中起来,并加以控制和管理,管程一次只允许一个进程进入管程内,从而既便于系统管理共享资源,又能保证互斥。