Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
自作OSのその手前 UEFI OSローダの作成
Search
Totsugekitai
June 02, 2019
Programming
0
150
自作OSのその手前 UEFI OSローダの作成
2019/06/02の学生LTで発表したスライド資料です。
Totsugekitai
June 02, 2019
Tweet
Share
More Decks by Totsugekitai
See All by Totsugekitai
自作OSへの排他制御の実装
totsugekitai
0
530
AHCIに対応したい
totsugekitai
0
600
x86_64での自作OS - サイボウズ・ラボユース 成果発表会
totsugekitai
0
690
フルスクラッチOS格闘記 〜タイマ割り込みをメインに〜
totsugekitai
0
770
Other Decks in Programming
See All in Programming
20250426 GDGoC 合同新歓 - GDGoC のススメ
getty708
0
120
クラシルリワードにおける iOSアプリ開発の取り組み
funzin
1
160
「理解」を重視したAI活用開発
fast_doctor
0
320
Design Pressure
hynek
0
160
JAWS DAYS 2025 re_Cheers: WEB
komakichi
0
130
ComposeでのPicture in Picture
takathemax
0
140
個人開発の学生アプリが企業譲渡されるまで
akidon0000
2
1.2k
20250429 - CNTUG Meetup #67 / DevOps Taiwan Meetup #69 - Deep Dive into Tetragon: Building Runtime Security and Observability with eBPF
tico88612
0
190
VitestのIn-Source Testingが便利
taro28
9
2.5k
“技術カンファレンスで何か変わる?” ──RubyKaigi後の自分とチームを振り返る
ssagara00
0
150
UMAPをざっくりと理解 / Overview of UMAP
kaityo256
PRO
3
1.6k
私のRubyKaigi 2025 Kaigi Effect / My RubyKaigi 2025 Kaigi Effect
chobishiba
1
170
Featured
See All Featured
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3k
How to train your dragon (web standard)
notwaldorf
91
6k
Scaling GitHub
holman
459
140k
How GitHub (no longer) Works
holman
314
140k
Product Roadmaps are Hard
iamctodd
PRO
53
11k
Visualization
eitanlees
146
16k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
41
2.3k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
810
Become a Pro
speakerdeck
PRO
28
5.3k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
14
1.5k
RailsConf 2023
tenderlove
30
1.1k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
5
580
Transcript
ࣗ࡞OSͷͦͷखલ UEFI OSϩʔμͷ࡞ ಥܸୂ @totsugeki8 1
ࣗݾհ HN: ಥܸୂ πΠολʔ: @totsugeki8 GitHub: Totsugekitai ஜେֶใՊֶྨ2 य़ٳΈ͔ΒϨΠϠʔͬͱΔ
ΈΜͳ…… ࣗ࡞OSͬͯ…… ͬͯ͠Δ͔ͳ……ʁ 3
ࣗ࡞OSͱ…… ͍͏ͷͶ…… ͨͱ͑…… 4
γεςϜίʔϧΛΘͣʹը໘ ඳը͢Δͱ…… ؾ͕͍͍࣋ͪɺͱ͔…… 5
ࣗͰϓϩηεཧγεςϜΛ ॻ͍ͨΓ͢Δͱ…… ؾ͕͍͍࣋ͪɻ 6
ͱ͍ͬͨ͜ͱΛ…… ʮࣗ࡞OSʯͱ͍͏Μͩɻ 7
ࠓճLT͢ΔྖҬ ίίʂ 8
UEFIͱ Unified Extensible Firmware Interface ͷུ ϑΝʔϜΣΞͷن֨Ͱ͢ ϨΨγʔBIOSͷѱ͍෦Λվળ ͳΜ͔͍͍ײ͡ʹσόΠεʹ͞ΘΕΔAPI͕ͨ͘͞Μ͋Δ Cݴޠ͕͑Δʢ͍͑ͬ͢͝ʂʁʣ
9
ͪͳΈʹϨΨγʔBIOS… Ξηϯϒϥ… 0x7c00… ͦͷ΄͔ʹଟ͗͢ΔϚδοΫφϯόʔ… ཧ༝: IBMͷ͓͡͞Μ͕উखʹܾΊͨͷ͔ͩΒ 10
UEFICݴޠ͕͑Δ…… ΠϯλʔϑΣʔεඋ͞Ε͍ͯΔ……
͋ΕʁAPIୟ͚ͩ͘ͳΒॻ͚ΔΜ ͡ΌͶʁ 12
ͱ͍͏͜ͱͰॻ͍ͨ APIୟ͍ͯϑϨʔϜόοϑΝͷΞυϨεΛऔಘ ΧʔωϧʢʁʣͷϓϩάϥϜΛϝϞϦʹஔ ExitBootServicesͱ͍͏APIΛୟ͍ͯUEFIڥ͔Βग़ ϝϞϦ্ͷΧʔωϧϓϩάϥϜʹδϟϯϓʢ͚ͩ͜͜Ξη ϯϒϥ͕ඞཁʣ 13
ΧʔωϧͷϓϩάϥϜ ϑϨʔϜόοϑΝͷΞυϨεͱαΠζΛҾʹड͚औΔ ϑϨʔϜόοϑΝʹΧϥʔίʔυΛॻ͖ࠐΉ ͜Ε͚ͩʂ 14
݁Ռ……ʁʁʁ 15
Ͱ͖ͨͧʂʂʂʂʂʂʂʂʂʂ 16
͋Ε……ʁʁ 17
ඍົʹ͚ܽͯΔ…… 18
͜Ε͔ΒؤுΓ·͢ʂ 19
࣮Ұࡢʹ͘͢͝ਐḿग़ͨ 20
• GitHubͷϦϙδτϦ • https://github.com/Totsugekitai/minOS 21