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
20120823a
Search
Hidemi KAWAI
August 23, 2012
Programming
0
850
20120823a
旧式PC利用のススメ
[東京]第一回首都圏勉強会(APASEC) で発表
Hidemi KAWAI
August 23, 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
290
20120326a
hkawai
1
970
Other Decks in Programming
See All in Programming
App Router 悲喜交々
quramy
7
380
Unlocking Python's Core Magic
leew
0
130
Vue :: Better Testing 2024
up1
1
400
VS Code extension: ドラッグ&ドロップでファイルを並び替える
ttrace
0
170
データマイグレーションの成功戦略~サービスリニューアルで失敗しないための実践ガイド~
tkzwtks
8
720
Новый уровень ML-персонализации Lamoda: Как мы усилили ее в каталоге и перенесли на другие продукты
lamodatech
0
190
個人開発で使ってるやつを紹介する回
yohfee
1
700
"Swarming" をコンセプトに掲げるアジャイルチームのベストプラクティス
boykush
2
250
Removing Corepack
yosuke_furukawa
PRO
9
1.2k
Cloud Adoption Framework にみる組織とクラウド導入戦略
tomokusaba
2
540
Hi, have you met Kotlin Multiplatform? | DevFest Vienna 2024
prof18
0
110
NEWTにおけるiOS18対応の進め方
ryu1sazae
0
240
Featured
See All Featured
The Straight Up "How To Draw Better" Workshop
denniskardys
232
130k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
29
1.7k
The Cost Of JavaScript in 2023
addyosmani
43
5.9k
For a Future-Friendly Web
brad_frost
174
9.3k
Agile that works and the tools we love
rasmusluckow
327
21k
Git: the NoSQL Database
bkeepers
PRO
425
64k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
126
18k
Writing Fast Ruby
sferik
626
60k
It's Worth the Effort
3n
183
27k
Scaling GitHub
holman
458
140k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
355
29k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
25
1.7k
Transcript
旧式PC利用のススメ セキュアなOSを作ろうクラス講師 川合 秀実 (サイボウズ・ラボ)
自己紹介 1975年生まれ 物性物理学で修士号を取得 OSASKの作者 「30日でできる!OS自作入門」著者
セキュリティ&プログラミングキャンプ講師 セキュリティキャンプ講師 サイボウズ・ラボの社員
背景 (わたしの子供時代) (経済的な理由で)古いコンピュータを使っていた 友人たち CPU:10MHz, MEM:640KB わたし
CPU:1MHz, MEM:64KB 友人たちがうらやましい → なんとか手に入れる すると友人たちは 100MHz, 8MB やっぱり追いつけない・・・ ゲーム作り競争 金がないのなら頭で勝負だ! (10倍の性能差を乗り越えて) 勝ったり負けたり
経過 (結果としての)私のプログラミングスタイル ハードウェアの仕様をすみずみまで理解 長所を生かす方向で全力でやる つまり機種依存が大好き
というかそうしないとまず勝てない! そして・・・ i386のセグメンテーションとページングに感動 64KBの壁がなくなった!すげえ ページングが使えるなんて! 超わくわくしてOSを作る → OSASK 仮想86とTOWNSに感動して98エミュレータも作った
世間の流れ 機種依存はよくない 移植性が大事だ 高速化とか意味ない ハードウェアはどんどん高速化していくから、 ソフトウェアは高速化をがんばる必要はない
むしろ読みやすいソースを書くべき レジスタ直交性重要、専用レジスタで速くするな 私のスキルが全否定される時代に しかし私はプログラミングスタイルを変えず、 古いPCでも快適に動作することを常に自分に課した
結果 世間からは高速化テクニックが忘れられていく ロストテクノロジー? 私には高速化テクニックが蓄積された 「普通の人にできることはできないが、 普通の人にできないことができる」
そして、高速化が認められる時代がやってきた!
成果 大学院での研究成果: 計算機シミュレーションの高速化 アルゴリズムの見直しで最高1000倍速 サイボウズ・ラボでの成果:
製品A: 実質4倍速 (部分84倍速) 製品B: 実質2倍速 (部分4倍速) 製品C: 実質100倍速 (部分8000倍速) 高速化のプロとして活躍中?!
結論 だから旧式のPCを使いましょう!(笑) ほかのメリット: お金がかかりません リサイクルにも貢献しています
貧しい人、弱い立場の人の気持ちが理解できます デメリット: みじめな思いを何度もします 最先端の流れについていけなくなることもあります リソースが十分にあっても、せこせこしてしまいます