気が向いたら書くやつ

気が向いたら何か書きます

『試して理解 Linuxのしくみ』読書メモ (1)

読書メモ。

[試して理解]Linuxのしくみ ~実験と図解で学ぶOSとハードウェアの基礎知識

[試して理解]Linuxのしくみ ~実験と図解で学ぶOSとハードウェアの基礎知識

環境

第1章 コンピュータシステムの概要

ハードウェアの構成

コンピュータは主に次のようなハードウェアで構成される。

ハードウェアは次のような流れで処理を実行する。

  1. 入力を受け付け、CPUに処理を依頼する。
  2. メモリ上のプログラムを読み出しCPUで実行、結果をメモリに書き込む。
  3. メモリ上のデータをストレージに書き込んだりデバイスに出力する。

プロセス

OSはプログラムをプロセス単位で実行する。

各プロセスはデバイスドライバを介してデバイスにアクセスする。 同種のデバイスでインタフェースは共通となっている。

CPUモード

CPUの動作モードは2種類あり、通常のプロセスが利用できる機能に制限がかけられている。

  • ユーザーモード:通常のプロセスが動作する。
  • カーネルモード:プロセス管理システム、プロセススケジューラ、メモリ管理システムなどの機能を提供する。

デバイスドライバカーネルモードで動作する。

カーネル

OSの核となる処理がまとまったプログラム。

カーネルはシステムの搭載するCPUやメモリのリソースを管理し、各プロセスに割り当てる。

カーネルの提供する機能は、システムコールを介して利用できる。

ストレージの処理

ストレージデバイスに保持されるデータは、通常ファイルシステムを介してアクセスする。

システムは次のような流れでストレージからロードされる。

  1. BIOSUEFIなどの組み込みソフトウェアによりハードウェアを初期化する。
  2. ブートローダを起動する(多段的にロードするものが多い)。
  3. ストレージからOSをロードする。