自作エミュレータで学ぶx86アーキテクチャ-コンピュータが動く仕組みを徹底理解!
- 作者: 内田公太,上川大介
- 出版社/メーカー: マイナビ
- 発売日: 2015/08/28
- メディア: 単行本(ソフトカバー)
- この商品を含むブログを見る
とりあえず読了しました。途中までコードを写経していたが、「あ、これ写経しなくても中身分かる」と思い写経は止めた。 出てくるC言語のソースコードとしては非常に基本的なもの。僕のISSはC++で書かれているが、初期に書いていたC言語での自作ISSと非常に構成が似ている。
中身としては、非常に基本的なエミュレータ、シミュレータの本だった。デコードの方法から、命令をフェッチして、実行するまでの基本方針、そして、x86特有の特殊な命令デコードをどのように取り扱うかについてがメインになっていると感じた。 x86はやはり、可変長命令なので、デコーダが大変そうだった。この部分は本書では手動で記述していたが、実製品とかのシミュレータになるとここは自動的に生成される部分だろう。
後半は、デバイス、BIOSからディスクについての内容だったが、ちょっとシミュレータの話から離れてしまっていて、結局本章はどこに辿り着きたかったのか?というと分からない。 ゴールが不明確なように感じた。
最初に感じたとおり、この本が謳う「x86アーキテクチャを学ぶ」というのは違って、「x86アーキテクチャをベースにしてシミュレータの作り方を学ぶ」の方が正しいかな。