研究概要 |
現在単一プロセッサ上で稼動している言語ABCL/1の処理系を検討した結果,複数プロセッサ上で効率よくプログラムが実行されるには,言語仕様の若干の手直しが望まれることが明らかになった.このため,現在の言語でオブジェクト間で転送されるメッセージの中に含まれるデータとして,ポインタを使うことを禁止するとともに,プロセッサ間でオブジェクトを移動されるための直接あるいは間接の指定をプログラマがプログラム中に書き込めるように言語仕様を変更することとなった.この新しい言語仕様のもとで,処理系は仮想機械を仮定した方式で作成することにした.仮想機械の設計を完了し,この仮想機械での命令シーケンスに,ABCL〓がプログラムがコニパイルされるわけである.現在このコンパイラが完成し,デバッグ等をはじめたところである.残る問題点は,分数型のガーベジ・コレクションをどのようにするかという点である.これは次年度に継続した研究課題として考えている.一方,デバッグ方式の研究は,オブジェクトをグループにまとめて,そのグループの中からメッセージが外に飛び出すまでの,メッセージのやりとりを,コーザが種々のレベルで追跡できることを目的に考案した. 「オブジェクト・グループ」の概念は,ひとまとまりの仕事を協力して行う一群のオブジェクトをまとめたもので,これらのオブジェクトの間でのメッセージのやりとりが,かなり頻繁になるため,このグループの単位に合せて,プロセッサーを割当るのが有効であることが,わかってきたのは,大きな収穫であった.なほ,この「オブジェクト・グループ」に基づくデバック方式の研究は,海外の学会に投稿し出版許可が出た.
|