はじめて読む486

2010/03/08 | By KUMA | Filed in: 戯言.

仕事で使うわけではないのだが、x86系のCPUについてろくに知らん状態はまずかろうということで購入。
本自体は昔から名著と呼ばれているだけの内容とあって、今更自分がどうこう言う事はないので、このエントリはx86のCPUについての感想を中心に書く。

内容はOSで実現されている機能が486でどの様に実現されているか、また8086との互換性をどの様に保っているかが書かれており、HW屋よりSW屋のほうが読み易いと思う。

x86の感想としては、組み込みで使うマイコンやARM系のCPUと違って、やっぱりパソコン向けの機能がいっぱいあるなと。
それと同時に古い概念や制限を無理やり拡張した箇所が至る所にあって、中の人はイラン苦労をいっぱいしているんだろうなぁ、という憐憫の情が湧いた。

本の初版発行が1994年でWindows95がまだ無い時代。
NTがビジネス用途で使われ始めた時代となっているため、現代のCPUの拡張機能(MMX以降)についてはスッパリ抜けている。
少なくとも数年以内にマルチメディアや数値演算系、64bitOSをネイティブに操作する仕事には出会わないはずなので、今の自分には不要なのでよし。
どの道この本は入門書だし突っ込んだことを書かれても困るw

正直一回読んだだけじゃ(自分の悪い頭じゃ)完全に理解出来ない程度に複雑。
特に制御レジスタ周りの設計やプロテクトモード⇔リアルモードの行来の手順など、下位互換性を残したばかりに無理がある作りになっていたり、物理アドレスとリニアアドレスが中途半端にしか分離できてなかったりなどが、混乱した。

これだけ複雑で過去の遺産を引きずったCPUを、現代に続くμOp化、64bit対応、HyperThreadなどの高速化/並列化を実現したCPU屋はどんだけ頭がいいんだ。
互換性を残したまま高速化のために内部のアーキテクチャを刷新するのはどれだけ時間があっても自分には自信がない。

著書の最後は以下の言葉で締めくくられている。

本書を読破したみなさんには、オペレーティングシステム内部の動作を詳細に理解していただけたことと期待します。今後コンピュータを利用するどの場面においても、その背景にあるしくみに思いを巡らせることが大きな楽しみとなることでしょう。大いに自信を持って楽しんでいただきたいと思います。

1994年は個人でパソコンをコントロールできる最後の年だったのかなと思う。
これ以降Windows95が発売され一気にPCがコモディティ化した。
同時にブラックボックスが一気に増えたと思う。
著者の方がどんどん複雑化してくるCPUやOSを解説する中で、当時どんな希望を描いてこの言葉を読者にあてたのか興味がある。


Tags: , ,

Comments are closed here.