正在加载图片...
间进行转换的 (4)进程控制块。为了描述和控制进程,os必须为每个进程建立一个进程控制块PCB。在 学习时应了解PCB具有哪些作用,为此,在PCB中必须包含哪些内容 3.2.2进程同步的基本概念 进程同步既是0S中的一个重要概念,又是保证系统中诸进程间能协调运行的关键,故应 对它有较深入的理解,并能较熟练地运用。为此,应对下述与进程同步有关的几个基本概念有 较好的理解和掌握 (1)临界资源。临界资源是指→次仅允许一个进程访问的资源。在学习时,应了解对这种资 源应采取什么样的共享方式。 (2)临界区。进程中访问临界资源的那段代码称为临界区.显然,为了实现进程互斥地访问 临界资源,诸进程不能同时进入自己的临界区。在学习时,应了解用什么样的机制(称同步机制) 来实现进程互斥地进入自己的临界区 (3)同步机制应遵循的准则。用于实现进程同步的机制有多种,但它们都应遵循”空闲让进 、"忙则等待"、"有限等待″和″让权等待”;四个准则。读者必须清楚,为什么要同时满足这四 条准则,如违背了其中的基本准则,其后果是什么。 3.2.3信号量机制及其应用 信号量机制是一种卓有成效的进程同步机制,它已被广泛地应用于各种类型的0S中。因 此,必须对下述几个与信号量有关的内容有较深刻的理解和掌握: (1)信号量的含义。 (2)信号量的物理意义。 (3)用信号量实现互斥。为了实现进程对临界资源的互斥访问,需为每类临界资源设置初值 为1的互斥信号量 mutex。在学习时,应清楚在进入临界区前或退出临界区后应对 mutex分别 执行什么操作,为什么对 mutex的P和Ⅴ操作必须成对出现,如少了其中的P操作或V操作, 会对互斥算法产生什么样的影响 (4)用信号量实现前趋关系。为实现前驱关系Pi→Pj,可为它们设置一个初值为0的信号量 S。在学习时,应清楚对S的P操作和Ⅴ操作应分别安排在什么位置,同时必须注意P(S)操作 和V(S)操作也必须成对出现 (5)经典进程的同步问题 我们以生产者一消费者为例,来说明学习此重点问题时应了解和掌握些什么。 ①生产者一消费者问题是用于解决一群生产者和消费者之间的进程互斥和进程同步问 题。在学习时首先应了解哪些资源属于临界资源,并为它们设置了哪些信号量,信号量的初值 应如何设置;其次,应了解哪些地方需要同步,并需为它们设置哪些信号量,信号量的初值又应 如何设置等。 (2)如何实现进程互斥。为实现对缓冲池的互斥访问,应为它设置一互斥信号量 mutex,读者 应在生产者进程和消费者进程中都能找到成对的用于实现互斥的P( mutex)和v( mutex)操作 ③如何实现进程同步。为实现进程同步,应为缓冲池设置表示缓冲区空和满的 empty和 ful1信号量,读者应在相互合作的进程中找到成对的P( empty)和v( empty)操作,成对的 P(fu11)和V(ful1)操作 ④对程序的阅读方式。由于生产者-消费者问题属于并发执行程序,因此在阅读时可采取 交替阅读的方式。我们可以先从任一程序(如生产者)开始阅读,当它因P操作失败而阻塞时, 该程序便不能继续往下运行,此时,可去阅读消费者程序;而当消费者唤醒阻塞的生产者,或者 消费者因P失败而受阻时,则又可返回到生产者程序继续阅读。 3.2.4消息传递通信机制 无论是单机系统、多机系统,还是计算机网络中,消息传递机制都是一种使用十分广泛的进间进行转换的。 (4)进程控制块。为了描述和控制进程,os 必须为每个进程建立一个进程控制块 PCB。在 学习时应了解 PCB 具有哪些作用,为此,在 PCB 中必须包含哪些内容。 3.2.2 进程同步的基本概念 进程同步既是 OS 中的一个重要概念,又是保证系统中诸进程间能协调运行的关键,故应 对它有较深入的理解,并能较熟练地运用。为此,应对下述与进程同步有关的几个基本概念有 较好的理解和掌握: (1)临界资源。临界资源是指→次仅允许一个进程访问的资源。在学习时,应了解对这种资 源应采取什么样的共享方式。 (2)临界区。进程中访问临界资源的那段代码称为临界区.显然,为了实现进程互斥地访问 临界资源,诸进程不能同时进入自己的临界区。在学习时,应了解用什么样的机制(称同步机制) 来实现进程互斥地进入自己的临界区。 (3)同步机制应遵循的准则。用于实现进程同步的机制有多种,但它们都应遵循"空闲让进 "、"忙则等待"、"有限等待"和"让权等待";四个准则。读者必须清楚,为什么要同时满足这四 条准则,如违背了其中的基本准则,其后果是什么。 3.2.3 信号量机制及其应用 信号量机制是一种卓有成效的进程同步机制,它已被广泛地应用于各种类型的 OS 中。因 此,,必须对下述几个与信号量有关的内容有较深刻的理解和掌握: (1)信号量的含义。 (2)信号量的物理意义。 (3)用信号量实现互斥。为了实现进程对临界资源的互斥访问,需为每类临界资源设置初值 为 1 的互斥信号量 mutex。在学习时,应清楚在进入临界区前或退出临界区后应对 mutex 分别 执行什么操作,为什么对 mutex 的 P 和 V 操作必须成对出现,如少了其中的 P 操作或 V 操作, 会对互斥算法产生什么样的影响。 (4)用信号量实现前趋关系。为实现前驱关系 Pi→Pj,可为它们设置一个初值为 0 的信号量 S。在学习时,应清楚对 S 的 P 操作和 V 操作应分别安排在什么位置,同时必须注意 P(S)操作 和 V(S)操作也必须成对出现。 (5)经典进程的同步问题 我们以生产者一消费者为例,来说明学习此重点问题时应了解和掌握些什么。 ①生产者一消费者问题是用于解决一群生产者和消费者之间的进程互斥和进程同步问 题。在学习时首先应了解哪些资源属于临界资源,并为它们设置了哪些信号量,信号量的初值 应如何设置;其次,应了解哪些地方需要同步,并需为它们设置哪些信号量,信号量的初值又应 如何设置等。 ⑵如何实现进程互斥。为实现对缓冲池的互斥访问,应为它设置一互斥信号量 mutex,读者 应在生产者进程和消费者进程中都能找到成对的用于实现互斥的 P(mutex)和 V(mutex)操作。 ③如何实现进程同步。为实现进程同步,应为缓冲池设置表示缓冲区空和满的 empty 和 full 信号量,读者应在相互合作的进程中找到成对的 P(empty)和 V(empty)操作,成对的 P(fu11)和 V(full)操作。 ④对程序的阅读方式。由于生产者-消费者问题属于并发执行程序,因此在阅读时可采取 交替阅读的方式。我们可以先从任一程序(如生产者)开始阅读,当它因 P 操作失败而阻塞时, 该程序便不能继续往下运行,此时,可去阅读消费者程序;而当消费者唤醒阻塞的生产者,或者 消费者因 P 失败而受阻时,则又可返回到生产者程序继续阅读。 3.2.4 消息传递通信机制 无论是单机系统、多机系统,还是计算机网络中,消息传递机制都是一种使用十分广泛的进
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有