Webエンジニアのブログ

「コンピューターシステムの理論と実装」を終えてみての感想

低レイヤーと呼ばれる分野を学習するため、「コンピュータシステムの理論と実装 ―モダンなコンピュータの作り方」というコンピュータサイエンスに関する書籍を一通りやってみた。

この本は一からコンピュータを作るというものであり、論理回路と呼ばれる、論理演算を行う電子回路レベルからOSを作り上げていく。 前回投稿した「コンピュータシステムの理論と実装」を要約するという記事でもまとめているが、論理回路からレジスタ、メモリ、CPU、そしてコンパイラやOSを作る一連の流れが詳しく書かれており、コンピュータサイエンスを学ぶための最初の一冊としては結構満足できた技術書だった。

こういった低レイヤーと呼ばれる知識は、今すぐ役に立つものではない。けれど、これから新しい技術を学ぶときに必ず活きてくる知識だと先人は言っている。もちろんそれだけでは学ぶモチベーションとしては足りないため、自分の場合はコンピュータを理解していくという感覚を楽しみながらやり遂げている。

書籍の後半は主にコンパイラに焦点を当てているのだが、それを通してかなりコンパイラに関する知識を身につけれられた。このコンパイラに関する知識がどう役に立つのかというと、普段コードを書いているとき、コードの可読性処理の軽さのトレードオフを考えるときに判断基準が1つ増えたということだ。今までは「どちらでもいい」という結論に達していたものが、コンパイラの知識によってより深いレベルで考えられるようになったのを最近感じられた

さて、CPUやコンパイラやOSを作ったとはいえそれらは本当に基礎的な知識だけである。ここから先に進むために今からやろうとしていることは詳解 Linuxカーネルを読むことである。その他にもネットワークに関するしっかりとした知識をつけるため、マスタリングTCP IPなどもきちんと自分の中で体系づけておきたい。 まだまだ学ぶものは多い…。


{ "name": "hareku", "job": "Web Engineer" }