組込み用Javaにおけるマルチスレッド機構の設計
スポンサーリンク
概要
- 論文の詳細を見る
近年, 組込みシステムでJavaを実装する環境を提供するようになってきた. Javaにはプラットフォームに依存しないというプログラムのポータビリティ, オブジェクト指向言語による再利用性, 言語仕様による安全性, 豊富なAPIが用意されていることによる開発の容易性, という長所があるからである. しかしながら, 組込みシステムでJavaを使用するには, リアルタイムJavaスレッドをどのように実現するか, が問題になる. 一般にJavaプログラムは, OSのタスクとして動作するJavaVMにより実行され, ガーベッジコレクト, 動的クラスロードなどの処理が行われる. このためJavaスレッドの挙動が予測しにくく, Javaスレッドおよびシステム全体のリアルタイム処理のためのデッドラインスケジューリングが困難になる. JavaスレッドもOSの提供する一つのリアルタイムなネイティブスレッドとして実装する方式もあるが, 複数のJavaVM間の通信や排他制御処理などでオーバヘッドが増加する問題がある. そこで, 本稿では, Javaスレッドの方式を複数考察した. 複数のJavaスレッドをOSの一つのタスクであるJavaVMで管理するグリーンスレッド方式, 一つのネイティブタスクを一つのJavaスレッドとするネイティブスレッド方式をWabaVM上にそれぞれ実装した. そして, このオーバヘッドを削減するために, カーネルを直接呼び出すダイレクトスレッド方式を提案し, 同様にWabaVM上に実装した. その結果, Javaスレッド生成, 破棄のオーバーヘッドを約38%削減できた.
- 2001-06-22
論文 | ランダム
- Three pulmonary resections for metastatic lung cancer from hepatocellular carcinoma
- Physics of ice core records (2)
- Biochemical studies on sulfate-reducing bacteria-12-Some properties of flavodoxin from Desulfovibrio vulgaris
- An Overview of Microphysical Processes in Ice Sheets : Toward Nanoglaciology
- ACCUMULATION OF INTER-α-TRYPSIN INHIBITOR CHAINS IN HUMAN BENIGN AND MALIGNANT LIPOMATOUS TUMORS.