新书推介:《语义网技术体系》
作者:瞿裕忠,胡伟,程龚
   XML论坛     W3CHINA.ORG讨论区     >>计算机科学论坛<<     SOAChina论坛     Blog     开放翻译计划     新浪微博  
 
  • 首页
  • 登录
  • 注册
  • 软件下载
  • 资料下载
  • 核心成员
  • 帮助
  •   Add to Google

    >> 研友的交流园地,讨论关于计算机考研的方方面面。
    [返回] 计算机科学论坛计算机理论与工程『 计算机考研交流 』 → 讨论一下写者优先问题的<官方>答案 查看新帖用户列表

      发表一个新主题  发表一个新投票  回复主题  (订阅本版) 您是本帖的第 19030 个阅读者浏览上一篇主题  刷新本主题   树形显示贴子 浏览下一篇主题
     * 贴子主题: 讨论一下写者优先问题的<官方>答案 举报  打印  推荐  IE收藏夹 
       本主题类别:     
     applestar 帅哥哟,离线,有人找我吗?
      
      
      威望:2
      等级:大四(总算啃完XML规范了)
      文章:101
      积分:1228
      门派:XML.ORG.CN
      注册:2007/3/16

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给applestar发送一个短消息 把applestar加入好友 查看applestar的个人资料 搜索applestar在『 计算机考研交流 』 的所有贴子 引用回复这个贴子 回复这个贴子 查看applestar的博客11
    发贴心情 

    至于优先问题要看你怎么考虑,比如读者优先问题大家意见都很一致,都是肯定当有读者在读时新来的读者不需要等待,但是如果有写者在写同时还有写者在等待,然后又来了读者,那是否允许读者跳过等待的读者呢。显然大部分解决方案没有考虑跳过这个问题,都默认按照时间顺序,如果是要求觉得读者优先我认为应该读者应该跳过等待写者。至于写者优先显然不同版本考虑不一致有的考虑了绝对优先即写者最多等待一个读者即使读者比写者先来,这样就要求在read外再加一个信号量以保证最多只有一个读者在read上等待,从而写者易于跳过read上的读者因为最多只有一个读者在上面等待。如果不要求写者那么霸道可以不需要外层的信号量。一些国外教材有的考虑了,有的没有考虑因此两个版本都有,这主要取决于题目要求。而且读写问题作为基本模型不同的扩展模型要求不一样具体考虑就是了。此外还有一些要求无饥饿的读写问题等等。pv实现无饥饿也是很重要的。我发现饥饿问题在很多时候大家都不考虑。
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2007/12/21 18:31:00
     
     sweepthesky 帅哥哟,离线,有人找我吗?
      
      
      等级:大二期末(Java考了96分!)
      文章:75
      积分:489
      门派:XML.ORG.CN
      注册:2006/10/13

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给sweepthesky发送一个短消息 把sweepthesky加入好友 查看sweepthesky的个人资料 搜索sweepthesky在『 计算机考研交流 』 的所有贴子 引用回复这个贴子 回复这个贴子 查看sweepthesky的博客12
    发贴心情 
    第二类读写者问题。
    就用信号量来讲,想实现严格的在每一个写者到来之时如文件没被读写则下一个操作文件的一定是写者。是做不到的。
    实现写者优先,实际上是读写争夺一个token,当写者得到token之后,就一直不放直到没有剩余的写者进来。而每一个读者得到token之后成为candidate(不一定就可以马上读)了就马上释放token。
    这就是第二类的思想。
    PV题一大类题就是第二类的思想,实际上可以更普遍化这个问题,试着写一写读者写者地位平等的代码,大家一定会受益匪浅。
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2007/12/23 11:58:00
     
     applestar 帅哥哟,离线,有人找我吗?
      
      
      威望:2
      等级:大四(总算啃完XML规范了)
      文章:101
      积分:1228
      门派:XML.ORG.CN
      注册:2007/3/16

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给applestar发送一个短消息 把applestar加入好友 查看applestar的个人资料 搜索applestar在『 计算机考研交流 』 的所有贴子 引用回复这个贴子 回复这个贴子 查看applestar的博客13
    发贴心情 
    什么意思“想实现严格的在每一个写者到来之时如文件没被读写则下一个操作文件的一定是写者。是做不到的”


    其实,写者优先要求的尽可能优先唤醒写者,主要就是看在有很多读者排在前面怎么让写者跳过去。

    一些变形如无饥饿的第一类读写,并发的'"写者"优先,以及三类不同的优先级的读写问题,等等,大家也可以考虑下。

    关于把互斥信号看作token想法很好,可以允许互斥锁在不同进程,相同进程 传替,
    还有一些需要把同步看作旋转门的集合点问题,这个近三年考得pv题都是这方面,此外
    pv题还有一些设计模式值得注意,常见的“记分板”“i do it for ","传替棒 等

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2007/12/24 18:54:00
     
     buddha 帅哥哟,离线,有人找我吗?
      
      
      等级:大四(每天看1小时莱昂氏)
      文章:164
      积分:1022
      门派:XML.ORG.CN
      注册:2006/5/7

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给buddha发送一个短消息 把buddha加入好友 查看buddha的个人资料 搜索buddha在『 计算机考研交流 』 的所有贴子 引用回复这个贴子 回复这个贴子 查看buddha的博客14
    发贴心情 
    有道理....
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2007/12/25 13:12:00
     
     EagleSoaring 帅哥哟,离线,有人找我吗?金牛座1982-5-8
      
      
      等级:大三(研究MFC有点眉目了!)
      文章:114
      积分:828
      门派:W3CHINA.ORG
      注册:2006/7/11

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给EagleSoaring发送一个短消息 把EagleSoaring加入好友 查看EagleSoaring的个人资料 搜索EagleSoaring在『 计算机考研交流 』 的所有贴子 引用回复这个贴子 回复这个贴子 查看EagleSoaring的博客15
    发贴心情 
    以下是引用applestar在2007-12-24 18:54:00的发言:

    一些变形如无饥饿的第一类读写,并发的'"写者"优先,以及三类不同的优先级的读写问题,等等,大家也可以考虑下。

    关于把互斥信号看作token想法很好,可以允许互斥锁在不同进程,相同进程 传替,
    还有一些需要把同步看作旋转门的集合点问题,这个近三年考得pv题都是这方面,此外
    pv题还有一些设计模式值得注意,常见的“记分板”“i do it for ","传替棒 等



    -----------------------------------------------------------------------------------------------
    汗,遇到高人了
    能具体解释一下吗?

    “把同步看作旋转门的集合点“,“记分板”“i do it for ","传替棒“,
    无饥饿的第一类读写,并发的'"写者"优先,以及三类不同的优先级的读写

    谢谢

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2007/12/26 16:26:00
     
     buddha 帅哥哟,离线,有人找我吗?
      
      
      等级:大四(每天看1小时莱昂氏)
      文章:164
      积分:1022
      门派:XML.ORG.CN
      注册:2006/5/7

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给buddha发送一个短消息 把buddha加入好友 查看buddha的个人资料 搜索buddha在『 计算机考研交流 』 的所有贴子 引用回复这个贴子 回复这个贴子 查看buddha的博客16
    发贴心情 
    以下是引用EagleSoaring在2007-12-26 16:26:00的发言:
    [quote]以下是引用applestar在2007-12-24 18:54:00的发言:

      一些变形如无饥饿的第一类读写,并发的'"写者"优先,以及三类不同的优先级的读写问题,等等,大家也可以考虑下。

      关于把互斥信号看作token想法很好,可以允许互斥锁在不同进程,相同进程 传替,
      还有一些需要把同步看作旋转门的集合点问题,这个近三年考得pv题都是这方面,此外
      pv题还有一些设计模式值得注意,常见的“记分板”“i do it for ","传替棒 等
    [/quote]
    -----------------------------------------------------------------------------------------------
    汗,遇到高人了
    能具体解释一下吗?

    “把同步看作旋转门的集合点“,“记分板”“i do it for ","传替棒“,
    无饥饿的第一类读写,并发的'"写者"优先,以及三类不同的优先级的读写

    谢谢



    我也想知道哦....
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2007/12/27 12:59:00
     
     sweepthesky 帅哥哟,离线,有人找我吗?
      
      
      等级:大二期末(Java考了96分!)
      文章:75
      积分:489
      门派:XML.ORG.CN
      注册:2006/10/13

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给sweepthesky发送一个短消息 把sweepthesky加入好友 查看sweepthesky的个人资料 搜索sweepthesky在『 计算机考研交流 』 的所有贴子 引用回复这个贴子 回复这个贴子 查看sweepthesky的博客17
    发贴心情 
    以下是引用applestar在2007-12-24 18:54:00的发言:
    什么意思“想实现严格的在每一个写者到来之时如文件没被读写则下一个操作文件的一定是写者。是做不到的”


    其实,写者优先要求的尽可能优先唤醒写者,主要就是看在有很多读者排在前面怎么让写者跳过去。

    一些变形如无饥饿的第一类读写,并发的'"写者"优先,以及三类不同的优先级的读写问题,等等,大家也可以考虑下。

    关于把互斥信号看作token想法很好,可以允许互斥锁在不同进程,相同进程 传替,
    还有一些需要把同步看作旋转门的集合点问题,这个近三年考得pv题都是这方面,此外
    pv题还有一些设计模式值得注意,常见的“记分板”“i do it for ","传替棒 等


    我说的意思是make no assumptions to process scheduler的时候。当然PV题写起来就不考虑这个了

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2007/12/28 12:34:00
     
     sweepthesky 帅哥哟,离线,有人找我吗?
      
      
      等级:大二期末(Java考了96分!)
      文章:75
      积分:489
      门派:XML.ORG.CN
      注册:2006/10/13

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给sweepthesky发送一个短消息 把sweepthesky加入好友 查看sweepthesky的个人资料 搜索sweepthesky在『 计算机考研交流 』 的所有贴子 引用回复这个贴子 回复这个贴子 查看sweepthesky的博客18
    发贴心情 
    以下是引用EagleSoaring在2007-12-26 16:26:00的发言:
    [quote]以下是引用applestar在2007-12-24 18:54:00的发言:

      一些变形如无饥饿的第一类读写,并发的'"写者"优先,以及三类不同的优先级的读写问题,等等,大家也可以考虑下。

      关于把互斥信号看作token想法很好,可以允许互斥锁在不同进程,相同进程 传替,
      还有一些需要把同步看作旋转门的集合点问题,这个近三年考得pv题都是这方面,此外
      pv题还有一些设计模式值得注意,常见的“记分板”“i do it for ","传替棒 等
    [/quote]
    -----------------------------------------------------------------------------------------------
    汗,遇到高人了
    能具体解释一下吗?

    “把同步看作旋转门的集合点“,“记分板”“i do it for ","传替棒“,
    无饥饿的第一类读写,并发的'"写者"优先,以及三类不同的优先级的读写

    谢谢


    把同步看成集合点的意思实际上就是并行计算中的barrier。是指多个进程要共同执行到某个语句后才能一起往下走的意思。
    记分板应该是说有多个整形变量,用一个mutex保护起来,然后case操作。
    i do it for估计楼上是想写i'll do it for you。思想是同步其他进程时,要注意在自己的mutex仍在手上时把刚才同步的信号量引起的整型变量变化一并处理掉,不然就会错误。这个可以到这个地址去下一篇文章http://cs.rit.edu/~kar/papers
    传递棒的意思就是在一些问题中如果一个mutex不是总能马上释放的话,可以在一个V操作后就噶然停止。就相当于原来属于自己的那个mutex交给了自己刚V的那个进程。
    无饥饿的第一类读写实际上实现起来并发度不会很高,思想是在每个读者写者的第一步都要争夺一个互斥信号量并持有它直到自己能参与文件的竞争。
    三类不同优先级的读写建议大家都想想,思想是用两级信号量。不过优先级如果超过3层了,我暂时还没想到怎么解决。可能用局部变量合整体队列结合能解决但是效率注定不高。

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2007/12/28 12:43:00
     
     applestar 帅哥哟,离线,有人找我吗?
      
      
      威望:2
      等级:大四(总算啃完XML规范了)
      文章:101
      积分:1228
      门派:XML.ORG.CN
      注册:2007/3/16

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给applestar发送一个短消息 把applestar加入好友 查看applestar的个人资料 搜索applestar在『 计算机考研交流 』 的所有贴子 引用回复这个贴子 回复这个贴子 查看applestar的博客19
    发贴心情 
    回答的很充分!
    因为最近比较忙,所以暂时没有时间写过详细的总结和实现
    总的说pv设计跟程序设计一样是一门艺术。大家多看看论文
    与有关书籍吧。值得指出的是pv问题在生活中很常见,到处都是
    但基本上都是基本模型的拓展变形,或者组合,抓住本质就行了
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2007/12/29 15:28:00
     
     peterhertz 帅哥哟,离线,有人找我吗?
      
      
      等级:大二期末(数据结构考了98分!)
      文章:68
      积分:408
      门派:XML.ORG.CN
      注册:2006/12/31

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给peterhertz发送一个短消息 把peterhertz加入好友 查看peterhertz的个人资料 搜索peterhertz在『 计算机考研交流 』 的所有贴子 点击这里发送电邮给peterhertz  引用回复这个贴子 回复这个贴子 查看peterhertz的博客20
    发贴心情 
    P-V操作题怎么这么难,跟汇编式的,尽是不容易想到的招,那本信号量的pdf小书倒是非常好,可惜从头看到尾吃透怕要花不少时间

    ----------------------------------------------
    吾生也有涯,而知也无涯,以有涯随无涯,殆也! 专业知识才是力量! 知识社会迟早会成型,好好学习,做个合格的知识工作者!

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2008/1/17 15:30:00
     
     GoogleAdSense
      
      
      等级:大一新生
      文章:1
      积分:50
      门派:无门无派
      院校:未填写
      注册:2007-01-01
    给Google AdSense发送一个短消息 把Google AdSense加入好友 查看Google AdSense的个人资料 搜索Google AdSense在『 计算机考研交流 』 的所有贴子 点击这里发送电邮给Google AdSense  访问Google AdSense的主页 引用回复这个贴子 回复这个贴子 查看Google AdSense的博客广告
    2024/5/16 0:43:30

    本主题贴数21,分页: [1] [2] [3]

    管理选项修改tag | 锁定 | 解锁 | 提升 | 删除 | 移动 | 固顶 | 总固顶 | 奖励 | 惩罚 | 发布公告
    W3C Contributing Supporter! W 3 C h i n a ( since 2003 ) 旗 下 站 点
    苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
    109.131ms