著者
多賀 奈由太 関口 龍郎 米澤 明憲
出版者
一般社団法人情報処理学会
雑誌
情報処理学会論文誌プログラミング(PRO) (ISSN:18827802)
巻号頁・発行日
vol.41, no.2, pp.41-53, 2000-03-15
被引用文献数
1

我々は,C++言語を拡張してC++の例外機構を利用した,通常の実行効率をほとんど損わないマイグレーション機能を実現した.通常の実行効率とは,スレッドマイグレーションの処理以外の部分の実行効率のことである.従来の多くのモーバイル言語システムでは,通常の実行効率を犠牲にしてスレッドマイグレーション機能を実装している.我々の方式はソースコード変換に基づいており多くのコンパイラとプラットフォームに適用することができる.対象となる言語は,マーシャリングができるようにポインタやunionの取り扱いなどが制限されている,我々のマイグレーション方式は透明である.つまり,場所に依存する操作以外の部分のプログラムの意味はスレッドマイグレーションの前後で変化しない.我々は複数のアプリケーションについてベンチマークを実行し,オーバヘッドを分析し,実行効率がほとんど損われないことを確かめた.We present a mobile C++ language system in which normal execution efficiency is hardly degraded, where normal execution efficiency means the execution efficiency of non-migration efficiency. In existing mobile programming languages, the normal execution efficiency is usually degraded due to the implementation of thread migration. Our implementation is based on source-code-level transformation, exploiting the C++ exception handling mechanism. Thus our thread migration mechanism can be applied to many platforms and it can be combined with many compilers. Compared to the standard C++, use of pointers and unions is restricted in our language so that data on the heap can be migrated to a remote host. Our migration scheme is transparent, namely the semantics of a single thread except location-dependent operations does not change with thread migration. We measured execution performance for several application programs, analyzed their overheads, and verified that the normal execution efficiency was hardly degraded.