首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >饮食中的选择性互斥与读者作家问题

饮食中的选择性互斥与读者作家问题
EN

Software Engineering用户
提问于 2012-02-15 03:01:47
回答 2查看 983关注 0票数 5

我一直在读关于选择性互斥的文章。我的想法是,如果一个进程与所有其他进程的子集竞争其资源,而不是与所有其他进程竞争,那么我将面临一个中小企业问题。

( 1)你能证实我的定义是正确的吗?

现在,餐饮哲学家问题就是这方面的一个典型例子(中小企业靠近)。

( 2)在分布式解决方案中(每个哲学家都是为了两个分叉而另有两个哲学家),如果不是5个哲学家,而是3个哲学家,那么这是否仍然是一个中小企业问题?(我认为不是,因为每个哲学家都会和其他哲学家竞争)

( 3)在集中的“导体”解决方案中,有5位哲学家,这是否仍然是一个中小企业问题?(我认为是会的,因为虽然所有的过程都在争夺侍者,但每一个哲学家都只是为了得到两个指定的叉子而相互竞争。)

最后,在读者与作家问题 (中小企业按过程类型)中

4)如果只允许一位读者和一位作家,这是否仍然是一个中小企业问题?(我认为没有,因为实际上每一个过程都将与所有其他过程竞争)

EN

回答 2

Software Engineering用户

回答已采纳

发布于 2012-02-15 09:15:02

( 1)你能证实我的定义是正确的吗?

是。我通过搜索web查找并发性“选择性互斥”发现的三到四个引用似乎符合您的理解:“如果一个进程与所有其他进程的子集竞争其资源,而不是与所有其他进程竞争”。

( 2)在分布式解决方案中(每个哲学家都是为了两个分叉而另有两个哲学家),如果不是5个哲学家,而是3个哲学家,那么这是否仍然是一个中小企业问题?(我认为不是,因为每个哲学家都会和其他哲学家竞争)

最有可能的是,它将是一个中小企业,或一些灰色地带的味道。想想“第一”和“第二”哲学家之间的分叉--“第三”哲学家不使用它,因此我们有“子集竞争”,仅限于第一和第二

( 3)在有5位哲学家的集中式“导体”解决方案中,这是否仍然是一个中小企业问题?(我认为是会的,因为虽然所有的过程都在争夺侍者,但每一个哲学家都只是为了得到两个指定的叉子而相互竞争。)

只要你把叉子定义为共享资源,它仍将是中小企业--因为“第一”和“第三”哲学家不会有共享的资源(叉子)来竞争。

不过,如果你把服务生定义为一种资源(用编程术语来说,这可能被看作是一个拥有竞争访问权的个体-我认为这并不是太好的设计)--那么就不会有中小企业,因为所有哲学家都会为获取单一的共享资源而竞争。

4)如果只允许一位读者和一位作家,这是否仍然是一个中小企业问题?(我认为没有,因为实际上每一个过程都将与所有其他过程竞争)

它不会是中小企业,因为在上述情况下,一组进程正是由两个(读取器和写入程序)组成,两者都需要对资源的相互排斥访问:读者不能阅读,而写入者不能在读者读取时写入。

对于在读者和作者中发生的中小企业,应该有一个以上的读取器--使一个子集在其本身和2)至少一个作者之间不相竞争--以确定读写访问之间相互排斥的需要。

  • 底线是,要了解中小企业,就需要精确地定义一组过程和一组资源。并且对互斥 of course. 有一个坚实的理解,另一点值得记住的是,这个看起来很高明的概念的目的确实是相当实用的。当某些进程不需要竞争特定的资源时,通过使用更细粒度的locks.、读取器来减少锁争用,这是一个很好的例子。如果您发现有十个读者在没有真正需要的情况下为访问某个资源而苦苦挣扎,那么解决这个问题可能会使您的应用程序快十倍。
票数 2
EN

Software Engineering用户

发布于 2018-02-17 14:43:19

在第二点中,格纳特说,对三个哲学家来说,这也是一个中小企业问题,但我不确定。

关于中小企业问题的定义,根据提问者:

“如果一个进程与所有其他进程的子集竞争其资源,而不是与所有其他进程竞争,那么我将面临一个中小企业问题。”

所以,如果总是有一个哲学家不使用的叉子,这并不重要,因为它不是关于有多少叉子(资源)存在,而是关于有多少个过程与他们中的每一个人竞争

因此,如果我们有三个哲学家,我们就没有中小企业问题。所有的过程(哲学家)都在与其他过程(哲学家)竞争它的资源。

如果我错了请纠正我。

票数 2
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/135129

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档