差分

移動先: 案内検索

オペレーティングシステムとは何か

31 バイト追加, 2015年7月26日 (日) 08:02
/* コンピュータを仮想化させる */
:'''捕捉''' さらに
:[[http://www.cl.cam.ac.uk/Research/SRG/netos/xen/ Xen]]や[[http://www.vmware.com/ VMware]、[https://www.virtualbox.org/ VirtualBox]のようにハードウェア側を抽象化し、1つのハードウェア上に複数のオペレーティングシステムを動かすバーチャルマシンのシステムもあります。
==== 抽象化の例 ====
UNIXの上で次のコマンドを実行すると端末にHelloと表示されます。これは文字列UNIXの上で次のコマンドを実行すると端末にHelloと表示されます。これは文字列"Hello"を出力し、その出力先を ファイルを出力し、その出力先をファイル/dev/tty への入力するという働きをします。ファイル(デバイスファイルと呼びます)への入力するという働きをします。ファイル(デバイスファイルと呼びます)/dev/ttyというのは、tty端末を抽象化したものです。というのは、端末を抽象化したものです。
<PRE>
</PRE>
上の図で、プログラムA、B,....E、は、オペレーティングシステムから利用可能なリソースを割り当てられ、その中で実行しています。しかし、アプリケーションA、BE、は、オペレーティングシステムから利用可能なリソースを割り当てられ、その中で実行しています。しかし、アプリケーションA、B,....は、割り当てられたリソースのコントロールを意識しません。例えば、プログラムがデータを補助記憶装置にファイルの形でデータを残そうとした時、プログラムが、補助記憶装置に使われているハードウェアを直接的にコントロールする必要はありません。 つまり、1つのプログラムは、1つの仮想化されたコンピュータで動いているように見えるわけです。例えば、プログラムがデータを補助記憶装置にファイルの形でデータを残そうとした時、プログラムが、補助記憶装置に使われているハードウェアを直接的にコントロールする必要はありません。つまり、1つのプログラムは、1つの仮想化されたコンピュータで動いているように見えるわけです。