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を楽しむ
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
domitry
September 08, 2013
Programming
1.3k
1
Share
自作OSを楽しむ
OS自作はなぜ皆挫折するのか?挫折しない方法は?OS自作の楽しみ方を考えました。
KC3のLTで発表しました。
domitry
September 08, 2013
More Decks by domitry
See All by domitry
Topics about SciRuby @dcmodel/davis tutorial, Kobe
domitry
0
230
The Elements of Statistical Learning 読書会 3.4章
domitry
0
320
PCで絵をかこう!
domitry
0
590
JavaScript&可視化講習会#1
domitry
1
700
精神は物理的に記述できるか
domitry
0
180
RubyとFortranの話
domitry
0
380
Nyaplot - a data visualization tool for Ruby
domitry
3
740
Nyaplotの紹介@U-22プロコン
domitry
1
200
D3.js入門
domitry
0
4.3k
Other Decks in Programming
See All in Programming
Agent Skills を社内で育てる仕組み作り
jackchuka
1
1.4k
ふにゃっとしない名前の付け方 〜哲学で茹で上げる、コシのあるソフトウェア設計〜
shimomura
0
110
ソフトウェア設計の結合バランス #phperkaigi
kajitack
0
490
「話せることがない」を乗り越える 〜日常業務から登壇テーマをつくる思考法〜
shoheimitani
4
970
HTML-Aware ERB: The Path to Reactive Rendering @ RubyKaigi 2026, Hakodate, Japan
marcoroth
0
640
PHPでバイナリをパースして理解するASN.1
muno92
PRO
0
420
Kubernetesを使わない環境にもCloud Nativeなデプロイを実現する / Enabling Cloud Native deployments without the complexity of Kubernetes
linyows
3
300
Making the RBS Parser Faster
soutaro
0
660
Explore CoroutineScope
tomoeng11
0
160
How We Benchmarked Quarkus: Patterns and anti-patterns
hollycummins
1
180
アクセシビリティ試験の"その後"を仕組み化する
yuuumiravy
1
190
Claude CodeでETLジョブ実行テストを自動化してみた
yoshikikasama
0
1.1k
Featured
See All Featured
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
530
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
450
Navigating Team Friction
lara
192
16k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
190
Discover your Explorer Soul
emna__ayadi
2
1.1k
Skip the Path - Find Your Career Trail
mkilby
1
110
GraphQLとの向き合い方2022年版
quramy
50
15k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
118
110k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.3k
The Cult of Friendly URLs
andyhume
79
6.9k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.5k
Transcript
自作OSを楽しむ OUCC 1回 どみとり
自己紹介 • Twitter:どみとり (@domitry) • セキュリティ・キャンプ2013 セキュアなOSをつくろうゼミ • 自作OS Kiwi製作中
このUI、お好きですか?
このUI、お好きですか? 自作OS、Kiwiでは
このUI、お好きですか? 自然な画面移行を実現
自作OSとは • 自分でOS作ってみようぜ!!! • 2006年ごろ川合秀実先生の「OS自作入門」で大ブーム に
自作OSのはじめかた ①クロスコンパイラを用意する ②仮想環境を用意する ③コードを書く ④楽しい!!!!✌('ω'✌ )三✌('ω')✌三( ✌'ω')✌
自作OSの楽しいところ ① オレオレOSを実現できる ・◦◦OSのUI嫌いだなあ ・フォント汚いなあ ・ファイルシステム嫌いだなあ ・脆弱だなあ →すべて自分で書ける! ② 色々な部分の動く仕組みが理解できる
自作OSのつらいところ ①すべてを自分で書かないといけない フォントを描画しよう!! →あっ…TrueTypeの描画めんどくさそう…Bitmapにしょ… →あっ…ファイルシステム周り先に書かないと… →あっ…malloc実装してないわ… →やってられない!!! ②資料が少ない
ではどう楽しむか
自作OSを楽しむコツ ① 興味のない・めんどくさい部分のコードをいさぎよくパクる (もちろんライセンスの範囲内で) ② 簡単にできる部分は大胆に簡略化 void * kmalloc(int size){
result = (heap_last/4+1)*4; heap_last = result + size; return result; }・
自作OSを楽しむコツ ③ 英語を読む →OSDevWiki,英語版Wikipedia
まずはOS自作入門を読もう!!
宣伝(?)
宣伝(?) • やはりOS自作はつらい • 日本語資料の不足とOSフルスクラッチの重さが原因? • Kiwiのソースコードをモジュール化、好きな部分だけ書き 直せるように改造中 • 解説サイト今秋公開予定!