ハードウェアデバイスを異なる複数のオペレーティングシステムに割り当てるハイパーバイザ上で動作する前記複数のオペレーティングシステムを備えたデバイス制御システムであって、前記複数のオペレーティングシステムの中の予め定められた1つのオペレーティングシステムを管理オペレーティングシステムとし、該管理オペレーティングシステムに、前記管理オペレーティングシステム以外の他のオペレーティングシステムから前記ハードウェアデバイスを使用するための依頼を受け付ける受付手段と、前記受付手段で前記依頼を受け付ける前は、前記管理オペレーティングシステムのみが前記ハードウェアデバイスを使用し、前記受付手段で前記依頼を受け付けた後は、前記管理オペレーティングシステム及び前記依頼を出した他のオペレーティングシステムが前記ハードウェアデバイスを共有して使用可能なように処理する処理手段と、を設け、前記他のオペレーティングシステムに、前記ハードウェアデバイスを使用する場合に、前記管理オペレーティングシステムに前記ハードウェアデバイスを使用するための依頼をする依頼手段を設けたデバイス制御システム。前記管理オペレーティングシステムの処理手段は、前記使用の依頼がされたハードウェアデバイスがデータ入力機能及び画像表示機能を有するユーザインタフェースデバイスを含む場合において、前記受付手段で前記依頼を受け付ける前は、前記データ入力機能により前記ユーザインタフェースデバイスから入力されたデータを管理オペレーティングシステム自身が使用すると共に、前記画像表示機能により前記ユーザインタフェースデバイスが画像を表示するときに画像データが読み出される記憶領域が、前記管理オペレーティングシステムが表示用の画像データを格納するために使用する記憶領域に切替えられた状態が維持されるように処理し、前記受付手段で前記依頼を受け付けた後は、前記データ入力機能により前記ユーザインタフェースデバイスから入力されたデータを前記他のオペレーティングシステムに受け渡し、前記画像表示機能により前記ユーザインタフェースデバイスが画像を表示するときに画像データが読み出される記憶領域を、前記他のオペレーティングシステムが表示用の画像データを格納するために使用する記憶領域に切替える処理を行う請求項1に記載のデバイス制御システム。前記管理オペレーティングシステムに、前記受付手段による依頼受付後に前記他のオペレーティングシステムが前記ユーザインタフェースデバイスの使用中に前記他のオペレーティングシステムの異常を検知した場合に、前記処理手段の処理を停止し、前記異常を検知したときに前記他のオペレーティングシステムが使用する記憶領域に記憶されている画像データを予め定められた異常処理用の記憶領域に複写し、該複写した画像データが示す画像上に前記発生した異常に関する情報を表した異常報知画像を重ねて合成した合成画像を示す画像データを生成して前記異常処理用の記憶領域に記憶し、前記画像表示機能により前記ユーザインタフェースデバイスに画像を表示させるときに画像データが読み出される記憶領域を、前記異常処理用の記憶領域に切替えることにより前記合成画像を前記ユーザインタフェースデバイスに表示させるようにし、更に、前記データ入力機能により前記ユーザインタフェースデバイスから入力されたデータを前記他のオペレーティングシステムが使用不能で且つ前記管理オペレーティングシステムが使用可能なように処理する異常発生時処理手段を更に設けた請求項2に記載のデバイス制御システム。前記管理オペレーティングシステムの前記異常発生時処理手段は、前記異常報知画像に、デバイス制御システムが動作する装置を再起動させる第1のモード、デバイス制御システムが動作する装置の電源を切断する第2のモード、前記異常が発生した他のオペレーティングシステムを再起動させる第3のモード、及び前記複数のオペレーティングシステムのうち前記異常が発生した他のオペレーティングシステムを除くオペレーティングシステムのみを動作させる第4のモードの少なくとも2つを前記ユーザインタフェースデバイスを介してユーザに選択させるためのモード選択画面の画像が含まれるように前記合成画像を示す画像データを生成して前記エラー用の記憶領域に記憶することにより、前記ユーザインタフェースデバイスに前記合成画像を表示させるようにした請求項3に記載のデバイス制御システム。前記管理オペレーティングシステムの前記異常発生時処理手段は、前記第4のモードがユーザにより選択された場合には、前記異常が発生した他のオペレーティングシステムにより使用されていたハードウェアデバイスを前記他のオペレーティングシステムから解放し、前記異常が発生した他のオペレーティングシステムを再起動又は前記異常が発生した他のオペレーティングシステムの動作を停止する請求項4に記載のデバイス制御システム。ハードウェアデバイスを異なる複数のオペレーティングシステムに割り当てるハイパーバイザ上で動作する前記複数のオペレーティングシステムの中の予め定められた1つのオペレーティングシステムを管理オペレーティングシステムとしたときの前記管理オペレーティングシステムのプログラムであって、コンピュータを、前記管理オペレーティングシステム以外の他のオペレーティングシステムから前記ハードウェアデバイスを使用するための依頼を受け付ける受付手段、及び前記受付手段で前記依頼を受け付ける前は、前記管理オペレーティングシステムのみが前記ハードウェアデバイスを使用し、前記受付手段で前記依頼を受け付けた後は、前記管理オペレーティングシステム及び前記依頼を出した他のオペレーティングシステムが前記ハードウェアデバイスを共有して使用可能なように処理する処理手段、として機能させるためのプログラム。本発明は、ハードウェアデバイスを使用中のOSに異常が発生しても、該異常が発生したOSが使用していたハードウェアデバイスを該異常が発生したOSとは別の管理OSが使用できるデバイス制御システム及びプログラムを得ることを目的とする。請求項1の発明のデバイス制御システムは、ハードウェアデバイスを異なる複数のオペレーティングシステムに割り当てるハイパーバイザ上で動作する前記複数のオペレーティングシステムを備えたデバイス制御システムであって、前記複数のオペレーティングシステムの中の予め定められた1つのオペレーティングシステムを管理オペレーティングシステムとし、該管理オペレーティングシステムに、前記管理オペレーティングシステム以外の他のオペレーティングシステムから前記ハードウェアデバイスを使用するための依頼を受け付ける受付手段と、前記受付手段で前記依頼を受け付ける前は、前記管理オペレーティングシステムのみが前記ハードウェアデバイスを使用し、前記受付手段で前記依頼を受け付けた後は、前記管理オペレーティングシステム及び前記依頼を出した他のオペレーティングシステムが前記ハードウェアデバイスを共有して使用可能なように処理する処理手段と、を設け、前記他のオペレーティングシステムに、前記ハードウェアデバイスを使用する場合に、前記管理オペレーティングシステムに前記ハードウェアデバイスを使用するための依頼をする依頼手段を設けたものである。請求項2の発明は、請求項1に記載のデバイス制御システムにおいて、前記管理オペレーティングシステムの処理手段は、前記使用の依頼がされたハードウェアデバイスがデータ入力機能及び画像表示機能を有するユーザインタフェースデバイスを含む場合において、前記受付手段で前記依頼を受け付ける前は、前記データ入力機能により前記ユーザインタフェースデバイスから入力されたデータを管理オペレーティングシステム自身が使用すると共に、前記画像表示機能により前記ユーザインタフェースデバイスが画像を表示するときに画像データが読み出される記憶領域が、前記管理オペレーティングシステムが表示用の画像データを格納するために使用する記憶領域に切替えられた状態が維持されるように処理し、前記受付手段で前記依頼を受け付けた後は、前記データ入力機能により前記ユーザインタフェースデバイスから入力されたデータを前記他のオペレーティングシステムに受け渡し、前記画像表示機能により前記ユーザインタフェースデバイスが画像を表示するときに画像データが読み出される記憶領域を、前記他のオペレーティングシステムが表示用の画像データを格納するために使用する記憶領域に切替える処理を行うものである。請求項3の発明は、請求項2に記載のデバイス制御システムにおいて、前記管理オペレーティングシステムに、前記受付手段による依頼受付後に前記他のオペレーティングシステムが前記ユーザインタフェースデバイスの使用中に前記他のオペレーティングシステムの異常を検知した場合に、前記処理手段の処理を停止し、前記異常を検知したときに前記他のオペレーティングシステムが使用する記憶領域に記憶されている画像データを予め定められた異常処理用の記憶領域に複写し、該複写した画像データが示す画像上に前記発生した異常に関する情報を表した異常報知画像を重ねて合成した合成画像を示す画像データを生成して前記異常処理用の記憶領域に記憶し、前記画像表示機能により前記ユーザインタフェースデバイスに画像を表示させるときに画像データが読み出される記憶領域を、前記異常処理用の記憶領域に切替えることにより前記合成画像を前記ユーザインタフェースデバイスに表示させるようにし、更に、前記データ入力機能により前記ユーザインタフェースデバイスから入力されたデータを前記他のオペレーティングシステムが使用不能で且つ前記管理オペレーティングシステムが使用可能なように処理する異常発生時処理手段を更に設けたものである。請求項4の発明は、請求項3に記載のデバイス制御システムにおいて、前記管理オペレーティングシステムの前記異常発生時処理手段は、前記異常報知画像に、デバイス制御システムが動作する装置を再起動させる第1のモード、デバイス制御システムが動作する装置の電源を切断する第2のモード、前記異常が発生した他のオペレーティングシステムを再起動させる第3のモード、及び前記複数のオペレーティングシステムのうち前記異常が発生した他のオペレーティングシステムを除くオペレーティングシステムのみを動作させる第4のモードの少なくとも2つを前記ユーザインタフェースデバイスを介してユーザに選択させるためのモード選択画面の画像が含まれるように前記合成画像を示す画像データを生成して前記エラー用の記憶領域に記憶することにより、前記ユーザインタフェースデバイスに前記合成画像を表示させるようにしたものである。請求項5の発明は、請求項4に記載のデバイス制御システムにおいて、前記管理オペレーティングシステムの前記異常発生時処理手段は、前記第4のモードがユーザにより選択された場合には、前記異常が発生した他のオペレーティングシステムにより使用されていたハードウェアデバイスを前記他のオペレーティングシステムから解放し、前記異常が発生した他のオペレーティングシステムを再起動又は前記異常が発生した他のオペレーティングシステムの動作を停止するものである。請求項6の発明は、ハードウェアデバイスを異なる複数のオペレーティングシステムに割り当てるハイパーバイザ上で動作する前記複数のオペレーティングシステムの中の予め定められた1つのオペレーティングシステムを管理オペレーティングシステムとしたときの前記管理オペレーティングシステムのプログラムであって、コンピュータを、前記管理オペレーティングシステム以外の他のオペレーティングシステムから前記ハードウェアデバイスを使用するための依頼を受け付ける受付手段、及び前記受付手段で前記依頼を受け付ける前は、前記管理オペレーティングシステムのみが前記ハードウェアデバイスを使用し、前記受付手段で前記依頼を受け付けた後は、前記管理オペレーティングシステム及び前記依頼を出した他のオペレーティングシステムが前記ハードウェアデバイスを共有して使用可能なように処理する処理手段、として機能させるためのプログラムである。請求項1に記載の発明によれば、ハードウェアデバイスを使用中のOSに異常が発生しても、該異常が発生したOSが使用していたハードウェアデバイスを該異常が発生したOSとは別の管理OSが使用できる。請求項2に記載の発明によれば、本構成を有しない場合に比べて容易に、異常が発生した場合でも管理OSがユーザインタフェースデバイスを使用することができる。請求項3に記載の発明によれば、異常発生時に利用者に異常の発生を報知でき、異常が発生したOSが暴走しても表示画像が書換えられることがない。請求項4に記載の発明によれば、異常が発生した際に実行する処理内容を利用者が選択でき、異常発生時の影響度を小さくすることができる。請求項5に記載の発明によれば、異常発生時に異常が発生したOSから該OSが使用中のハードウェアデバイスを切り離すだけでなく、異常が発生しているOSを再起動又は停止させることにより、より信頼性の高い動作環境が得られる。請求項6に記載の発明によれば、ハードウェアデバイスを使用中のOSに異常が発生しても、該異常が発生したOSが使用していたハードウェアデバイスを該異常が発生したOSとは別の管理OSが使用できる。以下、図面を参照して本発明の実施の形態の一例を詳細に説明する。図1には本実施の形態に係る画像形成装置10が示されている。画像形成装置10には、画像形成装置10の各部の動作を制御する装置制御部12、セットされた読取対象の文書を光学的に読み取って読取画像データを出力する画像読取部スキャナデバイス14、及び入力された画像データが表す画像を記録用紙上に形成する画像形成部プリンタデバイス16、が設けられている。また、画像形成装置10には、画像表示機能及びデータ入力機能を有するタッチパネルディスプレイ以下、タッチパネル18Aと、データ入力機能を有する操作キー18Bとが設けられた操作パネル以下、UIデバイス18が設けられている。UIデバイス18は、画像形成装置10に1つ設けられており、後述する複数のオペレーティングシステムOSはこの1つのUIデバイス18により様々なメニュー画面等を表示したり、利用者からの入力を受け付けたりする。また、更に画像形成装置10には、PC等の情報処理装置とネットワークケーブル及びコンピュータネットワーク経由で情報の送受信を行うためのネットワークデバイス20、及び記憶手段としてのHDD22が設けられている。装置制御部12、スキャナデバイス14、プリンタデバイス16、UIデバイス18、ネットワークデバイス20、及びHDD22は、バス24を介して互いに接続されている。装置制御部12はマイクロコンピュータ等から成り、CPU12A、メモリ12B、フラッシュメモリ等から成る不揮発性の記憶部12Cが設けられている。CPU12Aは、シングルコアCPUであってもよいし、マルチコアCPUであってもよい。記憶部12Cには、少なくとも、画像形成装置10の利用者に対して画像形成装置10の第1の機能を提供する処理を行う第1アプリケーションのプログラムと、第1アプリケーションのプログラムを実行するためのプラットフォームとして機能する第1オペレーティングシステムのプログラムが各々記憶されている。また、更に、記憶部12Cには、画像形成装置10の利用者に対して画像形成装置10の第2の機能を提供する処理を行う第2アプリケーションのプログラムと、第2アプリケーションのプログラムを実行するためのプラットフォームとして機能する第2オペレーティングシステムのプログラムが各々記憶されている。本実施の形態では、第2OS32側の第1アプリケーション33で、プリント機能やスキャン機能、標準的な表示機能等、画像形成装置10の標準的な機能標準機能を提供し、第1OS側の第2アプリケーション34で、画像形成装置10の追加的なサービス、及び該サービスの表示機能等、追加機能を提供するものとする。また、本実施の形態において、第2OS32が、管理オペレーティングシステムに相当し、CPU12Aが第2OSのプログラムを実行することで本発明に係る受付手段、処理手段の一例として機能する。CPU12Aが第1OSのプログラムを実行することで本発明に係る依頼手段の一例として機能する。なお、本実施の形態では、第1OS及び第2OSの2つのOSが記憶部12Cに記憶されている場合を例に挙げて説明するが、記憶部12Cに、第1OS及び第2OSの他に、別のOSが記憶されていてもよい。また、装置制御部12の記憶部12Cには、複数のOS間でのハードウェア資源の調停機能を提供するハイパーバイザのプログラムが記憶されている。図2に、本画像形成装置10のソフトウェア構成を示す。また、図3に、本画像形成装置10で実現されるデバイス制御システムの全体構成を示す。ハイパーバイザ30は、前述したように、複数のOS間でのハードウェア資源の調停を行って、ハードウェア資源を異なる複数のオペレーティングシステムOSに割り当て、ハイパーバイザ上で複数のOSが動作する。これにより、図2に示すように、第1仮想マシンを第1OS上で第1アプリケーションが動作するように構築し、第2仮想マシンを第2OS上で第2アプリケーションが動作するように構築する。なお、ハイパーバイザ30が各OSに割り当てるハードウェア資源には、各OS自身が動作するために必要な第1ハードウェア資源例えば、CPU12A、メモリ12B、及び記憶部12Cと、各OS上で動作する第1アプリケーションや第2アプリケーションがその機能を提供するために必要とされるハードウェア資源のうち、第1ハードウェア資源を除く第2ハードウェア資源例えば、UIデバイス18、HDD22、ネットワークデバイス20、スキャナデバイス14、プリンタデバイス16とがある。そして、本実施の形態では、上記第1ハードウェア資源については、ハイパーバイザ30の機能により、各OSが独立に動作可能に割り当てるが、第2ハードウェア資源については、実質的にはハイパーバイザ30が常に第2OS32に割り当てるように、第1OS31及び第2OS32が動作する。これにより、第1OS31及び第2OS32の両方が動作している状態で、第2OS32が全ての第2ハードウェア資源を制御することになる。ここで第1OS31が第1アプリケーション33の機能を提供するために第2ハードウェア資源を使用する必要が生じた場合には、第1OS31は直接ハイパーバイザ30に対して第2ハードウェア資源の割り当て要求を出すのではなく、第2OS32に対して第2ハードウェア資源の使用依頼を出す。依頼を受けた第2OS32は、該依頼のあった第2ハードウェア資源がハイパーバイザ30により自身に割り当てられた状態のまま、第1OS31が第2ハードウェア資源を使用可能なように処理する。すなわち、第1OS31及び第2OS32が、第1OS31から該使用依頼のあった第2ハードウェア資源を共有して使用可能なように処理する。これにより、図3に示すように、第2ハードウェア資源は、実質的には第2OS32により割り当てられ制御された状態で、なお且つ第1OS31にも仮想的に割り当てられる。なお、以下では、第2ハードウェア資源を、ハードウェアデバイスと呼称する。次に、本実施の形態に係る画像形成装置10のハードウェアデバイス制御についての作用について説明する。ここでは、第1OS31及び第2OS32が共有するハードウェアデバイスとして、UIデバイス18を例に挙げて説明する。第1OS31及び第2OS32は、OS間通信機能により互いに通信可能に構成されている。第1OS31及び第2OS32には、OS機能の一部として、OS間通信機能を実行するためのOS間通信モジュールが設けられている。OS間通信モジュールにより実現されるOS間通信機能には、一般的に知られている様々な技術を採用することができる。本実施の形態においては、OS間通信は、送信元送信側のOSからのデータパケットを送信先受信側のOSの受信バッファにコピーすることによって情報の受け渡しを行うものとするが、これに限らない。例えば、各OS間で共有するメモリ領域を介して情報の受け渡しを行うものであってもよい。図4に示すように、UIデバイス18のタッチパネル18Aに対する利用者のタッチパネル操作及び操作キー18Bに対するキー操作により生成された信号をシリアル入力するIOポート58は第2OS32が制御すると共に、UIデバイス18との間で該IOポート58を介したシリアル通信制御を行うシリアル通信制御部56も第2OS32が制御する。すなわち、ハイパーバイザ30により、UIデバイス18は、第2OS32に対して割り当てられている状態となっている。また、UIデバイス18のタッチパネル18Aに表示する画像の画像データを記憶するための記憶手段としてのVRAMは、第1OS31及び第2OS32の各々が固有に所有する。VRAMの各々は、メモリ12Bの予め定められた領域に確保されているものとする。図4においては、VRAM50は第2OS32が使用するVRAMであり、VRAM52は第1OS31が使用するVRAMである。なお、VRAM50、52の動作モード1画素あたりのビット数は、OS毎に異なっていてもよい。本実施の形態では、第2OS32が使用するVRAM50の動作モードを8ビット/画素とし、第1OS31が使用するVRAM52の動作モードを16ビット/画素としている。また、VRAM50及びVRAM52のサイズは特に限定されない。図4に示す例では、VRAM50を512kBのサイズとし、VRAM52を1MBのサイズとしている。第2OS32は、CPU12Aを介して、或いはCPU12Aを介さずDMA転送により、第2OS32の描画データ画像データをVRAM50に格納する。第1OS31は、CPU12Aを介して、或いはCPU12Aを介さずDMA転送により、第1OS31の描画データ画像データをVRAM52に格納する。グラフィックコントローラ54は、各OSが正常に動作している場合には、DMA転送により、VRAM50又はVRAM52のいずれか一方から画像データ読み出して、UIデバイス18に出力する。これにより、UIデバイス18のタッチパネル18AにDMA転送された画像データが示す画像が表示される。画像形成装置10の電源投入時等の初期状態においては、UIデバイス18は第2OS32が単独で使用する。具体的には、図4に示すように、第2OS32が使用するVRAM50に記憶されている画像データが読み出されて、UIデバイス18のタッチパネル18Aに表示されるように、グラフィックコントローラ54のVRAMモードが切替えられた状態とされている。より具体的には、VRAM50の先頭アドレスをm番地とし、VRAM52の先頭アドレスをn番地とすると、グラフィックコントローラ54が画像データを読み出す領域の開始アドレスが、m番地に設定された状態とされ、且つ動作モードが、8ビット/画素に設定された状態とされている。なお、第1OS31は、VRAM52に画像データを格納してもよいが、その画像データの画像はUIデバイス18には表示されない。この初期状態において、第2OS32により図5に示す処理ルーチンが開始される。図5は、第2OS32で実行されるハードウェアデバイス制御の処理ルーチンの流れを示すフローチャートである。ステップ100では、OS間通信により他のOSここでは、第1OS31からハードウェアデバイスここでは、UIデバイス18の使用依頼を受けたか否かを判断する。ここで肯定判断した場合には、ステップ102に進み、依頼のあったUIデバイス18を第1OS31で使用可能な状態に切替える処理を行う。図6に示すように、第1OS31が使用するVRAM52に記憶されている画像データが読み出されて、UIデバイス18のタッチパネル18Aに表示されるように、第2OS32が、グラフィックコントローラ54のVRAMモードを切替える。より具体的には、グラフィックコントローラ54が画像データを読み出す領域の開始アドレスとして、VRAM52の先頭アドレスn番地を設定し、且つ動作モードを、16ビット/画素に設定する。これにより、第1OS31の画像データの画像がUIデバイス18のタッチパネル18Aに表示される。また、前述したように、シリアル通信制御部56及びI/Oポート58は、第2OS32の制御下にあるため、UIデバイス18のタッチパネル18A及び操作キー18Bに対する操作により入力された入力データは第2OS32に入力される。第2OS32は、タッチパネル18A及び操作キー18Bにより入力されたデータをOS間通信を通じて第1OS31に通知するパネルプロキシPanelProxyともいう。図3も参照。。上述した処理により、表面上は第1OS31がUIデバイス18を占有するが、実質的には、ハイパーバイザ30によるUIデバイス18の割り当ては第2OS32のままで第2OS32の制御下にあるため、UIデバイス18を第1OS31及び第2OS32の双方が共有し使用可能な状態となる図121も参照。。次に、ステップ100で、否定判断した場合には、ステップ104で、UIデバイス18を使用中の第1OS31の異常を検出したか否かを判断する。ステップ104で否定判断した場合には、ステップ100に戻り、ステップ104で肯定判断した場合には図81、2、及び図122も参照。、ステップ106に進み、上記第1OS31及び第2OS32がUIデバイス18を共有して使用可能とする処理に代えて、障害復帰処理を行う。ここで、第2OS32が検出するOSの異常は、ハングアップでもよいし、OSの暴走であってもよいし、OSの異常終了であってもよいし、これらの全てを検出するものであってもよい。なお、ハングアップとは、動作していたソフトウェアOSが停止し、コンピュータが操作を受け付けなくなる状態をいう。この状態になると、OSが制御不能となって、復帰するには、物理的な電源切断やリセット操作が必要となる場合が多い。OSの暴走も同様である。ステップ104で検出される異常は、ハードウェアデバイスを使用中のOSが制御不能となった状態であればよい。また、異常の検出方法であるが、例えば、第1OS31と第2OS32との間で、定期的にOS間通信を介した通信例えば、第2OS32からProve信号或いはPing信号を送って、第1OS31からAck信号を返す等を行い、第1OS31からの通信が途絶えたタイムアウトしたことをもって第1OS31に異常が発生したことを検出してもよい図82も参照。。また、第1OS31が使用する信号線を流れるクロック信号等をモニタして異常を検出する等の方法もある。次に、ステップ106の障害復帰処理について詳細に説明する。図7は、第2OS32により行われる障害復帰処理の処理ルーチンの流れを示すフローチャートである。ステップ200で、スナップショットをコピーする。ここで、スナップショットとは、異常が検出されたときに第1OS31が使用するVRAM52に格納され表示に用いられている画像データをいう。第2OS32は、図8に示すように、このスナップショットを、予め定められたエラー情報領域であるVRAM60に格納コピーする図83も参照。。ステップ202では、コピーしたスナップショットを使用し、スナップショットの画像上にエラー情報ウィンドウを重ねた合成画像の画像データを生成してエラー用のVRAM60に出力する図84も参照。。ステップ204では、エラー用のVRAM60に記憶されている画像データが読み出されて、UIデバイス18のタッチパネル18Aに表示されるように、第2OS32が、グラフィックコントローラ54のVRAMモードを切替える図85も参照。。より具体的には、グラフィックコントローラ54が画像データを読み出す領域の開始アドレスとして、VRAM60の先頭アドレスを設定する。ここで動作モードは、第1OS31のVRAM52と同じであれば切替える必要はないが、異なる場合には、動作モードも切替える。これにより、スナップショットの画像上にエラー情報ウィンドウが重ねられた合成画像がタッチパネル18Aに表示される。なお、ここで、第1OS31で使用しているVRAM52ではなく、それとは別の領域VRAM60を使用して合成画像を表示するのは、異常発生中の第1OS31のDMA機能が動作していた場合に、合成画像が消去される可能性があるためである図81’も参照。。なお、第1OS31のVRAM52への画像データの転送を停止できるのであれば、VRAM52をそのまま使用してもよい。ステップ204の処理により、UIデバイス18に異常発生時に表示されていた画像上にエラー情報ウィンドウが重畳されて表示される図123も参照。。なお、エラー情報ウィンドウには、エラーの発生を示すエラー情報例えば第1OS31に異常が発生したことを示すエラーコードを示す画像が含まれていてもよいし、エラー情報と共に、異常状態から復帰する処理内容を規定する復帰モードを利用者に選択させるためのモード選択画面の画像が含まれるようにしてもよい。図9に、スナップショットの画像上にエラー情報ウィンドウが重ねられた合成画像70の表示例を示す。図示されるように、合成画像70は、第1OS31のスナップショット画面72と、エラー情報画面74と、モード選択画面76の各画像により構成されている。なお、図示されるモード選択画面76には、電源OFFモード、再起動モード、APLのみ再起動モード、及び標準機能のみ使用モード、の各々のボタンが選択可能に表示されている。なお、ここでは、4つのモードを選択可能に構成したが、これら4つのモードのうち少なくとも2つを選択可能に構成してもよい。このように、UIデバイス18を使用する第1OS31に異常が発生しても、第2OS32がUIデバイス18を使用可能なため、UIデバイス18以外の表示装置を設けなくても、エラーが報知される。また、特別な表示切替装置も不要である。ステップ206では、パネルプロキシによる第1OS31への入力データの通知を停止し、UIデバイス18のタッチパネル18A及び操作キー18Bに対する操作により入力された入力データを第1OS31が使用不能で、且つ第2OS32自身が取得して処理可能なように入力処理を切替える図86も参照。。ステップ208では、利用者により上記4つのモードのいずれかが選択されたか否かを判断する。いずれかが選択されたと判断した場合には、ステップ210に進み、該選択されたモードを実行する図124も参照。。なお、電源OFFモードが利用者により選択された場合には、第2OS32は、画像形成装置10の電源をOFFする処理を実行する。例えば、第2OS32は、UIデバイス18に電源を切ってください取り消しの画面を表示して、利用者が電源スイッチを切ると、シャットダウンプロセスを起動する。また、利用者が取り消しを押した場合には、エラー情報ウィンドウに戻るようにする。また、再起動モードが利用者により選択された場合には、第2OS32は、画像形成装置10を再起動させる処理を実行する。すなわち、第2OS32は、ハイパーバイザ30を含め第1OS31及び第2OS32のリブート再起動プロセスを起動して画像形成装置10を再起動させる。再起動により初期状態に戻る。また、APLのみ再起動モードが利用者により選択された場合には、第2OS32は、第1OS31上で動作する第1アプリケーション33を再起動させる処理を実行する。より具体的には、ハイパーバイザ30経由で第1OS31のみリブートさせ、再度異常発生前に第1OS31が使用していたハードウェアデバイスここではUIデバイス18の制御を第1OS31に戻す。これにより第1アプリケーション33が再起動された状態となる。また、標準機能のみ使用モードが利用者により選択された場合には、第2OS32は、異常が発生した第1OS31を除くOSここでは第2OS32単独で動作するように処理する。より具体的には、第1OS31をそのままの状態、或いは第1OS31のみサスペンド停止或いはリセット再起動した状態にして、異常発生前に第1OS31が使用していたハードウェアデバイスここではUIデバイス18を第2OS32の制御に戻す。また、第2OS32は、第1OS31の第1アプリケーション33が動作しないよう、第1アプリケーション33への処理の遷移を禁止する。図10は、標準機能のみ使用モードが利用者により選択された場合の状態図を示す。図10に示すように、第2OS32は、第1OS31を停止或いはリセットし、UIデバイス18の制御が自身に戻るよう、グラフィックコントローラ54が画像データを読み出す領域の開始アドレスとして、VRAM50の先頭アドレスm番地を設定し、且つ動作モードを、8ビット/画素に設定する。この状態で、第2OS32が第2OS32のメニュー画面の画像データをVRAM50に出力することで、第2OS32のメニュー画面の画像がUIデバイス18のタッチパネル18Aに表示される。また、パネルプロキシによるOS間通信での第1OS31への入力データの通知を停止し、UIデバイス18から入力された入力データは自身が使用可能にする。なお、このとき、第1OS31の第1アプリケーション33が動作しないよう、第1アプリケーション33への処理の遷移を禁止するため、図11に示すように、第2OS32のメニュー画面80の、第1アプリケーション33の項目ボタン81のエリアに第1アプリケーション33が故障中である旨を表示すると共に、該表示をグレーアウトさせた状態で第1アプリケーション33を利用者が選択できないように表示してもよい。また、更に、図11に示すように、メニュー画面80にAPLのみ再起動モードのボタン82を追加表示してもよい。すなわち、利用者が、上記ステップ208で標準機能のみ使用モードを選択して復帰処理させた後に、更にAPLのみ再起動モードの選択を可能にし、利用者がこれを選択した場合に、上記説明したように処理して第1OS31を再起動して、第1アプリケーション33により提供されるサービスの利用が再度可能なように構成してもよい。ところで、本実施の形態で説明した構成を設けない場合第1OS31と第2OS32とが共有してUIデバイス18を使用可能に構成しない場合には、第1OS31がUIデバイス18を使用するときに、第1OS31がハイパーバイザ30に使用依頼を出力してハイパーバイザ30により第1OS31にUIデバイス18が割り当てられることなるが、これにより第1OS31がUIデバイス18を物理的に独占して使用することとなり、第1OS31がハングアップした場合に、UIデバイス18もハングアップしてしまう。利用者は、UIデバイス18から何らの指示も入力できない状態になる。なお、上記実施の形態では、第1OS31から第2OS32に対して使用を依頼し、第2OS32と共に共有して使用するハードウェアデバイスを、UIデバイス18とする場合を例に挙げて説明したが、これに限定されるものではない。例えば、図3に示すように、ネットワークデバイス20やHDD22、スキャナデバイス14、プリンタデバイス16も上記UIデバイス18と同様に、第1OS31から第2OS32に対して使用依頼を出して、第2OS32と共有して使用するように処理してもよい。例えば、第1OS31がネットワークデバイス20を使用する場合について説明する。複数の仮想マシンが動作するシステム上では、物理的に存在するネットワークデバイス20ここで、物理NICと呼称に対して、仮想的なネットワークがブリッジとして第2OS32に定義される。ブリッジは第2OS32の下で管理される。一方、各仮想マシンには仮想NICが定義されており、通常の仮想システム上では、各仮想NICに対応した仮想ネットワークインタフェースがブリッジに関連付けられることにより、物理NICであるネットワークデバイス20を直接利用したパケット通信が行われるが、本実施の形態では、第1OS31は自身に定義される仮想NIC及び仮想ネットワークインタフェースを使用せず、OS間通信により第2OS32に対して送信すべきパケットを送出する。第2OS32は、第2OS32のブリッジを使用してネットワークデバイス20と接続し第1OS31から渡されたパケットを送信する。また、第2OS32は、ネットワークデバイス20を介して、第1OS31を宛先とするパケットを受信した場合には、該パケットをOS間通信により第1OS31に渡す。また、第1OS31がHDD22を使用する場合には、NFSNetworkFileSystemが用いられる。具体的には、第1OS31がOS間通信により第2OS32に使用依頼を出すと、第2OS32は、HDD22を第2OS32で使用するメモリ上の1つのディレクトリとして使用可能なようにマウントし、第1OS31から該HDD22に対して格納するデータをOS間通信により受け取った場合には、該マウントされたHDD22に格納し、HDD22からデータを読み出す要求をOS間通信により第1OS31から受け取った場合には、該マウントされたHDD22からデータを読み出してOS間通信により第1OS31に渡す。また、スキャナデバイス14及びプリンタデバイス16も、第2OS32が制御し、第1OS31の第1アプリケーション33が、これらハードウェアデバイスに対して入出力する必要が生じた場合には、第1OS31からOS間通信により第2OS32に対して入出力依頼し、第2OS32がこれらハードウェアデバイスを制御して入出力処理させる。そして、第2OS32は、第1OS31に対してその入出力結果を、各OS間で共有するメモリ領域を介して受け渡したり、OSの各々に仮想アドレス空間が設定されている場合には、該入出力結果を格納したファイルを、第1OS31の仮想アドレス空間にマップしたりする等の周知の技術により第1OS31で該ファイルを参照可能にして該ファイルを受け渡す。このように、第1OS31と第2OS32とが共に使用可能なように処理することで、第1OS31に異常が生じても、第1OS31が使用中のハードウェアデバイスが他のOSで使用不能になることはない。また、第1OS31がUIデバイス18以外のハードウェアデバイスを使用中に、第1OS31に異常が発生した場合には、UIデバイス18は第2OS32が単独で使用している状態であるため、図7に示したステップ200のスナップショットのコピーはせず、現在第2OS32がUIデバイス18に表示中の画像上にそのままエラー表示ウィンドウを重ねた合成画像の画像データを生成し、第2OS32が使用するVRAM50に出力する。この場合には、ステップ204及びステップ206の切替え処理も不要である。第2OS32は、ステップ208、ステップ210の処理を行い、利用者から選択された選択結果に従って動作する。また、第1OS31及び第2OS32以外の他のOSが存在し、該他のOSがUIデバイス18を使用しており、第1OS31が別のハードウェアデバイスを使用している最中に、第1OS31に異常が発生した場合には、該他のOSがUIデバイス18に表示している画像上にエラー情報ウィンドウが重ねて表示されるように合成画像の画像データを生成し、エラー用のVRAM60に出力し、ステップ204のようにVRAMを切替え、ステップ206のようにUIデバイス18からの入力情報も該他のOSから第2OS32自身が取得して利用するように切替えるようにしてもよい。また、上記実施の形態では、第1OS31に異常が発生した場合に、エラー情報ウィンドウを含む合成画像を表示して、異常状態から復帰する処理内容を規定する復帰モードを利用者に選択させて、該選択結果に応じて処理する例について説明したが、これに限定されず、例えば、エラー情報のみをUIデバイス18に表示し、該表示後、利用者に選択させた処理ではなく、画像形成装置10に予め設定されている復帰処理例えば、上記説明した4つのモードのうちいずれかを実行するようにしてもよい。また、上記実施の形態では、デバイス制御システムが適用される例として画像形成装置を例に挙げて説明したが、これに限定されるものではなく、複数のOSが動作する様々な装置に適用可能である。