打印

再谈死锁……

[复制链接]
5068|30
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
刘前辈|  楼主 | 2011-10-22 13:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 刘前辈 于 2011-10-22 18:41 编辑

所长说死锁问题和吃饭人数奇数 / 数没关系;本来就没关系。

死锁现象是就餐的每个人同时拿起了右手或左手——属于自己的叉子,有一个人乱拿的,就不会产生死锁。(所长忘了说前提条件,所有就餐人左右手必须是统一、一致、同时。不知道这里的机制就装懂?到底是左手还是右手是属于自己的叉子?)

呵呵,别人说的是:服务员给就餐人数N多提供一把叉子资源,死锁就不会发生!N可以是任何奇偶数。

——这还用多说吗?这样一来,必然有一个人能拿到2把叉子,开吃。

所长怎么也转不过弯,“无论奇数偶数,都会产生死锁!这么蠢的问题还想不到,还算学过OS的研究生……你那导师真是愚蠢透了。”


我还需要给这种老人讲什么饥饿问题的解决方法么?那更转不出弯了……


这就叫代沟吧。老人急眼了可以骂,年轻人只能哑然失笑……本想拿出书来举证“你总不会比教授厉害吧,书总不会错吧。”呵呵,越拿书所长越气:
“书也是错的……”

老人有个特点,就是谁都要听他的(在家族里是长辈,以为外边还是长辈?)否则就来气,就要骂娘;所长提前进入老年期了?才54呀 ……
      
不过从我来看,54岁对我来说确实挺可怕的。比我年老 2轮 !是得考虑尊重老人点。   所以以后建议所长不要再找论坛上的年轻人 PK了; 输了自己生气,想赢又赢不了。然后反复再来,越输越气 。越气越要赌PK,如今连VS都上啦。不敢玩硬件啦?……


所以,像HOT大叔那样,随着年龄的增长,不断学习进取的年长之人,肯定会学习到生命的最后一刻。像乔布斯,把生命的脑力开始衰减之年透支到中年最后时光,英年早逝也活的值了。——都是另俺尊重的前辈。

、、

相关帖子

沙发
刘前辈|  楼主 | 2011-10-22 13:56 | 只看该作者
欲解决饥饿问题,哲学家就餐人数必然为奇数!稍微有点爱动脑子的人就会想明白为什么?Dijkstra 的哲学家就餐模型就餐人数为什么是5个?4个、6个行不行?运行一下就看出来了,4个时最大可已有2个人同时开吃,6个时最大可以有3个人同时开吃,……会产生问题吗?4个运行一下,看看会有什么现象。

呵呵,所以要增加一个奇数。以解决饥饿现象的发生。5个时最小实验模型,3个能玩么?所以我玩7个。   
     9个,11个,2N+1 个一样。



、、

使用特权

评论回复
板凳
yewuyi| | 2011-10-22 21:21 | 只看该作者
所长在哪?

又重出来了吗!?

使用特权

评论回复
地板
highgear| | 2011-10-22 22:15 | 只看该作者
44楼: 41楼:
highgear,xwj等各位:
不必再多说了。
   
我早说过刘钱贝不懂技术, 你们这些聪明人怎么想去试图说服一个连一幅画都要请人挂,还美其名曰站在巨人肩膀上的白痴呢?
                   ;P ;P ;P ;P

使用特权

评论回复
5
yewuyi| | 2011-10-22 22:19 | 只看该作者
44楼: 41楼:
highgear,xwj等各位:
不必再多说了。
   
我早说过刘钱贝不懂技术, 你们这些聪明人怎么想去试图说服一个连一幅画都要请人挂,还美其名曰站在巨人肩膀上的白痴呢?
                   ;P ;P ;P ; ...
highgear 发表于 2011-10-22 22:15


都在说什么?

44楼还没出现呢!!!!!!

使用特权

评论回复
6
程序匠人| | 2011-10-22 22:38 | 只看该作者
又要开始PK了吗?

只要不过激,随便怎么K!

使用特权

评论回复
7
谈的元| | 2011-10-22 23:17 | 只看该作者
哈哈,丰富

使用特权

评论回复
8
Cortex-M0| | 2011-10-23 09:13 | 只看该作者
呵呵, 俺早就说过了~~~

highgear老师 的PK 讲究轰动性,广告效应好,但不会有结果 ------ 没人有胆量接受PK。

刘老前辈找一个永远退出江湖的所长PK,  更不会有结果 ------ 德高望重的所长正在夏威夷渡假呢。

还是散会吧~~~  :P

使用特权

评论回复
9
pa2792| | 2011-10-23 09:39 | 只看该作者
1,2,3,4,5,6,7,都是可以避免死锁的,只要锁加润滑剂。

使用特权

评论回复
10
highgear| | 2011-10-23 11:03 | 只看该作者
本帖最后由 highgear 于 2011-10-23 11:33 编辑

好吧,要文明些。
我也知道刘前辈不敢PK, 他的这些帖子无非是转移注意力,把PK变成无聊的口水仗而已。

既然老叶,匠人都加入进来,那我还是把哲学家就餐是否存在死锁这个 ... 低速cpu... 问题讲一讲,只讲一次,不再重复。如果老刘还像上次那个"LED数码管动态扫描"里的表现那样,那么,就不能责怪我给老刘冠以"低速cpu"的称号。

首先, 要证明 xx不存在这个命题,举出一千亿个不存在的例子也不能证明这个命题成立,而只要有一个例子证明存在,这个命题就会被推翻,这是一个简单到近乎弱智,啊不对,是低速cpu的逻辑。

其实,哲学家就餐本来就是为了解决死锁问题而提出的:
http://en.wikipedia.org/wiki/Dining_philosophers_problem

The problem was designed to illustrate the problem of avoiding deadlock, a system state in which no progress is possible.
One idea is to instruct each philosopher to behave as follows:
  • think until the left fork is available; when it is, pick it up;
  • think until the right fork is available; when it is, pick it up
  • eat
  • put the left fork down
  • put the right fork down
  • repeat from the start
This solution is incorrect: it allows the system to reach deadlock, namely, the state in which each philosopher has picked up the fork to the left, waiting for the fork to the right to be put down.
Resource starvation might also occur independently of deadlock if a particular philosopher is unable to acquire both forks because of a timing problem.

上面的内容讲的清清楚楚,明明白白。这种解法(指上述就餐过程)不正确:它让系统达到死锁

另外的一个简单证明就是,我们可以把就餐问题简化为两个固执的哲学家A, B 与两把叉子 a, b. 当A,B 同时拿起a, b后, A 在等待b, B在等待a,  熬啊,熬啊,终于熬出了阿香婆..., 啊不,什么也没熬出,AB都饿死了,  这是一个典型的死锁。由此,可以推及 三人,四人,五人等等。
至于什么奇偶问题,更不值一提。很简单,如果存在奇数问题,以这些大科学家的严谨, 题目就会是 奇数个哲学家就餐问题

使用特权

评论回复
评分
参与人数 1威望 +1 收起 理由
Cortex-M0 + 1
11
Cortex-M0| | 2011-10-23 11:22 | 只看该作者
highgear老师抄书的本事超一流,学习了~~~

使用特权

评论回复
12
highgear| | 2011-10-23 11:25 | 只看该作者
谢谢 123姐姐的夸奖。

老刘如果回帖,请贴自己写的代码,别搞毫无意义无聊的口水。懂不懂,代码说话。

使用特权

评论回复
13
刘前辈|  楼主 | 2011-10-23 12:15 | 只看该作者
本帖最后由 刘前辈 于 2011-10-23 13:11 编辑
12楼所长
老刘如果回帖,请贴自己写的代码,别搞毫无意义无聊的口水。懂不懂,代码说话。


所长真逗,刘前辈早就贴出了代码。其精妙之处大概只有站长和HOT大叔,HWM 等这样高水平的极个别人能看懂。至于所长?连“睡眠/唤醒机制”怎么回事都不知道的人,我看就算了吧啊:认吧,强撑着也不是事儿,没学过就是没学过,认吧。


刘前辈30楼:

……且看唤醒程序源代码就清楚了:
void  test ( i )
{
if ( state [ i ]= =HUNGRY && state [LEFT] !=EATING && state [RIGHT ] !=EATING )
{
state [ i ]=EATING;
up ( & s[ i ] );
}
}


哈哈,知道这段代码谁写的么?刘前辈有意贴出这样一段包含在自己写的、在PROTEUS上运行的 test2s2.hex 哲学家就餐精彩代码而没有提示说明,结果像所长这样的本科生老工程师,对如此精妙的代码段,竟然视而不见,如看天书?!真是中了刘前辈下的套,……知道 up ( & s[ i ] );  什么意思吗?哈哈………这就是研究生学的东西。

        切!连一句代码都看不懂的人,还在那洋洋自得,“照样天下第一”?小学生里第一吧?……  一般弱智者都认为自己天下第一,因为他什么都不知道,只知道吃吃睡睡;好处就是没有烦恼,还可能长寿。

            还在这大喊:“刘前辈不敢贴代码”?——早就贴出来了啦,对所长来说如贴天书,老工程师所长没反应啊?不是老刘不敢贴,是贴出来了你看不懂耶。哈哈,研究生啦,逗你玩呢,看不懂的是弱智。

现在知道了,看得懂给大家讲讲:这段代码什么意思?也显示一下咱本科生老工程师玩OS的水平。你的代码咱都看得懂,处处漏洞,我也给你讲讲。根本不能长时间运行。不敢贴出来?……

  不会还要刘前辈多贴点代码吧?唉……贴多了你更看不懂啦,老刘写的是“哲学家进餐的管程解法”。贴出来你看得懂?你这辈子恐怕玩不出个管程解法喽。不是笑话你,空喊无用,贴代码!

还PK 个啥呦,老刘有个建议:

     咱贴一段完整的,能运行的“哲学家进餐的管程解法”代码,并在Proteus上长时间(一整天可以吧)运行结果。老所长如若3天写不出来实际能运行的程序,建议给刘前辈下跪!
   

众网友看热闹吧……提醒一下,你不是能抄书么?网上,书上随便你抄。随便你什么环境,什么语言。只要能运行看结果的。

         最好是Proteus上运行看结果,因为这里是单片机论坛。——玩PC机软硬件你找错了地方。
  
     
、、

使用特权

评论回复
14
xd54622| | 2011-10-23 12:35 | 只看该作者
又是精彩的帖子,果断围观中

使用特权

评论回复
15
mohanwei| | 2011-10-23 12:53 | 只看该作者
果断围观……

使用特权

评论回复
16
刘前辈|  楼主 | 2011-10-23 13:07 | 只看该作者
本帖最后由 刘前辈 于 2011-10-23 13:20 编辑

众网友捧场啊。

所长别光知道嘴里横。明天再让所长见识一下老刘怎么玩所长的第二道PK题,见识一下老刘玩PROTEUS图形的功底。MO 称为广告效应,不可能有人敢接招的:自以为是难题?所长+123jj 一对老工程师 玩了三年未果,结果老刘只用了一上午就解了。—— 无知罢了,告诉你研究生学的是什么,不是干吃饭的。—— 一星期内 PK 连输2场,败在30岁的晚辈手下,一对老工程师面子确实不好受呦。可以理解……“这二人同心”**联手也不怎么样啊。

讲不出道理,一急眼男的就率先在女的面前骂娘啦。  辩论规则:一骂娘就是输啦……下去!


、、

使用特权

评论回复
17
刘前辈|  楼主 | 2011-10-23 13:28 | 只看该作者
请求站长,版主保留这2贴。下面刘前辈和所长还要 PK 理发师问题,和读写者问题。分布式OS问题,现场总线问题,令牌环网问题。

PK使人进步,言语无恶意请原谅。前辈绝不会骂娘。逗乐损一把常有,加点笑料而已。多多谅解。

使用特权

评论回复
18
刘前辈|  楼主 | 2011-10-23 13:39 | 只看该作者
8楼
刘老前辈找一个永远退出江湖的所长PK,  更不会有结果 ------ 德高望重的所长正在夏威夷渡假呢。


所长上《非诚勿扰》找对象去啦?我还真没注意到,不怕123jj 伤心?

M0差了,是所长一直追着刘前辈PK ,前辈学历比所长高,不屑和所长玩。

再说所长的领域是PC机软件,和刘前辈2个领域。互不搭界的研究,既然承认没学过操作系统原理,我看所长就算了吧。老刘绝对没学过PC机软件,先认输了。


、、

使用特权

评论回复
19
sunshitao| | 2011-10-23 13:46 | 只看该作者
围观

使用特权

评论回复
20
huangqi412| | 2011-10-23 14:09 | 只看该作者
;P

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:做自己所热爱的,并热爱自己所做的。

24

主题

1038

帖子

4

粉丝