2009-01-01から1年間の記事一覧
説明も自分の理解もまだイマイチだが、現時点でのベクター割り込みの仮想化の理解を綴る。逐次改善予定。 VMX operation により、ゲストドメインはそれぞれ自分の IDT を操作できる。仮想化という視点から考えると、ゲストドメインが受ける割り込みには下記 …
ローカル APIC 経由で割り込みがプロセッサにあがる場合、ベクタ番号に応じて割り込みの優先度が決まる。 割り込み優先度 = ベクタ番号/16 1 が最低、15 が最高の優先度となる。ベクタ番号は 0 〜 255(8 bit)であり、ベクタ 0 〜 31 は IA32 アーキテクチ…
ローカル APIC には割り込み処理において 3 つの重要なレジスタがある。 IRR(割り込み要求レジスタ) 受信したが、まだプロセッサに発行されていない割り込みを管理するレジスタ。ローカルAPIC が割り込みを受信すると、ベクタ番号に応じたビットが設定され…
IA 32 アーキテクチャでは APIC(アドバンスド・プログラマブル割り込みコントローラ)で割り込みを制御する。APIC にはローカル APIC とIO APIC という 2 種類ある。ローカル APIC プロセッサの割り込みピン、内部ソース、IO APIC からの割り込みを受信し、…
EPT を使用すると、通常物理アドレスとして使用されていたものが、ゲスト物理アドレスとして扱われる。そして、ゲスト物理アドレスは、EPT Pageing structure を使用して物理アドレスに変換される。 - EPT を使用しないときのアドレス変換 +------------+ リ…
VMCS とは、VM exit/entry 時のハードウェアの情報の保持したり、振る舞いを制御するデータ構造体である。VMCS に含まれる情報を以下に示す。ただし、これらの情報はごく一部でしかないので、詳細は、 ntel 64 and IA-32 Architectures Software Developer's…
Intel 64 and IA-32 Architectures Software Developer's Manual Volume 3B: System Programming Guide http://www.intel.com/Assets/PDF/manual/253669.pdf の CHapter 19 〜 の VMX(virtual machine extensions)を勉強。Intel が完全仮想化をハード的に…
グリーン IT という言葉を最近よく聞く。「IT で地球を救う」といったところか。私の考えではこれは A. 地球のための IT B. 地球に優しい ITという 2 つから成り立つ。A という意味では、コンピュータはシステムとして色々貢献できるだろう。ということで、B…
私は考えることが好きだ。が、時折考えないこともある。 しかし、その考えないという決断さえも、深く考えた結果から生まれる。つまり、そのことについて考える必要があるかどうか深く考えた結果、考えないという決断をくだす。 考えた結果、考えないという…
デバッグについて、無性に語りたくなったので、今日はデバッグについて自論を述べる。Windows/Linux/UNIX等各種OS上でそれぞれのデバッグツールや、技術を述べるのではない。具体的な知識は何も提供しない。 デバッグとは何か? デバッグとは、期待した結果…
IA-32 アーキテクチャ勉強の続き。ラージページについて。 IA-32 アーキテクチャはラージページをサポートしている。以下、IA-32e モードに限定して話を進める。ラージページがあるのだから、当然ラージページじゃない普通のページ(スモールページ)がある…
IA-32 アーキテクチャ勉強の続き。以前も書いたが TLB/Paging Structure Cache エントリの無効化の方法は以下の 3つがあるとのこと。 INVLPG: operand に指定されたリニアアドレスに対応する TLB エントリを無効化する。 MOV to CR3: 全 TLB エントリを無効…
ゼロから、IA-32 アーキテクチャを勉強してみる。っと言っても intel のサイトのドキュメントを読んでまとめるだけ。 http://www.intel.com/products/processor/manuals/index.htmIA-32 アーキテクチャのメモリ管理は「セグメンテーション」と、「ページング…
IA-32 アーキテクチャ勉強の続き。Linux、他 UNIX OS のいくつかではプロセス毎にリニアアドレスを持つ。それらの OS では、CPU上で動作させるプロセスを切り替える際、プロセスのリニアアドレス(プロセス空間)の切り替えを行う必要がある。その切り替え処…