ペル・ブリンチ・ハンセン | |
|---|---|
![]() 1999年のペル・ブリンチ・ハンセン | |
| 生まれる | 1938年11月13日 |
| 死亡 | 2007年7月31日(68歳) |
| 母校 | デンマーク工科大学 |
| 知られている | |
| 配偶者 | ミレーナ |
| 子供たち | 2 |
| 受賞歴 |
|
| 科学者としてのキャリア | |
| フィールド | コンピュータサイエンス |
| 機関 | |
| Webサイト | brinch-hansen.net |
ペル・ブリンチ・ハンセン(1938年11月13日 - 2007年7月31日)は、オペレーティングシステム、並行プログラミング、並列および分散コンピューティングの研究で知られるデンマーク系アメリカ人の コンピュータ科学者でした。
バイオグラフィー
幼少期と教育

ペル・ブリンチ・ハンセンは、デンマークのコペンハーゲンに囲まれた飛び地、フレゼレクスベアで生まれた。父のヨルゲン・ブリンチ・ハンセンは土木技師として働き、土質力学の第一人者となり、後にデンマーク工科大学の教授となった。母のエルゼベス・ブリンチ・ハンセン(旧姓リング)は、デンマークの作曲家オルフ・リングの娘で、結婚する前は美容師として働いていた。[1]
ブリンチ・ハンセンはサンクト・ヨルゲンス・ギムナジウムに通い、その後デンマーク工科大学で電気工学を学び、そこで「まだ開拓段階にある」分野を追求した。「ある科目が教えられているのであれば、根本的な貢献をするにはおそらくすでに遅すぎる」という信念からだった。[1] [2]イギリスのIBMハースリー研究所で7週間の学生インターンシップを終えた後、彼はコンピューターにキャリアを捧げることを決意した。当初はコンピューターの構築に焦点を当てていたが、プログラマーの視点からコンピューターの構成を説明したIBM 7030 Stretchプロジェクトに関する本を読んだことで[3]、コンピューターアーキテクトになることに関心が集中した。[1]
レグネセントラーレン

1963年に電子工学の修士号を取得した後、ブリンチ・ハンセンはデンマーク技術科学アカデミー(Akademiet for de Tekniske Videnskaber)傘下の研究機関であるRegnecentralenに就職し、ピーター・ナウアとヨーン・イェンセンが率いるコンパイラグループで働きました。[2]そこで彼が取り組んだ最初の重要なプロジェクトは、シーメンス3003コンピュータ用のCOBOLコンパイラのパーサーを作成することでした。
その後、彼はコンパイルされたCOBOLプログラムの実行中に使用されるファイルシステムを作成し、後に次のように述べています。 [1]
今となっては、私がプログラミングしたのは本当に小さなオペレーティング システムだったと理解しています。しかし、1960 年代半ばには、言語実装とオペレーティング システムの間の境界線はまだ明確に理解されていませんでした。
1966 年、ブリンチ・ハンセンは、当時株主のいる会社であったレグネセントラレンのヘニング・イサクソンのハードウェア グループに移りました。彼はピーター・クラフトとともに、レグネセントラレンの 3 番目のコンピュータである RC 4000 のコンピュータアーキテクチャと命令セットを定義し、ハードウェア記述言語としてALGOL 60 を使用して正式な仕様を作成しました。
マルチプログラミングの経験がなかった彼は、エドガー・ダイクストラがセマフォを使ったプロセス同期を理解するために送ってくれた『協調的逐次プロセス』 [4] のコピーを使い、肥料工場の管理に使用するための特殊なRC 4000リアルタイムモニターを実装した。ピーター・クラフトとまだ10代だったチャールズ・シモニは、pコードインタープリタとpコードにコンパイルされるデータロギングタスクプログラムを書いた。[1]
1967 年の夏、ブリンチ・ハンセンはレグネセントラーレンのハードウェア グループを離れ、RC 4000ソフトウェア開発の責任者となり、ヨルン・ジェンセン、ピーター・クラフト、ソレン・ラウセンを含むチームを率いて、汎用RC 4000 マルチプログラミング システムの定義に取り組みました。その目標は、 RC 4000 のインストールごとにカスタムのリアルタイム制御オペレーティング システムを開発するのを避け、バッチ処理とタイムシェアリングもサポートすることでした。[1]結果として得られたシステムは完全なオペレーティング システムではなく、さまざまな目的のオペレーティング システムを構築できるメカニズムを提供する小さなカーネルでした。 [5] 1969 年の春までに、十分に文書化された信頼性の高いバージョンの RC 4000 マルチプログラミング システムが稼働していました。[1]
カーネギーメロン大学
1970 年後半、ブリンチ・ハンセンはピッツバーグに移り、アラン・ペルリスの招きに応じてカーネギーメロン大学のコンピュータサイエンス学部に研究員として赴き、オペレーティングシステムの原理に関する最初の体系的な教科書を執筆した。 [1] [2]この間、1971 年にマルクトオーバードルフで開催されたサマースクールとベルファストで開催されたシンポジウムで、ブリンチ・ハンセン、トニー・ホーア、ダイクストラは、モニターの概念へと発展するアイデアについて議論を始めた。1972 年の春、Ole-Johan DahlとKristen NygaardがSimula 67で考案したクラスの概念について読んだ後、ブリンチ・ハンセンは、共有クラスを使用した最初のモニター表記法を提案したリソース保護に関する章を追加して教科書を完成させた。[6] 1973 年には、オペレーティングシステムの原理が出版され、オペレーティングシステムに関する最初の包括的な教科書となった。[7]
カリフォルニア工科大学

1972 年 7 月、ブリンチ・ハンセンはカリフォルニア工科大学(Caltech) のコンピューターサイエンスの准教授に就任し、並行プロセスとモニターを備えたプログラミング言語の定義に取り組み始めました。1974 年 4 月、彼はConcurrent Pascalに関する技術レポートを配布しました。[1] [2]ブリンチ・ハンセンの博士課程の学生であるアル・ハートマンが書いたPDP 11/45用のConcurrent Pascalコンパイラは、1975 年 1 月にリリースされました。[8]その後、ブリンチ・ハンセンは、言語を評価するために Concurrent Pascal でモデルオペレーティングシステムを書き始めました。1975 年 5 月、彼は Concurrent Pascal プログラムの開発用のシングルユーザーオペレーティングシステムである Solo を完成させました。次に、彼はオリジナルの RC 4000 リアルタイムスケジューラを Concurrent Pascal で書き直しました。これには 3 日間かかり、体系的にテストするのに 3 時間のマシン時間を要しました。[6]
カリフォルニア工科大学のコンピュータサイエンス学部がプログラミングからコンピュータエンジニアリングへと重点を移したとき、ブリンチ・ハンセンは終身在職権を求めるのではなく、去ることを決意した。[1]
南カリフォルニア大学
1976年、ブリンチ・ハンセンは、家族がアルタデナの自宅に留まれるよう、次の勤務先として南カリフォルニア大学(USC) を選びました。教授として教職員に加わり、新設されたコンピュータサイエンス学部の初代学部長となったブリンチは、一流の学部を築くために一流の教授を発掘して引き入れる取り組みを主導しました。1980年までに、USCのコンピュータサイエンス学部は、全米研究会議によって米国のトップ10にランクされました。[1]
USC在学中、ブリンチ・ハンセンはConcurrent Pascalを使ったオペレーティングシステムの開発を基に、 2冊目の著書『並行プログラムのアーキテクチャ』を執筆した。 [2] 1977年に出版されたこの本は、並行プログラミングに関する最初の本だった。[9] 1978年、ブリンチ・ハンセンは『並行プログラムのアーキテクチャ』に記された業績により、デンマークの工学および技術科学における最高の学位であるドクター・テクニクスを授与された最初のコンピュータ科学者となった。 [10] 1978年後半、ブリンチ・ハンセンは分散プロセス言語の概念を発表し、マイクロコンピュータネットワーク上で実行されるプロセスを同期するためにリモートプロシージャコールを使用することを提案した。[11]
1978年、同じくMostek社のLJ Sevins氏とSteve Goings氏がUSCのBrinch Hansen氏を訪問し、低コストのマルチプロセッサアーキテクチャの概要を説明しました。Mostek社は、Brinch Hansen氏をコンサルタントとして迎え、そのようなマルチプロセッサを実装するプロジェクトを開始しました。 [1] Brinch Hansen氏は、このプロジェクトのために新しい並行プログラミング言語Edisonを開発しました。[12] RC 4000プロジェクトと同様に、Edisonはハードウェアの正式な仕様言語としても使用されました。Mostek社は最初の4ノードマルチプロセッサを動作させ、Brinch Hansen氏はPDP 11/55上でポータブルなEdisonコンパイラを作成しましたが、その後まもなくUnited Technologies社がMostek社を買収し[13]、プロジェクトは中止されました。1982年、Brinch Hansen氏はEdisonシステムをIBMパーソナルコンピュータ(PC)に移行し、3冊目の著書Programming a Personal Computerを出版しました。[14]
1982年、ブリンチ・ハンセンは南カリフォルニア大学で最初のヘンリー・サルバトリ・コンピュータサイエンス教授に任命されました。[1]
コペンハーゲン大学
1984年、14年間の海外生活を経てデンマークへのホームシックを感じたブリンチ・ハンセンは、USCを離れ、コペンハーゲン大学のデータ論教授に就任した。[1] 1985年、彼は電気電子技術者協会(IEEE)のフェローに選出された。 [15] 1985年後半、彼が自身のコンパイラ講座で使用した4冊目の著書「Brinch Hansen on Pascal Compilers」が出版された。 [16]
デンマークのGN Elmi社向けにマルチコンピュータオペレーティングシステムを設計していたとき、Brinch Hansen氏は、HoareのCSPのメッセージパッシングパラダイムを活用した新しい言語が必要だと結論付けました。[1]結果として生まれた言語Joyceは、並列再帰を導入することでCSPの主な制限を取り除きました。[17] Brinch Hansen氏はIBM PC上で移植可能な実装を開発しました。[1]
シラキュース大学

ブリンチ・ハンセンは、自分も家族もデンマークに居心地の悪さを感じ、米国に帰国することを決意したが、移民の身分上、すぐに帰国する必要があることがわかった。ブリンチ・ハンセンはシラキュース大学のジョン・レイノルズに連絡を取り、1987年に特別教授として同大学の教員に加わった。[1]
学生の Rangachari Anand と共同で作業していた Joyce は、SU の Northeast Parallel Architectures Center にあるEncore Multimax 320マルチプロセッサに移りました。しかし、マルチプロセッサのスケーリングの限界を認識していた Brinch Hansen は、さらなる作業に適したマルチコンピュータを探しました。1989 年にMeiko Computing Surface を入手した彼は、学習演習としてHouseholder 法(リダクション) とN体シミュレーションの並列プログラムを開発して科学的アプリケーションの実験を開始し、両方のプログラムがほぼ同じ制御構造を持っていることに驚きました。両方とも「全ペア パラダイム」に適合するという結論に達した彼は、次に「プログラミング パラダイム」または「汎用プログラム」(後に「デザイン パターン」として広く知られるようになった) と名付けた再利用可能な並列アルゴリズム構造の調査に重点を置きました。[1] 1995年にブリンチ・ハンセンの5冊目の著書『計算科学の研究:並列プログラミングパラダイム』が出版され、[18]並列アルゴリズム用に彼が作成した完全に実装された出版言語であるSuperPascalで書き直されたプログラムが掲載されました。[19]
昨年
晩年、ブリンチ・ハンセンは、自身の最も重要な論文をまとめた『The Search for Simplicity』(1996年)[20]、非専攻者向けプログラミングコースのテキスト『Programming for Everyone in Java』(1999年)[21] 、オペレーティングシステムの進化をまとめた『Classic Operating Systems: From Batch Processing to Distributed Systems』(2001年)[22]、並行プログラミングの進化をまとめた『The Origin of Concurrent Programming: From Semaphores to Remote Procedure Calls』(2002年)[23]を出版した。彼は2004年に自費出版した『A Programmer's Story: The Life of a Computer Pioneer』という回顧録を自身のウェブサイトで出版した。[1]
2002年、ブリンチ・ハンセンは「RC 4000マルチプログラミングシステム、モニター、Concurrent Pascalの開発に代表されるオペレーティングシステムと並行プログラミングの先駆的開発」によりIEEEコンピュータパイオニア賞を受賞した。 [15]
2007年7月31日、ブリンチ・ハンセンは末期癌と診断されて間もなく亡くなった。[24]
私生活
ブリンチ・ハンセンは1962年にユーゴスラビアへの修学旅行で妻のミレーナ(旧姓フラスター)と出会った。2人は1965年に結婚し、娘メッテと息子トーマスの2人の子供をもうけた。[1]
科学への貢献と影響
50 年にわたるキャリアの中で、ブリンチ・ハンセンはオペレーティング システム、並行コンピューティング、並列および分散コンピューティングの分野で独創的な貢献を果たし、これらの分野の発展を形作り、アドホックな手法から体系的なエンジニアリング分野へと発展させる上で影響力を持ちました。[15]彼の研究の影響は、彼の「シンプルさへの飽くなき探求」[15]、明快さへのこだわり、論文を発表する前に何度も書き直したこと、[20]、「業界で最も優れた説明者の 1 人」になったこと、[25]、そして実用的なシステムで概念をテストすることへの献身によって増幅されました。ブリンチ・ハンセンは、彼が開発した新しい概念を実用的なシステムに実装し、配布しました。
コンピュータ科学者が、実際にそれが良いものかどうかをテストせずに提案することは珍しくありません。モニターの提案を 3 日間で書き上げ、それを 3 年間かけて実装した経験から、この誘惑はよく理解できます。また、大学教授が資金と認知を迅速に得るよう強いプレッシャーにさらされていることに対する人間的な反応である可能性もあります。しかし、エンジニアリングにおいて重要なのは、それが機能するかどうか (「機能するかもしれない」や「機能したらいいのに」ではなく) だけであることを忘れてはなりません。[26]
オペレーティングシステム
RC 4000マルチプログラミングシステムは、現在では標準となっているオペレーティングシステムカーネルの概念と、オペレーティングシステム設計におけるメカニズムとポリシーの分離を導入しました。現代のマイクロカーネルアーキテクチャは、RC 4000の拡張可能な核アーキテクチャにそのルーツをたどります。 [15] RC 4000の後、マイクロカーネルのパフォーマンスの向上は、オペレーティングシステム研究の主要テーマでした。
Brinch Hansen の著書「Operating System Principles」は、オペレーティングシステムに関する最初の包括的な教科書でした。最終的には 6 つの言語 (英語、日本語、ドイツ語、チェコ語、ポーランド語、セルビア語、クロアチア語) で出版され、[1]数十年にわたって印刷され、そこで説明されている RC 4000 システムが時代遅れになった後も何年も印刷され続けました。初版からほぼ 20 年後の 1990 年に、PJ Plauger がこの本をレビューし、次のように述べています。
この本はひどく時代遅れです。RC4000 のオペレーティング システム アルゴリズムの多くについて説明しています。RC4000 は、今日の基準では遅く、小さく、周辺機器が不足しています。アルゴリズムは Pascal のサブセットで提供されています。なぜわざわざ?答えは、Brinch Hansen がこの業界で最高の説明者の 1 人だからです。彼は物事を明快かつ的確に説明しています。彼は例の背後にある一般原則を理解していますが、不必要な抽象化は避けています。何年も経った今でも、彼の著作を読むのは楽しいものです。[25]
2005年、ACM ( Association for Computing Machinery ) のメンバーは、ACM デジタル ライブラリに追加する絶版の古典書籍を選択するアンケートで、Operating System Principles をトップ 25 の古典書籍に選出しました。Operating System Principles はアンケートで 15 位にランクされ、投票の 8.8% に登場しました。[27]現在、ACM デジタル ライブラリから入手できます。
Brinch Hansen は Concurrent Pascal を使用して、高水準言語でオペレーティングシステムを完全に実装することが可能であり、これにより開発の労力が 1 ~ 2 桁削減されることを実証しました。[28]さらに、オペレーティングシステム全体を公開して、その全体を理解できるようになりました。Brinch Hansen はThe Architecture of Concurrent Programsでまさにそれを実行し、Roy Maddux とHarlan Mills は次のように宣言しました。
この本の第 2 部は実に素晴らしい。ここではオペレーティング システム全体が可視化されており、プログラムのすべての行を精査できるようになっている。隠された謎はなく、このような広範な例を研究した後、読者は同様の作業に取り組むことができ、システムを自由に変更できると感じる。これほど詳細に示され、変更しやすいオペレーティング システムを見たことはかつてなかった。[29]
並行プログラミング
ブリンチ・ハンセンとホーアはモニターの概念を開発した。ブリンチ・ハンセンは、Simula 67のクラス概念を採用した最初のモニター表記法を発表し、 [7]キューイング機構を発明した。[30]ホーアはプロセス再開のルールを改良した。[31]ブリンチ・ハンセンは、Concurrent Pascalでモニターの最初の実装を作成した。[6] 1990年までに、Simone、Modula、CSP/k、CCNPascal、PLY、Pascal Plus、Mesa、SB-Mod、Concurrent Euclid、Pascalc、Concurrent C、Emerald、Real-time Euclid、Pascal-FC、Turing Plus、Predulaなど、12を超えるモニターベースの言語が作成されていた。[6]
並行性 Pascal は、並行性プログラミング言語としては初の言語でした。[29]並行性プログラミング専用に開発された最初の言語であり、さらに重要なことに、並行性のための安全な[32]高水準の機能を組み込むことが可能であることを実証した最初の言語です。この言語では、プロセスが互いに独立な変数セットのみにアクセスし、時間依存的に干渉しないことをシステムが保証できます。[23] Hoare はこれを「この分野における最高の学術研究の傑出した例」と評しました。[33]
Concurrent Pascal と Solo オペレーティングシステムのソースコードと移植可能なコードは、21 か国以上の少なくとも 75 の企業と 100 の大学に配布され、その結果、産業界と学術界の両方で広く採用、移植、適応されました。[6] Greg Andrews は、Concurrent Pascal とモニターが「その後のほとんどの並行言語の提案に大きな影響を与えた」と述べています。[6]
Brinch Hansenの「並行プログラムアーキテクチャ」は並行プログラミングに関する最初の本であり、[29]最終的には3つの言語(英語、日本語、ドイツ語)で出版されました。[1]出版から12年以上経った後、PJ Plaugerは次のように述べています。
確かに、過去 12 年間で改善は行われてきました。同期アルゴリズムは改善され、並行制御を備えたより洗練された (必ずしも優れているとは限りませんが) 言語が生まれました。しかし、この本よりも優れた並行プログラミングの概要は見つかりません。少なくとも私は見つけていません。[25]
2005年、ACMのメンバーは『The Architecture of Concurrent Programs』をトップ25の古典書籍に選出し、調査では18位にランクされ、投票の8%に登場しました。[27]現在、ACMデジタルライブラリから入手できます。
分散コンピューティングとリモートプロシージャコール
現代のオペレーティングシステムで使用されているリモートプロシージャコールは、プロセス同期に要求応答通信プロトコルを使用したRC 4000マルチプログラミングシステム[15]にその起源を遡ります。 [34]
1978年に発表された分散プロセスに関する論文で、ブリンチ・ハンセンはプロセス間の手続き呼び出しからなる外部要求に基づいた分散コンピューティングのための言語を提案した。[35]これは後にオペレーティングシステムのコンテキストでリモートプロシージャコールとして知られるようになった。[36]
その後、ブリンチ・ハンセンは、ホアのCSPメッセージパッシングパラダイムを並列再帰で拡張した2つの言語を開発し、[17] [19]、それを効率的に実装する方法を示しました。[37]
栄誉と賞
- デンマーク工科大学、並行プログラムのアーキテクチャーで技術博士号(1978年)
- 1982年、南カリフォルニア大学、ヘンリー・サルバトリ・コンピュータサイエンス教授
- IEEEフェロー、1985年
- 1987年、シラキュース大学名誉教授
- シラキュース大学学長賞、1989年
- IEEE コンピュータパイオニア賞、RC 4000 マルチプログラミングシステム、モニター、Concurrent Pascal などのオペレーティングシステムと並行プログラミングの先駆的開発に対して、2002 年
プログラミング言語
- コンカレントパスカル(1975)
- 分散プロセス (1978)
- エジソン(1981)
- ジョイス(1987)
- スーパーパスカル(1993)
引用
- 文章を書くことは、簡潔さを厳しく問われるテストです。理解できないアイデアについて説得力のある文章を書くことは不可能なのです。[20]
- プログラミングとは、明快な文章でエッセイを書き、それを実行可能にする芸術である[9]
出版物
- 書籍
- オペレーティングシステムの原理(1973 年、ISBN 0-13-637843-9 )
- 並行プログラムのアーキテクチャ(1977、ISBN 0-13-044628-9 )
- パーソナルコンピュータプログラミング(1983年、ISBN 0-13-730267-3)
- Brinch Hansen の Pascal コンパイラに関する解説(1985 年、ISBN 0-13-083098-4 )
- 計算科学研究: 並列プログラミングパラダイム(1995, ISBN 0-13-439324-4 )
- シンプルさの探求: 並列プログラミングに関するエッセイ(1996 年、ISBN 0-81-867566-7 )
- 誰でもできるJavaプログラミング(1999年、ISBN 0-387-98683-9)
- クラシック オペレーティング システム: バッチ処理から分散システムまで(編集者、2001 年、ISBN 0-387-95113-X )
- 並行プログラミングの起源: セマフォからリモート プロシージャ コールまで(編集者、2002 年、ISBN 0-387-95401-5 )
- プログラマーの物語: コンピュータのパイオニアの人生(2004 年、http://brinch-hansen.net/ で入手可能)
- 選ばれた論文
- Siemens 3003 用 Cobol コンパイラ、BIT 6、1 (1966)、1–23 (Roger House と共著)
- RC 4000 コンピュータの設計上の考慮事項、Regnecentralen、コペンハーゲン、デンマーク (1966) (Peter Kraft と共著)
- RC 4000コンピュータの論理構造、BIT 7、3(1967)、191-199
- Pulawy の RC 4000 リアルタイム制御システム、BIT 7、4 (1967)、279–288
- RC 4000 ソフトウェア: マルチプログラミング システム、パート I 全般の説明、Regnecentralen、コペンハーゲン、デンマーク (1969) 13–52
- RC 4000 ソフトウェア: マルチプログラミング システム (完全版)、Regnecentralen、コペンハーゲン、デンマーク (1969)
- RC 4000 コンピュータ: リファレンス マニュアル、Regnecentralen、コペンハーゲン、デンマーク (1969)
- マルチプログラミングシステムの核、Communications of the ACM 13、4(1970年4月)、238-242
- オペレーティング システムテクニックにおけるオペレーティング システム原理のコース概要、1971 年 8 月から 9 月にかけて北アイルランドのベルファストにあるクイーンズ大学で開催されたセミナーの議事録。CAR Hoare および RH Perrott 編。Academic Press、ニューヨーク (1972)、29 ~ 36 ページ
- 構造化マルチプログラミング、Communications of the ACM 15、7 (1972 年 7 月)、574–578
- 共有クラス、オペレーティングシステムの原則、セクション 7.2 クラスの概念、Prentice Hall、Englewood Cliffs、NJ、(1973 年 7 月)、226–232
- マルチプログラミングシステムのテスト、ソフトウェア:実践と経験3、2(4月〜6月)、145〜150
- プログラミング言語 Concurrent Pascal、IEEE Transactions on Software Engineering 1, 2 (1975 年 6 月)、199–207
- Solo オペレーティングシステム: 並行 Pascal プログラム、ソフトウェア — 実践と経験6、2 (1976 年 4 月 - 6 月)、141 - 149
- Solo オペレーティングシステム: プロセス、モニター、クラス、ソフトウェア — 実践と経験6、2 (1976 年 4 月 - 6 月)、165 - 200
- 『The Programmer as a Young Dog』、『Programmøren som hvalp』の著者による英語翻訳、In Niels Ivar Bech—en epoke i edbudviklingen i Danmark、P. Sveistrup、P. Naur、HB Hansen、および C. Gram 編、デンマーク語)、データ、デンマーク、コペンハーゲン、(1976)、65–68
- モジュラー並行プログラミングの経験、IEEE Transactions on Software Engineering 3, 2 (1977 年 3 月)、156–159
- 設計原則、『並行プログラムのアーキテクチャ』、第 1 章「設計原則」、Prentice Hall、Englewood Cliffs、NJ、(1977 年 7 月)、3 ~ 14 ページ
- ネットワーク: マルチプロセッサ プログラム、IEEE Transactions on Software Engineering 4, 3 (1978 年 5 月)、194–199
- 分散プロセス: 並行プログラミングの概念、Communications of the ACM 21、11 (1978 年 11 月)、934–941
- モニターの再現可能なテスト、ソフトウェア:実践と経験8、6(11月-12月)、721-729
- 並行プログラミングに関する基調講演、IEEE コンピュータソフトウェア & アプリケーション会議の基調講演、イリノイ州シカゴ、1978 年 11 月、Computer 12、5 (1979 年 5 月)、50–56 ページ
- エジソンのデザイン、ソフトウェア:実践と経験11、4(1981年4月)、363-396
- ジョイス—分散システムのためのプログラミング言語、ソフトウェア—実践と経験17、1(1987年1月)、29–50
- ジョイス言語レポート、ソフトウェア:実践と経験19、6(1989年6月)、553-578
- ジョイスのマルチプロセッサ実装、ソフトウェア:実践と経験19、6(1989年6月)、579-592
- 並列プログラミングの性質、シラキュース大学開校シンポジウム、ニューヨーク州シラキュース、1989年3月、自然および人工並列計算、MAアービブおよびJAロビンソン編、MITプレス、マサチューセッツ州ケンブリッジ、(1990)、31-46ページ
- 線形探索の再発見、構造化プログラミング11、(1990)、53-55
- 線形方程式のハウスホルダー縮約、ACMコンピューティング調査24、2(1992年6月)、185–194
- モニターと並行 Pascal: 個人的な歴史、第 2 回 ACM プログラミング言語の歴史に関する会議、マサチューセッツ州ケンブリッジ、1993 年 4 月、SIGPLAN 通知28、3 (1993 年 3 月)、1–35 ページ
- 計算科学のためのモデルプログラム: マルチコンピュータ向けプログラミング方法論、並行性—実践と経験5、5 (1993 年 8 月)、407–423
- 並列セルオートマトン:計算科学のためのモデルプログラム、並行性—実践と経験5、5(1993年8月)、425–448
- 多重長除算の再考:地雷原の旅、ソフトウェア:実践と経験24、(1994年6月)、579-601
- SuperPascal—並列科学計算のための出版言語、Concurrency—Practice and Experience 6, 5 (1994 年 8 月)、461–483
- SuperPascal における干渉制御 - ブロック構造言語並列言語、コンピュータジャーナル37、5 (1994)、399–406
- 効率的な並列再帰、SIGPLAN Notices 30、12(1995年12月)、9–16
- 全ペアパイプライン、計算科学研究、第 4 章: 全ペアパイプライン。Prentice Hall、ニュージャージー州エングルウッド クリフス、(1995 年 3 月)、73–89 ページ
- パイプラインのバランス調整、計算科学研究、第 5 章: パイプラインのバランス調整。Prentice Hall、ニュージャージー州エングルウッド クリフス、(1995 年 3 月)、90–100 ページ
- Java の安全でない並列処理、SIGPLAN Notices 34、4 (1999 年 4 月)、38–45
- オペレーティング システムの進化、Classic Operating Systems: From Batch Processing to Distributed Systems、P. Brinch Hansen 編、Springer-Verlag、ニューヨーク (2001)
- 並行プログラミングの発明、『並行プログラミングの起源: セマフォからリモート プロシージャ コールまで』、P. Brinch Hansen 編、Springer-Verlag、ニューヨーク (2002)
参照
参考文献
- ^ abcdefghijklmnopqrstu v Brinch Hansen, Per (2004). プログラマーの物語: コンピュータのパイオニアの人生。
- ^ abcde Haigh, Thomas (2003 年 2 月 19 日). 「Per Brinch Hansen」(PDF) . IEEE Annals of the History of Computing . 25 : 80–83. doi :10.1109/MAHC.2003.1179888. S2CID 2279629.
- ^ Buchholz, Werner (1962). コンピュータシステムの計画: プロジェクトストレッチ(PDF) 。 2017年4月3日時点のオリジナル(PDF)からアーカイブ。2015年12月14日閲覧。
- ^ Dijkstra, Edsger (1965 年 9 月). 「協調的シーケンシャルプロセス」.オランダ、アイントホーフェン工科大学.
- ^ Brinch Hansen, Per (1970 年 4 月). 「マルチプログラミング システムの核」(PDF) . Communications of the ACM . 13 (4): 238–241. CiteSeerX 10.1.1.105.4204 . doi :10.1145/362258.362278. S2CID 9414037.
- ^ abcdef Brinch Hansen, Per (1993 年 4 月)。「モニターと並行 Pascal: 個人的な歴史」(PDF)。第 2 回 ACM プログラミング言語の歴史に関する会議。
- ^ ab Brinch Hansen, Per (1973)。オペレーティングシステムの原則。Prentice Hall。ISBN 978-0-13-637843-3。
- ^ Hartmann, Alfred C. (1977).ミニコンピュータ用並列 Pascal コンパイラ。Lecture Notes in Computer Science。第 50 巻。ハイデルベルク、ドイツ: Springer-Verlag Lecture Notes in Computer Science。doi : 10.1007 /3-540-08240-9。ISBN 978-3-540-08240-8.S2CID 2960929 。
- ^ ab Brinch Hansen, Per (1977).並行プログラムのアーキテクチャ. Prentice Hall. ISBN 978-0-13-044628-2。
- ^ 「The Classical Degree of Doctor Technices (Dr.techn.) – DTU」デンマーク工科大学。 2015年12月14日閲覧。
- ^ Brinch Hansen, Per (1978 年 11 月). 「分散プロセス: 並行プログラミングの概念」(PDF) . Communications of the ACM . 21 (11): 934–941. CiteSeerX 10.1.1.107.3108 . doi :10.1145/359642.359651. S2CID 11610744.
- ^ Brinch Hansen, Per (1981 年 4 月)。「エジソンのデザイン」(PDF)。ソフトウェア: 実践と経験。
- ^ Lueck, Thomas J. (1985年10月18日). 「大手チップメーカーMostekが閉鎖」.ニューヨーク・タイムズ. ISSN 0362-4331 . 2015年12月15日閲覧。
- ^ Brinch Hansen, Per (1982)。『パーソナルコンピュータのプログラミング』。Prentice Hall。ISBN 978-0-13-730267-3。
- ^ abcdef "Per Brinch Hansen". Computer.org . IEEE Computer Society . 2015年12月14日閲覧。
- ^ Brinch Hansen , Per (1985)。Pascalコンパイラに関する Brinch Hansen。Prentice Hall。ISBN 978-0-13-083098-2。
- ^ ab Brinch Hansen, Per (1987 年 1 月)。「Joyce - 分散システム向けプログラミング言語」(PDF)。ソフトウェア: 実践と経験。
- ^ Brinch Hansen, Per (1995).計算科学の研究: 並列プログラミングパラダイム. Prentice Hall. ISBN 978-0-13-439324-7。
- ^ ab Brinch Hansen, Per (1994 年 8 月)。「SuperPascal - 並列科学計算のための出版言語」(PDF)。並行性 - 実践と経験。
- ^ abc Brinch Hansen, Per (1996). The Search for Simplicity IEEE Computer Society Press. ISBN 978-0-81-867566-9。
- ^ ブリンチ・ハンセン、Per (1999)。Java による誰もが楽しめるプログラミング。スプリンガー・フェルラーク。ISBN 978-0-387-98683-8。
- ^ Brinch Hansen, Per (2001).クラシックオペレーティングシステム: バッチ処理から分散システムまで. Springer-Verlag. ISBN 978-0-387-95113-3。
- ^ ab Brinch Hansen, Per (2002).並行プログラミングの起源: セマフォからリモートプロシージャコールまで. Springer-Verlag. ISBN 978-0-387-95401-1。
- ^ 「LC Smith 氏、Per Brinch Hansen 教授の逝去を悼む」SU Engineering & Computer Science。2015 年 12 月 22 日時点のオリジナルよりアーカイブ。2015年12 月 14 日閲覧。
- ^ abc Plauger, PJ (1990 年 2 月)。「State of the Art」。組み込みシステムプログラミング。
- ^ Brinch Hansen, Per (1976 年 4 月)。「プログラム エンジニアリングにおけるイノベーションとトリビア (ゲスト編集)」。ソフトウェア: 実践と経験。
- ^ ab Patterson, David (2006 年 3 月). 「お気に入りの CS 書籍を復活させる」. Communications of the ACM . 49 (3): 31. doi :10.1145/1118178.1118213. S2CID 1537883.
- ^ Brinch Hansen, Per (1976 年 4 月)。「Solo オペレーティング システム: 並行 Pascal プログラム」(PDF)。ソフトウェア: 実践と経験。
- ^ abc Maddux, R. & Mills, H. (1979年5月). 「並行プログラムのアーキテクチャのレビュー」.コンピュータ. 12 (5): 102. doi :10.1109/mc.1979.1658762.
- ^ Brinch Hansen, Per (1972 年 7 月). 「構造化マルチプログラミング (招待論文)」. Communications of the ACM . 15 (7): 574–578. doi : 10.1145/361454.361473 . S2CID 14125530.
- ^ Hoare, CAR (1974 年 10 月). 「モニター: オペレーティング システムの構造化コンセプト」. Communications of the ACM . 17 (10): 549–557. CiteSeerX 10.1.1.24.6394 . doi :10.1145/355620.361161. S2CID 1005769.
- ^ Hoare, CAR (1974). 「プログラミング言語設計のヒント」。C . Bunyan 編『コンピュータシステムの信頼性』 505–534 ページ。
- ^ Hoare, CAR (1976)。「リアルタイムコマンドおよびコントロール用プログラミング言語の設計に関するヒント」。『リアルタイムソフトウェア:国際最新技術レポート』、JP Spencer 編、685–699 ページ。
- ^ ブリンチ・ハンセン、Per (1969)。 RC 4000 コンピュータ ソフトウェア: マルチプログラミング システム(PDF)。デンマーク、コペンハーゲン: Regnecentralen。
- ^ Brinch Hansen, Per (1978 年 11 月). 「分散プロセス: 並行プログラミングの概念」(PDF) . Communications of the ACM . 21 (11): 934–941. CiteSeerX 10.1.1.107.3108 . doi :10.1145/359642.359651. S2CID 11610744.
- ^ Andrews, Greg (1991).並行プログラミング: 原則と実践. カリフォルニア州レッドウッドシティ: Benjamin Cummings. ISBN 978-0-80-530086-4。
- ^ Brinch Hansen, Per (1995 年 12 月). 「効率的な並列再帰」(PDF) . SIGPLAN 通知.
外部リンク
- 公式ウェブサイト– 回想録、選りすぐりの論文、詳細な参考文献
- デンマークデータ博物館所蔵のペル・ブリンチ・ハンセン(1966-1970)の初期の論文

