(57)【要約】      （修正有）【課題】情報処理装置の稼動開始時間の短縮化に貢献可能な技術を提供する。【解決手段】情報処理装置１のマルチコアプロセッサＰが、例えばメモリ使用容量の異なる複数のオペレーティングシステムＯＳ１０，２０をそれぞれ異なるプロセッサコアＣ１，Ｃ２に搭載して動作させ、各コアＣ１，Ｃ２からアクセスされてデータを共有メモリＭによって授受できる構成とする。各コアＣ１，Ｃ２のうち、自身搭載ＯＳ（ＯＳ１０またはＯＳ２０）に係る起動処理を先に完了した完了コア（コアＣ１またはコアＣ２）に対しては、代替実行機能部により、当該完了後、自身搭載ＯＳに係る起動処理が未完了である未完了コア（コアＣ１またはコアＣ２）の替わりに、当該未完了の起動処理残部の少なくとも一部を代替実行させる。【選択図】図１
2019053452.tif 000002
【特許請求の範囲】
【請求項１】
複数のオペレーティングシステムをそれぞれ異なるプロセッサコアに搭載して動作させるマルチコアプロセッサが、
各プロセッサコアからアクセスされてデータを授受する共有メモリと、
各プロセッサコアに対し、各オペレーティングシステムのうち自身が搭載している自身搭載オペレーティングシステムに係る起動処理をそれぞれ開始して実行させる開始実行機能部と、
各プロセッサコアに対し、開始実行機能部により実行させた起動処理の進捗状況を共有メモリにそれぞれ記録させる進捗記録機能部と、
各プロセッサコアのうち自身搭載オペレーティングシステムに係る起動処理を先に完了した完了プロセッサコアに対し、当該完了後、自身搭載オペレーティングシステムに係る起動処理が未完了である未完了プロセッサコアの替わりに、当該未完了の起動処理残部の少なくとも一部を代替実行させる代替実行機能部と、
を備えていることを特徴とする情報処理装置。
【請求項２】
マルチコアプロセッサは、
各プロセッサコアのうち自身搭載オペレーティングシステムに係る起動処理を先に完了した完了プロセッサコアに対し、当該完了後、共有メモリに記録されている進捗状況に基づいて、自身搭載オペレーティングシステムに係る起動処理が未完了である未完了プロセッサコアの有無を確認させる未完了コア確認機能部を、更に備え、
代替実行機能部は、未完了コア確認機能部により確認された未完了の起動処理残部の少なくとも一部を代替実行することを特徴とする請求項１記載の情報処理装置。
【請求項３】
マルチコアプロセッサは、
完了プロセッサコアに対し、起動処理残部のうち一部を代替実行機能部により代替実行させ、
未完了プロセッサコアに対し、起動処理残部のうち他部を実行させることを特徴とする請求項１または２記載の情報処理装置。
【請求項４】
代替実行機能部は、起動処理残部のうち、進捗状況に基づいて予め設定された範囲を代替実行することを特徴とする請求項１〜３のうち何れかに記載の情報処理装置。
【請求項５】
マルチコアプロセッサは、
未完了プロセッサコアに対し、代替実行機能部によって起動処理残部が代替実行された場合に当該代替実行の完了を確認させる代替完了確認機能部を、更に備えていることを特徴とする請求項１〜４のうち何れかに記載の情報処理装置。
【請求項６】
マルチコアプロセッサは、
完了プロセッサコアに対し、未完了プロセッサコアによる起動処理の停滞の有無を、進捗状況に基づいて判定させる停滞判定機能部と、
判定結果において停滞が有るものと判定された場合に、完了プロセッサコアに対し、未完了プロセッサコアの再起動を実行させる再起動実行機能部と、
を更に備えていることを特徴とする請求項１〜５のうち何れかに記載の情報処理装置。
【請求項７】
各オペレーティングシステムは、メモリ使用容量がそれぞれ異なることを特徴とする請求項１〜６のうち何れかに記載の情報処理装置。
【請求項８】
請求項１〜７のうち何れかに記載の情報処理装置として、コンピュータを機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば各種機器の制御に適用されている情報処理装置に貢献する技術に係るものである。
【背景技術】
【０００２】
例えば各種設備（水処理設備，電力設備等）のシーケンス制御に適用されている情報処理装置（例えばプログラマブルコントローラ等）においては、複数のプロセッサコア（以下、単にコアと適宜称する）を有するマルチコアプロセッサを具備した構成が適用され始めている（例えば特許文献１，２）。
【０００３】
このような情報処理装置の場合、マルチコアプロセッサに複数のＯＳ（オペレーティングシステム）を搭載（例えば異なる性質の複数のＯＳを搭載）して稼動させることが可能となる。その一例としては、クラウド側との間で拡張性（スケーラビリティ，高機能性等）が要求される情報処理用のＯＳ（以下、単に情報処理用ＯＳと適宜称する）や、設備の監視機器等との間でリアルタイム性が要求されるＯＳ（以下、単にＲＴ用ＯＳと適宜称する）を、別々のコアに搭載して適宜動作するように稼動させることが挙げられる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１１−６５５２８号公報
【特許文献２】特開２０１６−１４６９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
前述のように複数のＯＳを搭載した情報処理装置の場合、電源起動後、各ＯＳに係る起動処理（例えば、ＯＳに係る周辺機器に対する初期化処理や診断処理（セルフチェック）等の起動処理）をそれぞれ開始して実行することが挙げられるが、起動処理が完了に至るまでの時間（以下、単に起動完了時間と適宜称する）において差異が生じたり、当該起動完了時間が予想よりも長くなってしまうこと等が起こり得る。
【０００６】
また、前述のような情報処理装置は、全てのＯＳに係る起動処理が完了した後に稼動開始（例えばユーザ等により利用開始）することが望ましいが、例えば起動完了時間の長いＯＳが搭載されている場合には、当該稼動開始に至るまでの時間（以下、単に稼動開始時間と適宜称する）が遅くなってしまう傾向となる。
【０００７】
本発明は、前述のような課題を鑑みてなされたものであって、情報処理装置の稼動開始時間の短縮化に貢献可能な技術を提供することにある。
【課題を解決するための手段】
【０００８】
この発明に係る情報処理装置は、前述のような課題の解決に貢献できるものであり、その一態様としては、複数のオペレーティングシステムをそれぞれ異なるプロセッサコアに搭載して動作させるマルチコアプロセッサが、各プロセッサコアからアクセスされてデータを授受する共有メモリと、各プロセッサコアに対し、各オペレーティングシステムのうち自身が搭載している自身搭載オペレーティングシステムに係る起動処理をそれぞれ開始して実行させる開始実行機能部と、各プロセッサコアに対し、開始実行機能部により実行させた起動処理の進捗状況を共有メモリにそれぞれ記録させる進捗記録機能部と、各プロセッサコアのうち自身搭載オペレーティングシステムに係る起動処理を先に完了した完了プロセッサコアに対し、当該完了後、自身搭載オペレーティングシステムに係る起動処理が未完了である未完了プロセッサコアの替わりに、当該未完了の起動処理残部の少なくとも一部を代替実行させる代替実行機能部と、を備えていることを特徴とする。
【０００９】
マルチコアプロセッサは、各プロセッサコアのうち自身搭載オペレーティングシステムに係る起動処理を先に完了した完了プロセッサコアに対し、当該完了後、共有メモリに記録されている進捗状況に基づいて、自身搭載オペレーティングシステムに係る起動処理が未完了である未完了プロセッサコアの有無を確認させる未完了コア確認機能部を、更に備え、代替実行機能部は、未完了コア確認機能部により確認された未完了の起動処理残部の少なくとも一部を代替実行することを特徴とするものでも良い。
【００１０】
また、マルチコアプロセッサは、完了プロセッサコアに対し、起動処理残部のうち一部を代替実行機能部により代替実行させ、未完了プロセッサコアに対し、起動処理残部のうち他部を実行させることを特徴とするものでも良い。
【００１１】
また、代替実行機能部は、起動処理残部のうち、進捗状況に基づいて予め設定された範囲を代替実行することを特徴とするものでも良い。
【００１２】
また、マルチコアプロセッサは、未完了プロセッサコアに対し、代替実行機能部によって起動処理残部が代替実行された場合に当該代替実行の完了を確認させる代替完了確認機能部を、更に備えていることを特徴とするものでも良い。
【００１３】
また、マルチコアプロセッサは、完了プロセッサコアに対し、未完了プロセッサコアによる起動処理の停滞の有無を、進捗状況に基づいて判定させる停滞判定機能部と、判定結果において停滞が有るものと判定された場合に、完了プロセッサコアに対し、未完了プロセッサコアの再起動を実行させる再起動実行機能部と、を更に備えていることを特徴とするものでも良い。
【００１４】
また、各オペレーティングシステムは、メモリ使用容量がそれぞれ異なることを特徴とするものでも良い。
【００１５】
なお、前述の情報処理装置の態様として、コンピュータを機能させるプログラムとして構成することも可能である。
【発明の効果】
【００１６】
以上示したように本発明によれば、情報処理装置の稼動開始時間の短縮化に貢献すること可能となる。
【図面の簡単な説明】
【００１７】
【図１】本実施形態の一例である情報処理装置１を説明するための概略構成図。
【図２】情報処理装置１の機能構成例を説明するための概略構成図。
【図３】情報処理装置１の動作例１を説明するためのフローチャート。
【図４】情報処理装置１の動作例２を説明するためのフローチャート。
【図５】情報処理装置１の動作例３を説明するためのフローチャート。
【発明を実施するための形態】
【００１８】
本発明の実施形態の情報処理装置は、複数のＯＳをそれぞれ異なるコアに搭載して動作させるマルチコアプロセッサにおいて、従来のように単に各ＯＳに係る起動処理をそれぞれ開始して実行させる構成とは全く異なるものである。すなわち、各コアのうち、自身搭載ＯＳ（各ＯＳのうち自身が搭載しているＯＳ）に係る起動処理を先に完了したコア（以下、単に完了コアと適宜称する）に対し、当該完了後、自身搭載ＯＳに係る起動処理が未完了であるコア（以下、単に未完了コアと適宜称する）の替わりに、当該未完了の起動処理残部の少なくとも一部を代替実行させることを特徴とした構成である。
【００１９】
この本実施形態のような情報処理装置によれば、たとえ各ＯＳに係る起動完了時間において差異が生じたり、当該起動完了時間が予想よりも長くなってしまった場合であっても、各コアのうち完了コアが、未完了コアの起動処理の一部（起動処理残部）を替わりに代替実行する、すなわち完了コアが未完了コアを補助することにより、情報処理装置の稼動開始時間が遅滞化しないように抑制することが可能となる。
【００２０】
例えば、各ＯＳの容量がそれぞれ異なる場合（例えば、情報処理用ＯＳ，ＲＴ用ＯＳが搭載されている場合）であって、一方のＯＳのメモリ使用容量が比較的大きい場合には、起動処理時間が拡張し易い傾向であることが考えられるが、本実施形態によれば、当該起動処理時間が拡張するような傾向を抑制するように貢献可能となる。
【００２１】
本実施形態の情報処理装置は、種々の分野（例えば各種設備で適用されているＰＬＣ技術や情報処理技術等の分野）の技術常識を適宜適用して設計することが可能であり、その一例として以下に示すものが挙げられる。
【００２２】
≪本実施形態の一例である情報処理装置１の概略構成≫
図１に示す本実施形態の一例である情報処理装置１は、複数のコア（図１中ではコアＣ１，Ｃ２の２個）を有したマルチコアプロセッサＰ（以下、単にプロセッサＰと適宜称する）を備えたものであって、例えば図外の設備（水処理設備，電力設備等）に適宜設置し、当該設備の監視対象（図示省略）と上位システム（図示省略）との間で適宜動作できるように構成されたものである。
【００２３】
この情報処理装置１の場合、図１に示すように、プロセッサＰが、コアＣ１，Ｃ２にそれぞれＯＳ１０，２０を搭載し、コアＣ１，Ｃ２から各々アクセスされてデータを授受（例えば図中矢印方向に授受）することが可能な共有メモリＭを備えた構成となっているが、これに限定されるものではなく、種々の構成に適用変更することが可能である。
【００２４】
例えば、プロセッサＰは、前述のように単にコアＣ１，Ｃ２の２個を備えたものに限定されず、３個以上を備えた構成であっても良く、図外のバス等を介して共有メモリＭに各々アクセスしてデータを授受することが可能な構成が挙げられる。
【００２５】
また、共有メモリＭにおいても、各コア（図１ではコアＣ１，Ｃ２）からそれぞれアクセスされてデータを授受できるものであれば、特に限定されるものではない。
【００２６】
また、ＯＳにおいても、単にＯＳ１０，２０の２個を備えたものに限定されず、３個以上を備えた構成であっても良く、各ＯＳがそれぞれ異なるコアに搭載されて動作するものであれば良い。また、各ＯＳは、単に１個のコアに搭載されるのではなく、複数のコアに搭載されても良い。例えば図１のコアＣ１，Ｃ２をそれぞれ２個（合計４個のコア）備えているものとして、当該２個のコアＣ１に対し１個のＯＳ１０を搭載し、２個のコアＣ２に対しては１個のＯＳ２０を搭載した構成（図示省略）であっても良い。
【００２７】
また、ＯＳの種類も特に限定されず、情報処理装置１の使用目的等に応じて適宜選択して搭載することが可能であり、各ＯＳのメモリ使用容量がそれぞれ異なる構成であっても良い。その一例としては、メモリ使用容量が比較的大きい情報処理用ＯＳ（例えばＬｉｎｕｘ（登録商標）、Ｗｉｎｄｏｗｓ（登録商標）等の汎用ＯＳ）と、当該メモリ使用容量が比較的小さいＲＴ用ＯＳ（例えばμＩＴＲＯＮ等）と、を搭載した構成が挙げられる。
【００２８】
また、プロセッサＰ等の他に、例えば通常のコンピュータのハードウェアリソース（例えばＣＰＵ等の演算処理部、ＲＯＭ，ＲＡＭ等の主記憶装置、ＳＳＤ，ＨＤＤ等の補助記憶装置など）を適宜備えても良く、ＯＳ１０，２０の他に、例えば通常のコンピュータのソフトウェアリソース（アプリケーションなど）を備えても良い。
【００２９】
以上のような情報処理装置１のハードウェアリソースとソフトウェアリソースの協働の結果、プロセッサＰは、例えば図２の機能構成例に示すように、開始実行機能部１１，進捗記録機能部１２，代替実行機能部１３を実装したものとなっている。なお、情報処理装置１においては、前述のような各機能部１１〜１３の他に、図２に示すように未完了コア確認機能部１４，代替完了確認機能部１５，停滞判定機能部１６，再起動実行機能部１７等を更に実装したものとしても良い。
【００３０】
この図２の情報処理装置１において、開始実行機能部１１は、各コアＣ１，Ｃ２に対し、自身搭載ＯＳ（図１の場合、コアＣ１はＯＳ１０、コアＣ２はＯＳ２０）に係る起動処理を、それぞれ開始して実行させるように構成されたものである。起動処理においては、ＯＳ１０，２０に係る周辺機器（例えばフラッシュメモリ，ＬＡＮ，コア内蔵ペリフェラル等）に対する各種初期化処理や各種診断処理（セルフチェック）等が挙げられ、種々の起動処理項目が考えられる。各起動処理が完了に至るまでの起動完了時間においては、例えばＯＳ１０，２０の種類（例えばＯＳのメモリ使用容量の違い）や周辺機器の状況（例えば周辺機器との通信状況）等によって差異が生じ得ることが考えられる。
【００３１】
進捗記録機能部１２は、各コアＣ１，Ｃ２に対し、開始実行機能部１１により実行させた起動処理の進捗状況を、共有メモリＭにそれぞれ記録させるように構成されたものである。進捗状況においては、各起動処理の進行具合や、何れの起動処理項目が済んでいるかどうかや、起動処理の停滞（例えば停止、あるいは極めて遅い状態等）の有無等が挙げられる。このような進捗状況によれば、各ＯＳ１０，２０に係る起動完了時間を予め予測することも可能である。進捗状況を記録する手法としては、特に限定されるものではない。
【００３２】
代替実行機能部１３は、コアＣ１，Ｃ２のうち、自身搭載ＯＳに係る起動処理を先に完了した完了コアに対し、当該完了後、自身搭載ＯＳに係る起動処理が未完了である未完了コアの替わりに、当該未完了の起動処理残部を代替実行させるように構成されたものである。
【００３３】
代替実行機能部１３によって代替実行させる範囲は、起動処理残部の全てであっても良いし、その一部のみに制限しても良い。例えば、起動処理項目が複数個存在し分類できるような状況であれば、起動処理残部のうち一部の起動処理項目に制限して代替実行できるように構成することも挙げられる。また、代替実行機能部１３において、前述のように起動処理残部の一部のみを実行する場合には、当該起動処理残部の他部を、例えば未完了コアに対して実行させることとなる。
【００３４】
ここで、前述のように完了コアの自身搭載ＯＳに係る起動処理の完了時に存在し得る起動処理残部は、各ＯＳ１０，２０に係る起動処理項目や起動完了時間等によって異なるものであるが、当該起動処理項目や起動完了時間等を含んだ進捗状況によれば、当該完了時に存在し得る起動処理残部を予め予測することも可能である。
【００３５】
このように進捗状況等に基づいて起動処理残部を予測できる場合には、代替実行機能部１３によって代替実行する範囲を予め設定（各ＯＳの起動完了時間等により予測して予め設定）することも可能である。例えば、各ＯＳに係る起動処理において複数個の起動処理項目が存在しそれぞれ所望の順番で実行される場合には、当該起動処理項目のうち後段側が代替実行する範囲として予め設定されることが挙げられる。
【００３６】
なお、代替実行機能部１３は、完了コアの自身搭載ＯＳの起動処理が完了後、起動処理残部を直ちに代替実行するのではなく、後述の未完了コア確認機能部１４によって未完了コアの有無を確認した後に、当該起動処理残部を代替実行するように構成しても良い。
【００３７】
未完了コア確認機能部１４は、コアＣ１，Ｃ２のうち自身搭載ＯＳに係る起動処理を先に完了した完了コアに対し、当該完了後、共有メモリに記録されている進捗状況に基づいて、未完了コアの有無を確認させるように構成されたものである。このように未完了コアを確認することにより、起動処理残部の有無を確認することができる。この起動処理残部が確認できなかった場合には、代替実行機能部１３による代替実行を省略することも可能である。この未完了コアを確認する構成としては、種々の態様のものを適用することが可能であり、その一例としては、各コアＣ１，Ｃ２に対し、自身搭載ＯＳに係る起動処理が完了した場合に当該完了した旨のフラグ（以下、単に起動処理完了フラグと適宜称する）を共有メモリＭに記録させるようにし、その起動処理完了フラグの有無を完了コアによって確認させる構成が挙げられる。
【００３８】
代替完了確認機能部１５は、未完了コアに対し、代替実行機能部１３によって起動処理残部が代替実行された場合に、当該代替実行の完了を確認させるように構成されたものである。この代替完了確認機能部１５により、未完了コア側においては、当該代替実行の完了を確認し自身搭載ＯＳの全ての起動処理を完了とみなしてから、当該自身搭載ＯＳを適宜動作させることも可能である。このように起動処理を確認する構成としては、種々の態様のものを適用することが可能であり、その一例としては、完了コアが代替実行を完了した場合に当該完了した旨のフラグ（以下、単に代替実行完了フラグと適宜称する）を共有メモリＭに記録させるようにし、その代替実行完了フラグの有無を未完了コアによって確認させる構成が挙げられる。
【００３９】
停滞判定機能部１６は、完了コアに対し、未完了コアによる起動処理の停滞の有無を、進捗状況に基づいて判定させるように構成されたものである。この停滞判定機能部１６により、例えば未完了コア側において停止している状態や極めて遅い状態等、何らかの意に反する状況で停滞している場合に、当該停滞を確認することが可能となる。また、後述の再起動実行機能部１７等によって再起動させ、改めて起動処理を開始（稼動できるように対応）させることが可能である。
【００４０】
再起動実行機能部１７は、停滞判定機能部１６による判定結果において停滞が有るものと判定された場合に、完了コアに対し、未完了コア側の再起動を実行させるように構成されたものである。この再起動実行機能部１７により未完了コア側を再起動させた後は、前述の機能部１１〜１６を適宜動作させて、未完了コアの自身搭載ＯＳに係る起動処理を改めて実行させることとなる。
【００４１】
なお、前述のような再起動によっても起動処理が所望通り完了できないような状況の場合には、当該状況を進捗状況として共有メモリＭに記録したり、出力装置（例えば、ディスプレイ，プリンタ，スピーカ，ランプ等）により適宜出力することが挙げられ、これにより、当該状況を情報処理装置１のユーザに認識させることも可能となる。
【００４２】
以上示した情報処理装置１は、各機能部１１〜１７の全てを必ずしも具備する必要はなく、本発明の目的を達成できる態様であれば、各機能部１１〜１７のうち一部を適宜省略したり、他の機能部を適宜追加して具備しても良い。
【００４３】
《情報処理装置１の動作例１》
次に、図１，図２に示したように構成された情報処理装置１の動作例１を、図３に基づいて説明する。なお、この動作例１は、ＯＳ１０，２０にそれぞれ同様のもの（例えば情報処理用ＯＳ）が適用され、それらＯＳ１０，２０のうち何れか一方に係る起動処理が先に完了する場合の一例を示すものである。
【００４４】
まず、情報処理装置１を電源起動すると、図３のハードウェア起動処理ステップＳ１により、プロセッサＰが起動し、続いて周辺機器等が順次起動する。次に、開始実行処理ステップＳ２により、開始実行機能部１１が、各コアＣ１，Ｃ２に対して搭載されているＯＳ１０，２０に係る起動処理をそれぞれ開始して実行させ、各起動処理の進捗状況については共有メモリＭにそれぞれ記録させていく。
【００４５】
そして、ＯＳ１０，２０に係る起動処理のうち何れかが完了すると、残部確認処理ステップＳ３により、未完了コア確認機能部１４が、完了コア（コアＣ１，Ｃ２のうち自身搭載ＯＳに係る起動処理を先に完了した方）に対し、共有メモリＭに記録されている進捗状況を読み取らせて、その他の起動処理完了フラグの有無（未完了コアの有無に相当）を確認させる。
【００４６】
次に、確認残部実行処理ステップＳ４に移行し、代替実行機能部１３が、完了コア側に対し、残部確認処理ステップＳ３により確認された未完了コア側の起動処理残部について代替実行させる。この代替実行が完了した後、代替完了確認処理ステップＳ５に移行し、代替完了確認機能部１５が、未完了コア側に対して、共有メモリに記録されている進捗状況を読み取らせて代替完了フラグを確認させる。そして、情報処理装置１においては、全てのＯＳに係る起動処理が完了している状態であり、所望の稼動を開始可能な状態となる。
【００４７】
《情報処理装置１の動作例２》
次に、図１，図２に示したように構成された情報処理装置１の動作例２を、図４に基づいて説明する。なお、この動作例２は、ＯＳ１０にメモリ使用容量が比較的大きい情報処理用ＯＳを適用し、ＯＳ２０にはメモリ使用容量が比較的小さいＲＴ用ＯＳを適用したものとし、ＯＳ２０に係る起動処理が先に完了する場合の一例を示すものである。また、進捗状況に基づいて、ＯＳ１０の起動処理残部を予め予測し、代替実行機能部１３によって代替実行する範囲を予め設定してあるものとする。図３に示すものと同様のものには、同一符号を付する等により、その詳細な説明を適宜省略する。
【００４８】
まず、情報処理装置１を電源起動すると、図４の処理ステップＳ１，Ｓ２を経て、コアＣ２の自身搭載ＯＳであるＯＳ２０に係る起動処理が完了すると、処理ステップＳ３により、未完了コア確認機能部１４が、コアＣ２（完了コア）に対し、共有メモリＭに記録されている進捗状況を読み取らせて、コアＣ１の起動処理完了フラグの有無（未完了コアの有無に相当）を確認させる。
【００４９】
次に、設定残部実行処理ステップＳ４１に移行し、代替実行機能部１３が、コアＣ２側に対し、処理ステップＳ３により確認されたコアＣ１側の起動処理残部について、予め設定された範囲で代替実行させる。この代替実行が完了した後、処理ステップＳ５に移行し、代替完了確認機能部１５が、コアＣ１側に対し、共有メモリに記録されている進捗状況を読み取らせて代替完了フラグを確認させる。そして、情報処理装置１においては、全てのＯＳに係る起動処理が完了している状態であり、所望の稼動を開始可能な状態となる。
【００５０】
なお、図４においては、設定残部実行処理ステップＳ４１により代替実行させる範囲が予め設定された場合について説明したが、当該範囲が設定されていない場合には、例えば処理ステップＳ３で読み取った進捗情況に基づいて起動処理残部を特定し、その特定した起動処理残部を適宜代替実行することが挙げられる。
【００５１】
《情報処理装置１の動作例３》
次に、図１，図２に示したように構成された情報処理装置１の動作例３を、図５に基づいて説明する。なお、この動作例３は、ＯＳ１０にメモリ使用容量が比較的大きい情報処理用ＯＳを適用し、ＯＳ２０にはメモリ使用容量が比較的小さいＲＴ用ＯＳを適用し、ＯＳ２０に係る起動処理が当該起動処理の途中で停滞して、ＯＳ１０に係る起動処理が先に完了する場合の一例を示すものである。図３，図４に示すものと同様のものには、同一符号を付する等により、その詳細な説明を適宜省略する。
【００５２】
まず、情報処理装置１を電源起動すると、図５の処理ステップＳ１，Ｓ２を経て、コアＣ１の自身搭載ＯＳであるＯＳ１０に係る起動処理が完了すると、処理ステップＳ３により、未完了コア確認機能部１４が、コアＣ１（完了コア）に対し、共有メモリＭに記録されている進捗状況を読み取らせて、コアＣ２の起動処理完了フラグの有無（未完了コアの有無に相当）を確認させる。この動作例３の場合では、ＯＳ２０に係る起動処理の停滞している状況が、停滞判定機能部１６によって確認されることとなる。
【００５３】
次に、処理ステップＳ４に移行し、代替実行機能部１３が、コアＣ１側に対し、処理ステップＳ３により確認されたコアＣ２側の起動処理残部について代替実行させる。この代替実行が完了した後、再起動処理ステップＳ４２に移行し、再起動実行機能部１７が、コアＣ１に対し、コアＣ２側の再起動を実行させる。そして、コアＣ２側が再起動されると、情報処理装置１においては、全てのＯＳに係る起動処理は完了している状態であり、所望の稼動を開始可能な状態となる。
【００５４】
なお、図５においては、処理ステップＳ４１による代替実行が完了した後に処理ステップＳ４２により再起動を行った場合の動作について説明したが、例えば、当該処理ステップＳ４１による代替実行を省略し、処理ステップＳ４２の再起動後にコアＣ２側で改めて起動処理を実行させるよう動作させても良い。
【００５５】
以上、本発明において、記載された具体例に対してのみ詳細に説明したが、本発明の技術思想の範囲で多彩な変更等が可能であることは、当業者にとって明白なことであり、このような変更等が特許請求の範囲に属することは当然のことである。例えば本発明は、コンピュータを前述の各機能部１１〜１７として機能させるプログラムとして構成することもできる。このプログラムによれば、コンピュータに前述のステップＳ１〜Ｓ５等の各処理を実行させることができる。このプログラムは、ＣＤ−ＲＯＭ，ＤＶＤ−ＲＯＭ，ＣＤ−Ｒ，ＣＤ−ＲＷ，ＤＶＤ−Ｒ，ＤＶＤ−ＲＷ，ＭＯ，ＨＤＤ，ＢＤ−ＲＯＭ，ＢＤ−Ｒ，ＢＤ−ＲＥなどの記録媒体に記録して、保存・配布することも可能である。この記録媒体は、記録媒体駆動装置を利用して読み出され、そのプログラムコード自体が前記実施形態の処理を実現するので、該記録媒体も本発明を構成する。
【００５６】
また、通信媒体においては、特に限定されるものではなく、電話回線の有線通信媒体、マイクロ波回線の無線通信媒体等を含んだものが挙げられ、インターネットも含んでも良い。
【００５７】
また、前述のようなプログラムの処理の全てもしくは一部がコンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットにより行われて本実施形態のような機能が実現される場合も、挙げられる。
【符号の説明】
【００５８】
１…情報処理装置
１１…開始実行機能部
１２…進捗記録機能部
１３…代替実行機能部
１４…未完了コア確認機能部
１５…代替完了確認機能部
１６…停滞判定機能部
１７…再起動実行機能部
Ｐ…マルチコアプロセッサ
Ｃ１，Ｃ２…プロセッサコア
Ｍ…共有メモリ
【図１】
2019053452.tif 000003
【図２】
2019053452.tif 000004
【図３】
2019053452.tif 000005
【図４】
2019053452.tif 000006
【図５】
2019053452.tif 000007