Enviar pesquisa
Carregar
BHyVe: The BSD Hypervisor
•
11 gostaram
•
2,699 visualizações
Takuya ASADA
Seguir
Tecnologia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 32
Baixar agora
Baixar para ler offline
Recomendados
Bhyve code reading
Bhyve code reading
Takuya ASADA
BHyVeってなんや
BHyVeってなんや
Takuya ASADA
Bhyve Internals
Bhyve Internals
Takuya ASADA
BHyVeでOSvを起動したい 〜BIOSがなくてもこの先生きのこるには〜
BHyVeでOSvを起動したい 〜BIOSがなくてもこの先生きのこるには〜
Takuya ASADA
軽快なBHyVe
軽快なBHyVe
Takuya ASADA
UEFI時代のブートローダ
UEFI時代のブートローダ
Takuya ASADA
KVM+cgroup
KVM+cgroup
(^-^) togakushi
Lxc で始めるケチケチ仮想化生活?!
Lxc で始めるケチケチ仮想化生活?!
Etsuji Nakai
Recomendados
Bhyve code reading
Bhyve code reading
Takuya ASADA
BHyVeってなんや
BHyVeってなんや
Takuya ASADA
Bhyve Internals
Bhyve Internals
Takuya ASADA
BHyVeでOSvを起動したい 〜BIOSがなくてもこの先生きのこるには〜
BHyVeでOSvを起動したい 〜BIOSがなくてもこの先生きのこるには〜
Takuya ASADA
軽快なBHyVe
軽快なBHyVe
Takuya ASADA
UEFI時代のブートローダ
UEFI時代のブートローダ
Takuya ASADA
KVM+cgroup
KVM+cgroup
(^-^) togakushi
Lxc で始めるケチケチ仮想化生活?!
Lxc で始めるケチケチ仮想化生活?!
Etsuji Nakai
軽快なPlan 9 Update - Illumos KVM上陸 -
軽快なPlan 9 Update - Illumos KVM上陸 -
Go Saito
KVM Cluster with DRBD, ioDrive2 and Infiniband (130802 OSC京都)
KVM Cluster with DRBD, ioDrive2 and Infiniband (130802 OSC京都)
株式会社サードウェア
#ljstudy KVM勉強会
#ljstudy KVM勉強会
Etsuji Nakai
GPU仮想化最前線 - KVMGTとvirtio-gpu -
GPU仮想化最前線 - KVMGTとvirtio-gpu -
zgock
Linux KVMではじめるカンタン仮想化入門
Linux KVMではじめるカンタン仮想化入門
VirtualTech Japan Inc.
勉強会0614 vagrant
勉強会0614 vagrant
Yu Ito
Free bsd jail入門
Free bsd jail入門
Tsubasa Nomura
エンジニアなら知っておきたい「仮想マシン」のしくみ (BPStudy38)
エンジニアなら知っておきたい「仮想マシン」のしくみ (BPStudy38)
Takeshi HASEGAWA
openSUSEで最強仮想環境をつくろう - ゲーミングから仮想通貨まで - OSC名古屋2017セミナー資料
openSUSEで最強仮想環境をつくろう - ゲーミングから仮想通貨まで - OSC名古屋2017セミナー資料
zgock
エンジニアなら知っておきたい「仮想マシン」のしくみ v1.1 (hbstudy 17)
エンジニアなら知っておきたい「仮想マシン」のしくみ v1.1 (hbstudy 17)
Takeshi HASEGAWA
COMSTARでiSCSI - OpenSolaris勉強会 2011.08
COMSTARでiSCSI - OpenSolaris勉強会 2011.08
tokuhy
LXC入門 - Osc2011 nagoya
LXC入門 - Osc2011 nagoya
Masahide Yamamoto
XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)
XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)
tokuhy
Lxc cf201207-presen
Lxc cf201207-presen
Kouhei Maeda
Play with UEFI
Play with UEFI
Takuya ASADA
OSC2011 Tokyo/Fall 濃いバナ(virtio)
OSC2011 Tokyo/Fall 濃いバナ(virtio)
Takeshi HASEGAWA
Unsafe Nested Virtualization on Intel CPU
Unsafe Nested Virtualization on Intel CPU
Takaaki Fukai
NetBSD on Google Compute Engine
NetBSD on Google Compute Engine
Ryo ONODERA
Eucalyptus on OpenStack
Eucalyptus on OpenStack
irix_jp
An idea of bios emulation on b hy ve
An idea of bios emulation on b hy ve
Takuya ASADA
Seastar in 歌舞伎座.tech#8「C++初心者会」
Seastar in 歌舞伎座.tech#8「C++初心者会」
Takuya ASADA
コンテナ型仮想化とはなんだったのか
コンテナ型仮想化とはなんだったのか
えむ ばーど
Mais conteúdo relacionado
Mais procurados
軽快なPlan 9 Update - Illumos KVM上陸 -
軽快なPlan 9 Update - Illumos KVM上陸 -
Go Saito
KVM Cluster with DRBD, ioDrive2 and Infiniband (130802 OSC京都)
KVM Cluster with DRBD, ioDrive2 and Infiniband (130802 OSC京都)
株式会社サードウェア
#ljstudy KVM勉強会
#ljstudy KVM勉強会
Etsuji Nakai
GPU仮想化最前線 - KVMGTとvirtio-gpu -
GPU仮想化最前線 - KVMGTとvirtio-gpu -
zgock
Linux KVMではじめるカンタン仮想化入門
Linux KVMではじめるカンタン仮想化入門
VirtualTech Japan Inc.
勉強会0614 vagrant
勉強会0614 vagrant
Yu Ito
Free bsd jail入門
Free bsd jail入門
Tsubasa Nomura
エンジニアなら知っておきたい「仮想マシン」のしくみ (BPStudy38)
エンジニアなら知っておきたい「仮想マシン」のしくみ (BPStudy38)
Takeshi HASEGAWA
openSUSEで最強仮想環境をつくろう - ゲーミングから仮想通貨まで - OSC名古屋2017セミナー資料
openSUSEで最強仮想環境をつくろう - ゲーミングから仮想通貨まで - OSC名古屋2017セミナー資料
zgock
エンジニアなら知っておきたい「仮想マシン」のしくみ v1.1 (hbstudy 17)
エンジニアなら知っておきたい「仮想マシン」のしくみ v1.1 (hbstudy 17)
Takeshi HASEGAWA
COMSTARでiSCSI - OpenSolaris勉強会 2011.08
COMSTARでiSCSI - OpenSolaris勉強会 2011.08
tokuhy
LXC入門 - Osc2011 nagoya
LXC入門 - Osc2011 nagoya
Masahide Yamamoto
XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)
XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)
tokuhy
Lxc cf201207-presen
Lxc cf201207-presen
Kouhei Maeda
Play with UEFI
Play with UEFI
Takuya ASADA
OSC2011 Tokyo/Fall 濃いバナ(virtio)
OSC2011 Tokyo/Fall 濃いバナ(virtio)
Takeshi HASEGAWA
Unsafe Nested Virtualization on Intel CPU
Unsafe Nested Virtualization on Intel CPU
Takaaki Fukai
NetBSD on Google Compute Engine
NetBSD on Google Compute Engine
Ryo ONODERA
Eucalyptus on OpenStack
Eucalyptus on OpenStack
irix_jp
An idea of bios emulation on b hy ve
An idea of bios emulation on b hy ve
Takuya ASADA
Mais procurados
(20)
軽快なPlan 9 Update - Illumos KVM上陸 -
軽快なPlan 9 Update - Illumos KVM上陸 -
KVM Cluster with DRBD, ioDrive2 and Infiniband (130802 OSC京都)
KVM Cluster with DRBD, ioDrive2 and Infiniband (130802 OSC京都)
#ljstudy KVM勉強会
#ljstudy KVM勉強会
GPU仮想化最前線 - KVMGTとvirtio-gpu -
GPU仮想化最前線 - KVMGTとvirtio-gpu -
Linux KVMではじめるカンタン仮想化入門
Linux KVMではじめるカンタン仮想化入門
勉強会0614 vagrant
勉強会0614 vagrant
Free bsd jail入門
Free bsd jail入門
エンジニアなら知っておきたい「仮想マシン」のしくみ (BPStudy38)
エンジニアなら知っておきたい「仮想マシン」のしくみ (BPStudy38)
openSUSEで最強仮想環境をつくろう - ゲーミングから仮想通貨まで - OSC名古屋2017セミナー資料
openSUSEで最強仮想環境をつくろう - ゲーミングから仮想通貨まで - OSC名古屋2017セミナー資料
エンジニアなら知っておきたい「仮想マシン」のしくみ v1.1 (hbstudy 17)
エンジニアなら知っておきたい「仮想マシン」のしくみ v1.1 (hbstudy 17)
COMSTARでiSCSI - OpenSolaris勉強会 2011.08
COMSTARでiSCSI - OpenSolaris勉強会 2011.08
LXC入門 - Osc2011 nagoya
LXC入門 - Osc2011 nagoya
XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)
XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)
Lxc cf201207-presen
Lxc cf201207-presen
Play with UEFI
Play with UEFI
OSC2011 Tokyo/Fall 濃いバナ(virtio)
OSC2011 Tokyo/Fall 濃いバナ(virtio)
Unsafe Nested Virtualization on Intel CPU
Unsafe Nested Virtualization on Intel CPU
NetBSD on Google Compute Engine
NetBSD on Google Compute Engine
Eucalyptus on OpenStack
Eucalyptus on OpenStack
An idea of bios emulation on b hy ve
An idea of bios emulation on b hy ve
Destaque
Seastar in 歌舞伎座.tech#8「C++初心者会」
Seastar in 歌舞伎座.tech#8「C++初心者会」
Takuya ASADA
コンテナ型仮想化とはなんだったのか
コンテナ型仮想化とはなんだったのか
えむ ばーど
今時のLinuxにおけるGPUエンコード事情
今時のLinuxにおけるGPUエンコード事情
zgock
しつこくXenとzfsで作る家庭内vdiサーバ2015年版
しつこくXenとzfsで作る家庭内vdiサーバ2015年版
zgock
Bios 275 Final Project
Bios 275 Final Project
guestd34413
Lifting Matters Issue 11 Febuary 2010
Lifting Matters Issue 11 Febuary 2010
Alan Bassett
R3L+ Overview of Grundtvig project "Quality Framework For Learning Regions"
R3L+ Overview of Grundtvig project "Quality Framework For Learning Regions"
Randolph Preisinger-Kleine
Методичні рекомендації щодо викладання інформатики
Методичні рекомендації щодо викладання інформатики
guest2f0bcd
Kelly C. Ruggles
Kelly C. Ruggles
Kelly Ruggles
H & S Reform Progress October 11
H & S Reform Progress October 11
Alan Bassett
Evolution2
Evolution2
verka 123
Kelly C. Ruggles
Kelly C. Ruggles
Kelly Ruggles
Winslow overview june 12 2013
Winslow overview june 12 2013
vbullara
Dg Onefashion
Dg Onefashion
DevelopmentGroup
Uw speaking-of-design-shared
Uw speaking-of-design-shared
David Conrad
Backtoschool2012
Backtoschool2012
Laura Rieben
Lifting Matters Issue 9 December 2009
Lifting Matters Issue 9 December 2009
Alan Bassett
Total learning: The new future of work and learning
Total learning: The new future of work and learning
Brightwave Group
Casino Night 2009
Casino Night 2009
guesta27559f
I Ovo Ce Proci
I Ovo Ce Proci
verka 123
Destaque
(20)
Seastar in 歌舞伎座.tech#8「C++初心者会」
Seastar in 歌舞伎座.tech#8「C++初心者会」
コンテナ型仮想化とはなんだったのか
コンテナ型仮想化とはなんだったのか
今時のLinuxにおけるGPUエンコード事情
今時のLinuxにおけるGPUエンコード事情
しつこくXenとzfsで作る家庭内vdiサーバ2015年版
しつこくXenとzfsで作る家庭内vdiサーバ2015年版
Bios 275 Final Project
Bios 275 Final Project
Lifting Matters Issue 11 Febuary 2010
Lifting Matters Issue 11 Febuary 2010
R3L+ Overview of Grundtvig project "Quality Framework For Learning Regions"
R3L+ Overview of Grundtvig project "Quality Framework For Learning Regions"
Методичні рекомендації щодо викладання інформатики
Методичні рекомендації щодо викладання інформатики
Kelly C. Ruggles
Kelly C. Ruggles
H & S Reform Progress October 11
H & S Reform Progress October 11
Evolution2
Evolution2
Kelly C. Ruggles
Kelly C. Ruggles
Winslow overview june 12 2013
Winslow overview june 12 2013
Dg Onefashion
Dg Onefashion
Uw speaking-of-design-shared
Uw speaking-of-design-shared
Backtoschool2012
Backtoschool2012
Lifting Matters Issue 9 December 2009
Lifting Matters Issue 9 December 2009
Total learning: The new future of work and learning
Total learning: The new future of work and learning
Casino Night 2009
Casino Night 2009
I Ovo Ce Proci
I Ovo Ce Proci
Semelhante a BHyVe: The BSD Hypervisor
Osc2009 Sendai Xen 0124
Osc2009 Sendai Xen 0124
Kazuhisa Hara
N110 ws12概要 osamut_公開版
N110 ws12概要 osamut_公開版
Osamu Takazoe
Osc2009 Do Xen Hara
Osc2009 Do Xen Hara
Kazuhisa Hara
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
FumieNakayama
Technology Used in Virtual Machine (Jan 2008)
Technology Used in Virtual Machine (Jan 2008)
Kuniyasu Suzaki
20120822_dstn技術交流会_仮想化について
20120822_dstn技術交流会_仮想化について
dstn
ソフトウェア工学2023 06 コンテナ仮想化
ソフトウェア工学2023 06 コンテナ仮想化
Toru Tamaki
仮想化技術の基本の基本
仮想化技術の基本の基本
terada
XenServerによるお手軽開発サーバ運用
XenServerによるお手軽開発サーバ運用
Shinya Okano
SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ
SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ
Kuniyasu Suzaki
20120609 cod ws2012概要
20120609 cod ws2012概要
Osamu Takazoe
Dockerでらくらく開発・運用を体感しよう
Dockerでらくらく開発・運用を体感しよう
Takashi Makino
2009-03-24 第3回セキュアVMシンポジウム
2009-03-24 第3回セキュアVMシンポジウム
Takahiro Shinagawa
Windows Server 2012 R2 Hyper-V と Windows Azure 勘所
Windows Server 2012 R2 Hyper-V と Windows Azure 勘所
Keiji Kamebuchi
インフラエンジニアなら知っておきたいストレージのはなし@OSC 2012 Nagoya
インフラエンジニアなら知っておきたいストレージのはなし@OSC 2012 Nagoya
Satoshi Shimazaki
Windows Server 2016でコンテナを動かしてみた
Windows Server 2016でコンテナを動かしてみた
Takashi Kanai
仮想化技術によるマルウェア対策とその問題点
仮想化技術によるマルウェア対策とその問題点
Kuniyasu Suzaki
2010-11-02 第1回クラウドコンピューティング基盤シンポジウム(品川)
2010-11-02 第1回クラウドコンピューティング基盤シンポジウム(品川)
Takahiro Shinagawa
Kernel vm#9 powerkvm-dist-20131208
Kernel vm#9 powerkvm-dist-20131208
Manabu Ori
OSvの概要と実装
OSvの概要と実装
Takuya ASADA
Semelhante a BHyVe: The BSD Hypervisor
(20)
Osc2009 Sendai Xen 0124
Osc2009 Sendai Xen 0124
N110 ws12概要 osamut_公開版
N110 ws12概要 osamut_公開版
Osc2009 Do Xen Hara
Osc2009 Do Xen Hara
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
Technology Used in Virtual Machine (Jan 2008)
Technology Used in Virtual Machine (Jan 2008)
20120822_dstn技術交流会_仮想化について
20120822_dstn技術交流会_仮想化について
ソフトウェア工学2023 06 コンテナ仮想化
ソフトウェア工学2023 06 コンテナ仮想化
仮想化技術の基本の基本
仮想化技術の基本の基本
XenServerによるお手軽開発サーバ運用
XenServerによるお手軽開発サーバ運用
SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ
SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ
20120609 cod ws2012概要
20120609 cod ws2012概要
Dockerでらくらく開発・運用を体感しよう
Dockerでらくらく開発・運用を体感しよう
2009-03-24 第3回セキュアVMシンポジウム
2009-03-24 第3回セキュアVMシンポジウム
Windows Server 2012 R2 Hyper-V と Windows Azure 勘所
Windows Server 2012 R2 Hyper-V と Windows Azure 勘所
インフラエンジニアなら知っておきたいストレージのはなし@OSC 2012 Nagoya
インフラエンジニアなら知っておきたいストレージのはなし@OSC 2012 Nagoya
Windows Server 2016でコンテナを動かしてみた
Windows Server 2016でコンテナを動かしてみた
仮想化技術によるマルウェア対策とその問題点
仮想化技術によるマルウェア対策とその問題点
2010-11-02 第1回クラウドコンピューティング基盤シンポジウム(品川)
2010-11-02 第1回クラウドコンピューティング基盤シンポジウム(品川)
Kernel vm#9 powerkvm-dist-20131208
Kernel vm#9 powerkvm-dist-20131208
OSvの概要と実装
OSvの概要と実装
Mais de Takuya ASADA
Seastar:高スループットなサーバアプリケーションの為の新しいフレームワーク
Seastar:高スループットなサーバアプリケーションの為の新しいフレームワーク
Takuya ASADA
高スループットなサーバアプリケーションの為の新しいフレームワーク 「Seastar」
高スループットなサーバアプリケーションの為の新しいフレームワーク 「Seastar」
Takuya ASADA
ヤマノススメ〜秋山郷 de ハッカソン〜
ヤマノススメ〜秋山郷 de ハッカソン〜
Takuya ASADA
OSvのご紹介 in Java 8 HotSpot meeting
OSvのご紹介 in Java 8 HotSpot meeting
Takuya ASADA
OSvパンフレット v3
OSvパンフレット v3
Takuya ASADA
OSvのご紹介 in OSC2014 Tokyo/Fall
OSvのご紹介 in OSC2014 Tokyo/Fall
Takuya ASADA
OSv噺
OSv噺
Takuya ASADA
Linux network stack
Linux network stack
Takuya ASADA
Ethernetの受信処理
Ethernetの受信処理
Takuya ASADA
Presentation on your terminal
Presentation on your terminal
Takuya ASADA
僕のIntel nucが起動しないわけがない
僕のIntel nucが起動しないわけがない
Takuya ASADA
Interrupt Affinityについて
Interrupt Affinityについて
Takuya ASADA
OSvパンフレット
OSvパンフレット
Takuya ASADA
「ハイパーバイザの作り方」読書会#2
「ハイパーバイザの作り方」読書会#2
Takuya ASADA
「ハイパーバイザの作り方」読書会#1
「ハイパーバイザの作り方」読書会#1
Takuya ASADA
10GbE時代のネットワークI/O高速化
10GbE時代のネットワークI/O高速化
Takuya ASADA
Implements BIOS emulation support for BHyVe: A BSD Hypervisor
Implements BIOS emulation support for BHyVe: A BSD Hypervisor
Takuya ASADA
仮想化環境での利用者公平性
仮想化環境での利用者公平性
Takuya ASADA
仮想化環境におけるパケットフォワーディング
仮想化環境におけるパケットフォワーディング
Takuya ASADA
マルチコアとネットワークスタックの高速化技法
マルチコアとネットワークスタックの高速化技法
Takuya ASADA
Mais de Takuya ASADA
(20)
Seastar:高スループットなサーバアプリケーションの為の新しいフレームワーク
Seastar:高スループットなサーバアプリケーションの為の新しいフレームワーク
高スループットなサーバアプリケーションの為の新しいフレームワーク 「Seastar」
高スループットなサーバアプリケーションの為の新しいフレームワーク 「Seastar」
ヤマノススメ〜秋山郷 de ハッカソン〜
ヤマノススメ〜秋山郷 de ハッカソン〜
OSvのご紹介 in Java 8 HotSpot meeting
OSvのご紹介 in Java 8 HotSpot meeting
OSvパンフレット v3
OSvパンフレット v3
OSvのご紹介 in OSC2014 Tokyo/Fall
OSvのご紹介 in OSC2014 Tokyo/Fall
OSv噺
OSv噺
Linux network stack
Linux network stack
Ethernetの受信処理
Ethernetの受信処理
Presentation on your terminal
Presentation on your terminal
僕のIntel nucが起動しないわけがない
僕のIntel nucが起動しないわけがない
Interrupt Affinityについて
Interrupt Affinityについて
OSvパンフレット
OSvパンフレット
「ハイパーバイザの作り方」読書会#2
「ハイパーバイザの作り方」読書会#2
「ハイパーバイザの作り方」読書会#1
「ハイパーバイザの作り方」読書会#1
10GbE時代のネットワークI/O高速化
10GbE時代のネットワークI/O高速化
Implements BIOS emulation support for BHyVe: A BSD Hypervisor
Implements BIOS emulation support for BHyVe: A BSD Hypervisor
仮想化環境での利用者公平性
仮想化環境での利用者公平性
仮想化環境におけるパケットフォワーディング
仮想化環境におけるパケットフォワーディング
マルチコアとネットワークスタックの高速化技法
マルチコアとネットワークスタックの高速化技法
BHyVe: The BSD Hypervisor
1.
BHyVe: The BSD
Hypervisor Takuya ASADA a.k.a @syuu1228 28. Sep. 2012 12年10月4日木曜日
2.
仮想化とFreeBSD 12年10月4日木曜日
3.
仮想化とは?
プロセス プロセス プロセス OS OS OS ハイパーバイザ ハードウェア ハードウェア 従来 仮想化 ✤ 一台のコンピュータ上に複数の仮想的なコンピュータを動作させ、そ れぞれの上でOS・アプリケーションを実行 ✤ 複数のOSを調停するソフトウェア→ハイパーバイザ 12年10月4日木曜日
4.
FreeBSDにおける仮想化の種類 ✤
完全仮想化 VirtualBox, Xen(HVM), BHyVe ✤ 準仮想化 Xen(PVM) ✤ コンテナ型仮想化 Jail 12年10月4日木曜日
5.
完全仮想化
プロセス プロセス 既存OS 既存OS ハイパーバイザ ハードウェア ✤ 実ハードウェアを完全にエミュレートし、既存のOSをそのまま仮想 マシン上で動作させる ↔ 準仮想化 ✤ 高速化の為、ゲストマシンで実行されるプログラムを直接実CPUで 実行 12年10月4日木曜日
6.
ゲストマシンのプログラムの直接実行
カーネルモード(ring0) 特権命令の実行を ハンドル、エミュ レーション実行 特権命令が実行されたら カーネルモードへ遷移 ゲストプログラム を直接実行 ユーザモード(ring3) ✤ 仮想化対象のCPUに期待される動作 ✤ ユーザモードでゲストマシン上のプログラムを直接実行 ✤ システム全体に影響を与える命令(センシティブ命令)はユーザモードから実行出来ない(=特権命令) →トラップが発生してカーネルモードへ遷移 ✤ トラップハンドラで実行しようとした特権命令に合わせてエミュレーション処理を行い、ゲストプログラムの実行に戻る 12年10月4日木曜日
7.
x86アーキテクチャの問題点
カーネルモード(ring0) 特権命令の実行を ハンドル、エミュ レーション実行 ✕ ゲストプログラム を直接実行 ユーザモード(ring3) ✤ 特権命令ではないセンシティブ命令がある →権限が不足していない為トラップされない これの実行を回避する必要がある 12年10月4日木曜日
8.
バイナリトランスレーション ✤
ゲストのプログラムを実行中に書き換え、センシティブ命令をエミュ レーション処理に置き換える事により実行を回避 ✤ 現在では後述のハードウェア仮想化支援が主流になったが、以前はこ れが主流の方式だった 12年10月4日木曜日
9.
ハードウェア仮想化支援機能による 仮想化(Intel
VT, AMD-V) ✤ CPUにRingとは独立した仮想化用のモードを追 ハイパーバイザ ゲストモード 加: モード ハイパーバイザモード、ゲストモード カーネル カーネル ring 0 モード モード ✤ ゲストモードはセンシティブ命令の実行などエ ミュレーションが必要な処理が発生した時点で ring 3 ユーザ ユーザ 中断され、ハイパーバイザモードへ復帰する モード モード ✤ ハードウェアレベルで仮想化に対応する事によ り、仮想化オーバヘッドを低減しながらハイパ ーバイザの実装を単純化出来るようになった 12年10月4日木曜日
10.
VirtualBox
プロセス プロセス ゲストOS ホストOS ハイパーバイザ ハードウェア ✤ BHyVe以外で唯一FreeBSD上で動作するハードウェア仮想化支援対応のハイパーバイザ ✤ ホストカーネル上のドライバとしてハイパーバイザが動作、ゲストマシンは通常のプロセスとして FreeBSDが管理 ✤ デスクトップ用途が中心 ✤ ライセンス:GPLv2 ✤ オラクルが開発、多くのOS上で動作 12年10月4日木曜日
11.
Xen(HVM)
プロセス プロセス dom0 HVM ハイパーバイザ ハードウェア ✤ ハードウェア上で直接Xenハイパーバイザが動作 ✤ ユーザからの操作やハードウェアへのアクセスには「dom0」と呼ばれる準仮想化された管理OSを用いる (FreeBSDは対応していない) ✤ サーバ用途が中心 ✤ ライセンス:GPLv2 ✤ XenハイパーバイザはXenコミュニティで開発 各OSの準仮想化対応はそれぞれのOSのコミュニティ・開発元で開発 12年10月4日木曜日
12.
Linux KVM(参考)
プロセス プロセス ゲストOS ホストOS ハイパーバイザ ハードウェア ✤ ハイパーバイザはLinuxカーネルに統合 ✤ ゲストマシンは通常のプロセスとしてLinuxが管理 ✤ サーバ用途が中心 ✤ ライセンス:GPLv2 ✤ Linuxカーネルコミュニティで開発 12年10月4日木曜日
13.
BHyVe
プロセス プロセス ゲストOS ホストOS ハイパーバイザ ハードウェア ✤ Linux KVMのFreeBSD版! ✤ ハイパーバイザはFreeBSDカーネルに統合 ✤ ゲストマシンは通常のプロセスとしてFreeBSDが管理 ✤ サーバ用途が中心 ✤ ライセンス:BSDL ✤ FreeBSDコミュニティで開発(baseへのマージを目指している) 12年10月4日木曜日
14.
準仮想化 - Xen(PVM)
プロセス プロセス dom0 PVM ハイパーバイザ ハードウェア ✤ 実ハードウェアを完全にエミュレートするのではなく、仮想化に都合が良い構造にゲストOSを改変 センシティブ命令の実行やハードウェアアクセスなどハイパーバイザによるエミュレーションが必要な処理は、ゲストからハイ パーバイザを呼び出す「ハイパーバイザコール」に置き換え ✤ 高速化の為、ゲストマシンで実行されるプログラムを直接実CPUで実行 センシティブ命令の実行など実行されてはまずい処理は予め書き換えられているので、バイナリトランスレーションやハードウ ェア仮想化支援を必要としない ✤ 現在ではハードウェア仮想化支援(HVM)を使う事が多くなったが、登場時はハードウェア仮想化は未だ存在しておらず、バイ ナリトランスレーションよりもいくつかのベンチマークで性能が高く、オーバヘッドも低かった 12年10月4日木曜日
15.
準仮想化デバイス ✤
完全仮想化環境で用いられているHDDやNICなどの仮想デバイスは実デ バイスをエミュレートしているのでゲストOS上の既存のドライバが使え るが、ゲスト・ハイパーバイザ間のモード切り替え回数が無駄に多い、 メモリコピーが発生するなど必ずしも性能が高くない ✤ 準仮想化環境で用いられている仮想デバイスはゲスト・ハイパーバイザ 間のデータのやり取りに最適化されている為、既存デバイスのエミュレ ーションよりも性能が高い ✤ 準仮想化デバイスを完全仮想化環境にも導入しよう→ virtio BHyVeでも使用 12年10月4日木曜日
16.
コンテナ型仮想化
プロセス プロセス コンテナ OS ハードウェア ✤ 1つのOS上に擬似的に複数のOS環境を作り、OSの各種リソース情報をコンテナごと に別々に管理する事により、プロセスに対し別々のOSであるかのように見せかける ✤ オーバヘッドは最も低いが、OSは1つしか動作していないので再起動やpanicには全 コンテナが巻き込まれる、1つのバージョンのOSにしか対応しない、異なるOSの混 在環境は作れないなどの制約がある 12年10月4日木曜日
17.
コンテナ型仮想化 ✤
chroot あるプロセスに対して、あるディレクトリをルートディレクトリに見せる (ls /しても指定したディレクトリより上位ディレクトリは見えない) ✤ jail chrootに加えて、プロセス空間も独立 (ps axを実行してもjailの外側のプロセスは見えない) ✤ jail + VIMAGE 更にネットワークスタックも独立 (netstat -nrを実行してもjailの外側のルーティングテーブルは見えない) 12年10月4日木曜日
18.
BHyVe詳解 12年10月4日木曜日
19.
BHyVeとは ✤
Linux KVMのようなFreeBSDカーネルに統合されたハイパーバイザ ✤ FreeBSD 10へのマージを目指して開発中 ✤ Intel VT-x、EPT対応CPUで動作(Nehalem以降のIntel CPU) ✤ 対応しているホストOS:FreeBSD 8.1 - 10/amd64(無変更) ✤ 対応しているゲストOS:FreeBSD 7.2 - 10/amd64(要改造) ✤ 対応デバイス:仮想ディスク、仮想NIC、仮想コンソール、PCIパススルー ✤ SMP対応(最大8コア) 12年10月4日木曜日
20.
BHyVe実演
自分でも試してみたい人は http://callfortesting.org/bhyve/ をチェック! 12年10月4日木曜日
21.
/boot/loader.conf
hw.physmem="0x100000000" vmm_load=”YES” ✤ hw.physmemでホストOSのメモリサイズを制限 (0x100000000 = 4GB) ✤ BHyVeのカーネルモジュールであるvmm.koをロード 12年10月4日木曜日
22.
/usr/sbin/bhyveload
# /usr/sbin/bhyveload -m 256 -h /usr/guest myguest # ls /dev/vmm myguest ✤ VMインスタンス(/dev/vmm/$VMNAME)を作成し、BSDカーネルをVMインスタ ンスのメモリ領域にロードして起動可能な状態を作る ✤ BIOSが無いのでディスクイメージのブートセクタから起動できない。代わりに、 bhyveloadにより64bitモードでFreeBSDカーネルを実行する為の様々な初期化処理を行 なっている ✤ ロードするだけで実行はしない。ブートローダが走っているように見えるのは、ホスト OSへ移植されたゲスト専用のブートローダが動いているだけ 12年10月4日木曜日
23.
/usr/sbin/bhyve
# /usr/sbin/bhyve -c 2 -m 256 -s 1,virtio-net,tap0 -s 2,virtio-blk,/usr/guest/diskdev.img myguest ✤ bhyveloadが初期化したVMインスタンスを実行し、ディスク、NIC、 コンソールなどのデバイスエミュレーション処理を行う ✤ VMインスタンスの状態は、プロセス内ではなく/dev/vmm/ $VMNAMEというデバイス上、つまりカーネル内に保持される。こ のファイルへread(), write(), mmap()する事によりVM内のメモリ空間 にアクセス出来る 12年10月4日木曜日
24.
カーネルとユーザランドの役割分担
ハイパーバイザモード ゲストモード ゲストOS カーネル FreeBSDカーネル vmm.ko ioctl ユーザ 仮想デバイス /usr/sbin/bhyve ✤ 各デバイスのエミュレーション、仮想マシンのコンソールなどのUIはユーザ ランドで動作する/usr/sbin/bhyveが受け持つ ✤ VT-xの機能を用い、CPUをゲストモードへ切り替えるのはカーネルにロー ドされたvmm.koが受け持つ 12年10月4日木曜日
25.
メモリ仮想化 ✤
hw.physmemで制限されたメモリ領域の外側から仮想マシン起動時に 固定的に割り付け ✤ 仮想マシン間のページ共有無し ✤ オンデマンドメモリ割り付け無し ✤ これにより、PCIパススルー時のメモリマップが簡単になった 12年10月4日木曜日
26.
PCIパススルー ✤
Intel VT-dにより物理PCIデバイスをパススルー ✤ IOAPICエミュレーションを持たない為、レガシ割り込みは非サポー ト MSI割り込みのみをサポート(MSI-X割り込みも非サポート) ✤ ホストOSで割り込みを受け取ってゲストへ送り込むため、ホストに stubドライバが必要 12年10月4日木曜日
27.
virtio ✤
virtioの仕様に沿ったvirtio-net, virtio-blkをサポート http://ozlabs.org/~rusty/virtio-spec/virtio-paper.pdf ✤ virtio-netは/dev/tapNを通してイーサネットフレームを送受信 ✤ virtio-blkはホストファイルシステム上のディスクイメージを読み書き 12年10月4日木曜日
28.
パフォーマンス
make buildworld 1500 1125 750 375 0 Bare Metal Partitioned Virtualized build time(sec) ✤ /usr/srcをNFS上に/usr/objをローカルディスクにおいた時の make build world時の速度を比較 12年10月4日木曜日
29.
ゲストカーネルの変更点 ✤
カスタムコンソール&デバッグポート → com0 emulationかVGA emulationが必要 ✤ Local APICはMSR経由でアクセス(MMIO非サポートの為) → Local APIC MMIO supportが必要 ✤ セカンダリプロセッサを直接64bitモードで起動 → BIOS emulationが必要(?) 12年10月4日木曜日
30.
実装中の機能 ✤
BIOS emulation (@syuu1228‘s Google Summer of Code 2012 project) ✤ Guest suspend/resume (@iorivur) ✤ AHCI emulation? ✤ MMIO local APIC? ✤ IOAPIC emulation? ✤ AMD-V support? ✤ Older Intel CPU support(without EPT)? 12年10月4日木曜日
31.
やってくれる人がいるといいな ✤
libvirt対応 ✤ NetBSD, OpenBSD, Linuxなどのローダ ✤ PCIパススルーのテスト 12年10月4日木曜日
32.
最新情報はこちらまで ✤
http://bhyve.org/ ✤ @syuu1228 12年10月4日木曜日
Baixar agora