組込み用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-28
論文 | ランダム
- 調査研究 地下空間利用の現状とその展開
- 東京圏の鉄道整備--鉄道建設公団のあゆみ,諸制度とともに (特集 東京圏鉄道網整備の展開)
- 地下空間利用の現状と有効性
- 冠動脈内心電図より検討した陰性U波の出現様式について
- バイオセンサ--生体とエレクトロニクス (センサ技術小特集)