(57)【要約】【課題】オペレーティングシステムの復旧作業をより容易にすることができるようにする。【解決手段】  リセット処理部２１がリセットをかけると、パラメータ保存領域整合性確認部４２は、パラメータ保存領域およびそこに格納される情報について有効であるか無効であるかの確認を行う。起動モード判定部４３は、過去の起動実績等に基づいて、オペレーティングシステムを通常モードで起動するか、保守モードで起動するかを判定する。運用OSイメージ運用プログラムイメージ確認部４４は、運用カーネルおよび運用プログラムが正常であるか否かをイメージで確認する。保守OSイメージ保守プログラムイメージ確認部４６は、保守カーネルおよび保守プログラムが正常であるか否かをイメージで確認する。本発明は、情報処理装置に適用することができる。【選択図】図２
2007052520.tif 000002
【特許請求の範囲】
【請求項１】
オペレーティングシステムを利用して処理を行う情報処理装置であって、
前記情報処理装置を運用する第１のオペレーティングシステムの過去の起動実績に基づいて、前記第１のオペレーティングシステム、または、前記第１のオペレーティングシステムを保守する第２のオペレーティングシステムのいずれを起動させるかを判定する起動モード判定手段を備える情報処理装置。
【請求項２】
前記起動モード判定手段による判定結果に基づいて、前記第１のオペレーティングシステムを起動する第１の起動手段と、
前記起動モード判定手段による判定結果に基づいて、前記第２のオペレーティングシステムを起動する第２の起動手段と
をさらに備える請求項１に記載の情報処理装置。
【請求項３】
前記起動モード判定手段は、
前記第１のオペレーションシステムの起動に失敗した不正起動回数のカウント値を示すチェックパラメータの値が所定の最大値より小さいかを確認するチェックパラメータ値確認手段と、
前記チェックパラメータ値確認手段による確認の結果、前記チェックパラメータの値が所定の最大値より小さい場合、前記チェックパラメータの値をインクリメントする値加算手段と
を備え、
前記第１の起動手段は、前記チェックパラメータ値確認手段による確認の結果、前記チェックパラメータの値が所定の最大値に達した場合、前記第１のオペレーティングシステムを起動し、
前記第２の起動手段は、前記チェックパラメータ値確認手段による確認の結果、前記チェックパラメータの値が所定の最大値より小さい場合、前記第２のオペレーティングシステムを起動する
請求項２に記載の情報処理装置。
【請求項４】
前記第１の起動手段による前記第１のオペレーティングシステムの起動が成功した場合、前記チェックパラメータを、正常起動の実績があることを示す予め定められた所定の値に設定するチェックパラメータ値設定手段をさらに備え、
前記チェックパラメータ値確認手段による確認の結果、前記チェックパラメータの値が、正常起動の実績があることを示す予め定められた所定の値であると判定した場合、前記第１の起動手段は、前記値加算手段による前記チェックパラメータの値のインクリメントを行わずに、前記第１のオペレーティングシステムを起動させる
請求項３に記載の情報処理装置。
【請求項５】
前記第２の起動手段により起動された前記第２のオペレーティングシステムを利用して前記第１のオペレーティングシステムを保守する保守手段と、
前記保守手段により前記第１のオペレーティングシステムが保守された場合、前記チェックパラメータの値を初期値に設定する初期値設定手段と
をさらに備える請求項３に記載の情報処理装置。
【請求項６】
前記第１の起動手段による前記第１のオペレーティングシステムの起動が失敗したフェーズを特定するためのブートエラーパラメータの値を設定するブートエラーパラメータ値設定手段をさらに備える
請求項２に記載の情報処理装置。
【請求項７】
前記ブートエラーパラメータ値設定手段により設定された前記ブートエラーパラメータの値を参照するブートエラーパラメータ値参照手段と、
前記ブートエラーパラメータ値参照手段により参照された前記ブートエラーパラメータの値に基づいて、前記第１のオペレーティングシステムを保守する保守手段と
をさらに備える請求項６に記載の情報処理装置。
【請求項８】
前記起動モード判定手段による起動モードの判定において参照されるパラメータのバックアップを生成するバックアップ生成手段をさらに備える
請求項１に記載の情報処理装置。
【請求項９】
オペレーティングシステムを利用して処理を行う情報処理装置の情報処理方法であって、
前記情報処理装置を運用する第１のオペレーティングシステムの過去の起動実績に基づいて、前記第１のオペレーティングシステム、または、前記第１のオペレーティングシステムを保守する第２のオペレーティングシステムのいずれを起動させるかを判定する
ステップを含む情報処理方法
【請求項１０】
オペレーティングシステムを利用して処理をコンピュータに行わせるプログラムであって、
前記情報処理装置を運用する第１のオペレーティングシステムの過去の起動実績に基づいて、前記第１のオペレーティングシステム、または、前記第１のオペレーティングシステムを保守する第２のオペレーティングシステムのいずれを起動させるかを判定する
ステップを含むプログラム
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置および方法、並びにプログラムに関し、特に、オペレーティングシステムの復旧作業をより容易にすることができるようにする情報処理装置および方法、並びにプログラムに関する。
【背景技術】
【０００２】
従来、製品に組み込まれたソフトウェアを後から更新する方法として、イーサネット（登録商標）などのネットワークを介してファームウェアの転送を行い、転送されたファームウェアをフラッシュメモリやハードディスク等の記録媒体に記録するという方法がある（例えば、特許文献１参照）。
【０００３】
例えば、パーソナルコンピュータ等の場合、サーバよりネットワークを介して最新のソフトウェアが供給されるとパーソナルコンピュータは、ユーザの指示を受け付け、その指示に従ってアップデート用のプログラムを起動し、供給された最新のソフトウェアで以前より保持しているソフトウェアを更新する。
【０００４】
しかしながら、例えば、オペレーティングシステムが起動不能になる障害が発生した場合、パーソナルコンピュータは、正常に起動しなくなるので、上述したように外部から最新のソフトウェアを取得することができなくなる。そこで、このような場合、ユーザは、パーソナルコンピュータをメンテナンス用のセーフモードで起動させる。そして、ユーザは、この必要最小限の機能のみを有するセーフモードにおいて、パーソナルコンピュータを操作し、サーバから正常なソフトウェアをダウンロードさせる等して、オペレーティングシステムを復旧させる。
【特許文献１】特開２００５−１１２０９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、例えば、画像データベースや画像配信サーバ等のように、オペレーティングシステムを使用した放送業務用システムを構成する装置の場合、モニタやキーボード等のユーザインターフェイスや、ハードディスク等の外部記憶装置を有していないことが多い。従って、そのような装置において、オペレーティングシステム自体のアップデートを行う場合や、オペレーティングシステムが起動不能になる障害が発生した場合、オペレーティングシステムのメンテナンスを行い、復旧させるために、上述したような更新処理を行うことができず、作業者が指示を入力することもできず、専用のハードウェアを接続したり、部品交換等の作業を行ったりする必要が生じ、メンテナンス作業全体の手順が複雑になる恐れがあった。また、それにより、このメンテナンス作業の作業時間が長くなる恐れがあり、さらに、このメンテナンス作業を行うために作業者がより高度な専門の知識を必要とする恐れもあった。
【０００６】
本発明はこのような状況に鑑みてなされたものであり、オペレーティングシステムの復旧作業をより容易にすることができるようにするものである。
【課題を解決するための手段】
【０００７】
本発明の一側面の情報処理装置は、オペレーティングシステムを利用して処理を行う情報処理装置であって、前記情報処理装置を運用する第１のオペレーティングシステムの過去の起動実績に基づいて、前記第１のオペレーティングシステム、または、前記第１のオペレーティングシステムを保守する第２のオペレーティングシステムのいずれを起動させるかを判定する起動モード判定手段を備える。
【０００８】
前記起動モード判定手段による判定結果に基づいて、前記第１のオペレーティングシステムを起動する第１の起動手段と、前記起動モード判定手段による判定結果に基づいて、前記第２のオペレーティングシステムを起動する第２の起動手段とをさらに備えるようにすることができる。
【０００９】
前記起動モード判定手段は、前記第１のオペレーションシステムの起動に失敗した不正起動回数のカウント値を示すチェックパラメータの値が所定の最大値より小さいかを確認するチェックパラメータ値確認手段と、前記チェックパラメータ値確認手段による確認の結果、前記チェックパラメータの値が所定の最大値より小さい場合、前記チェックパラメータの値をインクリメントする値加算手段とを備え、前記第１の起動手段は、前記チェックパラメータ値確認手段による確認の結果、前記チェックパラメータの値が所定の最大値に達した場合、前記第１のオペレーティングシステムを起動し、前記第２の起動手段は、前記チェックパラメータ値確認手段による確認の結果、前記チェックパラメータの値が所定の最大値より小さい場合、前記第２のオペレーティングシステムを起動するようにすることができる。
【００１０】
前記第１の起動手段による前記第１のオペレーティングシステムの起動が成功した場合、前記チェックパラメータを、正常起動の実績があることを示す予め定められた所定の値に設定するチェックパラメータ値設定手段をさらに備え、前記チェックパラメータ値確認手段による確認の結果、前記チェックパラメータの値が、正常起動の実績があることを示す予め定められた所定の値であると判定した場合、前記第１の起動手段は、前記値加算手段による前記チェックパラメータの値のインクリメントを行わずに、前記第１のオペレーティングシステムを起動させるようにすることができる。
【００１１】
前記第２の起動手段により起動された前記第２のオペレーティングシステムを利用して前記第１のオペレーティングシステムを保守する保守手段と、前記保守手段により前記第１のオペレーティングシステムが保守された場合、前記チェックパラメータの値を初期値に設定する初期値設定手段とをさらに備えるようにすることができる。
【００１２】
前記第１の起動手段による前記第１のオペレーティングシステムの起動が失敗したフェーズを特定するためのブートエラーパラメータの値を設定するブートエラーパラメータ値設定手段をさらに備えるようにすることができる。
【００１３】
前記ブートエラーパラメータ値設定手段により設定された前記ブートエラーパラメータの値を参照するブートエラーパラメータ値参照手段と、前記ブートエラーパラメータ値参照手段により参照された前記ブートエラーパラメータの値に基づいて、前記第１のオペレーティングシステムを保守する保守手段とをさらに備えるようにすることができる。
【００１４】
前記起動モード判定手段による起動モードの判定において参照されるパラメータのバックアップを生成するバックアップ生成手段をさらに備えるようにすることができる。
【００１５】
本発明の一側面の情報処理方法は、オペレーティングシステムを利用して処理を行う情報処理装置の情報処理方法であって、前記情報処理装置を運用する第１のオペレーティングシステムの過去の起動実績に基づいて、前記第１のオペレーティングシステム、または、前記第１のオペレーティングシステムを保守する第２のオペレーティングシステムのいずれを起動させるかを判定するステップを含む。
【００１６】
本発明の一側面のプログラムは、オペレーティングシステムを利用して処理をコンピュータに行わせるプログラムであって、前記情報処理装置を運用する第１のオペレーティングシステムの過去の起動実績に基づいて、前記第１のオペレーティングシステム、または、前記第１のオペレーティングシステムを保守する第２のオペレーティングシステムのいずれを起動させるかを判定するステップを含む。
【００１７】
本発明の一側面においては、情報処理装置を運用するのための第１のオペレーティングシステムの過去の起動実績に基づいて、第１のオペレーティングシステム、または、第１のオペレーティングシステムを保守するのための第２のオペレーティングシステムのいずれを起動させるかが判定される。
【発明の効果】
【００１８】
本発明の一側面によれば、情報を処理することができる。特に、オペレーティングシステムの復旧作業をより容易にすることができる。
【発明を実施するための最良の形態】
【００１９】
以下に本発明の実施の形態を説明するが、本明細書に記載の発明と、発明の実施の形態との対応関係を例示すると、次のようになる。この記載は、請求項に記載されている発明をサポートする実施の形態が本明細書に記載されていることを確認するためのものである。従って、発明の実施の形態中には記載されているが、発明に対応するものとして、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その発明に対応するものではないことを意味するものではない。逆に、実施の形態が発明に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その発明以外の発明には対応しないものであることを意味するものでもない。
【００２０】
さらに、この記載は、本明細書に記載されている発明の全てを意味するものではない。換言すれば、この記載は、本明細書に記載されている発明であって、この出願では請求されていない発明の存在、すなわち、将来、分割出願されたり、補正により追加されたりする発明の存在を否定するものではない。
【００２１】
本発明の一側面の情報処理装置は、オペレーティングシステムを利用して処理を行う情報処理装置（例えば、図１の放送業務用サーバ）であって、前記情報処理装置を運用する第１のオペレーティングシステム（例えば、図１の運用カーネル）の過去の起動実績に基づいて、前記第１のオペレーティングシステム、または、前記第１のオペレーティングシステムを保守する第２のオペレーティングシステム（例えば、図１の保守カーネル）のいずれを起動させるかを判定する起動モード判定手段（例えば、図２の起動モード判定部）を備える。
【００２２】
前記起動モード判定手段による判定結果に基づいて、前記第１のオペレーティングシステムを起動する第１の起動手段（例えば、図２の通常OS起動部）と、前記起動モード判定手段による判定結果に基づいて、前記第２のオペレーティングシステムを起動する第２の起動手段（例えば、図２の保守OS起動部）とをさらに備えるようにすることができる。
【００２３】
前記起動モード判定手段は、前記第１のオペレーションシステムの起動に失敗した不正起動回数のカウント値を示すチェックパラメータ（例えば、図４の「Checks」）の値が所定の最大値（例えば、図４の「MaxChecks」）より小さいかを確認するチェックパラメータ値確認手段（例えば、図３のチェックパラメータ値確認部）と、前記チェックパラメータ値確認手段による確認の結果、前記チェックパラメータの値が所定の最大値より小さい場合、前記チェックパラメータの値をインクリメントする値加算手段（例えば、図３の値加算部）とを備え、前記第１の起動手段は、前記チェックパラメータ値確認手段による確認の結果、前記チェックパラメータの値が所定の最大値に達した場合、前記第１のオペレーティングシステムを起動し（例えば、図３の運用モード選択部）、前記第２の起動手段は、前記チェックパラメータ値確認手段による確認の結果、前記チェックパラメータの値が所定の最大値より小さい場合、前記第２のオペレーティングシステムを起動する（例えば、図３の保守モード選択部）ようにすることができる。
【００２４】
前記第１の起動手段による前記第１のオペレーティングシステムの起動が成功した場合、前記チェックパラメータを、正常起動の実績があることを示す予め定められた所定の値（例えば、図３の「−１」）に設定するチェックパラメータ値設定手段（例えば、図５のチェックパラメータ値設定部）をさらに備え、前記チェックパラメータ値確認手段による確認の結果、前記チェックパラメータの値が、正常起動の実績があることを示す予め定められた所定の値であると判定した場合、前記第１の起動手段は、前記値加算手段による前記チェックパラメータの値のインクリメントを行わずに、前記第１のオペレーティングシステムを起動させるようにすることができる。
【００２５】
前記第２の起動手段により起動された前記第２のオペレーティングシステムを利用して前記第１のオペレーティングシステムを保守する保守手段（例えば、図９のアップデート部）と、前記保守手段により前記第１のオペレーティングシステムが保守された場合、前記チェックパラメータの値を初期値に設定する初期値設定手段（例えば、図９のチェックパラメータ設定部）とをさらに備えるようにすることができる。
【００２６】
前記第１の起動手段による前記第１のオペレーティングシステムの起動が失敗したフェーズを特定するためのブートエラーパラメータ（例えば、図１１の「BootError」）の値を設定するブートエラーパラメータ値設定手段（例えば、図１３の第１ブートエラーパラメータ設定部乃至第（Ｎ＋２）ブートエラーパラメータ設定部）をさらに備えるようにすることができる。
【００２７】
前記ブートエラーパラメータ値設定手段により設定された前記ブートエラーパラメータの値を参照するブートエラーパラメータ値参照手段（例えば、図１６のブートエラーパラメータ参照部）と、前記ブートエラーパラメータ値参照手段により参照された前記ブートエラーパラメータの値に基づいて、前記第１のオペレーティングシステムを保守する保守手段（例えば、図１６のカーネル更新部）とをさらに備えるようにすることができる。
【００２８】
前記起動モード判定手段による起動モードの判定において参照されるパラメータのバックアップを生成するバックアップ生成手段（例えば、図１９のパラメータ保存領域コピー手段）をさらに備えるようにすることができる。
【００２９】
本発明の一側面の情報処理方法およびプログラムは、オペレーティングシステムを利用して処理を行う情報処理装置（例えば、図１の放送業務用サーバ）の情報処理方法であって、前記情報処理装置を運用する第１のオペレーティングシステム（例えば、図１の運用カーネル）の過去の起動実績に基づいて、前記第１のオペレーティングシステム、または、前記第１のオペレーティングシステムを保守する第２のオペレーティングシステム（例えば、図１の保守カーネル）のいずれを起動させるかを判定する（例えば、図６のステップＳ３）ステップを含む。
【００３０】
以下、本発明の実施の形態について図を参照して説明する。
【００３１】
図１は、本発明を適用した放送業務用サーバの一実施形態に係る構成例を示す図である。
【００３２】
図１において、放送業務用サーバ１は、放送業務に利用されるサーバであり、放送業務用システムにおいて、例えば、画像データのストレージや配信等のサーバ処理を行う。
【００３３】
図１に示されるように、放送業務用サーバ１は、バス１０を介して互いに接続されるCPU（Central Processing Unit）１１、メインメモリ１２、イーサネット（登録商標）I/F（InterFace）１３、シリアルポート１４、第１フラッシュメモリ１５、および第２フラッシュメモリ１６を有するが、ハードディスクや、CD-ROM（Compact Disc - Read Only Memory）等の外部記憶装置を持たないアーキテクチャである。
【００３４】
バス１０は、例えばPCI（Peripheral Components Interconnect）等の所定の規格のバスであり、CPU１１、メインメモリ１２、イーサネット（登録商標）I/F１３、シリアルポート１４、第１フラッシュメモリ１５、および第２フラッシュメモリ１６の間で授受される情報を伝送する。
【００３５】
CPU１１は、例えば、第１フラッシュメモリ１５や第２フラッシュメモリ１６に記憶され、メインメモリ１２にロードされたプログラム等を実行することにより、各部の動作を制御する処理部である。メインメモリ１２は、揮発性の半導体メモリにより構成される揮発性の記憶媒体である。例えば、メインメモリ１２は、CPU１１に制御され、第１フラッシュメモリ１５や第２フラッシュメモリ１６より読み出されたソフトウェア（プログラムやデータ等）を一時的に保持し、必要に応じて、CPU１１等に保持している情報を提供する。
【００３６】
イーサネット（登録商標）I/F１３は、例えばイーサネット（登録商標）やインターネット等のネットワークを介して外部の装置と通信処理を行い、その外部の装置と情報の授受を行う。例えば、イーサネット（登録商標）I/F１３は、ネットワークを介して接続される外部の装置より画像データを取得したり、外部の装置に画像データを供給したりする。また、イーサネット（登録商標）I/F１３は、例えば、ネットワークを介して接続される外部の装置より、例えば、正常なオペレーティングシステムや、最新版のソフトウェア等、第１フラッシュメモリ１５や第２フラッシュメモリ１６に書き込むソフトウェアの取得に関する処理を行う。シリアルポートは、例えば、USB（Universal Serial Bus）等の所定の規格で他の装置とバス１０を接続するためのポートである。
【００３７】
第１フラッシュメモリ１５および第２フラッシュメモリ１６は、不揮発性の書き換え可能な記憶媒体であるフラッシュメモリにより構成される。
【００３８】
第１フラッシュメモリ１５は、第２フラッシュメモリ１６に記憶されるソフトウェアの起動や保守を行うためのソフトウェアを格納するための記憶領域を有する。その記憶領域には、例えば、起動時の最初に利用されるブートローダ２１、メンテナンス（保守）用のオペレーティングシステムである保守カーネル２２、およびメンテナンス時に実行されるプログラムである保守プログラム２３等が格納される。この第１フラッシュメモリ１５に記憶されるソフトウェアは、運用の安全性のために、出荷時に予め書き込まれ、出荷後は原則として更新されない。
【００３９】
第１フラッシュメモリ１５の保守カーネル２２は、CPU１１により実行され、例えば、第２フラッシュメモリ１６の記憶領域が空であったり、第２フラッシュメモリ１６に格納されている内容が不正であったりする場合、保守プログラム２３を起動し、第２フラッシュメモリ１６のソフトウェアを更新し、正常な状態のソフトウェアを復元する。保守プログラム２３は、オペレーティングシステムの機能を使用して実装されているもので、ハードウェアに搭載されている、イーサネット（登録商標）I/F１３やシリアルポート１４を使用した、標準的なインターフェイスを用いてプログラムの保守が出来るように実装されており、ユーザが、特別なハードウェアや部品交換を行うことなく、保守作業を行うことができるようにする。なお、この保守を行うか否かの判定方法については後述する。
【００４０】
第２フラッシュメモリ１６は、例えば、起動時のモード判定に利用されるパラメータを保存するパラメータ保存領域３１、通常時（運用時）のオペレーティングシステムである運用カーネル３２、および、通常時（運用時）に実行されるプログラムである運用プログラム３３を格納する。
【００４１】
第２フラッシュメモリ１６は、プログラムのアップデート等により、記憶しているソフトウェアを運用時に書き換えることができるようになされている。また、第２フラッシュメモリ１６は、出荷時においては、情報を記憶しておらず、パラメータ保存領域３１は形成されず、運用カーネル３２および運用プログラム３３も記憶していない。つまり、これらの情報は、出荷後に書き込まれる。
【００４２】
図１の放送業務用サーバ１においてシステムを起動する際、図１のCPU１１は、最初に、第１フラッシュメモリ１５のブートローダ２１を実行する。ブートローダ２１を実行したCPU１１が有する機能を示す機能ブロックを図２に示す。
【００４３】
図２において、CPU１１は、リセット処理部４１、パラメータ保存領域整合性確認部４２、起動モード判定部４３、運用OS（Operating System）イメージ運用プログラムイメージ確認部４４、通常OS起動部４５、保守OSイメージ保守プログラムイメージ確認部４６、保守OS起動部４７、およびハングアップ処理部４８を有している。
【００４４】
リセット処理部４１は、例えば、放送業務用サーバ１の電源を一度切断する等して、それ以前に実行されていた処理を全て初期化し、最初のステップから起動処理を開始する。すなわち、リセット処理部４１は、放送業務用サーバ１にリセットをかける。
【００４５】
リセット処理部２１がリセットをかけると、パラメータ保存領域整合性確認部４２は、パラメータ保存領域３１およびそこに格納される情報について有効であるか無効であるかの確認を行う。
【００４６】
例えば、出荷時においては、第１フラッシュメモリ１５のみソフトウェアを記憶しており、第２フラッシュメモリ１６は、ソフトウェアを記憶していない。従って、出荷時においては、パラメータ保存領域３１が存在しない。このような場合や、形成されたパラメータ保存領域３１全体が破壊された場合、パラメータ保存領域３１自体が使用不可能になる。パラメータ保存領域整合性確認部４２は、プログラム中のマジックナンバーやCRC（Cyclic Redundancy Check）を用いてパラメータ保存領域３１が正しく存在するか（使用可能であるか否か）を確認する。
【００４７】
また、パラメータ保存領域整合性確認部４２は、パラメータ保存領域３１が正しく存在すると判定した場合、そのパラメータ保存領域３１に、起動時のモード判定等に利用される３つのパラメータ（後述する）が正しく記憶されているか（使用可能な状態で格納されているか）否かを確認する。
【００４８】
パラメータ保存領域整合性確認部４２は、パラメータ保存領域３１およびそこに格納される情報が有効であると判定した場合、処理を起動モード判定部４３に渡す。また、パラメータ保存領域３１およびそこに格納される情報が無効であると判定した場合、パラメータ保存領域整合性確認部４２は、処理を保守OSイメージ保守プログラムイメージ確認部４６に渡す。
【００４９】
起動モード判定部４３は、過去の起動実績等に基づいて、オペレーティングシステムを通常モード（運用モード）で起動するか、保守モードで起動するかを判定する。起動モード判定部４３の詳細については後述する。起動モード判定部４３は、通常モードで起動すると判定した場合、運用OSイメージ運用プログラムイメージ確認部４４に処理を渡し、保守モードで起動すると判定した場合、保守OSイメージ保守プログラムイメージ確認部４６に処理を渡す。
【００５０】
運用OSイメージ運用プログラムイメージ確認部４４は、図１の運用カーネル３２および運用プログラム３３が正常であるか否かをイメージで確認する。運用カーネル３２および運用プログラム３３のイメージが正常であり、これらのソフトウェアが有効であると判定した場合、運用OSイメージ運用プログラムイメージ確認部４４は、処理を通常OS起動部４５に渡す。また、運用カーネル３２および運用プログラム３３のイメージが破壊されており、これらのソフトウェアが無効であると判定した場合、運用OSイメージ運用プログラムイメージ確認部４４は、処理を保守OSイメージ保守プログラムイメージ確認部４６に渡す。
【００５１】
通常OS起動部４５は、運用カーネル３２を起動し、さらに必要に応じて運用プログラム３３を実行する。
【００５２】
保守OSイメージ保守プログラムイメージ確認部４６は、図１の保守カーネル２２および保守プログラム２３が正常であるか否かをイメージで確認する。保守カーネル２２および保守プログラム２３のイメージが正常であり、これらのソフトウェアが有効であると判定した場合、保守OSイメージ保守プログラムイメージ確認部４６は、処理を保守OS起動部４７に渡す。また、保守カーネル２２および保守プログラム２３のイメージが破壊されており、これらのソフトウェアが無効であると判定した場合、保守OSイメージ保守プログラムイメージ確認部４６は、処理をハングアップ処理部４８に渡す。
【００５３】
保守OS起動部４７は、保守カーネル２２を起動し、さらに必要に応じて保守プログラム２３を実行する。
【００５４】
ハングアップ処理部４８は、例えば、図示せぬ所定のLED（Light Emitting Diode）を点灯させて、通常カーネル３２も保守カーネル２２も起動することができないことをユーザに通知する等の処理を行う。
【００５５】
図３は、図２の起動モード判定部４３の詳細な構成例を示す機能ブロック図である。
【００５６】
図３に示されるように、起動モード判定部４３は、セーフモードパラメータ値確認部５１、チェックパラメータ値確認部５２、値加算部５３、運用モード選択部５４、および保守モード選択部５５を有している。起動モード判定部４３は、パラメータ保存領域３１に保存されているパラメータの値に基づいて、起動実績やユーザ指示等を判定する。パラメータ保存領域３１に保存されているパラメータは、例えば、図４の表に示されるようなものがある。
【００５７】
図４の表６１は、パラメータ保存領域３１に保存されているパラメータの例を示しており、例えば、「Safemode」、「Checks」、および「MaxChecks」がある。表６１に示されるように、セーフモードパラメータ（Safemode）は、起動モードを強制的に指定するパラメータであり、例えば、ユーザ等により設定される。その値は、例えば１ビットの情報からなり、値「０」は運用モードを指定し、値「１」は保守モードを指定する。起動モード判定部４３は、後述するように、このセーフモードパラメータの値に従って、保守モードを選択するか否かを判定する。
【００５８】
チェックパラメータ（Checks）は、オペレーティングシステムの過去の起動実績を示すパラメータである。より具体的には、チェックパラメータは、オペレーティングシステムが過去（チェックパラメータの値がリセットされてから現在まで）に正常に起動したことがあるか否か、および、正常起動していない場合、その起動に失敗した回数（不正起動回数）が何回かを示す。例えば、連続してオペレーティングシステムの起動が失敗した場合（不正起動が発生した場合）、チェックパラメータの値にはその不正起動回数のカウント値が設定される。また、オペレーティングシステムが過去に正常に起動したことがある場合、チェックパラメータの値は「−１」に設定される。つまり、このチェックパラメータの値は、起動処理中に必要に応じて更新される。起動モード判定部４３は、後述するように、このチェックパラメータの値に従って運用モードまたは保守モードのいずれを選択するかを判定したり、チェックパラメータの値を更新したりする。
【００５９】
マックスチェックパラメータ（MaxChecks）は、チェックパラメータ（Checks）が取りうる値の最大値（不正起動回数上限値）を示すパラメータである。つまり、チェックパラメータの値は、「−１」乃至「MaxChecks」の範囲内の整数が設定される。不正起動回数（チェックパラメータの値）がこのマックスチェックパラメータの値を超えると、起動モード判定部４３は、起動モードとして保守モードを選択する。つまり、換言すると、マックスチェックパラメータは、起動モードが運用モードから保守モードに移行（分岐）する不正起動回数を示すパラメータである。このマックスチェックパラメータの値は、例えば、ユーザ等により予め設定される。
【００６０】
チェックパラメータやマックスチェックパラメータは、例えば起動処理の不安定さ等によって偶然発生した不正起動のように、再起動すれば不具合が解消される程度の原因による不正起動により、保守モードが選択されることを抑制するための猶予機能を提供するためのパラメータである。
【００６１】
仮に、これらのパラメータを用いずに、全ての不正起動を見逃さないようにすると、ブートローダ２１を実行するCPU１１は、不正起動が発生する度に保守モードでオペレーティングシステムを起動してしまう（保守カーネル２２を起動してしまう）。この場合、再起動すれば解消されるような不具合であっても、保守カーネル２２や保守プログラム２３による運用カーネル３２や運用プログラム３３の更新（または更新を行うためのチェック）等の処理が発生し、処理の負荷や処理時間が増大するだけでなく、不必要な書き換えによって第２フラッシュメモリ１６のデータを破壊してしまう危険性も大きくなる。
【００６２】
チェックパラメータを利用して不正起動回数をカウントし、いくつかの不正起動を見逃すようにし、マックスチェックパラメータの値の回数連続して不正起動が発生した場合のみ保守モードでオペレーティングシステムを起動させるようにすることにより、CPU１１は、このような事態の発生を抑制することができ、より安全に起動処理を行うことができる。
【００６３】
また、後述するように、これらのチェックパラメータやマックスチェックパラメータを用いて起動モードの選択を制御するので、放送業務用サーバ１は、ユーザによるモード選択の判断や指示を必要とせずに、より安全にメンテナンス作業を行うことができる。すなわち、放送業務用サーバ１は、オペレーティングシステムの復旧作業をより容易にすることができる。
【００６４】
なお、正常起動した場合にチェックパラメータの値が「−１」に設定されるようにすることにより、後述するように、CPU１１は、正常起動の実績を把握することができるので、不要な不正起動のカウントを抑制することができる。これにより、不要な第２フラッシュメモリ１６の書き換えを抑制し、データ破壊等の危険性を低減させることができるとともに、第２フラッシュメモリ１６の寿命の短縮を抑制することができる。
【００６５】
図３に戻り、セーフモードパラメータ値確認部５１は、セーフモードパラメータ（Safemode）の値を確認し、その値が「０」である場合、処理をチェックパラメータ値確認部５２に渡し、値が「１」である場合、処理を保守モード選択部５５に渡す。
【００６６】
チェックパラメータ値確認部５２は、チェックパラメータ（Checks）の値を確認し、その値が「−１」である場合、正常起動の実績ありと判定し、処理を運用モード選択部５４に渡し、その値が「０」乃至「マックスチェックパラメータ（MaxChecks）の値」である場合、処理を値加算部５３に渡し、その値がマックスチェックパラメータ（MaxChecks）の値に達した場合、運用モードでの起動不良が発生した（運用カーネル３２に保守が必要な程深刻な問題が発生した）と判断し、処理を保守モード選択部５５に渡す。
【００６７】
値加算部５３は、前回の起動が不正起動であると判定し、チェックパラメータの値に「＋１」を加算する。このチェックパラメータの値は、製品出荷時や、オペレーティングシステムのアップデートの際に、「０」に設定され、その後、値加算部５３のインクリメントにより、正常に起動しなかった回数のカウント値が設定される。ただし、このチェックパラメータの値は、後述するように、運用モードが正常に起動した場合、起動実績ありを意味する「−１」に設定される。
【００６８】
一般的に、チェックパラメータを保存する第２フラッシュメモリ１６は、数万回程度の書き換え可能な回数（寿命）があり、起動するたびにパラメータの書き換えを行うことは、第２フラッシュメモリ１６の寿命を不要に短縮させることになり好ましくない。また、更新時に他のデータを破壊する恐れもあるため、不要な更新処理は極力低減することが望ましい。このため、正常起動した場合には、このチェックパラメータの値が「−１」に設定されるようにし、チェックパラメータの値の更新が行われないようにして不正起動のカウントを禁止する。
【００６９】
このため、値加算部５３は、チェックパラメータに「−１」以外の値がセットされている場合のみ、チェックパラメータの値をインクリメントするようになされている。換言すると、チェックパラメータ値確認部５２は、正常起動の実績がある場合、値加算部５３を介さずに運用モード選択部５４に処理を渡す。
【００７０】
運用モード選択部５４は、起動モードとして運用モードを選択し、その情報を図２の運用OSイメージ運用プログラムイメージ確認部４４に供給する。保守モード選択部５５は、起動モードとして保守モードを選択し、その情報を図２の保守OSイメージ保守プログラムイメージ確認部４６に供給する。
【００７１】
図５は、図２の通常OS起動部４５の詳細な構成例を示す機能ブロック図である。
【００７２】
図５に示されるように、通常OS起動部４５は、セーフモードパラメータ値確認部７１、チェックパラメータ値確認部７２、チェックパラメータ値設定部７３、および初期化処理終了部７４を有している。これらの機能ブロックで示される処理は、通常OS起動部４５がオペレーティングシステムを起動直後に実行するオペレーティングシステムの初期化処理中において実行される。
【００７３】
セーフモードパラメータ値確認部７１は、セーフモードパラメータの値を確認し、その値が「０」である（運用モードでの起動処理が指示されている）場合、処理をチェックパラメータ値確認部７２に渡す。また、その値が「１」である（保守モードでの起動処理が指示されている）場合、セーフモードパラメータ値確認部７１は、処理を初期化処理終了部７４に渡す。
【００７４】
チェックパラメータ値確認部７２は、チェックパラメータの値を確認し、その値が「−１」である場合、つまり、正常起動実績がある場合、処理を初期化処理終了部７４に渡し、その値が「−１」以外である場合、つまり、正常起動実績がない場合、処理をチェックパラメータ値設定部７３に渡す。
【００７５】
チェックパラメータ値設定部７３は、運用モードで正常に起動が行われたことを示すために、チェックパラメータの値を「−１」に設定する。チェックパラメータの値を「−１」に設定すると、チェックパラメータ値設定部７３は、処理を初期化処理終了部７４に渡す。
【００７６】
初期化処理終了部７４は、オペレーティングシステムの初期化処理を終了させる。
【００７７】
つまり、運用モードでオペレーティングシステムが正常に起動されると（運用カーネル３２が正常に起動されると）、通常OS起動部４５は、その実績を示すために、チェックパラメータの値を「−１」に設定する。起動モード判定部４３は、その次の起動処理の際に、そのチェックパラメータの値が「−１」であることから、正常起動の実績があることを把握し、上述したように不要なカウントを省略する。
【００７８】
次に、具体的な処理の流れについて説明する。
【００７９】
最初に、図６のフローチャートを参照して、起動モード制御処理の流れの例を説明する。
【００８０】
リセット処理部４１によりリセット処理が行われると、起動モード制御処理が開始され、パラメータ保存領域整合性確認部４２は、ステップＳ１において、パラメータ保存領域３１の整合性を確認し、ステップＳ２において、その確認結果に基づいて、パラメータ保存領域３１、および、そのパラメータ保存領域３１に格納される各パラメータ（例えば、セーフモードパラメータ、チェックパラメータ、およびマックスチェックパラメータ）が正しく存在するか否かを判定する。
【００８１】
パラメータ保存領域３１およびその各パラメータが破壊されておらず、正しく存在すると判定した場合、パラメータ保存領域整合性確認部４２は、ステップＳ３に処理を進める。ステップＳ３において、起動モード判定部４３は、起動モード判断処理を実行する。起動モード判断処理の詳細は、図７のフローチャートを参照して後述する。
【００８２】
ステップＳ３の起動モード判断処理を終了すると、起動モード判定部４３は、処理をステップＳ４に進め、運用モードが選択されたか否かを判定する。運用モードが選択されたと判定した場合、起動モード判定部４３は、処理をステップＳ５に進める。ステップＳ５において、運用OSイメージ運用プログラムイメージ確認部４４は、運用OSイメージおよび運用プログラムイメージを確認し、ステップＳ６において、その確認結果に基づいて、運用カーネル３２および運用プログラム３３のイメージが正しいか否かを判定する。
【００８３】
運用カーネル３２および運用プログラム３３のイメージが正しいと判定した場合、運用OSイメージ運用プログラムイメージ確認部４４は、処理をステップＳ７に進める。ステップＳ７において、通常OS起動部４５は、通常OS（運用カーネル３２や運用プログラム３３）を起動し、起動モード制御処理を終了する。
【００８４】
また、ステップＳ２において、パラメータ保存領域３１およびその各パラメータが破壊されており、正しく存在しないと判定した場合、パラメータ保存領域整合性確認部４２は、処理をステップＳ８に進める。さらに、ステップＳ４において、保守モードが選択され、運用モードは選択されていないと判定した場合、起動モード判定部４３は、処理をステップＳ８に進める。また、ステップＳ６において、運用カーネル３２または運用プログラム３３が破壊されており、それらのイメージが正しくないと判定した場合、運用OSイメージ運用プログラムイメージ確認部４４は、処理をステップＳ８に進める。
【００８５】
ステップＳ８において、保守OSイメージ保守プログラムイメージ確認部４６は、保守OSイメージおよび保守プログラムイメージを確認し、ステップＳ９において、その確認結果に基づいて、保守カーネル２２および保守プログラム２３のイメージが正しいか否かを判定する。
【００８６】
保守カーネル２２および保守プログラム２３のイメージが正しいと判定した場合、保守OSイメージ保守プログラムイメージ確認部４６は、処理をステップＳ１０に進める。ステップＳ１０において、保守OS起動部４７は、保守OS（保守カーネル２２や保守プログラム２３）を起動し、起動モード制御処理を終了する。
【００８７】
また、ステップＳ９において、保守カーネル２２または保守プログラム２３が破壊されており、それらのイメージが正しくないと判定した場合、保守OSイメージ保守プログラムイメージ確認部４６は、処理をステップＳ１１に進める。ステップＳ１１において、ハングアップ処理部４８は、処理結果をユーザに通知する等のハングアップ処理を行い、起動モード制御処理を終了する。
【００８８】
以上のように起動モードを制御し、必要に応じて保守モードに移行するので、放送業務用サーバ１は、ユーザがオペレーティングシステムの復旧作業をより容易に行うことができる。
【００８９】
次に、図７のフローチャートを参照して、図６のステップＳ３において実行される起動モード判断処理の詳細な流れの例について説明する。
【００９０】
起動モード判断処理が開始されると、起動モード判定部４３のセーフモードパラメータ値確認部５１は、ステップＳ３１において、パラメータ保存領域３１に保存されるセーフモードパラメータの値を確認し、ステップＳ３２において、その確認結果に基づいて、セーフモードパラメータに指定されるモードが運用モードであるか否かを判定する。
【００９１】
運用モードであると判定した場合、セーフモードパラメータ値確認部５１は、処理をステップＳ３３に進める。ステップＳ３３において、チェックパラメータ値確認部５２は、パラメータ保存領域３１に保存されるチェックパラメータの値を確認し、ステップＳ３４において、その確認結果に基づいて、チェックパラメータの値が「−１」であるか否かを判定する。
【００９２】
チェックパラメータの値が「−１」でないと判定した場合、チェックパラメータ値確認部５２は、処理をステップＳ３５に進める。ステップＳ３５において、チェックパラメータ値確認部５２は、さらに、チェックパラメータの値が「０」以上、かつ「MaxChecks」未満であるか否かを判定する。ここで、チェックパラメータの値が「０」以上、かつ、「マックスチェックパラメータの値」より小さい自然数である場合、チェックパラメータ値確認部５２は、処理をステップＳ３６に進める。ステップＳ３６において、値加算部５３は、チェックパラメータの値を「＋１」インクリメントし、処理をステップＳ３７に進める。
【００９３】
また、ステップＳ３４において、チェックパラメータの値が「−１」であると判定した場合、チェックパラメータ値確認部５２は、ステップＳ３５およびステップＳ３６の処理を省略し、ステップＳ３７に処理を進める。
【００９４】
ステップＳ３７において、運用モード選択部５４は、運用モードを選択し、起動モード判断処理を終了し、処理を図６のステップＳ３に戻し、ステップＳ４以降の処理を実行させる。
【００９５】
また、図７のステップＳ３２において、セーフモードパラメータに指定されるモードが保守モードであり、運用モードでないと判定した場合、セーフモードパラメータ値確認部５１は、処理をステップＳ３８に進める。ステップＳ３８において、保守モード選択部５５は、保守モードを選択し、起動モード判断処理を終了し、処理を図６のステップＳ３に戻し、ステップＳ４以降の処理を実行させる。
【００９６】
以上のように、セーフモードパラメータを利用して起動モードを判断することにより、放送業務用サーバ１は、ユーザがセーフモードパラメータを予め設定するだけで、オペレーティングシステムの復旧作業をより容易に行うことができる。また、チェックパラメータおよびマックスチェックパラメータを用いて起動モードを判断することにより、放送業務用サーバ１は、ユーザによるモード選択の判断や指示を必要とせずに、より安全にメンテナンス作業を行うことができる。
【００９７】
次に、図８のフローチャートを参照して、チェックパラメータの制御処理の流れの例を説明する。運用カーネル３２が起動され、通常OSの初期化が開始されると、通常OS起動部４５は、チェックパラメータ制御処理を開始する。
【００９８】
チェックパラメータ制御処理が開始されると、セーフモードパラメータ値確認部７１は、ステップＳ５１において、セーフモードパラメータの値を確認し、ステップＳ５２において、その確認結果に基づいて、セーフモードパラメータにより指定される起動モードが運用モードであるか否かを判定する。
【００９９】
運用モードであると判定した場合、セーフモードパラメータ値確認部７１は、処理をステップＳ５３に進める。ステップＳ５３において、チェックパラメータ値確認部７２は、現在のチェックパラメータの値を確認し、ステップＳ５４において、チェックパラメータの値が「−１」であるか否かを判定する。チェックパラメータの値が「−１」でないと判定した場合、チェックパラメータ値設定部７３は、処理をステップＳ５５に進め、チェックパラメータの値を「−１」に設定し、処理をステップＳ５６に進める。
【０１００】
また、ステップＳ５２において、セーフモードパラメータにより指定される起動モードが運用モードではないと判定した場合、セーフモードパラメータ値確認部７１は、処理をステップＳ５６に進める。さらに、ステップＳ５４において、チェックパラメータの値が「−１」であると判定した場合、チェックパラメータ値設定部７３は、処理をステップＳ５６に進める。
【０１０１】
ステップＳ５６において、初期化処理終了部７４は、初期化処理を終了させ、チェックパラメータ制御処理を終了する。
【０１０２】
以上のように、正常起動した場合にチェックパラメータの値を「−１」に設定することにより、放送業務用サーバ１は、正常起動の実績を把握することができるので、不要な不正起動のカウントを抑制することができる。
【０１０３】
次に、以上のような起動モードの制御において、保守モードが選択された場合、CPU１１は、保守カーネル２２を起動し、保守プログラム２３を実行することにより、図９に示されるような機能ブロックで表される機能を有する。
【０１０４】
図９において、CPU１１は、運用カーネル３２や運用プログラム３３をアップデートするアップデート部８１、保守を行ったことをチェックパラメータに反映させるチェックパラメータ設定部８２、および、オペレーティングシステムを再起動することにより、保守モードを終了させる再起動処理部８３を有する。
【０１０５】
図１０のフローチャートを参照してアップデート処理の流れの例を説明する。
【０１０６】
保守モードでオペレーティングシステムが起動されると、アップデート部８１は、ステップＳ７１において、運用カーネル３２や運用プログラム３３をアップデートし、処理をステップＳ７２に進める。
【０１０７】
ステップＳ７２において、チェックパラメータ設定部８２は、チェックパラメータの値を値「０」を設定（リセット）し、処理をステップＳ７３に進める。ステップＳ７３において、再起動処理部８３は、現在起動中の保守プログラム２３や保守カーネル２２を終了させ、リセット処理部４１に処理を渡し、例えば電源を切断および再投入させる等して、オペレーティングシステムを再起動させ、アップデート処理を終了する。
【０１０８】
以上のようにアップデート処理を行うことにより、運用カーネル３２および運用プログラム３３が保守される度にチェックパラメータの値が「０」にリセットされる。これにより、放送業務用サーバ１は、ユーザの指示や操作無しに、不正起動の回数をカウントし続けることができる。つまり、放送業務用サーバ１は、不要な第２フラッシュメモリ１６の書き換えを抑制し、データ破壊等の危険性を低減させることができるとともに、第２フラッシュメモリ１６の寿命の短縮を抑制することができる。
【０１０９】
以上のように、放送業務用サーバ１は、オペレーティングシステムの復旧作業をより容易にすることができる。
【０１１０】
なお、上述したパラメータ以外のパラメータを用いるようにしてもよい。例えば、以上の説明において、放送業務用サーバ１は、チェックパラメータを用いて、不正起動の回数をカウントするのみであったが、さらに、新たなパラメータを用いて、起動処理が停止したフェーズのログを記録するようにしてもよい。
【０１１１】
図１１の表９１に示されるパラメータであるブートエラーパラメータ（BootError）は、その値によって起動処理が停止したフェーズを示すパラメータである。例えば、運用プログラム３３が第１アプリケーション乃至第３アプリケーションの３つのアプリケーションにより構成される場合、ブートエラーパラメータは、図１１に示されるように、「０」乃至「４」の５種類の値により起動処理が停止したフェーズを示している。
【０１１２】
つまり、この場合、ブートエラーパラメータは、値「０」のとき、オペレーティングシステムが正常に起動されたことを示し、値「１」のとき、カーネルの起動に失敗したことを示し、値「２」のとき、第１アプリケーションの起動に失敗したことを示し、値「３」のとき、第２アプリケーションの起動に失敗したことを示し、値「４」のとき、第３アプリケーションの起動に失敗したことを示す。
【０１１３】
ユーザは、このブートエラーパラメータの値を参照することにより、起動処理のどの段階でエラーが発生したかを把握することができ、エラーの原因の特定をより容易に行うことができる。なお、ブートエラーパラメータの値はどのようなものであっても良いし、その値の種類の数もいくつであってもよい。
【０１１４】
この場合の起動モード判定部４３の詳細な構成例を図１２に示す。図１２に示されるように、この場合、起動モード判定部４３は、図３に示される構成に加えて、ブートエラーパラメータ設定部１０１を有する。
【０１１５】
ブートエラーパラメータ設定部１０１は、チェックパラメータ値確認部５２において、チェックパラメータの値が「−１」でないと判定された場合、つまり、オペレーティングシステムが正常に起動されなかった場合、値加算部５３がチェックパラメータの値をインクリメントさせた後、次の起動処理のためにブートエラーパラメータの値を初期化し、運用カーネル３２が起動される前に起動処理が失敗したことを示す値「１」をセットする。ブートエラーパラメータの値をセットすると、ブートエラーパラメータ設定部１０１は、処理を運用モード選択部５４に渡す。
【０１１６】
また、この場合の、通常OS起動部４５の詳細な構成例を図１３に示す。起動処理において運用プログラム３３に含まれるＮ個のアプリケーション（第１アプリケーション乃至第Ｎアプリケーション）を起動する場合、図１３に示されるように、通常OS起動部４５は、図５において説明したチェックパラメータ値確認部７２と、チェックパラメータ値設定部７３との間に、（Ｎ＋１）個のブートエラーパラメータ設定部と、１個のカーネル起動部１１２と、並びにＮ個のアプリケーション起動部を有する。つまり、図１３に示されるように、チェックパラメータ値確認部７２から、第１ブートエラーパラメータ設定部１１１−１、カーネル起動部１１２、第２ブートエラーパラメータ設定部１１１−２、第１アプリケーション起動部１１３−１、・・・、第Ｎ＋１ブートエラーパラメータ設定部１１１−（Ｎ＋１）、および第Ｎアプリケーション起動部１１３−Ｎの順番で処理が渡された後、チェックパラメータ値設定部７３に処理が渡される。
【０１１７】
また、通常OS起動部４５は、チェックパラメータ値設定部７３と初期化処理終了部７４との間に第Ｎ＋２ブートエラーパラメータ設定部１１１−（Ｎ＋２）をさらに有し、チェックパラメータ値設定部７３が第Ｎ＋２ブートエラーパラメータ設定部１１１−（Ｎ＋２）に処理を渡し、第Ｎ＋２ブートエラーパラメータ設定部１１１−（Ｎ＋２）が初期化処理終了部７４に処理を渡すようになされている。
【０１１８】
第１ブートエラーパラメータ設定部１１１−１乃至第Ｎ＋２ブートエラーパラメータ設定部１１１−（Ｎ＋２）は、順次、互いに異なる値にブートエラーを更新していくことにより、これらの各処理の間において実行される起動処理の各フェーズ（カーネル起動部１１２、並びに、第１アプリケーション起動部１１３−１乃至第Ｎアプリケーション起動部１１３−Ｎ）のどこで起動処理が失敗したかを示す。
【０１１９】
例えば、第Ｎアプリケーション起動部１１３−Ｎの処理が失敗した場合、ブートエラーパラメータの値は、その直前の第Ｎ＋１ブートエラーパラメータ設定部１１１−（Ｎ＋１）が設定した値となる。従って、ユーザは、そのブートエラーパラメータの値から、第Ｎアプリケーション起動部１１３−Ｎの処理が失敗したことを把握することができ、この第Ｎアプリケーションより前に起動されるカーネルやアプリケーションの保守作業を省略することができ、容易にオペレーティングシステムの復旧作業を行うことができる。
【０１２０】
なお、全ての起動処理が終了した後の第Ｎ＋２ブートエラーパラメータ設定部１１１−（Ｎ＋２）は、ブートエラーパラメータの値を、起動処理が正常に終了することを示す値（例えば「０」）に設定する。
【０１２１】
このように、ユーザは、ブートエラーパラメータの値を参照することにより、カーネル起動部１１２、並びに、第１アプリケーション起動部１１３−１乃至第Ｎアプリケーション起動部１１３−Ｎのいずれの処理が失敗したかを把握することができるので、より容易にメンテナンス作業を行うことができる。すなわち、放送業務用サーバ１は、オペレーティングシステムの復旧作業をより容易にすることができる。また、以上のようにすることにより、保守が不要な正常なアプリケーションやカーネルを誤って保守するのを抑制することができるので、ユーザは、より安全にメンテナンス作業を行うことができる。
【０１２２】
次に、具体的な処理の流れについて説明する。最初に、起動モード判定部４３（図１２の場合）による起動モード判断処理の流れの例を図１４のフローチャートを参照して説明する。
【０１２３】
起動モード判定部４３のセーフモードパラメータ値確認部５１乃至値加算部５３は、ステップＳ９１乃至ステップＳ９６の各処理を、図７のステップＳ３１乃至ステップＳ３６と同様に実行する。そして、値加算部５３がステップＳ９６においてチェックパラメータの値を「＋１」インクリメントすると、ブートエラーパラメータ設定部１０１は、ステップＳ９７において、ブートエラーパラメータの値を「１」に設定する。ブートエラーパラメータの値を「１」に設定すると、ブートエラーパラメータ設定部１０１は、処理をステップＳ９８に進める。
【０１２４】
運用モード選択部５４は、ステップＳ９８において、ステップＳ３７の場合と同様に運用モードを選択すると、起動モード判断処理を終了する。また、保守モード選択部５５は、ステップＳ９９において、ステップＳ３８の場合と同様に保守モードを選択すると、起動モード判断処理を終了する。
【０１２５】
以上のようにすることにより、起動モード判定部４３は、起動処理が開始される度に、ブートエラーパラメータの値を初期値「１」に設定することができる。これにより、ブートエラーパラメータは、繰り返し実行される起動処理のそれぞれについて、その終了（停止）位置（フェーズ）を示すことができる。
【０１２６】
次に、通常OS起動部４５により実行されるパラメータ制御処理の具体的な処理の流れの例について図１５のフローチャートを参照して説明する。ただし、ここでは説明の便宜上、運用プログラム３３が第１アプリケーション乃至第３アプリケーションの３つのアプリケーションを含むものとして説明する。
【０１２７】
すなわち、通常OS起動部４５は、図５の構成の他に、第１ブートエラーパラメータ設定部１１１−１乃至第５ブートエラーパラメータ設定部１１１−５、カーネル起動部１１２、並びに、第１アプリケーション起動部１１３−１乃至第３アプリケーション起動部１１３−３を有しているものとする。
【０１２８】
図１５において、パラメータ制御処理が開始されると、セーフモードパラメータ値確認部７１およびチェックパラメータ値確認部７２は、ステップＳ１１１乃至ステップＳ１１４の処理を、図８のフローチャートのステップＳ５１乃至ステップＳ５４と同様に実行する。
【０１２９】
ステップＳ１１４において、チェックパラメータの値が「−１」であると判定した場合、チェックパラメータ値確認部７２は、処理をステップＳ１１５に進める。ステップＳ１１５において、第１ブートエラーパラメータ設定部１１１−１が、ブートエラーパラメータの値を「１」に設定し、ステップＳ１１６においてカーネル起動部１１２がカーネルを起動する。
【０１３０】
カーネルが起動されると、ステップＳ１１７において第２ブートエラーパラメータ設定部１１１−２がブートエラーパラメータの値を「２」に設定し、ステップＳ１１８において第１アプリケーション起動部１１３−１が第１アプリケーションを起動する。
【０１３１】
第１アプリケーションが起動されると、ステップＳ１１９において第３ブートエラーパラメータ設定部１１１−３がブートエラーパラメータの値を「３」に設定し、ステップＳ１２０において第２アプリケーション起動部１１３−２が第２アプリケーションを起動する。
【０１３２】
第２アプリケーションが起動されると、ステップＳ１２１において第４ブートエラーパラメータ設定部１１１−４がブートエラーパラメータの値を「４」に設定し、ステップＳ１２２において第３アプリケーション起動部１１３−３が第３アプリケーションを起動する。
【０１３３】
第３アプリケーションが起動されると、ステップＳ１２３においてチェックパラメータ値設定部７３がチェックパラメータの値を「−１」に設定し、ステップＳ１２４において第５ブートエラーパラメータ設定部１１１−５がブートパラメータの値を「５」に設定し、処理をステップＳ１２５に進める。
【０１３４】
ステップＳ１２５において初期化処理終了部７４は、図８のステップＳ５６の場合と同様に、初期化処理を終了し、パラメータ制御処理を終了する。
【０１３５】
以上のように、ブートエラーパラメータを用いて起動処理の詳細なログを残すので、放送業務用サーバ１は、ユーザが容易に問題箇所を特定し、適切なメンテナンス作業を行うことができるようにすることができる。つまり、放送業務用サーバ１は、オペレーティングシステムの復旧作業をより容易にすることができる。
【０１３６】
なお、運用プログラム３３が有するアプリケーションの数はいくつであってもよく、通常OS起動部４５は、ブートエラーパラメータに、その起動させるアプリケーション数に応じた数の設定値を設定することができるようにすればよい。例えば、上述したように、通常OS起動部４５は、Ｎ個のアプリケーションを起動させる場合、（Ｎ＋２）個のブートエラーパラメータ設定部を有するようにする。
【０１３７】
さらに、以上のブートエラーパラメータを利用して、アップデートを行うようにしてもよい。図１６は、その場合の図９のアップデート部８１の詳細な構成例を示す機能ブロック図である。なお、ここでは、図１５のフローチャートを参照して説明した場合と同様に、運用プログラム３３が第１アプリケーション乃至第３アプリケーションの３つのアプリケーションを含むものとして説明する。
【０１３８】
図１６において、アップデート部８１は、ブートエラーパラメータ参照部１２１、カーネル更新部１２２、第１アプリケーション更新部１２３、第２アプリケーション更新部１２４、および第３アプリケーション更新部１２５を有している。
【０１３９】
ブートエラーパラメータ参照部１２１は、現在のブートエラーパラメータの値を参照する。カーネル更新部１２２は、ブートエラーパラメータ参照部１２１の参照結果に応じて必要があれば、運用カーネル３２を更新する。すなわち、ブートエラーパラメータの値がカーネル起動時に起動処理が失敗したことを示す値であれば、カーネル更新部１２２は、運用カーネル３２を更新（保守）する。
【０１４０】
第１アプリケーション更新部１２３乃至第３アプリケーション更新部１２５もカーネル更新部と同様に、ブートエラーパラメータ参照部１２１の参照結果に応じて必要があれば、それぞれ運用プログラム３３の対応するアプリケーション（第１アプリケーション乃至第３アプリケーションのいずれか）を更新（保守）する。
【０１４１】
例えば、図１７に示されるように、ブートエラーパラメータの値が、運用カーネル３２の起動失敗を示す値「１」である場合（BootError=１）、カーネル更新部１２２は、最新のオペレーティングシステムのカーネルやアプリケーションプログラム（正常に動作するカーネルやアプリケーションプログラム）をまとめたアップデートパッケージのカーネル１３２を、第２フラッシュメモリ１６の運用カーネル３２に上書きする。
【０１４２】
また、例えば、ブートエラーパラメータの値が、第１アプリケーション３３−１の起動失敗を示す値「２」である場合（BootError=２）、第１アプリケーション更新部１２３は、アップデートパッケージの第１アプリケーション１３３−１を、第２フラッシュメモリ１６の第１アプリケーション３３−１に上書きする。
【０１４３】
さらに、例えば、ブートエラーパラメータの値が、第２アプリケーション３３−２の起動失敗を示す値「３」である場合（BootError=３）、第２アプリケーション更新部１２４は、アップデートパッケージの第２アプリケーション１３３−２を、第２フラッシュメモリ１６の第２アプリケーション３３−２に上書きする。
【０１４４】
第３アプリケーション更新部１２５も同様に第３アプリケーションを更新する。以上のようにして、起動するアプリケーションが（Ｎ−１）個存在する場合、第（Ｎ−１）アプリケーション３３−（Ｎ−１）まで、同様に、アップデートパッケージのアプリケーションを用いて、順次上書き更新する。つまり、ブートエラーパラメータの値が、第（Ｎ−１）アプリケーション３３−（Ｎ−１）の起動失敗を示す値「Ｎ」である場合（BootError=Ｎ）、図示せぬ第（Ｎ−１）アプリケーション更新部は、アップデートパッケージの第（Ｎ−１）アプリケーション１３３−（Ｎ−１）を、第２フラッシュメモリ１６の第（Ｎ−１）アプリケーション３３−（Ｎ−１）に上書きする。
【０１４５】
以上のような修復セットアップ処理の流れの具体的な例を図１８のフローチャートを参照して説明する。なお、ここでも、図１５のフローチャートを参照して説明した場合と同様に、運用プログラム３３が第１アプリケーション乃至第３アプリケーションの３つのアプリケーションを含むものとして説明する。
【０１４６】
修復セットアップ処理を開始すると、ブートエラーパラメータ参照部１２１は、ステップＳ１４１において、ブートエラーパラメータを参照する。
【０１４７】
ステップＳ１４２において、ブートエラーパラメータ参照部１２１は、その参照結果に基づいて、ブートエラーパラメータの値が「０」であるか否かを判定する。ブートエラーパラメータの値が「０」であると判定した場合、起動処理は正常に終了したので、ブートエラーパラメータ参照部１２１は、修復セットアップ処理を終了する。また、ステップＳ１４２において、ブートエラーパラメータの値が「０」でないと判定した場合、ブートエラーパラメータ参照部１２１は、処理をステップＳ１４３に進める。
【０１４８】
ステップＳ１４３において、カーネル更新部１２２は、その参照結果に基づいて、ブートエラーパラメータの値が「１」であるか否かを判定し、ブートエラーパラメータの値が「１」であると判定した場合、処理をステップＳ１４４に進め、運用カーネル３２を更新する。運用カーネル３２の更新が終了すると、カーネル更新部１２２は、修復セットアップ処理を終了する。また、ステップＳ１４３において、ブートエラーパラメータの値が「１」でないと判定した場合、カーネル更新部１２２は、処理をステップＳ１４５に進める。
【０１４９】
ステップＳ１４５において、第１アプリケーション更新部１２３は、その参照結果に基づいて、ブートエラーパラメータの値が「２」であるか否かを判定し、ブートエラーパラメータの値が「２」であると判定した場合、処理をステップＳ１４６に進め、第１アプリケーションを更新する。第１アプリケーションの更新が終了すると、第１アプリケーション更新部１２３は、修復セットアップ処理を終了する。また、ステップＳ１４５において、ブートエラーパラメータの値が「２」でないと判定した場合、第１アプリケーション更新部１２３は、処理をステップＳ１４７に進める。
【０１５０】
ステップＳ１４７において、第２アプリケーション更新部１２４は、その参照結果に基づいて、ブートエラーパラメータの値が「３」であるか否かを判定し、ブートエラーパラメータの値が「３」であると判定した場合、処理をステップＳ１４８に進め、第２アプリケーションを更新する。第２アプリケーションの更新が終了すると、第２アプリケーション更新部１２４は、修復セットアップ処理を終了する。また、ステップＳ１４７において、ブートエラーパラメータの値が「３」でないと判定した場合、第２アプリケーション更新部１２４は、処理をステップＳ１４９に進める。
【０１５１】
ステップＳ１４９において、第３アプリケーション更新部１２５は、その参照結果に基づいて、ブートエラーパラメータの値が「４」であるか否かを判定し、ブートエラーパラメータの値が「４」であると判定した場合、処理をステップＳ１５０に進め、第３アプリケーションを更新する。第３アプリケーションの更新が終了すると、第３アプリケーション更新部１２５は、修復セットアップ処理を終了する。また、ステップＳ１４９において、ブートエラーパラメータの値が「４」でないと判定した場合、第３アプリケーション更新部１２４は、修復セットアップ処理を終了する。
【０１５２】
以上のように、アップデート部８１がブートエラーパラメータの値を参照してアップデート処理を行うことにより、放送業務用サーバ１は、より適切なメンテナンス処理を行うことができる。すなわち、放送業務用サーバ１は、より適切なオペレーティングシステムの復旧作業をより容易にすることができる。
【０１５３】
なお、以上のようなパラメータは重要なデータであるので、これらのパラメータを保存するパラメータ保存領域３１を複数の領域（セクタ）に分割し、パラメータのバックアップを作成するようにしてもよい。
【０１５４】
図１９は、その場合のCPU１１が有する機能ブロックの構成例を示す図である。
【０１５５】
図１９において、CPU１１は、各種の判定処理を行う判定部１４１、有効なパラメータ保存領域を検索するパラメータ保存領域検索部１４２、パラメータ保存領域のデータを修復するパラメータ保存領域修復部１４３、および、パラメータ保存領域を複製（コピー）し、バックアップを作成するパラメータ保存領域コピー部１４４を有している。
【０１５６】
パラメータ保存領域検索部１４２、パラメータ保存領域修復部１４３、およびパラメータ保存領域コピー部１４４は、それぞれ、判定部１４１の判定結果に応じて処理を行ったり、処理を渡したりする。
【０１５７】
図２０は、この場合のパラメータ保存領域３１の構成例を示す模式図である。
【０１５８】
図２０において、パラメータ保存領域３１は、４つの領域（セクタ）に分割されている。パラメータ保存領域３１の分割数（セクタ数）は、５つ以上であってももちろんよいが、以下においては説明の便宜上、パラメータ保存領域３１が４つのセクタに分割されているものとする。
【０１５９】
図２０に示されるように、最初のセクタ１５１（図中一番左のセクタ）は、記憶領域として破壊された劣化セクタである。２番目のセクタ１５２（図中左から２番目のセクタ）は、パラメータが保存され、メインのパラメータ保存領域として使用されている。３番目のセクタ１５３（図中左から３番目のセクタ）は、パラメータのバックアップが保存され、バックアップのパラメータ保存領域として使用されている。４番目のセクタ１５４（図中左から４番目のセクタ）は、空き領域である。
【０１６０】
例えば、上述したように起動モードの制御が行われ、図２１に示されるように、パラメータ保存領域（メイン）のパラメータの値が更新されると、パラメータ保存領域（メイン）とパラメータ保存領域（バックアップ）との間（セクタ１５２とセクタ１５３との間）で値が異なるので、パラメータ保存領域コピー部１４４は、セクタ１５２のパラメータ保存領域（メイン）のバックアップであるパラメータ保存領域（バックアップ）をセクタ１５３に作成する（例えば、セクタ１５２の情報をセクタ１５３に上書きする）。
【０１６１】
また、例えば、何らかの原因により、図２２に示されるように、セクタ１５２のパラメータ保存領域（メイン）のデータが破壊されると、パラメータ保存領域修復部１４３は、パラメータ保存領域（バックアップ）のデータを用いてパラメータ保存領域（メイン）のデータを修復する（例えば、セクタ１５３の情報をセクタ１５２に上書きする）。
【０１６２】
さらに、例えば、図２３に示されるように、セクタ１５２のパラメータ保存領域（メイン）のデータが破壊されることによりセクタ１５２が使用不可能な劣化セクタとなる場合、パラメータ保存領域修復部１４３による修復は行わず、セクタ１５３のパラメータ保存領域（バックアップ）をパラメータ保存領域（メイン）とし、パラメータ保存領域コピー部１４４が、そのセクタ１５３のパラメータ保存領域（メイン）のバックアップであるパラメータ保存領域（バックアップ）をセクタ１５４に作成する（例えば、セクタ１５３の情報をセクタ１５４にコピーする）。
【０１６３】
このようなパラメータ保存領域管理処理の流れの例を図２４のフローチャートを参照して説明する。
【０１６４】
パラメータ保存領域管理処理が開始されると、パラメータ保存領域検索部１４２は、ステップＳ１７１において、パラメータ保存領域３１のセクタ群の中から、最初の有効なパラメータ保存領域を検索する。ステップＳ１７２において、判定部１４１は、その検索結果に基づいて、次のセクタは有効なパラメータ保存領域であるか否かを判定し、次のセクタが有効なパラメータ保存領域であると判定した場合、処理をステップＳ１７３に進める。
【０１６５】
ステップＳ１７３において、判定部１４１は、検索された、その連続する２つのセクタの内容が同一であるか否かを判定し、同一であると判定した場合、パラメータ保存領域（メイン）およびパラメータ保存領域（バックアップ）が正しく存在すると判定し、パラメータ保存領域管理処理を終了する。
【０１６６】
また、ステップＳ１７３において、検索された、その連続する２つのセクタの内容が同一でないと判定した場合、判定部１４１は、処理をステップＳ１７４に進める。ステップＳ１７４において、パラメータ保存領域コピー部１４４は、検索されたパラメータ保存領域の次のセクタに、そのバックアップ（パラメータ保存領域（バックアップ））を作成し、パラメータ保存領域管理処理を終了する。
【０１６７】
さらに、ステップＳ１７２において、検索された最初の有効なパラメータ保存領域の次のセクタが有効なパラメータ保存領域ではないと判定した場合、判定部１４１は、有効なパラメータ保存領域が１つしか存在しないと判定し、処理をステップＳ１７５に進める。
【０１６８】
ステップＳ１７５において、判定部１４１は、検索された最初の有効なパラメータ保存領域が先頭のセクタであるか否かを判定し、先頭のセクタであると判定した場合、その前のセクタにパラメータ保存領域を修復することができないので、有効なパラメータ保存領域が１つしか存在しないのはパラメータ保存領域（バックアップ）が存在しないからと判定し、処理をステップＳ１７３に戻し、それ以降の処理を繰り返させる。なお、この場合、ステップＳ１７３において判定部１４１は、セクタの内容が同一で無いと判定し処理をステップＳ１７４に進める。
【０１６９】
また、ステップＳ１７５において、先頭のセクタで無いと判定した場合、判定部１４１は、有効なパラメータ保存領域が１つしか存在しないのはパラメータ保存領域（メイン）が破壊されているからと判定し、処理をステップＳ１７６に進める。ステップＳ１７６において、パラメータ保存領域修復部１４３は、検索された最初の有効なパラメータ保存領域の前のセクタにパラメータ保存領域を修復し、処理をステップＳ１７７に進める。
【０１７０】
ステップＳ１７７において、判定部１４１は、ステップＳ１７６において実行されたパラメータ保存領域の修復が成功したか否かを判定し、成功したと判定した場合、パラメータ保存領域管理処理を終了する。
【０１７１】
また、ステップＳ１７７において、ステップＳ１７６において実行されたパラメータ保存領域の修復が失敗したと判定した場合、判定部１４１は、処理をステップＳ１７８に進める。ステップＳ１７８において、パラメータ保存領域コピー部１４４は、前のセクタが劣化セクタであると判定し、次のセクタに、パラメータ保存領域をコピーする。パラメータ保存領域のコピーが終了すると、パラメータ保存領域コピー部１４４は、パラメータ保存領域管理処理を終了する。
【０１７２】
以上のように、パラメータ保存領域を複数のセクタに分割して、パラメータ保存領域のバックアップを設け、上述したようにそれらのパラメータ保存領域を管理することにより、放送業務用サーバ１は、パラメータの更新などによるパラメータの破壊を抑制し、パラメータをより安全に利用することができる。
【０１７３】
以上においては、放送業務用サーバ１が、イーサネット（登録商標）I/F１４を介して、他の装置であるパーソナルコンピュータ５１より、更新処理用のソフトウェアパッケージを取得するように説明したが、これに限らず、例えば、図２５に示される放送業務用サーバ２０１のように、所定のリムーバブルメディア２２１に対応したドライブ２１７を有し、このリムーバブルメディア２２１に記録されているソフトウェアパッケージを取得するようにしてもよい。
【０１７４】
つまり、上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできるが、上述した一連の処理をソフトウェアにより実行させる場合には、上述したソフトウェアが、記録媒体からインストールされるようにしてもよい。
【０１７５】
この記録媒体は、例えば、図２５に示されるように、装置本体とは別に、ユーザにプログラムを配信するために配布される、プログラムが記録されている磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disk-Read Only Memory),DVD(Digital Versatile Disk)を含む）、光磁気ディスク（ＭＤ（Mini-Disk）（登録商標）を含む）、もしくは半導体メモリなどよりなるリムーバブルメディア２２１により構成される。
【０１７６】
ただし、この場合、放送業務用サーバ２０１がユーザからの指示を受け付ける構成を必要としないように、CPU１１が、ドライブ２１７に装着されたリムーバブルメディア２２１に記録されているソフトウェアパッケージを読み出す処理を自動実行する（リムーバブルメディア２２１に記録されているソフトウェアパッケージを自動再生する）ことができるようになされているのが望ましい。
【０１７７】
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０１７８】
また、本明細書において、システムとは、複数のデバイス（装置）により構成される装置全体を表すものである。なお、以上において、一つの装置として説明した構成を分割し、複数の装置として構成するようにしてもよい。逆に、以上において複数の装置として説明した構成をまとめて一つの装置として構成されるようにしてもよい。また、各装置の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置の構成の一部を他の装置の構成に含めるようにしてもよい。
【図面の簡単な説明】
【０１７９】
【図１】本発明を適用した放送業務用サーバの一実施形態に係る構成例を示す図である。
【図２】CPUが有する機能を示す機能ブロック図である。
【図３】図２の起動モード判定部の詳細な構成例を示す図である。
【図４】パラメータの例を示す模式図である。
【図５】図２の通常OS起動部の詳細な構成例を示す図である。
【図６】起動モード制御処理の流れの例を説明するフローチャートである。
【図７】起動モード判断処理の流れの例を説明するフローチャートである。
【図８】チェックパラメータ制御処理の流れの例を説明するフローチャートである。
【図９】CPUが有する機能を示す機能ブロック図である。
【図１０】アップデート処理の流れの例を説明するフローチャートである。
【図１１】パラメータの例を示す模式図である。
【図１２】図２の起動モード判定部の詳細な、他の構成例を示す図である。
【図１３】図２の通常OS起動部の詳細な、他の構成例を示す図である。
【図１４】起動モード判断処理の流れの、他の例を説明するフローチャートである。
【図１５】パラメータ制御処理の流れの例を説明するフローチャートである。
【図１６】図９のアップデート部の詳細な構成例を示す図である。
【図１７】アップデートの様子の例を説明する模式図である。
【図１８】修復セットアップ処理の流れの例を説明するフローチャートである。
【図１９】CPUが有する機能を示す機能ブロック図である。
【図２０】図１のパラメータ保存領域の構成例を示す模式図である。
【図２１】パラメータ保存領域のバックアップの様子の例を示す模式図である。
【図２２】パラメータ保存領域の修復の様子の例を示す模式図である。
【図２３】パラメータ保存領域のバックアップの様子の、他の例を示す模式図である。
【図２４】パラメータ保存領域管理処理の流れの例を説明するフローチャートである。
【図２５】本発明を適用した放送業務用サーバの一実施形態に係る、他の構成例を示す図である。
【符号の説明】
【０１８０】
１  放送業務用サーバ，  １０  バス，  １１  CPU，  １２  メインメモリ，  １３  イーサネット（登録商標）I/F，  １４  シリアルポート，  １５  第１フラッシュメモリ，  １６  第２フラッシュメモリ，  ２１  ブートローダ，  ２２  保守カーネル，  ２３  保守プログラム，  ３１  パラメータ保存領域，  ３２  運用カーネル，  ３３  運用プログラム，  ４１  リセット処理部，  ４２  パラメータ保存領域整合性確認部，  ４３  起動モード判定部，  ４４  運用OSイメージ運用プログラムイメージ確認部，  ４５  通常OS起動部，  ４６  保守OSイメージ保守プログラムイメージ確認部，  ４７  保守OS起動部，  ４８  ハングアップ処理部，  ５１  セーフモードパラメータ値確認部５１，  ５２  チェックパラメータ値確認部，  ５３  値確認部，  ５４  運用モード選択部，  ５５  保守モード選択部，  ７１  セーフモードパラメータ値確認部，  ７２  チェックパラメータ値確認部，  ７３  チェックパラメータ値設定部，  ７４  初期化終了部，  ８１  アップデート部，  ８２  チェックパラメータ設定部，  ８３  再起動処理部，  １０１  ブートエラーパラメータ設定部，  １１１−１乃至１１１−（Ｎ＋２）  第１ブートエラーパラメータ設定部乃至第（Ｎ＋２）ブートエラーパラメータ設定部，  １１２  カーネル起動部，  １１３−１乃至１１３−Ｎ  第１アプリケーション起動部乃至第Ｎアプリケーション起動部，  １２１  ブートエラーパラメータ参照部，  １２２  カーネル更新部，  １２３  第１アプリケーション更新部，  １２４  第２アプリケーション更新部，  １２５  第３アプリケーション更新部，  １４１  判定部，  １４２  パラメータ保存領域検索部，  １４３  パラメータ保存領域修復部，  １４４  パラメータ保存領域コピー部，  ２０１  放送業務用サーバ，  ２１７  ドライブ，  ２２１  リムーバブルメディア
【図１】
2007052520.tif 000003
【図２】
2007052520.tif 000004
【図３】
2007052520.tif 000005
【図４】
2007052520.tif 000006
【図５】
2007052520.tif 000007
【図６】
2007052520.tif 000008
【図７】
2007052520.tif 000009
【図８】
2007052520.tif 000010
【図９】
2007052520.tif 000011
【図１０】
2007052520.tif 000012
【図１１】
2007052520.tif 000013
【図１２】
2007052520.tif 000014
【図１３】
2007052520.tif 000015
【図１４】
2007052520.tif 000016
【図１５】
2007052520.tif 000017
【図１６】
2007052520.tif 000018
【図１７】
2007052520.tif 000019
【図１８】
2007052520.tif 000020
【図１９】
2007052520.tif 000021
【図２０】
2007052520.tif 000022
【図２１】
2007052520.tif 000023
【図２２】
2007052520.tif 000024
【図２３】
2007052520.tif 000025
【図２４】
2007052520.tif 000026
【図２５】
2007052520.tif 000027