(57)【特許請求の範囲】
【請求項１】
内部記憶装置を有するコンピュータ装置と、前記コンピュータ装置に接続する第１外部記憶装置と、前記コンピュータ装置に接続可能な第２外部記憶装置と、を備え、
前記コンピュータ装置は、
前記第２外部記憶装置が接続されているか否かを判定する第１接続判定部と、
前記第１接続判定部によって前記第２外部記憶装置が接続されていると判定された場合に、前記第２外部記憶装置内の認証データの正当性を確認する第１確認部と、
前記第１確認部によって前記第２外部記憶装置内の認証データが正当であると確認された場合に、前記第１外部記憶装置内の認証データの正当性を確認する第２確認部と、
前記第２確認部によって前記第１外部記憶装置内の認証データが正当であると確認された場合に、前記第２外部記憶装置が接続されているか否かを判定する第２接続判定部と、
前記第２接続判定部によって前記第２外部記憶装置が接続されていないと判定された場合に、前記第１外部記憶装置のオペレーティングシステムを起動する外部ＯＳ起動部と、
を有することを特徴とするコンピュータシステム。
【請求項２】
前記第１接続判定部によって前記第２外部記憶装置が接続されていないと判定された場合に、前記内部記憶装置のオペレーティングシステムを起動する内部ＯＳ起動部を、さらに有することを特徴とする請求項１記載のコンピュータシステム。
【請求項３】
前記内部ＯＳ起動部は、前記第１確認部によって前記第２外部記憶装置内の認証データが不当であると確認された場合に、前記内部記憶装置のオペレーティングシステムを起動する、ことを特徴とする請求項２記載のコンピュータシステム。
【請求項４】
前記内部ＯＳ起動部は、前記第２確認部によって前記第１外部記憶装置内の認証データが不当であると確認された場合に、前記内部記憶装置のオペレーティングシステムを起動する、ことを特徴とする請求項２または３記載のコンピュータシステム。
【請求項５】
内部記憶装置を有するコンピュータ装置と、前記コンピュータ装置に接続する第１外部記憶装置と、前記コンピュータ装置に接続可能な第２外部記憶装置と、を備えるコンピュータシステムのオペレーティングシステムを起動する方法であって、
前記コンピュータ装置は、
起動時に前記第２外部記憶装置が接続されているか否かを判定する第１接続判定ステップと、
前記第１接続判定ステップにおいて前記第２外部記憶装置が接続されていると判定された場合に、前記第２外部記憶装置内の認証データの正当性を確認する第１確認ステップと、
前記第１確認ステップにおいて前記第２外部記憶装置内の認証データが正当であると確認された場合に、前記第１外部記憶装置内の認証データの正当性を確認する第２確認ステップと、
前記第２確認ステップにおいて前記第１外部記憶装置内の認証データが正当であると確認された場合に、前記第２外部記憶装置が接続されているか否かを判定する第２接続判定ステップと、
前記第２接続判定ステップにおいて前記第２外部記憶装置が接続されていないと判定された場合に、前記第１外部記憶装置のオペレーティングシステムを起動する外部ＯＳ起動ステップと、
を含むことを特徴とするオペレーティングシステム起動方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータシステムおよびオペレーティングシステム起動方法に関する。
【背景技術】
【０００２】
内部記憶装置を有する組込装置に組み込まれているデバイス用ファームウェア等を更新する場合に、外部記憶装置のオペレーティングシステムを起動して外部から更新することができると便利である。従来、外部記憶装置のオペレーティングシステムを起動して外部から更新するためには、組込装置の起動優先度を内部記憶装置よりも外部記憶装置の方が高くなるように設定する必要がある。ところが、このように設定すると、設計者が意図しないオペレーティングシステムが起動されることも考えられ、最悪の場合には組込装置内の情報が外部に流出するおそれがある。これを防止するために、組込装置の起動優先度を内部記憶装置の方が高くなるよう設定し、この設定を保守者以外が変更できないようにする方法が考えられる。しかしながら、この方法では、保守者がデバイス用ファームウェア等を更新しようとして、外部記憶装置のオペレーティングシステムを起動させる度に、組込装置の起動優先度を変更しなければならない。さらに、更新終了後には、起動優先度の設定を元に戻す必要があるため、手順が煩雑になるとともに、設定を戻し忘れたときには情報が外部に流出するおそれがある。
【０００３】
設計者が意図しないオペレーティングシステムが起動することを防止するための他の方法として、例えば、認証機能を搭載した外部記憶装置を利用することで、外部記憶装置のオペレーティングシステムの起動を制限する方法がある（下記特許文献１および２参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−１９２１２６号公報
【特許文献２】特開２０１０−２１１４０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述した特許文献１および２に記載の技術であっても、例えば、保守者が外部記憶装置を紛失したときや、外部記憶装置が盗難されたときに、外部記憶装置のオペレーティングシステムが書き換えられる等することで、設計者が意図しないオペレーティングシステムが起動する場合もあり得る。
【０００６】
本発明は、上述した課題を解決するためになされたものであり、設計者が意図しないオペレーティングシステムの起動を防止することができるコンピュータシステムおよびオペレーティングシステム起動方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明のコンピュータシステムは、内部記憶装置を有するコンピュータ装置と、前記コンピュータ装置に接続する第１外部記憶装置と、前記コンピュータ装置に接続可能な第２外部記憶装置と、を備え、前記コンピュータ装置は、前記第２外部記憶装置が接続されているか否かを判定する第１接続判定部と、前記第１接続判定部によって前記第２外部記憶装置が接続されていると判定された場合に、前記第２外部記憶装置内の認証データの正当性を確認する第１確認部と、前記第１確認部によって前記第２外部記憶装置内の認証データが正当であると確認された場合に、前記第１外部記憶装置内の認証データの正当性を確認する第２確認部と、前記第２確認部によって前記第１外部記憶装置内の認証データが正当であると確認された場合に、前記第２外部記憶装置が接続されているか否かを判定する第２接続判定部と、前記第２接続判定部によって前記第２外部記憶装置が接続されていないと判定された場合に、前記第１外部記憶装置のオペレーティングシステムを起動する外部ＯＳ起動部と、を有する。
【０００８】
本発明のオペレーティングシステム起動方法は、内部記憶装置を有するコンピュータ装置と、前記コンピュータ装置に接続する第１外部記憶装置と、前記コンピュータ装置に接続可能な第２外部記憶装置と、を備えるコンピュータシステムのオペレーティングシステムを起動する方法であって、前記コンピュータ装置は、起動時に前記第２外部記憶装置が接続されているか否かを判定する第１接続判定ステップと、前記第１接続判定ステップにおいて前記第２外部記憶装置が接続されていると判定された場合に、前記第２外部記憶装置内の認証データの正当性を確認する第１確認ステップと、前記第１確認ステップにおいて前記第２外部記憶装置内の認証データが正当であると確認された場合に、前記第１外部記憶装置内の認証データの正当性を確認する第２確認ステップと、前記第２確認ステップにおいて前記第１外部記憶装置内の認証データが正当であると確認された場合に、前記第２外部記憶装置が接続されているか否かを判定する第２接続判定ステップと、前記第２接続判定ステップにおいて前記第２外部記憶装置が接続されていないと判定された場合に、前記第１外部記憶装置のオペレーティングシステムを起動する外部ＯＳ起動ステップと、を含む。
【発明の効果】
【０００９】
本発明によれば、設計者が意図しないオペレーティングシステムの起動を防止することができる。
【図面の簡単な説明】
【００１０】
【図１】実施形態におけるコンピュータシステムの装置構成を例示する図である。
【図２】実施形態におけるコンピュータシステムを構成する各装置の詳細構成を例示する図である。
【図３】認証データを生成する方法を例示する図である。
【図４】認証データを生成する方法を例示する図である。
【図５】オペレーティングシステムを起動する際の動作を説明するためのフローチャートである。
【発明を実施するための形態】
【００１１】
以下、添付図面を参照して、本発明に係るコンピュータシステムおよびオペレーティングシステム起動方法の好適な実施形態について説明する。
【００１２】
まず、図１を参照して、実施形態におけるコンピュータシステムの装置構成について説明する。コンピュータシステム１は、例えば、内部記憶装置１１を有するコンピュータ装置１０と、第１外部記憶装置２０と、第２外部記憶装置３０とを備える。
【００１３】
コンピュータ装置１０は、プログラム制御により動作するコンピュータであり、例えば、組込装置が該当する。第１外部記憶装置２０は、主に保守者が使用する外部記憶装置である。第２外部記憶装置３０は、主にシステム管理者が使用する外部記憶装置である。
【００１４】
図２を参照して、コンピュータシステム１を構成する各装置の詳細構成について説明する。
【００１５】
コンピュータ装置１０は、例えば、内部記憶装置１１と、接続監視部１２と、を有する。内部記憶装置１１は、マスターブートレコード１１１と、基本領域１１５とを含む。マスターブートレコード１１１は、ブートローダ１１２を含み、ブートローダ１１２は、起動判定部１１３と、正当性確認部１１４とを含む。基本領域１１５は、外部ＯＳ起動用ブートセクタ１１６と、内部ＯＳ起動用ブートセクタ１１７と、パーティション１１８とを含む。パーティション１１８は、起動プログラム１１９を含む。
【００１６】
第１外部記憶装置２０は、例えば、マスターブートレコード２１と、基本領域２３とを有する。マスターブートレコード２１は、第１外部記憶装置用の認証データ２２を含む。基本領域２３は、パーティション２４を含み、パーティション２４は、起動プログラム２５を含む。第２外部記憶装置３０は、例えば、第２外部記憶装置用の認証データ３１を有する。
【００１７】
コンピュータ装置１０の接続監視部１２は、コンピュータ装置１０に接続された第１外部記憶装置２０や第２外部記憶装置３０等の外部記憶装置の接続状態を、コンピュータ装置１０上で動作するソフトウェアにより監視する。
【００１８】
コンピュータ装置１０の起動判定部１１３は、接続監視部１２により監視されている外部記憶装置の接続状態に関する接続情報を取得する。起動判定部１１３は、第１外部記憶装置２０の認証データ２２および第２外部記憶装置３０の認証データ３１が共に正当であり、かつ、第２外部記憶装置３０の接続が解除された場合に、外部ＯＳ起動用ブートセクタ１１６をロードして第１外部記憶装置２０のオペレーティングシステムを起動させる。起動判定部１１３は、第１外部記憶装置２０の認証データ２２または第２外部記憶装置３０の認証データ３１のいずれか一方でも不当である場合には、内部ＯＳ起動用ブートセクタ１１７をロードして内部記憶装置１１のオペレーティングシステムを起動させる。
【００１９】
コンピュータ装置１０の正当性確認部１１４は、起動判定部１１３からの指示に従い、第１外部記憶装置２０の認証データ２２の正当性、または、第２外部記憶装置３０の認証データ３１の正当性を確認する。正当性確認部１１４は、第１外部記憶装置２０の認証データ２２を参照して認証データ２２の正当性を確認する。正当性確認部１１４は、第２外部記憶装置３０の認証データ３１を参照して認証データ３１の正当性を確認する。
【００２０】
コンピュータ装置１０の外部ＯＳ起動用ブートセクタ１１６内のプログラムは、第１外部記憶装置２０のパーティション２４を解釈し、起動プログラム２５をロードする。コンピュータ装置１０の内部ＯＳ起動用ブートセクタ１１７内のプログラムは、内部記憶装置１１のパーティション１１８を解釈し、起動プログラム１１９をロードする。
【００２１】
コンピュータ装置１０の起動プログラム１１９および第１外部記憶装置２０の起動プログラム２５は、オペレーティングシステムを起動させるために最初に実行するプログラムであり、オペレーティングシステムにより異なる。
【００２２】
図３を参照して、第１外部記憶装置２０の認証データ２２を生成する方法について説明する。保守者により操作される保守者用ＰＣ４０は、認証データ生成部４１と、コンピュータ装置１０に固有の情報であるシリアルナンバ４２とを有する。保守者が保守者用ＰＣ４０を操作することで、認証データ生成部４１がシリアルナンバ４２を用いて認証データ２２を生成し、生成された認証データ２２が第１外部記憶装置２０のマスターブートレコード内に格納される。
【００２３】
図４を参照して、第２外部記憶装置３０の認証データ３１を生成する方法について説明する。システム管理者により操作されるシステム管理者用ＰＣ５０は、認証データ生成部５１と、コンピュータ装置１０に固有の情報であるシリアルナンバ５２とを有する。システム管理者がシステム管理者用ＰＣ５０を操作することで、認証データ生成部５１がシリアルナンバ５２を用いて認証データ３１を生成し、生成された認証データ３１が第２外部記憶装置２０内に格納される。
【００２４】
次に、図５を参照して、コンピュータシステム１においてオペレーティングシステムを起動する際の動作について説明する。
【００２５】
最初に、コンピュータ装置１０の電源が投入されると、内部記憶装置１１のマスターブートレコード１１１が読み込まれる（ステップＳ１０１）。
【００２６】
続いて、ブートローダ１１２が起動され（ステップＳ１０２）、起動判定部１１３は、接続監視部１２から取得した接続情報に基づいて第２外部記憶装置３０が接続しているか否かを判定する（ステップＳ１０３）。この判定がＮＯである場合（ステップＳ１０３；ＮＯ）に、起動判定部１１３は、内部ＯＳ起動用ブートセクタ１１７をロードする（ステップＳ１０９）。
【００２７】
続いて、内部ＯＳ起動用ブートセクタ１１７内のプログラムは、パーティション１１８を解釈して起動プログラム１１９をロードする（ステップＳ１１０）。これにより、内部記憶装置１１のオペレーティングシステムが起動し、本動作を終了する。
【００２８】
一方、上記ステップＳ１０３の判定で第２外部記憶装置３０が接続していると判定された場合（ステップＳ１０３；ＹＥＳ）に、正当性確認部１１４は、第２外部記憶装置３０の認証データ３１を参照して認証データ３１が正当であるか否かを判定する。（ステップＳ１０４）。この判定がＮＯである場合（ステップＳ１０４；ＮＯ）には、処理を上述したステップＳ１０９に移行する。
【００２９】
一方、上記ステップＳ１０４の判定で第２外部記憶装置３０の認証データ３１が正当であると判定された場合（ステップＳ１０４；ＹＥＳ）に、正当性確認部１１４は、第１外部記憶装置２０の認証データ２２を参照して認証データ２２が正当であるか否かを判定する。（ステップＳ１０５）。この判定がＮＯである場合（ステップＳ１０５；ＮＯ）には、処理を上述したステップＳ１０９に移行する。
【００３０】
一方、上記ステップＳ１０５の判定で第１外部記憶装置２０の認証データ２２が正当であると判定された場合（ステップＳ１０５；ＹＥＳ）に、接続監視部１２から取得した接続情報に基づいて第２外部記憶装置３０が接続しているか否かを判定する（ステップＳ１０６）。この判定がＹＥＳである場合（ステップＳ１０６；ＹＥＳ）には、第２外部記憶装置３０の接続が解除されるまでステップＳ１０６の判定を繰り返す。
【００３１】
一方、上記ステップＳ１０６の判定で第２外部記憶装置３０の接続が解除されたと判定された場合（ステップＳ１０６；ＮＯ）に、起動判定部１１３は、外部ＯＳ起動用ブートセクタ１１６をロードする（ステップＳ１０７）。
【００３２】
続いて、外部ＯＳ起動用ブートセクタ１１６内のプログラムは、第１外部記憶装置２０のパーティション２４を解釈して起動プログラム２５をロードする（ステップＳ１０８）。これにより、外部記憶装置２０のオペレーティングシステムが起動し、本動作を終了する。
【００３３】
上述したように、実施形態におけるコンピュータシステム１によれば、オペレーティングシステムを起動させる第１外部記憶装置２０の正当性が確認され、第１外部記憶装置２０とは異なる第２外部記憶装置３０の正当性が確認され、さらに、第２外部記憶装置３０の接続が解除された場合に限り、第１外部記憶装置のオペレーティングシステムを起動させることができる。また、外部ＯＳ起動用ブートセクタ１１６を内部記憶装置１１内に設けているため、これに対応したパーティション２４および起動プログラム２５以外の起動を防止することができる。これにより、例えば、第１外部記憶装置２０のオペレーティングシステムが不正に改ざんされた場合には、そのオペレーティングシステムの起動を防止することができる。それゆえに、設計者が意図しないオペレーティングシステムの起動を防止することができる。
【００３４】
また、保守者がコンピュータ装置１０の起動優先度を変更する必要がないため、保守者の作業負担を軽減し、操作ミスを削減することができる。
【００３５】
[変形例]
なお、上述した実施形態は、単なる例示に過ぎず、実施形態に明示していない種々の変形や技術の適用を排除するものではない。すなわち、本発明は、その趣旨を逸脱しない範囲で様々な形態に変形して実施することができる。
【００３６】
例えば、上述した実施形態の一部または全部は、以下の付記のようにも記載され得る。ただし、本発明を以下に限定するものではない。
【００３７】
（付記１）  内部記憶装置を有するコンピュータ装置と、前記コンピュータ装置に接続する第１外部記憶装置と、前記コンピュータ装置に接続可能な第２外部記憶装置と、を備え、前記コンピュータ装置は、前記第２外部記憶装置が接続されているか否かを判定する第１接続判定部と、前記第１接続判定部によって前記第２外部記憶装置が接続されていると判定された場合に、前記第２外部記憶装置内の認証データの正当性を確認する第１確認部と、前記第１確認部によって前記第２外部記憶装置内の認証データが正当であると確認された場合に、前記第１外部記憶装置内の認証データの正当性を確認する第２確認部と、前記第２確認部によって前記第１外部記憶装置内の認証データが正当であると確認された場合に、前記第２外部記憶装置が接続されているか否かを判定する第２接続判定部と、前記第２接続判定部によって前記第２外部記憶装置が接続されていないと判定された場合に、前記第１外部記憶装置のオペレーティングシステムを起動する外部ＯＳ起動部と、を有することを特徴とするコンピュータシステム。
【００３８】
（付記２）  前記第１接続判定部によって前記第２外部記憶装置が接続されていないと判定された場合に、前記内部記憶装置のオペレーティングシステムを起動する内部ＯＳ起動部を、さらに有することを特徴とする付記記載のコンピュータシステム。
【００３９】
（付記３）  前記内部ＯＳ起動部は、前記第１確認部によって前記第２外部記憶装置内の認証データが不当であると確認された場合に、前記内部記憶装置のオペレーティングシステムを起動する、ことを特徴とする付記２記載のコンピュータシステム。
【００４０】
（付記４）  前記内部ＯＳ起動部は、前記第２確認部によって前記第１外部記憶装置内の認証データが不当であると確認された場合に、前記内部記憶装置のオペレーティングシステムを起動する、ことを特徴とする付記２または３記載のコンピュータシステム。
【００４１】
（付記５）  内部記憶装置を有するコンピュータ装置と、前記コンピュータ装置に接続する第１外部記憶装置と、前記コンピュータ装置に接続可能な第２外部記憶装置と、を備えるコンピュータシステムのオペレーティングシステムを起動する方法であって、前記コンピュータ装置は、起動時に前記第２外部記憶装置が接続されているか否かを判定する第１接続判定ステップと、前記第１接続判定ステップにおいて前記第２外部記憶装置が接続されていると判定された場合に、前記第２外部記憶装置内の認証データの正当性を確認する第１確認ステップと、前記第１確認ステップにおいて前記第２外部記憶装置内の認証データが正当であると確認された場合に、前記第１外部記憶装置内の認証データの正当性を確認する第２確認ステップと、前記第２確認ステップにおいて前記第１外部記憶装置内の認証データが正当であると確認された場合に、前記第２外部記憶装置が接続されているか否かを判定する第２接続判定ステップと、前記第２接続判定ステップにおいて前記第２外部記憶装置が接続されていないと判定された場合に、前記第１外部記憶装置のオペレーティングシステムを起動する外部ＯＳ起動ステップと、を含むことを特徴とするオペレーティングシステム起動方法。
【符号の説明】
【００４２】
１…コンピュータシステム、１０…コンピュータ装置、１１…内部記憶装置、１２…接続監視部、２０…第１外部記憶装置、２１…マスターブートレコード、２２…認証データ、２３…基本領域、２４…パーティション、２５…起動プログラム、３０…第２外部記憶装置、３１…認証データ、４０…保守者用ＰＣ、４１…認証データ生成部、４２…シリアルナンバ、５０…システム管理者用ＰＣ、５１…認証データ生成部、５２…シリアルナンバ、１１１…マスターブートレコード、１１２…ブートローダ、１１３…起動判定部、１１４…正当性確認部、１１５…基本領域、１１６…外部ＯＳ起動用ブートセクタ、１１７…内部ＯＳ起動用ブートセクタ、１１８…パーティション、１１９…起動プログラム。
【図１】
0005659926.tif 000002
【図２】
0005659926.tif 000003
【図３】
0005659926.tif 000004
【図４】
0005659926.tif 000005
【図５】
0005659926.tif 000006