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
20120326a
Search
Hidemi KAWAI
March 26, 2012
Programming
1
970
20120326a
やってよかったOS作り
Hidemi KAWAI
March 26, 2012
Tweet
Share
More Decks by Hidemi KAWAI
See All by Hidemi KAWAI
C言語でメモリ管理を考えた話
hkawai
0
560
超軽量型プログラミング言語 ES-BASIC
hkawai
0
1.4k
OSASK計画が考える新しいプログラミング言語の構想
hkawai
1
1.1k
OSECPU-VMの資料
hkawai
0
580
赤間仁志さんのプラレールによる半加算器
hkawai
0
680
20130806a
hkawai
0
280
20120823a
hkawai
0
840
Other Decks in Programming
See All in Programming
"型"のあるRailsアプリケーション開発 / Typed Rails application development
sinsoku
8
2.2k
ECS向けのドリフト検知機構を実装してみた
tkikuc
0
260
複数プロダクトの技術改善・クラウド移行に向き合うチームのフレキシブルなペア・モブプログラミングの実践 / Flexible Pair Programming And Mob Programming
honyanya
0
110
個人開発で使ってるやつを紹介する回
yohfee
1
620
Kubernetes上でOracle_Databaseの運用を楽にするOraOperatorの紹介
nnaka2992
0
140
Assembling the Future: crafting the missing pieces of the Ruby on Wasm puzzle
skryukov
0
120
DjangoNinjaで高速なAPI開発を実現する
masaya00
0
420
VS Code extension: ドラッグ&ドロップでファイルを並び替える
ttrace
0
130
Micro Frontends for Java Microservices - dev2next 2024
mraible
PRO
0
180
PHPを書く理由、PHPを書いていて良い理由 / Reasons to write PHP and why it is good to write PHP
seike460
PRO
5
270
MLOps in Mercari Group’s Trust and Safety ML Team
cjhj
1
100
API Platform for Laravel
dunglas
1
1.2k
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
425
64k
Done Done
chrislema
181
16k
Web development in the modern age
philhawksworth
205
10k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
125
18k
For a Future-Friendly Web
brad_frost
174
9.3k
Mobile First: as difficult as doing things right
swwweet
222
8.8k
Designing for Performance
lara
604
68k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
91
16k
Typedesign – Prime Four
hannesfritz
39
2.3k
Design by the Numbers
sachag
278
19k
Docker and Python
trallard
40
3k
Pencils Down: Stop Designing & Start Developing
hursman
119
11k
Transcript
やってよかったOS作り Cybozu Labs 川合 秀実 2012/03/26
作り始めるまで (話は15年以上前にさかのぼって・・・) 私は貧乏性でせこい(せこかった) 自分が苦労して買ったPCの性能を出し切らないと気が済まない 10万円出したら、10万円分動いてほしい プログラムやデータも(内容が変わらない範囲で)小さくしたい だってもし消費容量を半分にできれば、それはディスクの 容量が2倍になったのと同じだよね! それでOSからアプリまで全部作り直してみることにした 無知なのでOSなんて何年かがんばればできると思っていた
2
世間の反応 最初から非難ごうごう 「できるわけない」 個人でマイクロソフト以上のものができるか? 「そんなの意味ない」 PCはこれからもっと速くなる、大容量になるというのに 「何の役に立つんだ?」 「それができるのならもっと他のことをやるべき」 「こいつ本当にバカだよなー」 3
わが道をゆく そんな声にもかかわらず、私のしたこと・・・ ここをこうすれば、1バイト減らせる! うおう! ここをこうすれば、0.00001秒くらいは速くなるかも! もしかして、僕って天才? こんなに古いPCでも快適に動いた! ・・・周囲はあきれました 4
できたもの(1) 動作画面 5 起動時間:1秒 OS容量:80KB Windowsの 約1000分の1 1995年くらい のPCでも快適 3Dキューブ:
1.4KB 爆弾さがし: 3.1KB ダンジョン ゲーム: 47KB
できたもの(2) アプリケーションを作り比べてみた (大きさ比較) 普通に使われているアセンブラ: 100.0KB以上 私が作り直したもの(Win用): 27.0KB 私が作り直したもの(自作OS用): 22.2KB 普通に使われているリンカ:
100.0KB以上 私が作り直したもの(Win用): 16.0KB 私が作り直したもの(自作OS用): 7.6KB 普通に使われているライブラリアン: 100.0KB以上 私が作り直したもの(Win用): 4.5KB 私が作り直したもの(自作OS用): 2.3KB 6
ついでにできたもの 自分の経験をもとに、OSの作り方の本を書きました 700ページ以上 図書館で探してみてください この本で作るOSでは、 速さも小ささもあまり追及して いません 分かりやすさ重視 7
作った後の話 今では・・・ サイボウズ・ラボに入って、サイボウズ製品の改良をしています ここでは本気で高速化しても、 「意味ない」「バカだな」なんて全く言われません むしろ一緒になって 「やったな!」「おおすごいな!」と 言ってくれます いい人たちです~ 世の中の役にも立っていると思います
速く動くのは気持ちいいですよね! セキュリティ&プログラミングキャンプの講師もしています 8
まとめ 感じたこと もし自分が「これだ!」と思ったら、他人の言うことなんて 気にしないほうがいい その分野がダメだと言われた == ライバルは少ない どんなスキルでも、世の中の役に立たせる方法はある だから役に立つかどうかなんて後回しで、 とにかく信じる道を進んでみよう!
OSを作ったおかげで、私は幸せになったと思います 9