CSP
まずoccamについて知るためにはその背景にあるCSP理論を勉強された方がより
深く理解できます。もっともこれが必要という訳ではありません。
CSPはプロセス代数で通信と並列システムを数学的に記述することができます。つまり論理的に検証できると言うことはシステムが安全に動作するかどうか検証することができます。CSP検証ツールはFDRとよばれFormal
Systemsから発売されていす。
Bill
Roscoeが用意したCSPトレーニング資料は基礎理論を理解するのに大変役に立ちます。大学でのセミナーに使用できます。このサイトにはCSPの検証ツールの紹介もありますので是非ご覧下さい。筆者は1992年にFormal
SystemsでFDRのデモを見ましたが、まだ初期の頃でした。今は完成度も高く幅広くデッドロックの検証に採用されています。
(Prentice-Hall International, ISBN
0-13-153271-5)
日本語版は丸善から出版されています。
(ホーアCSPモデルの理論 吉田信博訳 ISBN4-621-03683-1)
この本は既に古典化しつつあり、最近ではHoare教授の弟子が書いた2冊の本があります。Bill
Roscoeは従来のCSPの本の内容を更新しているのに対してSteve
SchneiderはTimed-CSPについて述べています。
The
Theory and Practice of Concurrency
A.W.
Roscoe
Prentice
Hall
ISBN
0-13-674409-5
Concurrent
and Real-time Systems
The CSP Approach
Steve Schneider
Wiley
ISBN 0-471-62373-3
occamの悲運
occamは先に述べましたようにInmos社で開発されました。バージョンはoccam,
occam2, occam2.1, occam3とありましたが製品化されたのは2.1迄です。しかし1989年のSTとの吸収合併に伴い悲しい運命をたどる事となりました。
その3年後に突如STの牙はInmos解体に向けられました。Newport の工場の閉鎖、occamコンパイラーの開発中止、更にTransputerだけでなく最後の頼みのC104
Routing Switchまでも製造中止に追い込まれた。丁度その頃にTransputerの後継機ST20が開発されることになったが、これは社内の組込み用途で使われる32bitMPUであっても単体で外販されることはなかった。
今でも記憶にあるがDavid
Mayは急にoccamコンパイラーの開発中止を発表した。その理由はSTはシリコンの製造会社でありソフトウェアは開発しないということであった。1992年3月7日の新聞記事を見るとIan
Barronの怒りが紙面に現れている。
Inmos
is the victim of bad takeovers, poor investment and major technical problems,
according to the firm's co-founder. And with the 450-job hi-tech Newport
plant facing closure, founder Ian Barron claims a Japanese firm became a
multi-national by making an Inmos chip when lack of cash stopped the British
company producing it themselves.
Inmos,
launched 14 years ago, is threatened with closure because it needs investment to
update production. The firm is asking the government to help it put
together a £50m
rescue package.
But, according to this week's The Engineer, the Conservatives
have been reluctant to pump money into the firm, which was set up as a long-term
investment to boost Britain's computer innovation.
Professor
Barron said in The Engineer that Inmos was a victim of its own success,
developing new equipment but not having the resources to pursue them.
彼はこの後Inmosを去りImperial Collegeに行った。
David Mayはこの後PACTと呼ばれるESPRITの研究機関をBristol大学の近くに設立しChameleonプロジェクト(64bit
CPU)を指揮する。その後又STに帰ってくるが結局社内のマネージメントに嫌気をさし1995年(?)にSTを去りBristol大学
の教授に迎えられた。
結局行く場を失ったoccamのコンパイラーは有償で外部に公開することにな
りました。これを聞きつけたKent大学のPeter
Welch教授は早速Occam
Re-Targetting Systems Workshopを1992/09/15に開催した。筆者もこの会議に駆けつけた。参加者は80人程であった。InmosからはGeoff
Barrett, Andy Sturgesがoccamコンパイラーの構造を説明した。occamの今後のあり方についての概要をご覧になって下さい。
この会議のあとKent大学ではoccamをTransputer以外の異なったプラットフォームに移植するプロジェクトをスタートさせた。これは後になって考えると大変正しい判断であったと思っている。さもなければ英国のコンピュータ技術はSTによってごみ箱に捨てられるだけであったであろうと想像できる。
Peter
Welchは以前よく「occam/Transputerは産業革命以来の偉大な発明だ」と意気込んでいました。その意味はKRoC(Kent
Re-targeted occam Compiler)プロジェクトの成果をみればよく分かります。InmosにいたMichel
Pooleはその後KRoCプロジェクトに参加しInmos
occam
Toolsetをもとにoccamは幾つかのマイクロプロセッサーに移植されています。
occam2に関する本は数多くありますがBuckingham大学のJohn
Galletlyの本が分かりやすいです。これにはoccam2.1(Record)が含まれています。日本語版では初版本が日刊工業新聞から翻訳しました。
(山本正樹、丸山公雄 訳 並列処理言語occam2)
occam2についてのプログラミング言語の紹介はGeraint
Jonesの書いた本の内容がWeb上に公開されています。さらに簡潔にまとめられた資料がBucknell大学のDaniel
C. Hyde氏によって用意されています。
(occam2 2nd Edition, John Galletly,
UCL Press, ISBN 1-85728-362-7)
occamのTutorial資料はFred
Barnesがまとめたサイトがあります。簡単ですがアイデアを
得るにはこれで十分です。彼はKent大学の学生でKRoC
occamコンパイラーの保守作業をしています。
occam/Transputer/1355モデルが継承された技術