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
180
自作OSのその手前 UEFI OSローダの作成
2019/06/02の学生LTで発表したスライド資料です。
Totsugekitai
June 02, 2019
Tweet
Share
More Decks by Totsugekitai
See All by Totsugekitai
自作OSへの排他制御の実装
totsugekitai
0
580
AHCIに対応したい
totsugekitai
0
640
x86_64での自作OS - サイボウズ・ラボユース 成果発表会
totsugekitai
0
740
フルスクラッチOS格闘記 〜タイマ割り込みをメインに〜
totsugekitai
0
830
Other Decks in Programming
See All in Programming
DevFest Android in Korea 2025 - 개발자 커뮤니티를 통해 얻는 가치
wisemuji
0
180
PC-6001でPSG曲を鳴らすまでを全部NetBSD上の Makefile に押し込んでみた / osc2025hiroshima
tsutsui
0
200
Navigation 3: 적응형 UI를 위한 앱 탐색
fornewid
1
530
Rubyで鍛える仕組み化プロヂュース力
muryoimpl
0
340
Grafana:建立系統全知視角的捷徑
blueswen
0
280
CSC307 Lecture 02
javiergs
PRO
1
740
CSC307 Lecture 01
javiergs
PRO
0
650
The Art of Re-Architecture - Droidcon India 2025
siddroid
0
160
AI Agent Tool のためのバックエンドアーキテクチャを考える #encraft
izumin5210
6
1.6k
안드로이드 9년차 개발자, 프론트엔드 주니어로 커리어 리셋하기
maryang
1
150
クラウドに依存しないS3を使った開発術
simesaba80
0
220
これならできる!個人開発のすゝめ
tinykitten
PRO
0
140
Featured
See All Featured
Into the Great Unknown - MozCon
thekraken
40
2.2k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.9k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
360
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
1
270
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Documentation Writing (for coders)
carmenintech
77
5.2k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
37
Designing for Performance
lara
610
70k
Utilizing Notion as your number one productivity tool
mfonobong
2
190
Scaling GitHub
holman
464
140k
HDC tutorial
michielstock
1
300
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