オペレーティングシステム

オペレーティングシステム

ハードウェアを抽象化し資源を管理する層。仮想化・並行性・永続化の3つに役割が整理できる。

執筆済 コンピュータOS

ハードウェアを抽象化し、資源を管理し、プログラムを隔離する。

3 つの役割#

役割 提供する幻想
仮想化 各プロセスが CPU とメモリを独占しているように見せる
並行性 複数の処理が同時に進んでいるように見せる
永続化 電源が切れても消えない記憶(ファイル)

OSTEP はこの 3 つを「3 つの易しい部品」として整理している。 OS の仕事はほぼすべてこの 3 つのどれかに分類できる。

カーネルモードとユーザモード#

CPU には特権レベルがある。

モード できること
カーネルモード すべての命令、すべてのメモリ
ユーザモード 制限された命令、自分のアドレス空間のみ

アプリケーションはユーザモードで動き、 特権が必要なことは システムコールで カーネルに依頼する。

この境界がすべての保護の土台になっている。 ハードウェアの支援なしにはソフトウェアだけで実現できない。

構成#

参考文献#

  • Remzi H. Arpaci-Dusseau, Andrea C. Arpaci-Dusseau. Operating Systems: Three Easy Pieces. Arpaci-Dusseau Books, 2018.(全文公開) https://pages.cs.wisc.edu/~remzi/OSTEP/
  • Andrew S. Tanenbaum, Herbert Bos. Modern Operating Systems, 4th ed. Pearson, 2014.
ノート一覧を閉じる