ConcurrentSmalltalkのマルチプロセッサ上での実現

Parallel execution of ConcurrentSmalltalk on a Multiprocessor

Author:

森山 光一

Abstract:

An object-oriented computing is not new programing paradigm. It has been already widespread, because it is highly productive, reliable, easily maintained.

Smalltalk-80 is the most completed and perfected object-oriented programing language that was accomplished to consist of united objects all over the systems. ConcurrentSmalltalk(CST) has been developed as a concurrent object-oriented programming language which adds the notion of concurrency to Smalltalk-80.

While multi-processor, that is practicable, has been practical useful, as the result of parallel processing studys. Recently, low-cost multiprocessor with micro processor has been produced and become the center of public attention. But we don't have an excellent and superior programing language for parallel execution, because of synchronization, mutual exclusion and communication of processes.

CST didn't support concurrent execution as the hardware environment when it was developed. But concurrent objects have potential ability of parallel execution. So, we can make use of parallel programing with concurrent objects when they are on the multi-processor.

In this study, I will realize parallel execution of ConcurrentSmalltalk on multi-processor (called CST-M). With the development of CST-M, we can verify of validity on parallel execution of object-oriented concurrent programing language.

Abstract in Japanese:

オブジェクト指向プログラミングはもはや新しいプログラミングパラダイムで はない。生産性、保守性、信頼性の立場から注目され、広く普及してきている。

Smalltalk-80 はシステムを構成するすべての要素を統一的なオブジェ クトによって記述することに成功した完成度の高いオブジェクト指向言語であ る。これに並行構文とアトミックオブジェクト導入し、並行実行機能を実現し たのが並行オブジェクト指向言語 ConcurrentSmalltalk (CST) である。

計算機アーキテクチャの分野では並列処理の研究が進み、応用範囲の広いマル チプロセッサが実用段階に入ってきた。特に最近ではマイクロプロセッサを使っ た低価格のマルチプロセッサが商用化され、注目を集めている。しかし、並列 プログラミングには同期、排他制御、プロセス間通信などの問題を伴うため、 ハードウェアの能力を自然に引き出すことの出来る決定的なプログラミング言 語はなかった。

CST は開発当時のハードウェア環境から単一プロセッサのマシンによる疑似的 な並行動作しかサポートしていなかった。しかし、並行オブジェクトは潜在的 に高い並列実行能力を持っている。そこで、これらのマルチプロセッサ上で CST を並列処理できるようにすれば、並列プログラミングに並行オブジェクト の持つ高い並列記述性を生かすことが出来る。

本研究では CST をマルチプロセッサ上で並列処理を実現するために CST-M (ConcurrentSmalltalk on Multiprocessor) の設計と実装を行なう。CST-M の実現によって並行オブジェクト指向言語の並列実行の有効性を検証すること ができる。


How to get this paper?

To obtain this paper, please contact Koichi Moriyama(morimori@mt.cs.keio.ac.jp). Thank you very much for your attention.