JP6206097B2 - 情報処理装置、起動方法及び起動プログラム - Google Patents

情報処理装置、起動方法及び起動プログラム Download PDF

Info

Publication number
JP6206097B2
JP6206097B2 JP2013228771A JP2013228771A JP6206097B2 JP 6206097 B2 JP6206097 B2 JP 6206097B2 JP 2013228771 A JP2013228771 A JP 2013228771A JP 2013228771 A JP2013228771 A JP 2013228771A JP 6206097 B2 JP6206097 B2 JP 6206097B2
Authority
JP
Japan
Prior art keywords
log
processor
processing apparatus
information processing
memory area
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2013228771A
Other languages
English (en)
Other versions
JP2015088133A (ja
Inventor
稔 河原林
稔 河原林
小澤 誠
誠 小澤
祐輔 工藤
祐輔 工藤
純太郎 峯崎
純太郎 峯崎
正和 矢部
正和 矢部
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2013228771A priority Critical patent/JP6206097B2/ja
Priority to US14/482,294 priority patent/US9747114B2/en
Priority to EP20140184561 priority patent/EP2869189A1/en
Publication of JP2015088133A publication Critical patent/JP2015088133A/ja
Application granted granted Critical
Publication of JP6206097B2 publication Critical patent/JP6206097B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4405Initialisation of multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating system

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Description

本発明は、情報処理装置、起動方法及び起動プログラムに関する。
複数のプロセッサを有する情報処理装置のBIOS起動処理において、情報処理装置の代表プロセッサSBSP(System Boot Strap Processor)は、ハードウェアの初期化処理とシリアルポートへのログ(文字列情報)出力処理を逐次的に行っている。BIOS起動処理が完了すると、情報処理装置は、装置が有するプロセッサやメインメモリ、デバイス等のリソース情報をオペレーティングシステム(Operating System:OS)に引渡し、OSの起動処理を実行する。
BIOS起動処理ではSBSPが大部分の処理を行うが、その間、SBSP以外の残りの全てのプロセッサAP(Application Processor)はSBSPからの処理要求が来るまでの間は何もせずに待っている。
シリアルポートへのログ出力は115kbps(キロビット/秒)で行われ、プロセッサの動作速度(2GHz以上)と比べて大きな速度差があるため、BIOS起動処理中にシリアルポートの利用待ちが頻繁に発生する。情報処理装置の起動時には、SBSPだけがハードウェア初期化等のBIOS起動処理を行いつつ、シリアルポートにログ出力も行っているため、シリアルポートの利用待ちの時間分OSの起動が遅くなる。一方、OS起動の高速化を図るためにログ量を少なく抑えると、情報処理装置で問題発生時の解析に必要となるログ情報が不足する。
なお、ログの収集や処理に関連する従来技術としては、複数のプロセッサコアを有するCPUで、複数のプロセッサコアのうちの1つを障害処理用プロセッサコアとし、障害処理用プロセッサが障害情報の収集や記録を行う技術がある(例えば、特許文献1参照)。また、システムバス上に主CPUにより主記憶部からのロギング情報の書き込みと読み出しとを同時に行える共通RAMを備え、共通RAMのデータを不揮発性メモリへ転送する副CPUを備えるCPUシステムがある(例えば、特許文献2参照)。
また、マルチプロセッサシステムにおいて、障害発生時の障害情報採取を複数のプロセッサで並列に実行することで障害情報採取時間を短縮する技術がある(例えば、特許文献3参照)。また、ログバッファの取得要求に応答してプールから取得したログバッファを要求元に渡し、ログバッファの解放要求に応答して拡張ログバッファ対応の拡張メモリをメモリへ返却し、他のログバッファをプールに返却する技術がある(例えば、特許文献4参照)。
また、発生した障害の種別に対応した障害コードを蓄積する障害コードログバッファと、障害ログ情報を記憶する障害ログ情報テーブルに基づいて、補助記憶装置へ障害情報の出力を行う技術がある(例えば、特許文献5参照)。
特開2009−129101号公報 特開平7−319816号公報 特開平11−338838号公報 特開平1−2149号公報 特開平4−195230号公報
OS起動時間と出力させるログ情報量との間にトレードオフが発生するが、通常はOS起動時間を優先させてログ量を少なく抑えたBIOSが使用される。そのため、OS起動時に障害が発生した際は、ログ量を増やしたBIOSに切り替えて障害を再現させてログ解析を行う必要があり、障害の調査に時間が掛かるという問題がある。
また、発生頻度の低い障害の場合、再現環境を用意しても障害が再現できない場合がある。さらに、タイミングに依存する障害の場合、BIOS処理の時間が変化することで、障害がそもそも起きなくなってしまう可能性もある。
本発明は、1つの側面では、情報処理装置の起動時のログ出力を制限せずに、OS起動時間を短縮することを目的とする。
本願の開示する情報処理装置は、1つの態様において、起動時にハードウェアの初期化処理を行いログを生成する第1のプロセッサと、前記第1のプロセッサが生成したログをメインメモリ中の専用メモリ領域に書き込み、該書き込んだログを前記専用メモリ領域から読み出して出力する処理を行う第2のプロセッサとを有する。そして、本願の開示する情報処理装置は、前記ログの出力が完了すると、前記第2のプロセッサ及び専用メモリ領域を活性増設する。
1実施態様によれば、情報処理装置の起動時のログ出力を制限せずに、OS起動時間を短縮することができる。
図1は、実施例に係る情報処理装置によるロギング方式を説明するための図である。 図2は、実施例に係る情報処理装置の構成を示す図である。 図3は、プロセッサの構成を示す図である。 図4は、ROM及びストレージが記憶するプログラムを示す図である。 図5は、メインメモリに展開されたプログラムコードを示す図である。 図6は、ログ出力処理(メインメモリ初期化前)のフローを示すフローチャートである。 図7は、ログ出力処理(メインメモリ初期化後)のフローを示すフローチャートである。 図8は、リソース追加処理のフローを示すフローチャートである。 図9は、実施例に係るロギング方式の効果について説明するための図である。
以下に、本願の開示する情報処理装置、起動方法及び起動プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例は開示の技術を限定するものではない。
まず、実施例に係る情報処理装置によるロギング方式について説明する。図1は、実施例に係る情報処理装置によるロギング方式を説明するための図である。図1(a)は、メインメモリ初期化前のロギング方式を示し、図1(b)は、メインメモリ初期化後のロギング方式を示す。
実施例に係るロギング方式では、SBSP10a以外のプロセッサ10のうち1台がログ処理専用のログプロセッサ10bとして動作する。SBSP10aとログプロセッサ10b以外の他のプロセッサ10はアプリケーションプロセッサAPとして動作する。
図1(a)に示すように、メインメモリの初期化前は、SBSP10aは、ログプロセッサ10bが有するスクラッチパッドレジスタspad(scratchpad register)13のクリアを待つ(1)。そして、SBSP10aは、spad13がクリアされるとspad13へログ書き込みを行う(2)。ここで、spad13は、プログラムによりデータを一時的に保管するための作業用補助メモリとしてプロセッサ内部で使用可能なレジスタである。
また、ログプロセッサ10bは、spad13をポーリングし(3)、spad13にログが書き込まれると、シリアルポート50にログを書き出し、spad13をクリアする(4)。
そして、BIOSによりメインメモリの初期化が完了すると、図1(b)に示すように、SBSP10aは、ログプロセッサ10bが有するspad13のクリアを待ち(1)、spad13がクリアされるとspad13へログ書き込みを行う(2)。
また、ログプロセッサ10bは、spad13をポーリングし(3)、spad13にログが書き込まれると、logmem41にログを書き込み、spad13をクリアする(4)。ここで、logmem41は、起動時のログを格納するための専用のメモリであり、メインメモリの一部である。また、ログプロセッサ10bは、logmem41にログがある場合、シリアルポート50にログを書き出し、logmem41をクリアする(5)。
このように、実施例に係るロギング方式では、SBSP10aは、ログをシリアルポート50に書き出すことなく、ログをログプロセッサ10bのspad13に書き込む。また、ログプロセッサ10bは、メインメモリ初期化後は、ログをlogmem41に書き込み、spad13をクリアする。
したがって、SBSP10aは、シリアルポートが使用可能になるのを待つ必要がなく、OSの起動処理を行うことができる。このため、情報処理装置は、ログの出力を抑えることなく、従来と比較してOSの起動処理を行う高速に行うことができる。
次に、実施例に係る情報処理装置の構成について説明する。図2は、実施例に係る情報処理装置の構成を示す図である。図2に示すように、情報処理装置1は、複数のプロセッサ10と、ROM(Read Only Memory)20と、ストレージ30と、メインメモリ40と、シリアルポート50とを有する。
なお、複数のプロセッサ10には、SBSP10a及びログプロセッサ10bとして動作するプロセッサ10が含まれる。また、図2では説明の便宜上、複数のプロセッサ10には、SBSP10a及びログプロセッサ10bを含めて3台のプロセッサ10のみを示したが、情報処理装置1は、任意の台数のプロセッサ10を有することができる。複数のプロセッサ10、ROM20、ストレージ30、メインメモリ40及びシリアルポート50はシステムバス60で接続される。
プロセッサ10は、ROM20やメインメモリ40に格納されたプログラムを読み出して実行する演算処理装置である。ROM20は、BIOSなど初期化に必要なプログラムを記憶する読み出し専用メモリである。
ストレージ30は、データを記憶する不揮発性記憶装置であり、HDD(Hard Disk Drive)やSSD(Solid State Drive)などである。ストレージ30にはOSやアプリケーションプログラムがインストールされ、OSやアプリケーションプログラムはメインメモリ40に読み出されて実行される。
メインメモリ40は、ROM20やストレージ30から読み出されてプログラムや演算の途中結果などを記憶するRAM(Random Access Memory)である。メインメモリ40の一部は、logmem41として使用される。
シリアルポート50は、シリアルインタフェースに接続するポートであり、シリアルインタフェースを介して端末2に接続される。シリアルポート50に書き出されたログは、端末2の表示装置に表示される。
図3は、プロセッサ10の構成を示す図である。図3に示すように、SBSP10a及びログプロセッサ10bを含め、各プロセッサは、演算部11と、レジスタ12とを有する。
演算部11は、メインメモリ40に格納された命令コードを読出し、解析し、実行する。レジスタ12は、プロセッサ10の各種情報を保持する領域である。レジスタ12には、spad13が含まれる。
図4は、ROM20及びストレージ30が記憶するプログラムを示す図である。図4(a)は、ROM20が記憶するプログラムを示し、図4(b)は、ストレージ30が記憶するプログラムを示す。
図4(a)に示すように、ROM20には、BIOSコード70と、logprocコード80が格納される。BIOSコード70は、情報処理装置1を初期化して利用可能な状態にする。logprocコード80は、ログプロセッサ10bがログ出力処理に使用するプログラムである。
図4(b)に示すように、ストレージ30には、OSコード90が格納される。BIOSコード70、logprocコード80、OSコード90は、BIOS及びOSの処理によってROM20及びストレージ30から読み出され、メインメモリ40に展開される。
図5は、メインメモリ40に展開されたプログラムコードを示す図である。図5に示すように、BIOSコード70は、初期化機能71と、ログプロセッサ生成機能72と、logmem生成機能73と、リソース隠蔽機能74と、ログ生成機能75と、OS呼び出し機能76とを有する。
初期化機能71は、情報処理装置(1)内の物理リソースを初期化し、OSを起動可能な状態にする機能である。ログプロセッサ生成機能72は、APの1つをログ処理専用のログプロセッサ10bとして起動する機能である。logmem生成機能73は、メインメモリ(40)上にログ出力処理に使用する専用のメモリ領域logmem41を確保する機能である。
SBSP10aは、BIOS起動処理において、メインメモリ40の一部をlogmem41として、また情報処理装置(1)中のいずれか1つのAPをログプロセッサ10bとして確保し、ログ出力処理を行わせるために優先的に初期化を行う。ログプロセッサ10bは、初期化処理において、自身の有するレジスタ12からspad13を確保してSBSP10aからのログ書き込みに備える。
logmem41は、コード領域とデータ領域に分かれ、コード領域にはROM20からlogprocコード80がロードされる。データ領域には、実際のlogデータ(ログデータ)43が書き込まれる。logmem41は、通常のメインメモリ領域とは異なり、BIOSが起動処理を完了し、OSに処理を引き渡した後も、ログ出力処理が完了するまでの間、OSの管理下には置かれない。
リソース隠蔽機能74は、logmem41として使用されるメインメモリ領域とログプロセッサ10bとをOSから一時的に隠蔽するための処理を行う機能である。ログプロセッサ10bとlogmem41は、OS起動後もログ出力処理のため、OSから隠蔽される必要がある。OSはBIOSが作成するACPI(Advanced Configuration and Power Interface)テーブル42によりハードウェアリソースを知るため、BIOSはACPIテーブル42にはログプロセッサ10bとlogmem41を追加せず、これらの資源をOSに渡さない。
これにより、OSは、ACPIテーブル42に記載されていないログプロセッサ10bとlogmem41の存在を知ることなく情報処理装置1の起動を行う。なお、ログ出力処理が完了すると、ログ出力処理に使用されていたリソースは、情報処理装置1を停止することなくリソースを追加する機能であるhot-add(活性増設)機能により、OSの管理下に置かれる。
ログ生成機能75は、ログをログプロセッサ10bやlogmem41に渡す処理を行う機能である。SBSP10aは、BIOS起動処理の各フェーズにおいて作成したBIOS起動ログをログプロセッサ10bのspad13に書き込む。SBSP10aは、spad13に空きがない場合は、spad13が使用可能になるまで待つ。
SBSP10aは、BIOS起動処理の最終フェーズが終了し、OSに処理を引き渡す際に、特別なブート完了識別子をログに追加する。ログプロセッサ10bは、ブート完了識別子を検出すると、ログ出力処理に使用されていたリソースをhot-add機能によりOSの管理下に置くようにSBSP10aに指示する。
OS呼び出し機能76は、情報処理装置1の初期化後にOSを呼び出す機能である。OS呼び出し機能により、OSのブート処理が行われ、OSは順次メインメモリ上に展開される。
logprocコード80は、ログ取得機能81と、ログ出力機能82と、リソース追加判定機能83と、リソース追加要求機能84とを有する。
ログ取得機能81は、ログ生成機能75により生成されたログを取得し、logmem41へ保持する機能である。ログ出力機能82は、logmem41に保持されたログをシリアルポート50に出力する機能である。
メインメモリ40の初期化前は、ログプロセッサ10bは、spad13をポーリングにより監視し、SBSP10aからの書き込みがある場合はシリアルポート50の状態を確認する。そして、シリアルポート50が使用可能であれば、ログプロセッサ10bは、ログをspad13から読み出してシリアルポート50に出力し、spad13をクリアする。シリアルポート50が使用中の場合は、ログプロセッサ10bは、使用可能になるまでログ出力処理を待つ。SBSP10aは、メインメモリ40の初期化が完了すると、logmem41が使用可能になったことを示すフラグを立てる。
メインメモリ40の初期化後は、ログプロセッサ10bは、spad13をポーリングにより監視し、SBSP10aからの書き込みがある場合は、ログをspad13から読み出す。そして、logmem41が使用可能になったことを示すフラグが立っている場合は、ログプロセッサ10bは、logmem41にログを書き込み、spad13をクリアする。
また、ログプロセッサ10bは、logmem41にログが書き込まれている場合、シリアルポート50の状態を確認し、シリアルポート50が使用可能であればログを出力して出力したログをlogmem41から削除する。シリアルポート50が使用中の場合は、ログプロセッサ10bは、使用可能になるまでシリアルポート50へのログ出力を待つ。
リソース追加判定機能83は、ログ出力完了を判定し、ログプロセッサ10b及びlogmem41の隠蔽を解除する判定をする機能である。ログプロセッサ10bは、シリアルポート50に出力したログにブート完了識別子を検出した場合、全てのログ出力が完了したと判定する。
リソース追加要求機能84は、OSにログプロセッサ10b及びlogmem41の追加を依頼する機能である。ログプロセッサ10bは、全てのログ出力が完了したと判定した場合、SMI(System Management Interrupt)を発行し、SBSP10aに対してログプロセッサ10bとlogmem41を情報処理装置1のリソースとして追加することを要求する。SBSP10aは、SMIを受け、既存のACPIの仕組み及びOSのリソース追加機能93と連携して、ログプロセッサ10bとlogmem41を情報処理装置1のリソースとして追加する。
OSコード90は、OSを起動実行するためのOS起動処理機能91及びOS動作処理機能92を有する。また、OSコード90は、リソースの追加を実現するためのリソース追加機能93を有する。
次に、ログ出力処理(メインメモリ初期化前)のフローについて説明する。図6は、ログ出力処理(メインメモリ初期化前)のフローを示すフローチャートである。図6に示すように、SBSP10aは、ログ専用のプロセッサを確保し(ステップS1)、BIOSブート処理を行う(ステップS2)。
SBSP10aは、BIOSブート処理中にログを生成すると、spad13が使用可能か否かを判定し(ステップS3)、spad13が使用可能でない場合には、使用可能になるまで待つ。
一方、spad13が使用可能である場合には、SBSP10aは、spad13にログを書き込む(ステップS4)。そして、SBSP10aは、メインメモリ40の初期化が完了したか否かを判定し(ステップS5)、メインメモリ40の初期化が完了していない場合には、ステップS2に戻ってBIOSブート処理を継続する。一方、メインメモリ40の初期化が完了した場合には、SBSP10aは、メインメモリ初期化完了フラグに1をセットし(ステップS6)、メインメモリ初期化後のログ出力処理に進む。
また、ログプロセッサ10bは、spad13にデータがあるか否かを判定し(ステップS11)、データがない場合には、データが書き込まれるまで待ち、データがある場合には、シリアルポート50が使用可能か否かを判定する(ステップS12)。その結果、シリアルポート50が使用可能でない場合には、ログプロセッサ10bは、シリアルポート50が使用可能になるまで待つ。
一方、シリアルポート50が使用可能である場合には、ログプロセッサ10bは、シリアルポート50にログを転送し、ログが転送済みであるspad13をクリアする(ステップS13)。
そして、ログプロセッサ10bは、メインメモリ初期化完了フラグが1であるか否かを判定し(ステップS14)、1でない場合には、メインメモリ40の初期化が完了していない場合であるので、ステップS11に戻る。一方、メインメモリ初期化完了フラグが1である場合には、ログプロセッサ10bは、メインメモリ初期化後のログ出力処理に進む。
このように、SBSP10aは、spad13ログを書き込むだけで、シリアルポート50へのログ出力はログプロセッサ10bが行うので、SBSP10aは、従来より高速にBIOSブート処理を行うことができる。
次に、ログ出力処理(メインメモリ初期化後)のフローについて説明する。図7は、ログ出力処理(メインメモリ初期化後)のフローを示すフローチャートである。図7に示すように、SBSP10aは、BIOSコード70及びlogprocコード80をメインメモリ40に展開し(ステップS21)、メインメモリ40に展開したBIOSコード70を用いて引き続きBIOSブート処理を行う(ステップS22)。
SBSP10aは、BIOSブート処理中にログを生成すると、spad13が使用可能か否かを判定し(ステップS23)、spad13が使用可能でない場合には、使用可能になるまで待つ。
一方、spad13が使用可能である場合には、SBSP10aは、spad13にログを書き込む(ステップS24)。そして、SBSP10aは、BIOSブートが完了したか否かを判定し(ステップS25)、完了していない場合には、ステップS22に戻ってBIOSブート処理を継続する。一方、BIOSブートが完了した場合には、SBSP10aは、spad13にブート完了識別子を書き込んでOSに処理を引き渡し(ステップS26)、リソース追加処理に進む。
また、ログプロセッサ10bは、spad13にデータがあるか否かを判定し(ステップS31)、データがある場合には、spad13のデータをlogmem41に記録し、spad13をクリアする(ステップS32)。
そして、ログプロセッサ10bは、logmem41にデータがあるか否かを判定し(ステップS33)、データがない場合には、ステップS31に戻り、データがある場合には、シリアルポート50が使用可能か否かを判定する(ステップS34)。その結果、シリアルポート50が使用可能でない場合には、ログプロセッサ10bは、シリアルポート50が使用可能になるまで待つ。
一方、シリアルポート50が使用可能である場合には、ログプロセッサ10bは、シリアルポート50にログを転送し、ログが転送済みであるlogmem41をクリアする(ステップS35)。そして、ログプロセッサ10bは、転送したログにブート完了識別子があるか否かを判定し(ステップS36)、ブート完了識別子がない場合には、ステップS31に戻り、ある場合には、リソース追加処理に進む。
このように、SBSP10aはspad13にログを書き込み、ログプロセッサ10bはログを一端logmem41に記録してspad13をクリアするので、SBSP10aは、メインメモリ初期化前と比較して高速にBIOSブート処理を行うことができる。
次に、リソース追加処理のフローについて説明する。図8は、リソース追加処理のフローを示すフローチャートである。図8に示すように、SBSP10aは、ログプロセッサ10bからSMIを受信したか否かを判定し(ステップS41)、SMIを受信していない場合には、SMIの受信を待つ。
一方、ログプロセッサ10bからSMIを受信した場合には、SBSP10aは、SMIハンドラの処理によってログプロセッサ10bとlogmem41を情報処理装置1のリソースとして組み込む(ステップS42)。
また、ログプロセッサ10bは、SBSP10aにSMIを発行してHalt状態に遷移すし(ステップS51)、情報処理装置1のリソースとして追加されるのを待つ。
このように、SBSP10aは、SMIハンドラの処理によってログプロセッサ10bとlogmem41を情報処理装置1のリソースとして活性増設する。したがって、ログプロセッサ10bとlogmem41は起動時のログ出力処理後にアプリケーションなどによる利用が可能となる。
次に、実施例に係るロギング方式の効果について説明する。図9は、実施例に係るロギング方式の効果について説明するための図である。図9(a)は、従来のロギング方式によるOSブート完了までの時間経過を示し、図9(b)は、実施例に係るロギング方式によるhot-add処理までの時間経過を示す。
図9(a)に示すように、従来のロギング方式では、SBSP10aだけが初期化処理を行い、他のAPは、SBSP10aからの指示により間欠的に処理を行うだけである。また、SBSP10aが直接シリアルポート50にログ出力を行うことから、シリアルポート使用待ち時間が頻繁に発生し、OS起動が遅くなる。また、ログ出力を減らすとOS起動時間は短縮されるが、障害発生時に調査が難航する。
一方、図9(b)に示すように、実施例に係るロギング方式では、SBSP10aはログをspad13に出力し、spad13の待ち時間はシリアルポート50の待ち時間に比べて大幅に短いので、ログ出力の待ち時間を減らすことができる。したがって、SBSP10aは、OSブートを従来と比較して早く完了することができる。また、SBSP10aは、シリアルポート50へのログ出力完了を待たずに早期に業務を開始することが可能となる。
また、APから選択されたログプロセッサ10bは、spad13に書き込まれたログをlogmem41に書き込み、シリアルポート50の使用を待ちながらログ出力を行うため、SBSP10aがOSブートを完了した後もログ出力処理を続ける。そして、ログ出力が完了すると、BIOSはOSと連携して、隠蔽していたlogmem41及びログプロセッサ10bをhot-add処理により情報処理装置1のリソースとして追加する。
上述してきたように、実施例では、SBSP10aがログをログプロセッサ10bのspad13に書き込み、spad13からシリアルポート50へのログの書き出しはログプロセッサ10bが行う。また、spad13の使用待ち時間はシリアルポート50の待ち時間と比較して大幅に短い。
したがって、SBSP10aは、OSブート処理を従来と比較して短時間で行うことができる。また、SBSP10aは、ログプロセッサ10bによるログ出力処理の完了を待つことなくログ出力中に業務を開始することができる。
また、実施例では、メインメモリ40の初期化が終了すると、ログプロセッサ10bは、spad13から読み出したデータを一旦logmem41に書き込んでspad13をクリアする。また、logmem41への書き込み時間はシリアルポート50への出力時間と比較して大幅に短い。
したがって、ログプロセッサ10bはメインメモリ40の初期化後はより高速にspad13のログを読み出すことができ、SBSP10aによるspad13のクリア待ち時間を短縮することができる。
また、実施例では、ログプロセッサ10bのログ出力が完了すると、SBSP10aはBIOSとOSの連携のもと、ログプロセッサ10b及びlogmem41をリソースとして追加する。したがって、OSは、情報処理装置1の全てのリソースを使用することができ、リソースの減少を防ぐことができる。
1 情報処理装置
2 端末
10 プロセッサ
10a SBSP
10b ログプロセッサ
11 演算部
12 レジスタ
13 spad
20 ROM
30 ストレージ
40 メインメモリ
41 logmem
42 ACPIテーブル
43 logデータ
50 シリアルポート
60 システムバス
70 BIOSコード
71 初期化機能
72 ログプロセッサ生成機能
73 logmem生成機能
74 リソース隠蔽機能
75 ログ生成機能
76 OS呼び出し機能
80 logprocコード
81 ログ取得機能
82 ログ出力機能
83 リソース追加判定機能
84 リソース追加要求機能
90 OSコード
91 OS起動処理機能
92 OS動作処理機能
93 リソース追加機能

Claims (6)

  1. 複数のプロセッサを有する情報処理装置において、
    起動時にハードウェアの初期化処理を行いログを生成する第1のプロセッサと、
    前記第1のプロセッサが生成したログをメインメモリ中の専用メモリ領域に書き込み、該書き込んだログを前記専用メモリ領域から読み出して出力する処理を行う第2のプロセッサとを有し、
    前記ログの出力が完了すると、前記第2のプロセッサ及び専用メモリ領域を活性増設することを特徴とする情報処理装置。
  2. 前記第1のプロセッサは、前記第2のプロセッサが前記出力処理を完了する前にOSをブートして前記第2のプロセッサと前記専用メモリ領域を除くリソースをOSの管理下におき、前記第2のプロセッサが前記出力処理を完了すると、前記第2のプロセッサと前記専用メモリ領域をOSの管理下に組み入れることを特徴とする請求項1に記載の情報処理装置。
  3. 前記第2のプロセッサは、前記第1のプロセッサがメインメモリを初期化する前は、前記ログをシリアルポートに出力し、前記第1のプロセッサがメインメモリを初期化した後は、前記ログを前記専用メモリ領域に書き込み、該書き込んだログを前記専用メモリ領域から読み出してシリアルポートに出力することを特徴とする請求項1又は2に記載の情報処理装置。
  4. 前記第1のプロセッサは、前記ログを前記第2のプロセッサのレジスタに書き込み、
    前記第2のプロセッサは、前記レジスタをポーリングして前記ログを出力処理することを特徴とする請求項3に記載の情報処理装置。
  5. 複数のプロセッサを有する情報処理装置を起動する起動方法おいて、
    第1のプロセッサがハードウェアの初期化処理を行ってログを生成し、
    第2のプロセッサが前記第1のプロセッサが生成したログをログ専用の専用メモリ領域に書き込み、該書き込んだログを前記専用メモリ領域から読み出して出力する処理を行い、
    前記ログの出力が完了すると、前記第2のプロセッサ及び専用メモリ領域を活性増設する
    ことを特徴とする起動方法。
  6. 複数のプロセッサを有する情報処理装置を起動する起動プログラムにおいて、
    第1のプロセッサにハードウェアの初期化処理を行わせてログを生成させ、
    第2のプロセッサに前記第1のプロセッサが生成したログをログ専用の専用メモリ領域に書き込み、該書き込んだログを前記専用メモリ領域から読み出して出力する処理を行わせ、
    前記ログの出力が完了すると、前記第1のプロセッサに前記第2のプロセッサ及び専用メモリ領域を活性増設させる
    ことを特徴とする起動プログラム。
JP2013228771A 2013-11-01 2013-11-01 情報処理装置、起動方法及び起動プログラム Expired - Fee Related JP6206097B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2013228771A JP6206097B2 (ja) 2013-11-01 2013-11-01 情報処理装置、起動方法及び起動プログラム
US14/482,294 US9747114B2 (en) 2013-11-01 2014-09-10 Information processing apparatus, boot up method, and computer-readable storage medium storing boot up program
EP20140184561 EP2869189A1 (en) 2013-11-01 2014-09-12 Boot up of a multiprocessor computer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013228771A JP6206097B2 (ja) 2013-11-01 2013-11-01 情報処理装置、起動方法及び起動プログラム

Publications (2)

Publication Number Publication Date
JP2015088133A JP2015088133A (ja) 2015-05-07
JP6206097B2 true JP6206097B2 (ja) 2017-10-04

Family

ID=51539170

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013228771A Expired - Fee Related JP6206097B2 (ja) 2013-11-01 2013-11-01 情報処理装置、起動方法及び起動プログラム

Country Status (3)

Country Link
US (1) US9747114B2 (ja)
EP (1) EP2869189A1 (ja)
JP (1) JP6206097B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107341076B (zh) * 2016-04-29 2020-08-28 展讯通信(上海)有限公司 通信处理器的故障辅助定位方法、装置及终端
US10341361B2 (en) * 2017-06-05 2019-07-02 Hewlett Packard Enterprise Development Lp Transmitting secure information
JP7028503B2 (ja) * 2018-03-29 2022-03-02 Necプラットフォームズ株式会社 コンピュータシステム、通信システム、コンピュータシステムによる制御方法及びプログラム
CN113064750B (zh) * 2021-04-26 2023-03-28 山东英信计算机技术有限公司 一种bios日志信息的追踪方法、装置和介质
CN116185921B (zh) * 2023-04-28 2023-07-21 湖北芯擎科技有限公司 针对异构多核多域的日志输出方法、系统、设备及介质

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5987564A (ja) * 1982-11-10 1984-05-21 Fujitsu Ltd ロギング情報の転送方式
JPH04195230A (ja) 1990-11-22 1992-07-15 Hitachi Ltd 障害情報ログ方式
JPH07319816A (ja) 1994-05-20 1995-12-08 Fujitsu Ltd Cpuシステムにおけるロギング情報の収集方法
JPH11338838A (ja) 1998-05-22 1999-12-10 Nagano Nippon Denki Software Kk マルチプロセッサシステムにおける障害情報のパラレルダンプ採取方法及び方式
US6463550B1 (en) * 1998-06-04 2002-10-08 Compaq Information Technologies Group, L.P. Computer system implementing fault detection and isolation using unique identification codes stored in non-volatile memory
US6336185B1 (en) 1998-09-24 2002-01-01 Phoenix Technologies Ltd. Use of other processors during BIOS boot sequence to minimize boot time
US7818560B2 (en) * 2007-09-21 2010-10-19 Intel Corporation System information synchronization in a links-based multi-processor system
JP4926009B2 (ja) 2007-11-21 2012-05-09 三菱電機株式会社 情報処理装置の障害処理システム
JP2009205633A (ja) * 2008-02-29 2009-09-10 Nec Infrontia Corp 情報処理システム及び情報処理方法
US7987336B2 (en) * 2008-05-14 2011-07-26 International Business Machines Corporation Reducing power-on time by simulating operating system memory hot add
US8639852B2 (en) * 2009-11-13 2014-01-28 Qualcomm Incorporated Burst access protocol
US8307198B2 (en) 2009-11-24 2012-11-06 Advanced Micro Devices, Inc. Distributed multi-core memory initialization
US20130097412A1 (en) * 2011-10-17 2013-04-18 International Business Machines Corporation Performing A Boot Sequence In A Multi-Processor System

Also Published As

Publication number Publication date
US9747114B2 (en) 2017-08-29
US20150127931A1 (en) 2015-05-07
JP2015088133A (ja) 2015-05-07
EP2869189A1 (en) 2015-05-06

Similar Documents

Publication Publication Date Title
JP5911892B2 (ja) ハイバネイトからの多段レジューム
US10146938B2 (en) Method, apparatus and virtual machine for detecting malicious program
US9384007B2 (en) Memory virtualization-based snapshot boot apparatus and method
JP6206097B2 (ja) 情報処理装置、起動方法及び起動プログラム
JP6297715B2 (ja) コンピューティングデバイスの初期化トレース
US20150074058A1 (en) Container-based processing method, apparatus, and system
US9053064B2 (en) Method for saving virtual machine state to a checkpoint file
JP4846493B2 (ja) デバッグシステム及びデバッグ回路
JP2012252576A (ja) 情報処理装置、起動方法およびプログラム
US20140373006A1 (en) System And Method For Virtual Machine Management
US20160283250A1 (en) Boot controlling processing apparatus
CN114765051A (zh) 内存测试方法及装置、可读存储介质、电子设备
JP2007206933A (ja) 情報処理装置、情報処理装置におけるブートローダ生成方法およびプログラム転送方法
JP2009134565A (ja) 仮想計算機システム及び仮想計算機システムの制御方法
JP3826859B2 (ja) 情報処理方法とその方法を実現するプログラム及び記録媒体
JP5699665B2 (ja) サーバ装置、処理実行方法およびプログラム
US20210109757A1 (en) Deterministic execution replay for multicore systems
US10592329B2 (en) Method and electronic device for continuing executing procedure being aborted from physical address where error occurs
JP2018156230A (ja) 情報処理装置
CN101145134A (zh) 处理关闭中断区间的设备和方法和页固定设备和方法
JP4471274B2 (ja) ハードディスクイメージファイルからosを起動する方法
KR101395007B1 (ko) 복수의 프로세서를 이용한 스냅샷 이미지 처리 장치 및 방법
JP2014191389A (ja) 情報処理装置、メモリ検査/ロード方法、およびbootプログラム
JP2009223841A (ja) 命令ログ取得プログラム及び仮想計算機システム
JP2009205324A (ja) プロセッサ、メモリ装置、処理装置及び命令の処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160705

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170410

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170418

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170530

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170808

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170821

R150 Certificate of patent or registration of utility model

Ref document number: 6206097

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees