(57)【要約】      （修正有）【課題】ＢＭＣ内のメモリのメモリリークにより意図しない契機でＢＭＣが再起動して、オペレーティングシステムの動作に影響を及ぼしてしまうのを解消し、システムを安定した状態で運用することができるコンピュータシステムを提供する。【解決手段】ファームウェア（ＢＩＯＳ）１７０と、基板管理コントローラ（ＢＭＣ）１８０と、を有するコンピュータシステムであって、基板管理コントローラ（ＢＭＣ）を再起動させるハードウェア制御回路１９０を備え、基板管理コントローラ（ＢＭＣ）は、内部のメモリの空き容量を監視して、空き容量が所定の設定値以下になった場合にファームウェア（ＢＩＯＳ）に空き容量の情報を通知し、ファームウェア（ＢＩＯＳ）は、パワーオンセルフテストの期間に、基板管理コントローラ（ＢＭＣ）からの情報を受けた場合に、基板管理コントローラ（ＢＭＣ）を再起動させるかどうか判断する。【選択図】図１
2015114825.tif 000002
【特許請求の範囲】
【請求項１】
ファームウェアと、基板管理コントローラと、を有するコンピュータシステムであって、
前記基板管理コントローラを再起動させるハードウェア制御回路を備え、
前記基板管理コントローラは、内部のメモリの空き容量を監視して、前記空き容量が所定の設定値以下になった場合に前記ファームウェアに前記空き容量の情報を通知し、
前記ファームウェアは、パワーオンセルフテストの期間に、前記基板管理コントローラからの前記情報を受けた場合に、前記基板コントローラを再起動させるかどうか判断することを特徴とするコンピュータシステム。
【請求項２】
前記ファームウェアは、前記基板管理コントローラからの前記情報を受け、前記基板コントローラを再起動させる場合は、前記ハードウェア制御回路に対して、前記基板コントローラを再起動させる信号を出力することを特徴とする請求項１に記載のコンピュータシステム。
【請求項３】
前記ファームウェアは、前記基板管理コントローラのメモリの空き容量が、前記基板管理コントローラの動作に支障をきたす容量であると判断した場合に、前記基板コントローラを再起動させることを特徴とする請求項１または２に記載のコンピュータシステム。
【請求項４】
前記ファームウェアはＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）である請求項１から３のいずれか１項に記載のコンピュータシステム。
【請求項５】
ハードウェア制御回路を用いて基板管理コントローラを再起動させるステップと、
前記基板管理コントローラは、内部のメモリの空き容量を監視して、前記空き容量が所定の設定値以下になった場合にファームウェアに前記空き容量の情報を通知するステップと、
前記ファームウェアは、パワーオンセルフテストの期間に、前記基板管理コントローラからの前記情報を受けた場合に、前記基板コントローラを再起動させるかどうか判断するステップと、
を有することを特徴とするコンピュータシステムの動作方法。
【請求項６】
前記ファームウェアは、前記基板管理コントローラからの前記情報を受け、前記基板コントローラを再起動させる場合は、前記ハードウェア制御回路に対して、前記基板コントローラを再起動させる信号を出力するステップを有することを特徴とする請求項５に記載のコンピュータシステムの動作方法。
【請求項７】
前記ファームウェアは、前記基板管理コントローラのメモリの空き容量が、前記基板管理コントローラの動作に支障をきたすと判断した場合に、前記基板コントローラを再起動させるステップを有することを特徴とする請求項５または６に記載のコンピュータシステムの動作方法。
【請求項８】
前記ファームウェアは、パワーオンセルフテストの期間に、前記基板コントローラを再起動させるステップを有することを特徴とする請求項５から７のいずれか１項に記載のコンピュータシステムの動作方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータシステムの動作監視を行うファームウェアを内蔵した基板管理コントローラまたはサービスプロセッサをもつコンピュータシステム及びその動作方法に関する。
【背景技術】
【０００２】
基板管理コントローラ（ＢＭＣ：Ｂａｓｅ  Ｍａｎａｇｅｍｅｎｔ  Ｃｏｎｔｒｏｌｌｅｒ）は、コンピュータシステムの電源制御、温度や電圧の監視機能や、システムの動作監視の機能などを持つ。近年のコンピュータシステムは、それだけではなく、リモートコンピュータからのシステムの電源制御や、リモートメディア制御やマルチタスク化などＢＭＣの機能も多様化、複雑化したためにＢＭＣ自身がストールする場合も増えてきた。そのため、コンピュータシステムの信頼性を高めるために外部ハードウェア制御回路によりＢＭＣ自身が対象のＷＤＴ（Ｗａｔｃｈ  Ｄｏｇ  Ｔｉｍｅｒ）を持つ仕様のコンピュータシステムもある。
【０００３】
このように、システムを再起動して安定した状態で運用する技術が必要となっている。
【０００４】
特許文献１には、ＰＯＳＴ（Ｐｏｗｅｒ  Ｏｎ  Ｓｅｌｆ  Ｔｅｓｔ）中にコマンドのやりとりが不能になった時に、ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）からＢＭＣを再起動することにより、コンピュータシステムの動作に対する不具合を解消できる技術が開示されている。
【０００５】
また、特許文献２には、メモリの記憶領域を監視して装置の再起動を要求し、装置の動作に影響を及ぼさないタイミングでメモリの未開放領域を解放して、メモリリークを回避する技術が開示されている。メモリリークとは、コンピュータの動作中に、使用可能なメモリ容量がだんだん減っていく現象である。これは、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）やアプリケーションソフトが処理のために占有したメモリ領域を、何らかの理由で解放しないまま放置してしまうために起きる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００９−１９３４９２号公報
【特許文献２】特開２００７−０１０３５７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１に記載の技術では、ＰＯＳＴ中にコマンドのやりとりが不能になったときに、ＢＩＯＳからＢＭＣを再起動することでシステムの復旧を行うが、ＢＭＣにおいてメモリリークが起こった場合、意図しない契機でＢＭＣが再起動してしまい、ＯＳの動作に影響を及ぼしてしまうという課題があった。
【０００８】
特許文献２に記載の技術では、分析機器自体のメモリのメモリリーク時にタイミングの良い状態で分析機器自体を再起動する。具体的には、再起動の要求があったときは最も早い分析の合間を見つけて再起動を実行し、メモリを初期化して未解放領域を強制的に解放する。そのためタイミングがあわず、時間がかかる分析であったり、分析が始まったばかりのタイミングだったりすると、直近の合間が来るまでの時間が長く正常動作するまでに時間がかかる、という課題があった。
【０００９】
本発明の目的は、ＢＭＣ内のメモリのメモリリークにより意図しない契機でＢＭＣが再起動して、オペレーティングシステムの動作に影響を及ぼしてしまうのを解消し、システムを安定した状態で運用することができるコンピュータシステムを提供することにある。
【課題を解決するための手段】
【００１０】
本発明は、上記課題を解決するために、ファームウェアと、基板管理コントローラと、を有するコンピュータシステムであって、基板管理コントローラを再起動させるハードウェア制御回路を備え、基板管理コントローラは、内部のメモリの空き容量を監視して、空き容量が所定の設定値以下になった場合にファームウェアに空き容量の情報を通知し、ファームウェアは、パワーオンセルフテストの期間に、基板管理コントローラからの情報を受けた場合に、基板コントローラを再起動させるかどうか判断することを特徴としている。
【００１１】
また、本発明は、ハードウェア制御回路を用いて基板管理コントローラを再起動させるステップと、基板管理コントローラは、内部のメモリの空き容量を監視して、空き容量が所定の設定値以下になった場合にファームウェアに空き容量の情報を通知するステップと、ファームウェアは、基板管理コントローラからの情報を受けた場合に、パワーオンセルフテストの期間に、基板コントローラを再起動させるかどうか判断するステップとを有することを特徴としている。
【発明の効果】
【００１２】
本発明によれば、ＢＭＣ内のメモリのメモリリークにより意図しない契機でＢＭＣが再起動して、オペレーティングシステムの動作に影響を及ぼしてしまうのを解消し、システムを安定した状態で運用することができるコンピュータシステムを提供できる。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施形態におけるコンピュータシステムの構成を示すブロック図である。
【図２】本発明の実施形態におけるコンピュータシステムの動作を示すフローチャートである。
【発明を実施するための形態】
【００１４】
以下、本発明の実施形態について図面を参照して詳細に説明する。
【００１５】
（実施形態）
図１は、本発明の実施形態であるコンピュータシステムの構成を示すブロック図である。図１において、マザーボード１００は、そのアーキテクチャを示している。このアーキテクチャは、例示的な目的のみのためのものであり、マザーボードに可能な多くのアーキテクチャのうちの１つのみが示されている。
【００１６】
図１に示すように、マザーボード１００は、中央処理ユニット（ＣＰＵ）１１０を含む。ＣＰＵ１１０は、図１において１３０で示される通常”ノースブリッジ”と呼ばれるチップにプロセッサバス１２０を介して接続される。ノースブリッジ１３０は一般的にメモリユニット、グラフィックカードなど高速に動作させたいパーツを制御する。図１ではメモリ１４０とＣＰＵ１１０との間の通信を管理する。メモリ１４０は複数接続してもよい。
【００１７】
また図１において、１５０で示される”サウスブリッジ”として知られているチップもまたノースブリッジ１３０に接続されている。サウスブリッジ１５０は、一般的にノースブリッジ１３０によって実行されるよりも遅いパーツを制御する。
【００１８】
遅いパーツとは、例えば、周辺コンポーネントインターフェイス（ＰＣＩ：Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）バスである。サウスブリッジ１５０は、ロウピンカウント（ＬＰＣ：Ｌｏｗ  Ｐｉｎ  Ｃｏｕｎｔ）バス１６０を介してＢＩＯＳ１７０を含むメモリユニットに接続されることが可能である。ＢＩＯＳはファームウェアとしても参照される。ノースブリッジ１３０及びサウスブリッジ１５０はまとめてマザーボード１００の”チップセット”としてしばしば参照される。
【００１９】
なお、本説明では省くがマザーボード１００は他にさまざまな入出力（Ｉ／Ｏ）装置と外部と通信を行うためのコンポーネントを含むものとする。
【００２０】
図１において、ＢＭＣ１８０はＬＰＣバス１６０に接続されている。なおＢＭＣもしばしばファームウェアとして参照される。ＢＭＣ１８０は一般的に電源の制御、システム管理ソフトウェアとプラットフォームハードウェアとの間のインターフェイスとして温度や電圧など管理を行う。ＢＭＣ１８０は内部メモリ１８１を備えている。
【００２１】
さらにサウスブリッジ１５０からＧＰＩＯ（Ｇｅｎｅｒａｌ  Ｐｕｒｐｏｓｅ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）２００を通じて、ＢＩＯＳ１７０からＢＭＣ１８０を再起動するためのハードウェア制御回路１９０が繋がり、ハードウェア制御回路１９０からＢＭＣ１８０が対象となるリセット信号２１０がＢＭＣ１８０に繋がる。なお、ＢＩＯＳ１７０からハードウェア制御回路１９０がコントロールできればサウスブリッジ１５０からの接続でなくても本発明に影響は無い。メモリリーク情報は、ＢＭＣ１８０からサウスブリッジ１５０に接続されたＧＰＩＯ２２０を通して、ＢＩＯＳ１７０に通知される。
【００２２】
図２は、本発明の実施形態の動作を示すフローチャートである。図２を用いて、本発明の実施形態の動作を説明する。
【００２３】
ＢＭＣ１８０は、電源オンの指示を受けると、電源制御機能によりシステムを起動し（Ｓ４００）、ＢＩＯＳ１７０はＰＯＳＴを開始する（Ｓ３００）。ＢＭＣ１８０は、ＢＭＣ内の内部メモリ１８１においてメモリリークが発生した場合、サウスブリッジ１５０に接続されたＧＰＩＯ２２０を通してＢＩＯＳ１７０に通知する（Ｓ４１０）。ＢＭＣ１８０は、メモリの空き容量が所定の閾値を下回っていたら、メモリリーク情報としてメモリの空き容量の値をＢＩＯＳ１７０に通知する。ＢＭＣ自身は組み込みファームウェアであり、組み込みファームウェアが持つＯＳのコマンドでメモリリーク情報（空き容量）を取得できる。
【００２４】
ＢＩＯＳ１７０は、ＰＯＳＴタスクの中でＢＭＣからの送信されたメモリリーク情報を、ＧＰＩＯ２２０を通じて受信し（Ｓ３１０）、得られたメモリの空き容量の値が所定の閾値を下回るような状態のメモリリークかどうか判断する（Ｓ３１１）。空き容量が閾値を下回るメモリリークが発生していなければ、ＰＯＳＴタスクを継続実行する（Ｓ３２０）。全てのタスクが終了したら、ＰＯＳＴは終了する（Ｓ３３０）。空き容量が閾値を下回るとは、予め定めたＢＭＣの機能に支障をきたす程のメモリリークであることを意味する。
【００２５】
ＢＭＣの動作に支障を来すメモリリークが発生したとＢＩＯＳ１７０が判断した場合（Ｓ３１１）、サウスブリッジ１５０を経由してハードウェア制御回路１９０に対してＢＭＣ１８０のリセットをＢＩＯＳ１７０が指示する（Ｓ５００）。ハードウェア制御回路１９０が、リセット信号２１０によりＢＭＣ１８０の再起動を行う（Ｓ５１０）。これによりＢＭＣ１８０は復旧する。
【００２６】
以上のことにより、ＢＭＣ内のメモリのメモリリークにより意図しない契機でＢＭＣが再起動して、オペレーティングシステムの動作に影響を及ぼしてしまうのを解消し、システムを安定した状態で運用することが可能である。
【００２７】
なお本実施形態ではＰＯＳＴ時にＢＭＣを再起動するので、システム運用中は再起動が起きにくい。そのため、より安定したシステム運用ができる。
【００２８】
以上、本発明の実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、その要旨を逸脱しない範囲において様々な変形が可能である。たとえば、実施形態のＢＭＣがメモリリーク情報をＢＩＯＳに通知する機能、ＢＩＯＳがＢＭＣのメモリリーク情報を感知する機能、の動作は他のハードウェア、または、ソフトウェア、あるいは、両者の複合構成によって実行することも可能である。
【産業上の利用可能性】
【００２９】
本発明は、コンピュータシステムの動作監視を行うファームウェアを内蔵した基板管理コントローラまたはサービスプロセッサをもつコンピュータシステムに利用可能である。
【符号の説明】
【００３０】
１００    マザーボード
１１０    中央処理ユニット（ＣＰＵ）
１２０    プロセッサバス
１３０    ノースブリッジ
１４０    メモリユニット及びメモリコントローラ
１５０    サウスブリッジ
１６０    ロウピンカウント（ＬＰＣ）バス
１７０    ＢＩＯＳ
１８０    ＢＭＣ
１８１    内部メモリ
１９０    ハードウェア制御回路
２００    ＧＰＩＯ
２１０    リセット信号
２２０    ＧＰＩＯ（メモリリーク情報通知用）
【図１】
2015114825.tif 000003
【図２】
2015114825.tif 000004