システムソフトウェア
コンピュータのハードウェアを管理・制御し、アプリケーションの実行基盤を提供するソフトウェア。オペレーティングシステム、ドライバ、ユーティリティ、ファームウェアなどを含む。
概要
システムソフトウェアは、コンピュータや各種デバイスを動作させるためのプログラム群の層である。ハードウェアとアプリケーションソフトウェアの間に位置し、プロセッサ、メモリ、ストレージ、入出力装置などの資源を管理する。標準化されたサービスと抽象化を提供することで、アプリケーションプログラムはハードウェアの詳細を直接扱わずに実行できる。
主な構成要素
システムソフトウェアの代表的な構成要素には、次のものがある。
- オペレーティングシステム — タスクのスケジューリング、ファイル管理、デバイス処理、セキュリティの適用を行う中核プログラム。
- デバイスドライバ — 汎用的な要求を、各デバイス固有の命令へ変換する小規模なプログラム。
- システムユーティリティ — 保守、設定、バックアップ、診断のためのツール。
- ファームウェア — BIOS/UEFIや組み込みコントローラなど、ハードウェアに格納される低水準のコード。デバイスを初期化し、基本的なサービスを提供する。
- ミドルウェアとランタイム環境 — アプリケーションが利用するライブラリ、仮想マシン、各種サービスを提供する層。
歴史と発展
システムソフトウェアは、現代的なコンピューティングの発展とともに進化してきた。初期のコンピュータでは、ジョブのバッチ処理を実行するための単純な制御プログラムが使われた。ハードウェアの性能向上に伴い、設計者は対話型およびマルチタスク対応のオペレーティングシステムを導入した。その後、システムソフトウェアはパーソナルコンピュータ、サーバ、モバイル機器、組み込みシステムといった新しいアーキテクチャや、ネットワーク、仮想化、クラウドコンピューティングなどの動向に適応してきた。
機能と例
主な機能には、プロセスおよびスレッドのスケジューリング、メモリとストレージの管理、ファイルシステムサービス、デバイス入出力、ネットワークスタック、セキュリティの適用がある。システムソフトウェアの例としては、汎用デスクトップ用・サーバ用オペレーティングシステム、デバイスを起動するランタイムファームウェア、周辺機器を支援するドライバスタックが挙げられる。仮想化層やコンテナランタイムは、多数の利用者またはサービスのためにハードウェアを分離し、多重利用するものとして、システムソフトウェアの概念を拡張している。
区別と重要な事実
システムソフトウェアは、その目的と権限の点でアプリケーションソフトウェアと異なる。通常はより高い権限で動作し、ハードウェアを安全かつ信頼性高く協調制御しなければならない。組み込みシステムや専用機器では、システムソフトウェアとファームウェアが製品と密接に統合される場合がある。この層の障害や脆弱性は、そのコンピュータ上のすべてのアプリケーションに影響し得るため、システムソフトウェアのセキュリティと安定性は重要である。
関連項目
著者
AlegsaOnline.com システムソフトウェア Leandro Alegsa
URL: https://ja.alegsaonline.com/art/95726