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
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
domitry
September 08, 2013
Programming
1
1.3k
自作OSを楽しむ
OS自作はなぜ皆挫折するのか?挫折しない方法は?OS自作の楽しみ方を考えました。
KC3のLTで発表しました。
domitry
September 08, 2013
Tweet
Share
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
310
PCで絵をかこう!
domitry
0
580
JavaScript&可視化講習会#1
domitry
1
700
精神は物理的に記述できるか
domitry
0
170
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.2k
Other Decks in Programming
See All in Programming
CSC307 Lecture 14
javiergs
PRO
0
470
Codex の「自走力」を高める
yorifuji
0
1.2k
maplibre-gl-layers - 地図に移動体たくさん表示したい
kekyo
PRO
0
280
ポーリング処理廃止によるイベント駆動アーキテクチャへの移行
seitarof
3
1.1k
CS教育のDX AIによる育成の効率化
niftycorp
PRO
0
130
Claude Code Skill入門
mayahoney
0
400
Windows on Ryzen and I
seosoft
0
300
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
360
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
600
ふつうのRubyist、ちいさなデバイス、大きな一年 / Ordinary Rubyists, Tiny Devices, Big Year
chobishiba
1
460
RAGでハマりがちな"Excelの罠"を、データの構造化で突破する
harumiweb
9
2.9k
LangChain4jとは一味違うLangChain4j-CDI
kazumura
1
190
Featured
See All Featured
Amusing Abliteration
ianozsvald
0
130
Discover your Explorer Soul
emna__ayadi
2
1.1k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
85
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
Technical Leadership for Architectural Decision Making
baasie
3
290
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
How to build a perfect <img>
jonoalderson
1
5.3k
Agile that works and the tools we love
rasmusluckow
331
21k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Navigating Weather and Climate Data
rabernat
0
140
jQuery: Nuts, Bolts and Bling
dougneiner
65
8.4k
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のソースコードをモジュール化、好きな部分だけ書き 直せるように改造中 • 解説サイト今秋公開予定!