Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
すごいBareflank楽しく学ぼう!
Search
morimolymoly
November 11, 2018
Technology
160
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
すごいBareflank楽しく学ぼう!
ゆるふわ入門編
morimolymoly
November 11, 2018
More Decks by morimolymoly
See All by morimolymoly
AVTOKYO2022
morimolymoly
0
2.6k
Linuxの改造とパッチ
morimolymoly
1
3.7k
Porting Golang Runtime To Baremetal
morimolymoly
1
140
Other Decks in Technology
See All in Technology
OSC2026on_the-world-is-waiting-for-your-voice.pdf
naruoga
0
360
脆弱性診断って、何をしているの? 〜弱点を見つけて、会社の改善につなげるまで〜
keeg
0
700
ブラウザとサーバーから考えるAI時代のフロントエンド監視
shogo4131
2
530
AIは爆速なのに、私が詰まっていた話 ― 音声入力と鳴くマスコットでボトルネックを削る
yama3133
0
550
生成AIと進める探索的データ分析(2026.10.03 第122回Tokyo.R勉強会)
tatamiya
2
1.4k
LocalStack を使ったサーバーレスアプリケーション開発 / Serverless Development with LocalStack
kakakakakku
1
310
3つのアプローチで目指す チームを強くするAI駆動開発
thkt
0
140
Claude Code本は、どのように執筆チームで書かれたか
oikon48
1
340
Execution in the Kingdom of Agents: Reflections on Abstraction and Complexity
bcantrill
0
880
AI Made Us Faster at Solving the Wrong Problems
marceloancelmo
0
190
あなたの知らないAmazon VPC Route Server/Amazon VPC Route Server you don't know about
masakiokuda
2
240
「事実」を「計測」して、「解釈」する 〜AWS Lambdaのメモリ最適解の見つけ方〜
maimyyym
0
120
Featured
See All Featured
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
18k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
30 Presentation Tips
portentint
PRO
1
420
Evolving SEO for Evolving Search Engines
ryanjones
0
310
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
1k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
550
Fashionably flexible responsive web design (full day workshop)
malarkey
409
67k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
390
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
Designing for Performance
lara
612
70k
Transcript
͍͢͝Bareflankָ͠ ֶ͘΅͏ʂ @Dentoo.LT #21 @morimolymoly
͜Μʹͪ
ࢲ morimolymoly a.k.a. ήΩΧϫͶ͜ΈΈϝΠυ řŐŕŲƄ:morimolymoly.com আ ීஈͬͯΔ͜ͱ • ใηΩϡϦςΟ •
Hypervisor • Twitter • ΞΠΧπ@10߸ؗΞΠΧπࢹௌεϖʔε ࣮MMA෦һͳΜͰ͢Ͷʙʙʙʙ
আ
ͯ͞ɼ
͘͡ • Hypervisorͱʁ • Bareflankͬͯͳʹ • Ͱ͖Δ͜ͱ • ͭΒ͍͜ͱ •
ৄղ Bareflank’s ϏϧυγεςϜ(͕࣌ؒ͋Ε -> ͳͦ͞ ͏ͳͷͰϒϩάͰॻ͘)
ΏΔ;Θʹೖ͍ͯ͠ ͖·͢
Let’s get started!
Hypervisorͱ ԾϚγϯΛཧ͢ΔͨΊͷγεςϜ Type1 - Baremetal Type2 - Host ϋʔυΣΞ Hypervisor
VM VM VM ϋʔυΣΞ Hypervisor VM VM VM ήετOS • Xen • KVM • Hyper-V • Bitvisor • VirtualBox • Qemu • Bochs
Is Կ •Hypervisor։ൃϑϨʔϜϫʔΫ •Type-1,2͕ͭ͘ΕΔʂ •LinuxɼWIndowsɼUEFIʹରԠ •x86-64ରԠ •ถۭ܉ݚڀॴൃͷελʔτΞοϓ͕։ൃ •ϕΞϝλϧͳͷʹC++Ͱ͔͚Δʂ •ͱͱͷ࣮͕͘͢͝ബ͍(࣮͕Ѳ͍͢͠) •։ൃָ͕ʂ(։ൃָ͕ͱݴ͍ͬͯͳ͍)
ͦ͢͝͏(খฒײ)
͏Ε͍͜͠ͱ • ࣮͕ബ͍ͷͰίʔυϦʔσΟϯάָ • ԾԽؔͷߏମ͕·ͱ·ͬͯͯΑ͖ • ϏϧυγεςϜ͕CMakeͰ·Ε͍ͯͯΏΔ;Θ • ϞμϯͳC++Ͱॻ͚Δͷ͏Ε͍͠ͱࢥ͏ •
STL͕͔ͭ͑Δ • gitterͰ࣭͢Δͱ։ൃऀ͕͘͞͠ڭ͑ͯ͘ΕΔ •
ͭΒ͍͜ͱ • ബ͍ϑϨʔϜϫʔΫ -> ࣗͰ༻ҙ͠Ζ • υΩϡϝϯτ͕ແ(͋Δ͚Ͳݹ͍) -> ςετίʔυ͋Δ͍͍͠? ->
ίϯτϦϏϡʔγϣϯͷ νϟϯε? ଞͷHypervisor(Xen, Bitvisor)ͷιʔεͱIntel SDMΛಡΊʂ͆
Αͦ͞͏จݙ • ʰϋΠύʔόΠβͷ࡞Γํʱhttp://syuu1228.github.io/howto_implement_hypervisor/ • ʰHypervisor From Scratchʱhttps://rayanfam.com/topics/hypervisor-from-scratch- part-1/ • Intel
SDM • Bitvisorͷιʔε - thin hypervisorͷྲّྀ͕Θ͔Δ(PassThrough Driverͱ͔) Γ͍ͨ͜ͱʹΑͬͯಡΉจݙ͋Γ͑Μଟ͘ͳΔ
۩ମతͳ֦ுํ๏ʁ • vcpuΫϥε(VMͷίΞ෦)Λܧঝͨ͠ΫϥεΛ࡞͢Δ͚ͩ
;Μ͍͖
ྫ ࢀߟ: http://github.com/Tr4pMafia • syscall -MSR-IA32-LSTARͷվ͟ΜʹΑΔsyscall໋ྩͷtrap • Int3 - INT3ͷtrap
• starter_kit - γϯϓϧͳ֦ு ࠓύεεϧʔυϥΠόͷ࣮ͱ͔Λ;͘Ή͍͍ײ͡ͷHypervisorΛ։ൃ͍ͯ͠Δ
͓ΘΓ