ソフトウェア・OSの基礎——カーネル・プロセス管理・ファイルシステム | 中小企業診断士1次試験 経営情報システム

U

「OSってWindowsやMacのこと」という理解はありました。でも「カーネルがプロセスをスケジューリングする」「仮想記憶でスワップアウトが起きる」と言われると急に難しく感じます。OSがやっていることをざっくり4つの機能に分けて整理してみると、実はシンプルな仕組みだと気づきました。

この記事でわかること
  • OSの4つの主要機能(プロセス・メモリ・ファイル・入出力管理)
  • プロセス管理とスケジューリング方式
  • 仮想記憶とスワッピング
  • ファイルシステムの種類と特徴
  • ソフトウェアの種類(システムソフト・応用ソフト・ミドルウェア)
目次

OSの4つの主要機能

機能内容
プロセス管理複数プロセスのCPU割り当て(スケジューリング)・生成・終了・同期
メモリ管理主記憶の割り当て・解放・仮想記憶(スワッピング)
ファイル管理ファイル・ディレクトリの作成・読み書き・アクセス権限管理
入出力管理キーボード・ディスク・プリンタ等I/Oデバイスの制御

プロセス管理とスケジューリング

プロセスとスレッド
プロセス:実行中のプログラム。独立したメモリ空間を持つ
スレッド:プロセス内の実行単位。同じメモリ空間を共有する。軽量プロセスとも呼ぶ

マルチタスク:複数プロセスを見かけ上同時実行。実際はCPUを短時間ずつ交互に割り当てる
スケジューリング方式仕組み特徴
到着順(FCFS)到着した順にCPUを割り当てるシンプル。長い処理が割り込むと後続が待つ(コンボイ効果)
ラウンドロビン各プロセスにタイムスライスを均等に割り当て、順番に処理対話型システムに適している。公平性が高い
優先度スケジューリング優先度が高いプロセスを先に処理リアルタイム処理向き。低優先度が永遠に待つ(飢え)が発生しうる
最短ジョブ優先(SJF)実行時間が短いジョブを先に処理平均待ち時間を最小化。実行時間の予測が必要

仮想記憶——物理メモリ以上のメモリを使う仕組み

仮想記憶(Virtual Memory)の仕組み
主記憶(RAM)の容量が足りない場合、ハードディスク等の補助記憶の一部を仮想的なメモリとして使う仕組み。

ページング方式:メモリとディスクを一定サイズ(ページ)に分割して管理。必要なページだけ主記憶に置き、不要なページをディスクに退避(スワップアウト)。

ページフォルト:アクセスしたページが主記憶にない場合に発生。ディスクからページを読み込む(スワップイン)ため処理が遅くなる。

スラッシング:ページフォルトが頻発し、スワップ処理ばかりになってシステムが極端に遅くなる現象。

ソフトウェアの種類

種類内容・例
システムソフトウェアOS(Windows・Linux・macOS)・デバイスドライバ・言語処理プログラム(コンパイラ)
ミドルウェアOSとアプリの中間。DBMSのデータベース管理機能・Webサーバ(Apache等)・メッセージキュー
応用ソフトウェアユーザが直接使うアプリ。業務パッケージ(ERP・会計)・ゲーム・ブラウザ等
オープンソースソフトウェア(OSS)ソースコードが公開されており無料で使用・改変可能。Linux・Apache・PostgreSQL等。ライセンスに注意(GPL・MITなど)
コンパイラとインタプリタの違い
  • コンパイラ:プログラム全体を機械語に変換してから実行。実行速度が速い(C言語・Java等)
  • インタプリタ:1行ずつ解釈しながら実行。開発・デバッグが容易。実行速度はやや遅い(Python・JavaScript等)

Uのメモ

学習メモ
  • OSの4機能:プロセス・メモリ・ファイル・入出力の管理
  • ラウンドロビン:タイムスライスを均等割り。対話型システムに向く
  • 仮想記憶:補助記憶をメモリとして使う。ページフォルト→スワップ処理
  • スラッシング:スワップ処理が頻発してシステムが極端に遅くなる現象
  • コンパイラ:全体を変換→速い / インタプリタ:1行ずつ→デバッグ容易

関連記事

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

中小企業診断士試験勉強中のアラフィフシングルマザーです。
大学卒業後から現在まで、数々の失敗をしながらずっと自営業として試行錯誤を重ねてきました。
もっときちんと経営やビジネスの知識を身につけて、将来は他の事業者の方のお役にも立てたらいいな、と思うようになり、中小企業診断士の試験に挑戦中です。

目次