SlideShare a Scribd company logo
1 of 30
軽快なPlan 9 Update
- Illumos KVM上陸 -
筑波大学システム情報工学研究科 / paravirt.org
         齊藤 剛 / @go_vm



               2012年4月22日 @IIJ
                Kernel/VM探検隊7
軽快なPlan 9では
これをやったのでした
ハイパーコール

•   ハイパーコールで、ホ




                    non-root
    ストのsocketを呼び出




                     mode
                               ゲストOS
    す


•   ゲストはネットワーク
    に繋がってないのに、
                    mode
                    root
                                VMM
    通信できちゃう!
ハイパーコール

•   ハイパーコールで、ホ




                    non-root
    ストのsocketを呼び出




                     mode
                               ゲストOS
    す
                                      vmcall

•   ゲストはネットワーク
    に繋がってないのに、
                    mode
                    root
                                VMM
    通信できちゃう!
ときに

• Linux KVMが、Illumosに移植されました
 • 米Joyent社の成果
  (Node.js とかもやっているところ)
コードの構造は殆ど同じ


•   Linux KVMが読めれ
    ば、同じように読める
    はず


•   ただしBSDスタイル
床抜き可能
<床抜き>
Demo
床抜き

•   vmcall handlerに手をい
    れて


•   処理をqemu-kvmまで
    降ろす



カーネル側
床抜き

•   vmcall handlerに手をい
    れて


•   処理をqemu-kvmまで
    降ろす



    qemu側
スタブジェネレータ



• Clojureで書きました
• 床抜きコードのひな形を吐きます
ひな形が吐かれる


•   ホスト側
ひな形が吐かれる


•   ゲスト側
処理を書く


•   socketとか
    呼ぶ
処理を書く

•   socket()

•   connect()

•   send(GET HTTP)

•   recv()
OpenBSDに埋め込む
boot


•   OpenBSDのboot中に...
!?
ネットはつながってない
床が抜けてる

•   OpenBSDの起動中に、




                      non-root
                       mode
                                  OpenBSD
    床下のsocketを呼びま
    した


•   Illumos KVMでもでき
                      mode
                      root
    たよ!                          Illumos KVM
床が抜けてる

•   OpenBSDの起動中に、




                      non-root
                       mode
                                  OpenBSD
    床下のsocketを呼びま
    した                                   vmcall


•   Illumos KVMでもでき
                      mode
                      root
    たよ!                          Illumos KVM
</床抜き>
Illumos KVM上陸
まじめな話
•   Illumos KVMが使えると

    •   ネットワークの設定が楽

        •   Linux
            •   brctl? tun/tap???
        •   Illumos
            •   sudo dladm create-vnic -l e1000g0 vnic0
            •   コマンド一発
まじめな話
    •   DTraceが使える


        •   いろんなイベ
            ントを観察で
            きる


        •   デバッグや性
            能解析に便利
文化的交流


• たまにはSolarisも使ってみると、面白く
 ていいよ!
以上

More Related Content

What's hot

Eucalyptus on OpenStack
Eucalyptus on OpenStackEucalyptus on OpenStack
Eucalyptus on OpenStack
irix_jp
 

What's hot (20)

勉強会0614 vagrant
勉強会0614 vagrant勉強会0614 vagrant
勉強会0614 vagrant
 
UEFI時代のブートローダ
UEFI時代のブートローダUEFI時代のブートローダ
UEFI時代のブートローダ
 
Unsafe Nested Virtualization on Intel CPU
Unsafe Nested Virtualization on Intel CPUUnsafe Nested Virtualization on Intel CPU
Unsafe Nested Virtualization on Intel CPU
 
Play with UEFI
Play with UEFIPlay with UEFI
Play with UEFI
 
Free bsd jail入門
Free bsd jail入門Free bsd jail入門
Free bsd jail入門
 
NetBSD on Google Compute Engine
NetBSD on Google Compute EngineNetBSD on Google Compute Engine
NetBSD on Google Compute Engine
 
Docker運用(入門編)
Docker運用(入門編)Docker運用(入門編)
Docker運用(入門編)
 
Eucalyptus on OpenStack
Eucalyptus on OpenStackEucalyptus on OpenStack
Eucalyptus on OpenStack
 
KVM Cluster with DRBD, ioDrive2 and Infiniband (130802 OSC京都)
KVM Cluster with DRBD, ioDrive2 and Infiniband (130802 OSC京都)KVM Cluster with DRBD, ioDrive2 and Infiniband (130802 OSC京都)
KVM Cluster with DRBD, ioDrive2 and Infiniband (130802 OSC京都)
 
opencoconの作り方 (オープンソースカンファレンス2015 Tokyo/Spring 小江戸らぐセミナー)
opencoconの作り方 (オープンソースカンファレンス2015 Tokyo/Spring 小江戸らぐセミナー)opencoconの作り方 (オープンソースカンファレンス2015 Tokyo/Spring 小江戸らぐセミナー)
opencoconの作り方 (オープンソースカンファレンス2015 Tokyo/Spring 小江戸らぐセミナー)
 
ここんとーく in 大分 (opencoconのご紹介と次期バージョンの予告)
ここんとーく in 大分 (opencoconのご紹介と次期バージョンの予告)ここんとーく in 大分 (opencoconのご紹介と次期バージョンの予告)
ここんとーく in 大分 (opencoconのご紹介と次期バージョンの予告)
 
Kernel bootstrap
Kernel bootstrapKernel bootstrap
Kernel bootstrap
 
32bit UEFIマシンで遊ぶ
32bit UEFIマシンで遊ぶ32bit UEFIマシンで遊ぶ
32bit UEFIマシンで遊ぶ
 
帰ってきた凄い謎マシン (ARMのDevice Tree話, 2015年6月 東海道らぐ浜松)
帰ってきた凄い謎マシン (ARMのDevice Tree話, 2015年6月 東海道らぐ浜松)帰ってきた凄い謎マシン (ARMのDevice Tree話, 2015年6月 東海道らぐ浜松)
帰ってきた凄い謎マシン (ARMのDevice Tree話, 2015年6月 東海道らぐ浜松)
 
/dev/kvmを直接叩いて自作VM
/dev/kvmを直接叩いて自作VM/dev/kvmを直接叩いて自作VM
/dev/kvmを直接叩いて自作VM
 
Kyoto.pm 20120818-hogem
Kyoto.pm 20120818-hogemKyoto.pm 20120818-hogem
Kyoto.pm 20120818-hogem
 
謎PCとの付き合い方(LILO東海道 2015/5発表分)
謎PCとの付き合い方(LILO東海道 2015/5発表分)謎PCとの付き合い方(LILO東海道 2015/5発表分)
謎PCとの付き合い方(LILO東海道 2015/5発表分)
 
Linux KVMではじめるカンタン仮想化入門
Linux KVMではじめるカンタン仮想化入門Linux KVMではじめるカンタン仮想化入門
Linux KVMではじめるカンタン仮想化入門
 
Xenとzfsで作る家庭内VDIサーバ
Xenとzfsで作る家庭内VDIサーバXenとzfsで作る家庭内VDIサーバ
Xenとzfsで作る家庭内VDIサーバ
 
GPU仮想化最前線 - KVMGTとvirtio-gpu -
GPU仮想化最前線 - KVMGTとvirtio-gpu -GPU仮想化最前線 - KVMGTとvirtio-gpu -
GPU仮想化最前線 - KVMGTとvirtio-gpu -
 

Viewers also liked (10)

20apr2012 kernelvm7-main
20apr2012 kernelvm7-main20apr2012 kernelvm7-main
20apr2012 kernelvm7-main
 
Listen grep
Listen grepListen grep
Listen grep
 
Nyarlathotep
NyarlathotepNyarlathotep
Nyarlathotep
 
つくっておぼえる!仮想マシン〜直前で実装編〜
つくっておぼえる!仮想マシン〜直前で実装編〜つくっておぼえる!仮想マシン〜直前で実装編〜
つくっておぼえる!仮想マシン〜直前で実装編〜
 
x86-64/Linuxに独自メモリ空間を勝手増設
x86-64/Linuxに独自メモリ空間を勝手増設x86-64/Linuxに独自メモリ空間を勝手増設
x86-64/Linuxに独自メモリ空間を勝手増設
 
Xとかオワコン?
Xとかオワコン?Xとかオワコン?
Xとかオワコン?
 
Power shell で DSL
Power shell で DSLPower shell で DSL
Power shell で DSL
 
Exploring the Performance Impact of Virtualization on an HPC Cloud
Exploring the Performance Impact of Virtualization on an HPC CloudExploring the Performance Impact of Virtualization on an HPC Cloud
Exploring the Performance Impact of Virtualization on an HPC Cloud
 
クラウドの垣根を超えた高性能計算に向けて~AIST Super Green Cloudでの試み~
クラウドの垣根を超えた高性能計算に向けて~AIST Super Green Cloudでの試み~クラウドの垣根を超えた高性能計算に向けて~AIST Super Green Cloudでの試み~
クラウドの垣根を超えた高性能計算に向けて~AIST Super Green Cloudでの試み~
 
OSvの概要と実装
OSvの概要と実装OSvの概要と実装
OSvの概要と実装
 

Similar to 軽快なPlan 9 Update - Illumos KVM上陸 -

#ljstudy KVM勉強会
#ljstudy KVM勉強会#ljstudy KVM勉強会
#ljstudy KVM勉強会
Etsuji Nakai
 
OpenFlow in IaaS - Wakame
OpenFlow in IaaS - WakameOpenFlow in IaaS - Wakame
OpenFlow in IaaS - Wakame
axsh co., LTD.
 

Similar to 軽快なPlan 9 Update - Illumos KVM上陸 - (20)

コンテナ型仮想化とはなんだったのか
コンテナ型仮想化とはなんだったのかコンテナ型仮想化とはなんだったのか
コンテナ型仮想化とはなんだったのか
 
カーネル空間ですべてのプロセスを動かすには -TAL, SFI, Wasmとか - カーネル/VM探検隊15
カーネル空間ですべてのプロセスを動かすには -TAL, SFI, Wasmとか - カーネル/VM探検隊15カーネル空間ですべてのプロセスを動かすには -TAL, SFI, Wasmとか - カーネル/VM探検隊15
カーネル空間ですべてのプロセスを動かすには -TAL, SFI, Wasmとか - カーネル/VM探検隊15
 
ソフトウェア工学2023 06 コンテナ仮想化
ソフトウェア工学2023 06 コンテナ仮想化ソフトウェア工学2023 06 コンテナ仮想化
ソフトウェア工学2023 06 コンテナ仮想化
 
近頃のDockerネットワーク
近頃のDockerネットワーク近頃のDockerネットワーク
近頃のDockerネットワーク
 
Osc2009 Do Xen Hara
Osc2009 Do Xen HaraOsc2009 Do Xen Hara
Osc2009 Do Xen Hara
 
Backdoor!! vmware-tools と 統合サービスに見るハイパーバイザの呼び出し方
Backdoor!! vmware-tools と 統合サービスに見るハイパーバイザの呼び出し方Backdoor!! vmware-tools と 統合サービスに見るハイパーバイザの呼び出し方
Backdoor!! vmware-tools と 統合サービスに見るハイパーバイザの呼び出し方
 
Linuxカーネルモジュール自作入門 kprobesでカーネル空間ブレークポイント
Linuxカーネルモジュール自作入門 kprobesでカーネル空間ブレークポイントLinuxカーネルモジュール自作入門 kprobesでカーネル空間ブレークポイント
Linuxカーネルモジュール自作入門 kprobesでカーネル空間ブレークポイント
 
OSvのご紹介 in OSC2014 Tokyo/Fall
OSvのご紹介 in OSC2014 Tokyo/FallOSvのご紹介 in OSC2014 Tokyo/Fall
OSvのご紹介 in OSC2014 Tokyo/Fall
 
おにいぽんでもわかるContainer
おにいぽんでもわかるContainerおにいぽんでもわかるContainer
おにいぽんでもわかるContainer
 
Docker入門
Docker入門Docker入門
Docker入門
 
仮想化技術によるマルウェア対策とその問題点
仮想化技術によるマルウェア対策とその問題点仮想化技術によるマルウェア対策とその問題点
仮想化技術によるマルウェア対策とその問題点
 
VMwareユーザのためのdocker入門 ~Re:Virtualization Night #1~
VMwareユーザのためのdocker入門 ~Re:Virtualization Night #1~VMwareユーザのためのdocker入門 ~Re:Virtualization Night #1~
VMwareユーザのためのdocker入門 ~Re:Virtualization Night #1~
 
#ljstudy KVM勉強会
#ljstudy KVM勉強会#ljstudy KVM勉強会
#ljstudy KVM勉強会
 
Dockerでらくらく開発・運用を体感しよう
Dockerでらくらく開発・運用を体感しようDockerでらくらく開発・運用を体感しよう
Dockerでらくらく開発・運用を体感しよう
 
OpenShift from Easy way to Hard ? Way
OpenShift from Easy way to Hard ? WayOpenShift from Easy way to Hard ? Way
OpenShift from Easy way to Hard ? Way
 
Hotoの奇妙な挑戦 〜 Swiftクルセイダーズ 〜
Hotoの奇妙な挑戦 〜 Swiftクルセイダーズ 〜Hotoの奇妙な挑戦 〜 Swiftクルセイダーズ 〜
Hotoの奇妙な挑戦 〜 Swiftクルセイダーズ 〜
 
濱せっく出張版 #3 LT
濱せっく出張版 #3 LT濱せっく出張版 #3 LT
濱せっく出張版 #3 LT
 
コモディティL3SW/ルータでオープンなSDNを実現しよう
コモディティL3SW/ルータでオープンなSDNを実現しようコモディティL3SW/ルータでオープンなSDNを実現しよう
コモディティL3SW/ルータでオープンなSDNを実現しよう
 
OpenFlow in IaaS - Wakame
OpenFlow in IaaS - WakameOpenFlow in IaaS - Wakame
OpenFlow in IaaS - Wakame
 
OpenIndiana+KVMによる仮想マシン
OpenIndiana+KVMによる仮想マシンOpenIndiana+KVMによる仮想マシン
OpenIndiana+KVMによる仮想マシン
 

Recently uploaded

Recently uploaded (10)

Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 

軽快なPlan 9 Update - Illumos KVM上陸 -

Editor's Notes

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n