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
760
20120823a
旧式PC利用のススメ
[東京]第一回首都圏勉強会(APASEC) で発表
Hidemi KAWAI
August 23, 2012
Tweet
Share
More Decks by Hidemi KAWAI
See All by Hidemi KAWAI
C言語でメモリ管理を考えた話
hkawai
0
500
超軽量型プログラミング言語 ES-BASIC
hkawai
0
1.2k
OSASK計画が考える新しいプログラミング言語の構想
hkawai
1
1k
OSECPU-VMの資料
hkawai
0
520
赤間仁志さんのプラレールによる半加算器
hkawai
0
570
20130806a
hkawai
0
250
20120326a
hkawai
1
920
Other Decks in Programming
See All in Programming
デフォルトにして至高、RubyMineの大好きな所
ruzia
0
110
単体テストを書かない技術 #phpcon_odawara
o0h
PRO
26
8.1k
Semantic search with Django and pgvector
pauloxnet
0
240
AWS Application Composerで始める、 サーバーレスなデータ基盤構築 / 20240406-jawsug-hokuriku-shinkansen
kasacchiful
1
260
PHP8.3の機能を振り返る / Review of PHP 8.3 features
seike460
PRO
1
110
CQRS/ES avec Symfony, c’est (trop) bien !
jeremyfreeagent
1
640
From Spring Boot 2 to Spring Boot 3 with Java 22 and Jakarta EE
ivargrimstad
0
1.1k
ONE WEDGE_company_guide
1wedge_one
0
430
GitHub Copilotのススメ
marcy731
0
190
R言語の環境構築と基礎 Tokyo.R 112
bob3bob3
0
250
GitHub Actionsで泣かないためにやっておきたい設定 / Recommended GHA settings to avoid crying
pinkumohikan
3
520
エンターテイメント業界で利用されるAWS
demuyan
0
210
Featured
See All Featured
XXLCSS - How to scale CSS and keep your sanity
sugarenia
240
1.2M
A better future with KSS
kneath
231
16k
Ruby is Unlike a Banana
tanoku
96
10k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
15
1.4k
Designing for humans not robots
tammielis
247
25k
How STYLIGHT went responsive
nonsquared
92
4.8k
Fontdeck: Realign not Redesign
paulrobertlloyd
76
4.9k
Large-scale JavaScript Application Architecture
addyosmani
503
110k
Side Projects
sachag
451
41k
Writing Fast Ruby
sferik
620
60k
The Art of Programming - Codeland 2020
erikaheidi
41
12k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
77
42k
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を使いましょう!(笑) ほかのメリット: お金がかかりません リサイクルにも貢献しています
貧しい人、弱い立場の人の気持ちが理解できます デメリット: みじめな思いを何度もします 最先端の流れについていけなくなることもあります リソースが十分にあっても、せこせこしてしまいます