FPGA開発日記

FPGAというより、コンピュータアーキテクチャかもね! カテゴリ別記事インデックス https://sites.google.com/site/fpgadevelopindex/

翻訳日記: Virtual Machine

Virtual Machine を翻訳してみているのだが、本文は公開できないので、翻訳用にまとめたメモくらいは公開していこうと思う。 正月から始めて、今日までの翻訳分のまとめ。だいたい15ページくらい。

1. 仮想マシンのイントロダクション

1.2 仮想マシンの基本
  • プロセス仮想マシン: 仮想化ソフトウェアがOSやシステムをエミュレートする。
  • システム仮想マシン: OSは、仮想化ソフトウェアの上に定義される。
    • ユーザプログラムもハードウェアを触りに行く。
    • → 同じISAの場合が多いので基本的に問題ない。
  • エミュレーション/最適化/レプリケーション

1.3 プロセス仮想マシン

  • 一番基本的なプロセス仮想マシンは、マルチプログラミングの考え方
  • 多くの場合は、プロセス仮想マシンは異なるISAをエミュレートする。
    • FX!32 : IA32 → Alpha
    • Aries : PA-RISC → IPF (Itanium) / IA-32 → IPF (Itanium)
  • 動的バイナリトランスレーションにより、高速に実行できるようになる (解釈実行と比較して)。
  • 解釈実行とバイナリトランスレーションの合わせ技 → プロファイルを使う。
  • 同一のバイナリでも、最適化するのに仮想マシンの最適化を利用できる。
    • プロファイリング
    • ソフトウェアキャシュ