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
1k
20120326a
やってよかったOS作り
Hidemi KAWAI
March 26, 2012
Tweet
Share
More Decks by Hidemi KAWAI
See All by Hidemi KAWAI
C言語でメモリ管理を考えた話
hkawai
0
670
超軽量型プログラミング言語 ES-BASIC
hkawai
0
1.7k
OSASK計画が考える新しいプログラミング言語の構想
hkawai
1
1.4k
OSECPU-VMの資料
hkawai
0
690
赤間仁志さんのプラレールによる半加算器
hkawai
0
820
20130806a
hkawai
0
340
20120823a
hkawai
0
960
Other Decks in Programming
See All in Programming
私の後悔をAWS DMSで解決した話
hiramax
4
210
はじめてのMaterial3 Expressive
ym223
2
880
実用的なGOCACHEPROG実装をするために / golang.tokyo #40
mazrean
1
290
アセットのコンパイルについて
ojun9
0
130
さようなら Date。 ようこそTemporal! 3年間先行利用して得られた知見の共有
8beeeaaat
3
1.5k
楽して成果を出すためのセルフリソース管理
clipnote
0
180
Reading Rails 1.0 Source Code
okuramasafumi
0
250
250830 IaCの選定~AWS SAMのLambdaをECSに乗り換えたときの備忘録~
east_takumi
0
400
概念モデル→論理モデルで気をつけていること
sunnyone
3
290
Design Foundational Data Engineering Observability
sucitw
3
200
Ruby×iOSアプリ開発 ~共に歩んだエコシステムの物語~
temoki
0
340
テストカバレッジ100%を10年続けて得られた学びと品質
mottyzzz
2
610
Featured
See All Featured
Done Done
chrislema
185
16k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
53k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
131
19k
Making the Leap to Tech Lead
cromwellryan
135
9.5k
Agile that works and the tools we love
rasmusluckow
330
21k
GraphQLの誤解/rethinking-graphql
sonatard
72
11k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.9k
The Invisible Side of Design
smashingmag
301
51k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
61k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.5k
Fireside Chat
paigeccino
39
3.6k
Code Review Best Practice
trishagee
71
19k
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