📑

OSについてざっくり調べてみた

2021/04/17に公開

OSを乗せる意味

  • デバイス全体を破棄せずにシステムの振る舞いを変更するため。
  • 例えば、電子レンジにはOSを載せる必要がない
    • 後から機能拡張したい場面がない

OSの種類

  • リアルタイムオペレーティングシステム(RTOS)
  • シングルユーザー、シングルタスク
  • シングルユーザー、マルチタスク
    • Windows、OSX、Android、iOSとか
  • マルチユーザー
    • Unix、VMS、MVSなど

コンピュータの起動からの流れ

  • 電源オン
  • 読み取り専用メモリ(ROM)に保持されている命令実行
  • ハードウェアを調べて正しく機能していることを確認
    • 電源投入時自己診断(POST)
  • POSTが正常なら、ROMにロードされたソフトウェア(BIOS/ファームウェア)
  • OS起動

OSのタスク

  • プロセッサ管理
  • メモリ管理
  • 端末管理
  • ストレージ管理
  • アプリケーションインターフェース
  • ユーザーインターフェース

OSが管理するメモリの種類

  • 高速キャッシュ
    • 高速で比較的少量のメモリ。最速の接続でCPUから利用できる
    • キャッシュコントローラは、CPUが次に必要とするデータを予測し、それをメインメモリから高速キャッシュにプルしてシステムパフォーマンスを最大化する
  • メインメモリ
    • コンピュータ購入時にメガバイト単位で測定されたRAM
  • セカンダリメモリ
    • ほとんどの場合、アプリケーションとデータを使用できるように維持し、オペレーティングシステムの制御下で仮想RAMとして機能するある種の回転磁気ストレージ。

UI

GUI

略。

CUI

command line interface。
terminal上での操作は、噛み砕くとterminalというGUIの上でshellを使って操作していることになる。
shellにはたくさんの種類があり、bshellというshellの始祖を元に拡張された物が多い。
osごとに使えるshellが異なる。
fishが気になる。

【参考記事】

How Operating Systems Work****

Discussion