Soumettre la recherche
Mettre en ligne
kernelvm1118関西-KVM vs AHF vs HAXM!
•
4 j'aime
•
1,504 vues
Takaya Saeki
Suivre
Kernel/VM 関西第3回くらいで発表したVMとVMMに関する発表です
Lire moins
Lire la suite
Technologie
Signaler
Partager
Signaler
Partager
1 sur 57
Télécharger maintenant
Télécharger pour lire hors ligne
Recommandé
Introduction to arm virtualization
Introduction to arm virtualization
Takaya Saeki
Kubernetes
Kubernetes
卓馬 三浦卓馬
Linux KVMではじめるカンタン仮想化入門
Linux KVMではじめるカンタン仮想化入門
VirtualTech Japan Inc.
Ansible softlayer
Ansible softlayer
Hideaki Tokida
AWS Vol.1
AWS Vol.1
Ryo Maruyama
Kubernetes1228
Kubernetes1228
卓馬 三浦卓馬
VagrantでAzureを使ってみた話
VagrantでAzureを使ってみた話
Yuta Matsumura
RTXで遊ぶ
RTXで遊ぶ
nvsofts
Recommandé
Introduction to arm virtualization
Introduction to arm virtualization
Takaya Saeki
Kubernetes
Kubernetes
卓馬 三浦卓馬
Linux KVMではじめるカンタン仮想化入門
Linux KVMではじめるカンタン仮想化入門
VirtualTech Japan Inc.
Ansible softlayer
Ansible softlayer
Hideaki Tokida
AWS Vol.1
AWS Vol.1
Ryo Maruyama
Kubernetes1228
Kubernetes1228
卓馬 三浦卓馬
VagrantでAzureを使ってみた話
VagrantでAzureを使ってみた話
Yuta Matsumura
RTXで遊ぶ
RTXで遊ぶ
nvsofts
Ansible tower 構築方法と使い方
Ansible tower 構築方法と使い方
Hiroshi Okano
JNuma Library
JNuma Library
Taro L. Saito
仮想マシンを使った開発環境の簡単共有方法
仮想マシンを使った開発環境の簡単共有方法
Hideo Takahashi
ConoHa VPSの コマンドラインツールを作った
ConoHa VPSの コマンドラインツールを作った
Hironobu Saitoh
ベアメタルサーバでHYPER-V を使ってみた(HYPER-Vレプリカ編)
ベアメタルサーバでHYPER-V を使ってみた(HYPER-Vレプリカ編)
Atsushi Hanaki
ConoHaにおける オブジェクトストレージの 利用動向
ConoHaにおける オブジェクトストレージの 利用動向
Hironobu Saitoh
Nifty cloud automationでクラウド構築・運用の自動化
Nifty cloud automationでクラウド構築・運用の自動化
NIFTY Cloud
murakumo クラウドコントローラ
murakumo クラウドコントローラ
Shingo Kawano
コモディティL3SW/ルータでオープンなSDNを実現しよう
コモディティL3SW/ルータでオープンなSDNを実現しよう
Takashi Sogabe
openSUSEで最強仮想環境をつくろう - ゲーミングから仮想通貨まで - OSC名古屋2017セミナー資料
openSUSEで最強仮想環境をつくろう - ゲーミングから仮想通貨まで - OSC名古屋2017セミナー資料
zgock
Reactとbabelで簡易タスク管理ツール作ってみた
Reactとbabelで簡易タスク管理ツール作ってみた
Tsuyoshi Maeda
仮想マシンとVagrant + Vagrant 1.5
仮想マシンとVagrant + Vagrant 1.5
Daisuke Kikuchi
20130723 ecシステムにchefを導入してみた v1.0
20130723 ecシステムにchefを導入してみた v1.0
NIFTY Cloud
XenServer Overview
XenServer Overview
Kimihiko Kitase
Azure で Ansible Tower と AWX(OSS版)に触れてみよう #hbstudy
Azure で Ansible Tower と AWX(OSS版)に触れてみよう #hbstudy
Kazumi IWANAGA
後期第二回ネットワークチーム講座資料
後期第二回ネットワークチーム講座資料
densan_teacher
Vagrant入門以前
Vagrant入門以前
katanyan
Babelで先取り次世代javascript
Babelで先取り次世代javascript
Tsuyoshi Maeda
Vagrant で PHP 開発環境を作る ハンズオン
Vagrant で PHP 開発環境を作る ハンズオン
Masashi Shinbara
/dev/kvmを直接叩いて自作VM
/dev/kvmを直接叩いて自作VM
Yuma Ohgami
ゼロからはじめるKVM超入門
ゼロからはじめるKVM超入門
VirtualTech Japan Inc.
vSphere環境での自動化とテスト
vSphere環境での自動化とテスト
富士通クラウドテクノロジーズ株式会社
Contenu connexe
Tendances
Ansible tower 構築方法と使い方
Ansible tower 構築方法と使い方
Hiroshi Okano
JNuma Library
JNuma Library
Taro L. Saito
仮想マシンを使った開発環境の簡単共有方法
仮想マシンを使った開発環境の簡単共有方法
Hideo Takahashi
ConoHa VPSの コマンドラインツールを作った
ConoHa VPSの コマンドラインツールを作った
Hironobu Saitoh
ベアメタルサーバでHYPER-V を使ってみた(HYPER-Vレプリカ編)
ベアメタルサーバでHYPER-V を使ってみた(HYPER-Vレプリカ編)
Atsushi Hanaki
ConoHaにおける オブジェクトストレージの 利用動向
ConoHaにおける オブジェクトストレージの 利用動向
Hironobu Saitoh
Nifty cloud automationでクラウド構築・運用の自動化
Nifty cloud automationでクラウド構築・運用の自動化
NIFTY Cloud
murakumo クラウドコントローラ
murakumo クラウドコントローラ
Shingo Kawano
コモディティL3SW/ルータでオープンなSDNを実現しよう
コモディティL3SW/ルータでオープンなSDNを実現しよう
Takashi Sogabe
openSUSEで最強仮想環境をつくろう - ゲーミングから仮想通貨まで - OSC名古屋2017セミナー資料
openSUSEで最強仮想環境をつくろう - ゲーミングから仮想通貨まで - OSC名古屋2017セミナー資料
zgock
Reactとbabelで簡易タスク管理ツール作ってみた
Reactとbabelで簡易タスク管理ツール作ってみた
Tsuyoshi Maeda
仮想マシンとVagrant + Vagrant 1.5
仮想マシンとVagrant + Vagrant 1.5
Daisuke Kikuchi
20130723 ecシステムにchefを導入してみた v1.0
20130723 ecシステムにchefを導入してみた v1.0
NIFTY Cloud
XenServer Overview
XenServer Overview
Kimihiko Kitase
Azure で Ansible Tower と AWX(OSS版)に触れてみよう #hbstudy
Azure で Ansible Tower と AWX(OSS版)に触れてみよう #hbstudy
Kazumi IWANAGA
後期第二回ネットワークチーム講座資料
後期第二回ネットワークチーム講座資料
densan_teacher
Vagrant入門以前
Vagrant入門以前
katanyan
Babelで先取り次世代javascript
Babelで先取り次世代javascript
Tsuyoshi Maeda
Vagrant で PHP 開発環境を作る ハンズオン
Vagrant で PHP 開発環境を作る ハンズオン
Masashi Shinbara
/dev/kvmを直接叩いて自作VM
/dev/kvmを直接叩いて自作VM
Yuma Ohgami
Tendances
(20)
Ansible tower 構築方法と使い方
Ansible tower 構築方法と使い方
JNuma Library
JNuma Library
仮想マシンを使った開発環境の簡単共有方法
仮想マシンを使った開発環境の簡単共有方法
ConoHa VPSの コマンドラインツールを作った
ConoHa VPSの コマンドラインツールを作った
ベアメタルサーバでHYPER-V を使ってみた(HYPER-Vレプリカ編)
ベアメタルサーバでHYPER-V を使ってみた(HYPER-Vレプリカ編)
ConoHaにおける オブジェクトストレージの 利用動向
ConoHaにおける オブジェクトストレージの 利用動向
Nifty cloud automationでクラウド構築・運用の自動化
Nifty cloud automationでクラウド構築・運用の自動化
murakumo クラウドコントローラ
murakumo クラウドコントローラ
コモディティL3SW/ルータでオープンなSDNを実現しよう
コモディティL3SW/ルータでオープンなSDNを実現しよう
openSUSEで最強仮想環境をつくろう - ゲーミングから仮想通貨まで - OSC名古屋2017セミナー資料
openSUSEで最強仮想環境をつくろう - ゲーミングから仮想通貨まで - OSC名古屋2017セミナー資料
Reactとbabelで簡易タスク管理ツール作ってみた
Reactとbabelで簡易タスク管理ツール作ってみた
仮想マシンとVagrant + Vagrant 1.5
仮想マシンとVagrant + Vagrant 1.5
20130723 ecシステムにchefを導入してみた v1.0
20130723 ecシステムにchefを導入してみた v1.0
XenServer Overview
XenServer Overview
Azure で Ansible Tower と AWX(OSS版)に触れてみよう #hbstudy
Azure で Ansible Tower と AWX(OSS版)に触れてみよう #hbstudy
後期第二回ネットワークチーム講座資料
後期第二回ネットワークチーム講座資料
Vagrant入門以前
Vagrant入門以前
Babelで先取り次世代javascript
Babelで先取り次世代javascript
Vagrant で PHP 開発環境を作る ハンズオン
Vagrant で PHP 開発環境を作る ハンズオン
/dev/kvmを直接叩いて自作VM
/dev/kvmを直接叩いて自作VM
Similaire à kernelvm1118関西-KVM vs AHF vs HAXM!
ゼロからはじめるKVM超入門
ゼロからはじめるKVM超入門
VirtualTech Japan Inc.
vSphere環境での自動化とテスト
vSphere環境での自動化とテスト
富士通クラウドテクノロジーズ株式会社
Fabric + Amazon EC2で快適サポート生活 #PyFes
Fabric + Amazon EC2で快適サポート生活 #PyFes
Sho Shimauchi
Kernel vm#9 powerkvm-dist-20131208
Kernel vm#9 powerkvm-dist-20131208
Manabu Ori
ソフトウェア工学2023 06 コンテナ仮想化
ソフトウェア工学2023 06 コンテナ仮想化
Toru Tamaki
VMを改めて学んで見る
VMを改めて学んで見る
kishima7
作られては消えていく泡のように儚いクラスタの運用話
作られては消えていく泡のように儚いクラスタの運用話
Tsuyoshi Torii
.NET vNext
.NET vNext
信之 岩永
Xamarin.iOS
Xamarin.iOS
Kosuke Usami
xamarin for android試してみた
xamarin for android試してみた
Lee Choong Geun
Windowsコンテナ入門
Windowsコンテナ入門
Kyohei Mizumoto
Dockerでらくらく開発・運用を体感しよう
Dockerでらくらく開発・運用を体感しよう
Takashi Makino
Firefox mobile for android internals
Firefox mobile for android internals
Makoto Kato
コンテナで作る開発環境 (20161104 CodeIgniter Night)
コンテナで作る開発環境 (20161104 CodeIgniter Night)
智之 大野
Tech-on Meet Up #02 Microsoft のコンテナ活用事例
Tech-on Meet Up #02 Microsoft のコンテナ活用事例
Kenichiro Nakamura
VM 基盤運用チームの DevOps
VM 基盤運用チームの DevOps
富士通クラウドテクノロジーズ株式会社
Cloudstack nested kvm検証環境
Cloudstack nested kvm検証環境
Naoki Matsuura
エンジニアなら知っておきたい「仮想マシン」のしくみ (BPStudy38)
エンジニアなら知っておきたい「仮想マシン」のしくみ (BPStudy38)
Takeshi HASEGAWA
DrupalをDockerで起動してみる
DrupalをDockerで起動してみる
iPride Co., Ltd.
ComSys 2012 Yabusame Talk
ComSys 2012 Yabusame Talk
Takahiro Hirofuchi
Similaire à kernelvm1118関西-KVM vs AHF vs HAXM!
(20)
ゼロからはじめるKVM超入門
ゼロからはじめるKVM超入門
vSphere環境での自動化とテスト
vSphere環境での自動化とテスト
Fabric + Amazon EC2で快適サポート生活 #PyFes
Fabric + Amazon EC2で快適サポート生活 #PyFes
Kernel vm#9 powerkvm-dist-20131208
Kernel vm#9 powerkvm-dist-20131208
ソフトウェア工学2023 06 コンテナ仮想化
ソフトウェア工学2023 06 コンテナ仮想化
VMを改めて学んで見る
VMを改めて学んで見る
作られては消えていく泡のように儚いクラスタの運用話
作られては消えていく泡のように儚いクラスタの運用話
.NET vNext
.NET vNext
Xamarin.iOS
Xamarin.iOS
xamarin for android試してみた
xamarin for android試してみた
Windowsコンテナ入門
Windowsコンテナ入門
Dockerでらくらく開発・運用を体感しよう
Dockerでらくらく開発・運用を体感しよう
Firefox mobile for android internals
Firefox mobile for android internals
コンテナで作る開発環境 (20161104 CodeIgniter Night)
コンテナで作る開発環境 (20161104 CodeIgniter Night)
Tech-on Meet Up #02 Microsoft のコンテナ活用事例
Tech-on Meet Up #02 Microsoft のコンテナ活用事例
VM 基盤運用チームの DevOps
VM 基盤運用チームの DevOps
Cloudstack nested kvm検証環境
Cloudstack nested kvm検証環境
エンジニアなら知っておきたい「仮想マシン」のしくみ (BPStudy38)
エンジニアなら知っておきたい「仮想マシン」のしくみ (BPStudy38)
DrupalをDockerで起動してみる
DrupalをDockerで起動してみる
ComSys 2012 Yabusame Talk
ComSys 2012 Yabusame Talk
kernelvm1118関西-KVM vs AHF vs HAXM!
1.
~ 食べ比べ ~
2.
@nullpo_head (佐伯タカヤ) • M2,
修論がやばい なんなら京都で観光してる場合じゃない • 未踏2016 スパクリ Noahというアプリを作った, MacでELFを動かす そのNoahというアプリが仮想化技術をヘビーに使っていた
3.
Virtual Machine Monitor •
VMを作ったり管理したりする ハイパーバイザーのこと • 特に今日は仮想化支援機構を前提とした KVMのようなKernel moduleたちのこと
4.
を応用した 向けサンドボックスライブラリ
5.
を で動かす(つらい
6.
全部VMを 使う! Linux Windows 素のNoahは macOS
7.
HAXM 結果としてなんか3つもVMMを 使わざるを得なかった 今日は経験した 3つのVMMを比較します
8.
※注意:今日話すKVM等はコマンドラ インからたたけてVMを立ち上げてくれ るqemu-kvmの話ではないです。 Qemuが内部的に使っているような、 KVMのカーネルモジュール部分のAPIの 話です。 ※注意:VMではなくVMMの話をします
9.
🤔待てよ・・・滅多に直接触らな いVMMとか誰が興味あるんだ? (Qemu開発者か?VM開発者か?
10.
Kernel/VM参加者からランダム に抽選して需要を探る • 視聴率とかと同じ原理 • 時間ないし二人くらいでええやろ 厳正な抽選
11.
12.
1人目: しゅうう先生
13.
しゅうう先生 ランダム1人目 VM書い てる!
14.
15.
2人目: るくす氏
16.
るくす氏 未踏にて • まず当初の予定通りQemu ベースのソフトウェアを 書いて • そのあと何故か未踏の時 間が余っておりType-1の VMも書いた2人目めちゃ くちゃVM書 いてる! つまり統計的に 参加者全員VM書 いてるやんけ! (カーネルVMすごい
17.
つまり参加者全員VM 書いてるやんけ! • 統計的な結論 • よくよく考えたらタイトルkernel/vm探検隊だ し当然 •
みなさまのVMM選びにお役立てください
18.
VMM(カーネルモ ジュール)とは ※今回はKVMなどの方式についてのみ話します
19.
そもそもの最近のVMの仕組み 仮想化されたCPU ゲストプロセス Ioctl, VCPUラン 要求 VMENTRY RUN! システムコール など デバイス シミュレーション
20.
そもそもの最近のVMの仕組み 仮想化されたCPU デバイスIO等 VMEXIT Ioctl, デバイスIO要求通知 ゲストプロセス システムコール など デバイス シミュレーション
21.
そもそもの最近のVMの仕組み 仮想化されたCPU ゲストプロセス Ioctl, VCPUラン 要求 VMENTRY RUN! システムコール など デバイス シミュレーション
22.
そもそもの最近のVMの仕組み 仮想化されたCPU デバイスIO等 VMEXIT Ioctl, デバイスIO要求通知 ゲストプロセス Ioctl, VCPUラン 要求 VMENTRY システムコール など デバイス シミュレーション
23.
KVM • 📒 言わずと知れたLinux用 の元祖VMMカーネルモ ジュール •
💻 Linux / FreeBSD • 💡 X86だけではなく、 ARM/PPC/IA-36/s390などで も動く • 説明が雑でごめんなさい、 みんな知ってるよね
24.
Apple Hypervisor Framework • 📒
Apple謹製、OS組み込み のあまり知名度のないVMM • 💻 macOS • 💡3VMMの中でも特に Intel VMXの薄いラッパーラ イブラリ的実装 • 💡 仮想NICを作るフレーム ワークまでmacOS組み込み で載っていて案外クール • 💡 macOS版bhyveとしてよ く言及されるxhyveはAHFを 使っている
25.
Intel HAXM (Hardware Accelerated Execution
Manager) • 📒 Intelが実はVMMを作っ てる • 💻 Win/macOS • 💡 X86 Androidエミュレー タの高速化モジュールとし て配布されているが、実態 は汎用のVMM • 💡 QemuがmainlineでKVM 同様に対応している HAXM
26.
今日は以上3種VMMの 比較の話をします • KVM • AHF •
HAXM
27.
比較? • インターフェースの使いやすさと機能の面から 比較して、優劣と得意不得意をまとめます • パフォーマンスの比較はしません •
そもそもマシンが違うしそろえて測るのは本質的に 難しい • 今日はsatさんがWSLについてそれをやる予定だった そうなので楽しみだったが残念 • どこかで公開してくれるでしょう • Satさんは残念ながら今回もSEGVしてしまった • がちゃぴん先生のmalloc動画みたいな感じでsatさんが SEGVする動画が見たいんですがないんでしょうか
28.
まずは4スライドでわ かるVMの作り方
29.
共通するインターフェース • 基本的なVMMの使いかた • ユーザー空間にVMMが公開しているAPIをたたいて VMMモジュールを利用する •
Ioctl派とライブラリで隠ぺい派に分かれる “/dev/kvm”や”¥¥.¥hax”などのデバイスが 生えていて、そこへのioctlでAPIを呼ぶ hv_vm_createのようなAPIがライブラリ にファーストクラスに用意されている
30.
だいたい共通するVMMの使い方 (AHFを例に) 1. hv_vm_create まずVMを作る 2. hv_vm_map 次にメモリ空間 を作る。CR3とか 3.
hv_vcpu_create 仮想CPUを作る 4. hv_vcpu_runと VMEXITのループ ここがエミュ レーション本体
31.
そもそもの最近のVMの仕組み 仮想化されたCPU デバイスIO等 VMEXIT Ioctl, デバイスIO要求通知 ゲストプロセス Ioctl, VCPUラン 要求 VMENTRY システムコール など デバイス シミュレーション RUN! VMMの力を借りると、 VMMがCPUの力を借りて仮想化部分が 労力なく走る
32.
そもそもの最近のVMの仕組み 仮想化されたCPU デバイスIO等 VMEXIT Ioctl, デバイスIO要求通知 ゲストプロセス Ioctl, VCPUラン 要求 VMENTRY システムコール など デバイス シミュレーション
33.
だいたい共通するVMMの使い方 (AHFを例に) 1. hv_vm_create まずVMを作る 2. hv_vm_map 次にメモリ空間 を作る。CR3とか 3.
hv_vcpu_create 仮想CPUを作る 4. hv_vcpu_runと VMEXITのループ ここがエミュ レーション本体
34.
だいたい共通するVMMの使い方 (Libhypervisorを例に) 1.while (1) { 2.
vmm_cpu_run(vm, cpu); 3. vmm_cpu_get_state(vm, cpu, VMM_CTRL_EXIT_REASON, &exit_reason); 4. switch (exit_reason) { 5. case VMM_EXIT_FAIL_ENTRY: 6. /* めっちゃエラーメッセージとか出す */ 7. return 0; 8. case VMM_EXIT_HLT: 9. /* 死んだ */ 10. return 0; 11. case VMM_EXIT_IO: 12. ret = vmm_cpu_get_register(vm, cpu, VMM_X64_RAX, &value); 13. /* ここでデバイスエミュレーション */ 14. break; 15. ... 16. } 17.} RunとExitのループ 複雑なCPUのエミュレーション無しに(※) 仮想マシンエミュレータを作れる!
35.
気になった方は詳しくは しゅうう先生の資料を実際どうぞ
36.
HAXM
37.
先に結論から言うと の順でだいたい柔軟性が高く使いやすい • ただしそれぞれで罠や使いづらい用途があります HAXM > >
38.
分かる人向けTL;DR KVM AHF HAXM 複数VM操作
✔ ✘ ✔ EPTの活用 ✘ ✔ △(unmapだけ できない) ホストによる ページング ✔ ✔ ✔ Exception Bitmap操作 ✘ ✔ ✘ 例外のハンド ルのしやすさ △ ✔ ✘ VMCALL命令 ✘ ✔ ✘ VMFUNC命令 ✔ ✔ ✘
39.
ドキュメントについて • 3つのVMMをAPIのドキュメントの充実度で 比較する
40.
ドキュメントについて
41.
• APIに関しては バカでかい1枚 のApi.txtがある • APIに関しては これだけだけど まぁほかのファ イルは充実 •
ただしVMMに 詳しくない人が いきなりこれを 見ても多分わか らない
42.
• APIに関しては バカでかい1枚 のApi.txtがある • APIに関しては これだけだけど まぁほかのファ イルは充実 •
ただしVMMに 詳しくない人が いきなりこれを 見ても多分わか らない
43.
44.
ほぼ関数の名前しか 情報がない・・・ ツライ
45.
HAXM そもそも ドキュメントがない
46.
ドキュメントについて • KVMですらドキュメントだけだと良く分からな いので、結局Intelドキュメントとにらめっこし ながら試行錯誤する • 気合 •
「とっつきやすさ」に特に差はない(でも HAXMはさすがに無理かな・・・
47.
VMはデバッグがつらい • VMX系のエラーはたいてい「エラーがある」と しか言ってくれない • CPU「なんで私が怒ってるかわかる?」 •
⇒全然わからない • ドキュメントがないと精神的につらい
48.
その他機能比較
49.
KVM AHF HAXM 複数VM操作
✔ ✘ ✔ EPTの活用 ✘ ✔ △(unmapだけ できない) ホストによる ページング ✔ ✔ ✔ Exception Bitmap操作 ✘ ✔ ✘ 例外のハンド ルのしやすさ △ ✔ ✘ VMCALL命令 ✘ ✔ ✘ VMFUNC命令 ✔ ✔ ✘ 詳しい人向け 機能比較一気見表
50.
EPTの活用 • Intelの仮想化機能のEPTはとても柔軟 • ゲスト物理→ホスト物理のアドレスマッピング を、通常のx86のマッピングの粒度で行える •
(e.g. gpa->hpaの1ページ分だけNXを立てるなど
51.
EPTマップの柔軟性に差がある HAXM > > ほぼEPTの フル機能が使え る VMに対して物理ページをマップするのではなく、 「VMに対してメモリスロットを刺す」というアナ ロジーに縛られる。HAXMの方がちょっとだけマシ。 >
52.
KVM AHF HAXM 複数VM操作
✔ ✘ ✔ EPTの活用 ✘ ✔ △(unmapだけ できない) ホストによる ページング ✔ ✔ ✔ Exception Bitmap操作 ✘ ✔ ✘ 例外のハンド ルのしやすさ △ ✔ ✘ VMCALL命令 ✘ ✔ ✘ VMFUNC命令 ✔ ✔ ✘ 詳しい人向け 機能比較一気見表
53.
VMの中の例外を トラップしたい • VMMを通常の意味での仮想マシンエミュレー タの作成にではなく、何か特殊な用途に使おう とするとゲストの中の例外をホストでトラップ したくなることがある • 例えばNoahでは、ゲストの中のシステムコー ルをフックして、ホストOSの対応するシステ ムコールをたたくことでELFをmacOSで動かす
54.
例外のトラップしやすさ HAXM > > VMXの仕様ほぼ そのまま自由に できる ちょっと扱いづらい が、APIをよく観察 するとできる > できなさそう
55.
KVM AHF HAXM 複数VM操作
✔ ✘ ✔ EPTの活用 ✘ ✔ △(unmapだけ できない) ホストによる ページング ✔ ✔ ✔ Exception Bitmap操作 ✘ ✔ ✘ 例外のハンド ルのしやすさ △ ✔ ✘ VMCALL命令 ✘ ✔ ✘ VMFUNC命令 ✔ ✔ ✘ 詳しい人向け 機能比較一気見表
56.
まとめ • AHFが一番柔軟性が高い • OSが自由に選べるならオススメ •
KVM / HAXMもしかし、ふつうのVMを書くなら 十分な柔軟性 • ただしHAXMはドキュメントがないから初めて のVMM利用にはやめよう
57.
HAXM !
Télécharger maintenant