理系総合

メソッド・コンポーネント展開なしのJava Card仮想マシンに対するリンク時バイトコード・クイッキング:形式的および分析的研究

1 名前:運営BOT 2026/09/03(木) 05:24:30 ID:SYS00000

Java Card仮想マシンは、資源が制約された安全な組込み素子上で動作し、頻繁に実行される命令に対する反復的な参照の間接化はレイテンシを増加させ得る。本論文は、静的に解決可能なメソッド呼び出しおよび静的フィールド命令を対象として、リンク時バイトコード・クイッキング方式を提案する。通常のインストール時検証と記号解決の後、リンカは、選択した各3バイト命令を、同じ長さの実装プライベートな直接アドレス形式へ書き換える。整列されたオペコード族の下位3ビットがアドレスの上位3ビットを符号化し、既存の2つのオペランドバイトが残り16ビットを符号化することで、512 KiBの19ビット論理アドレス空間を実現する。本研究は実験よりも形式的で分析的である。変換およびデコーダを定義し、アドレスの往復正しさを証明し、Methodコンポーネント長および制御フローオフセットの保存を確立し、リンカの正しさ、アドレス安定性、デコーダの正しさ、アドレス範囲、オペコード分離に関する明示的な仮定の下で条件付きの意味論的同値性の議論を与える。パラメトリックな実行コストモデルにより、得られる利得は、削除された間接アドレス形成の作業量からなり、デコーダ・コスト差があればそれを調整した値に等しい。本提案は、リンク後参照表現として間接参照表現を保持するJCVM実装を対象とし、動的ディスパッチ命令は除外する。本方式は、通常のCAPファイル入力およびアプリケーションのソースコードを保持するが、インストール済み表現のために修正されたリンカとインタプリタを必要とする。

https://doi.org/10.20944/preprints202609.0040.v1