I-3-9. OSの基本的な構成と役割

OSの基本構成と役割、特徴、発展の歴史、OSSの実装状況について解説する。OSのしくみについて概説し、ファイルやネットワーク、入出力インタフェースといった資源管理について説明する。

【学習の要点】

* OSは基本ソフトウェアである。APIの提供やプロセス管理・メモリ管理・入出力管理・デバイス管理などの機能を提供している。

* OSは、アプリケーションプログラムに対してシステムコールのインタフェースを提供し、インタフェースを通じてシステムサービスを実行している。

* OSは、プロセスごとに優先度を与え、それによって配分される時間を決めている。

* OSは、メモリ管理を行っており、利用可能な部分・割り当てと解放・主記憶と二次記憶との間でのページングなどを制御する。

* OSは、接続されているハードウェアに対応したデバイスドライバのロード・有効化・入出力の抽象化などの機能を提供する。

図I-3-9. OSの基本的な構成

 

【解説】

1) OSの仕組み

OSは基本ソフトウェアである。代表的なサービスとしては、API・プロセス管理・メモリ管理・ハードウェア管理などがある。

* OSの発展の歴史

1950年代には、基本ソフトウェアとしてまとまったものはなく、基本ソフトウェアとして今日提供されている機能の一部分のみが利用されていた。1960年代になってから「ジョブ管理」「マルチプログラミング」といった機能が組み込まれ、1964年にはタイムシェアリングシステムが本格的に実用化された。1970年代になるとMS-DOSがリリースされ、1990年代になってGNUプロジェクトがUNIX向けのツール群を開発し、これらをLinuxカーネルと組み合わせた。

* API(アプリケーションプログラミングインタフェース)

OSの主な目的は、アプリケーションプログラムを動作させることにある。このため、OSはアプリケーションプログラムに対してAPIを提供し、APIを介して呼び出されるシステムコールを実行する。

* プロセス管理

複数のプロセス実行を管理する機能である。CPUが1個しかないコンピュータであっても、この機能により、複数個のプロセスをあたかも同時に実行しているように見せることができる。

* メモリ管理

メモリ管理は、補助記憶装置などの管理、メモリ内の利用可能な領域の検索および割り当てと解放などである。

* ハードウェア管理

ハードウェアの管理もOSの機能のひとつである。この機能により接続されているハードウェアが認識され、デバイスドライバのロード・有効化などが行われる。

2) OSの管理対象

OSは基本ソフトウェアとして、コンピュータの以下のリソースの管理を行う。

* ファイルシステム

記憶装置に記録されているデータを管理する。ジャーナル機能を持ったファイルシステムもあり、処理が完了していないジャーナルなどが残っていた場合は、修復処理を行う。

* ネットワーク

コンピュータに内蔵されているネットワークカードに、IPアドレスなどを割り当てる。

* セキュリティ

コンピュータ上で実行されているプログラム宛に送られてきたリクエスト(=パケット)を、実際に受け付けてよいか無視すべきかを判断し、必要な処理を行う。

* グラフィカルユーザインタフェース(GUI)

出力装置の仕様を判断し、内蔵されているグラフィックカードのためのドライバを使用して、GUI環境を表示させる。

3) オープンソースとのかかわり

Linuxは、オープンソースソフトウェアによるOS実装のうち、もっとも著名なもののひとつである。

OSS Course Naviのコンテンツは IPA OSS モデルカリキュラムを基としています。