occam和csp有哪些共同特征?

时间:2016-05-23 20:24:06

标签: parallel-processing occam-pi

我在学习OCCAM和CSP(沟通顺序流程)时遇到了一个问题。我找到了一些基本答案,如;

  • 他们都是并行编程,
  • 他们输入问号(?),
  • 使用感叹号(!)发送输出。

但我想了解更多有关其共同特征的技术细节。

1 个答案:

答案 0 :(得分:1)

在CSP上

Hoare的CSP于1979〜1984年完成,当时Book on CSP ( today having some 260+ pages )于1985年首次出版。

CSP的最终版本还包括允许进程到进程通信和同步机制的通道。

occam

David May和Hoare在牛津大学的团队同时发展了CSP开发的 occam ,这是一种非常创新的 InMOS 语言非常先进的 TRANSPUTER 处理器网络,故意将CSP融入实用的编程语言。

当代语言可能源自occam语言概念的非“平行”高级功能。

一个有趣的示例代码(C)2000,Fred Barnes以及来自Peter Welch的一些修复/ mods说明了语言模拟器的玩具示例上的语言/ CSP通道概念的功能,提供啤酒,同时保持代码可读而且富有表现力。

-- ...(cleared for clarity >>> http://frmb.org/download/bar.occ )
-- ..
-- .
--{{{
PROC        bar.tender ( []CHAN OF BYTE  req, rsp,
                           CHAN OF INT   mode.change,
                           CHAN OF O.REQ d.chan,
                           SEMAPHORE     d.sem,
                           CHAN OF BOOL  kill
                           )
  CHAN OF BYTE spinal.chord:
  CHAN OF BOOL kill.brain, kill.body:

  PAR
    --{{{  terminator SEQ, BUT DECLARED TO RUN IN TRUE-PARALLEL EXEC WITH bar.brain() & bar.body()
    BOOL any:
    SEQ                   -- SEQ:
      kill ? any
      kill.brain ! any    -- order is
      kill.body ! any     -- important
    --}}}
    bar.brain ( req, spinal.chord, mode.change, kill.brain )
    bar.body  ( spinal.chord, rsp, d.chan, d.sem, kill.body )
:
--}}}

在下一波浪潮中,CSP和Occam相互影响(例如在The Laws of Occam Programming ( ~90 pages, scanned copy ) 中),触及高级主题为distributed real-time processing and many other advanced fields of interest.