(57)【要約】      （修正有）【課題】コンピュータシステムのメモリモジュール内のデータを保全するためのシステムおよび方法を提供する。【解決手段】コンピュータシステムにおいて、プラットフォームコントローラハブ（ＰＣＨ）は、ソフトウェア保全プロセスが必要かどうかを検知し、その後、ソフトウェア保全プロセスを実行する。ソフトウェア保全プロセスは、コンピュータシステムにおいて、省電力モードの開始を検知する段階により始めることができる。データコンテンツの同期プロセスは、次にコンピュータシステムの処理ユニット内で開始できる。次に、コンピュータシステムは、メモリモジュールのデータコンテンツを自動的に保存する。ソフトウェア保全プロセスは、コンピュータシステムの電源ユニットをオフにすることにより完了する。【選択図】図３
2019133623.tif 000002
【特許請求の範囲】
【請求項１】
メモリモジュール内のデータを保全するコンピュータ実装方法であって、
コンピュータシステムにソフトウェアデータ保全プロセスが必要であると検知する段階と、
ソフトウェアデータ保全プロセスが必要であると検知したことに応答して、前記ソフトウェアデータ保全プロセスを実行する段階と
を備え、前記ソフトウェアデータ保全プロセスは、
省電力モードの開始を検知する段階と、
処理ユニット内のデータコンテンツの同期プロセスを開始する段階と、
メモリモジュールのデータコンテンツを自動的に保存する段階と、
電源ユニットをオフにする段階と
を備える、コンピュータ実装方法。
【請求項２】
前記省電力モードは、一時的低電力モード、ソフトウェア起動されたシャットダウンモード、ソフトウェア起動されたリスタートモード、ユーザ起動されたシャットダウンモード、ユーザ起動されたリスタートモード、およびオーバーヒートしているコンピュータコンポーネントによりトリガされるシャットダウンのうち少なくとも１つを含み得る、請求項１に記載のコンピュータ実装方法。
【請求項３】
前記省電力モードは、前記ソフトウェア起動されたリスタートモード、または前記ユーザ起動されたリスタートモードであり、前記ソフトウェアデータ保全プロセスは、
前記電源ユニットをオフにしたことに応答して、前記省電力モードを終了する段階と、
前記コンピュータシステムをリブートする段階と
をさらに備える、請求項２に記載のコンピュータ実装方法。
【請求項４】
前記省電力モードは、オーバーヒートしているコンピュータコンポーネントによりトリガされる前記シャットダウンであって、省電力モードの開始を検知する段階に代えて、前記ソフトウェアデータ保全プロセスは、
前記処理ユニットから、前記コンピュータシステムがオーバーヒートしているという入力を受信する段階と、
電源ボタンをトリガしてそれ自体を上書きし、前記電源ユニットをオフにする段階と
をさらに備える、請求項２に記載のコンピュータ実装方法。
【請求項５】
処理ユニット内のデータコンテンツの前記同期プロセスは、
前記処理ユニットの揮発性メモリからデータをコピーする段階と、
前記コピーされたデータを前記メモリモジュールの不揮発性メモリ内に配置する段階と
をさらに備える、請求項１から４の何れか一項に記載のコンピュータ実装方法。
【請求項６】
メモリモジュールのデータコンテンツを自動的に保存する段階は、前記データコンテンツを不揮発性コンピュータコンポーネント内に保存する段階をさらに備える、請求項１から５の何れか一項に記載のコンピュータ実装方法。
【請求項７】
メモリモジュール内のデータを保全するために構成されるコンピュータシステムであって、
電源ユニットと、
データコンテンツを格納するよう構成されるメモリモジュールと、
同期プロセスをスタートするよう通知を受信すると、前記メモリモジュールでメモリのセルフリフレッシュプロセスをスタートするよう構成される処理ユニットと、
ソフトウェアデータ保全プロセスをスタートするよう構成されるコントローラハブであって、前記ソフトウェアデータ保全プロセスをスタートすることは、
省電力モードの開始を検知することと、
前記処理ユニット内の同期プロセスを開始することとを含む、コントローラハブと、
前記ソフトウェアデータ保全プロセスを継続するよう構成されるロジックデバイスであって、前記ソフトウェアデータ保全プロセスを継続することは、
メモリモジュール内のデータコンテンツを自動的に保存することと、
電源ユニットをオフにすることとを含むロジックデバイスと
を備える、コンピュータシステム。
【請求項８】
前記省電力モードは、スリープモード、ソフトウェア起動されたシャットダウンモード、ソフトウェア起動されたリスタートモード、ユーザ起動されたシャットダウンモード、ユーザ起動されたリスタートモード、およびオーバーヒートしているコンピュータコンポーネントによりトリガされるシャットダウンのうち少なくとも１つを含み得る、請求項７に記載のコンピュータシステム。
【請求項９】
前記省電力モードは、前記ソフトウェア起動されたリスタートモード、または前記ユーザ起動されたリスタートモードであり、前記ソフトウェアデータ保全プロセスを継続することは、前記省電力モードを終了することと、前記コンピュータシステムをリブートすることとをさらに含む、請求項８に記載のコンピュータシステム。
【請求項１０】
前記省電力モードは、オーバーヒートしているコンピュータコンポーネントによりトリガされる前記シャットダウンであり、省電力モードを開始するよう構成されるコントローラハブに代えて、前記コンピュータシステムは、管理ユニットをさらに備え、前記管理ユニットは、
前記処理ユニットから、前記コンピュータシステムがオーバーヒートしているという入力を受信し、
電源ボタンをトリガしてそれ自体を上書きし、前記電源ユニットをオフにし、
前記処理ユニットにおいて同期プロセスを開始することにより、前記ソフトウェアデータ保全プロセスをスタートできることを前記コントローラハブに示すよう構成される、請求項８に記載のコンピュータシステム。
【請求項１１】
処理ユニット内のデータコンテンツの前記同期プロセスは、
前記処理ユニットの揮発性メモリからデータをコピーすることと、
前記コピーされたデータを前記メモリモジュールの不揮発性メモリ内に配置することと
をさらに含む、請求項７から１０の何れか一項に記載のコンピュータシステム。
【請求項１２】
メモリモジュールのデータコンテンツを自動的に保存することは、前記データコンテンツを不揮発性コンピュータコンポーネント内に保存することをさらに含む、請求項７から１０の何れか一項に記載のコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウェアデータ保全に関し、より詳細には、コンピュータシステムが電源を失うときコンピュータシステム内のデータを保全するシステムおよび方法に関する。
【背景技術】
【０００２】
コンピュータシステムは、データの大量の入力を扱い、データを収容するためにいくつかのメモリモジュールを有する。データは、コンピュータシステム中を動的に移動する。動的なデータの移動の結果として、突然シャットダウンが起こる場合、データは、必ずしも回復可能な記憶場所に格納されていない。データは、動作中、揮発性コンピュータコンポーネントおよび不揮発性コンピュータコンポーネントの両方に格納され得る。揮発性コンポーネントは、動作中コンピュータシステムが電力を有するとき、データが使用されることを可能にする。電力が失われた場合、揮発性コンポーネントは、何れのデータも保持しない。対照的に、不揮発性コンポーネントは、電力のない場合でもデータを保持できる。不揮発性コンポーネントは、ハードドライブのような、メモリ記憶コンポーネントとは異なり得る。ハードドライブは、データを書き込むおよび読み取るために時間がかかる。故に、コンピュータが突然電源を失いそうな場合、揮発性コンポーネントは、コンピュータがシャットダウンする前に、そのデータを永久記憶コンポーネントへ書き込むために十分な時間を有さないかもしれない。
【０００３】
いくつかのコンピュータシステムは、コンピュータシステムに対する電力が失われたとき、データを保護するために設計されたプロセスを有する。例えば、従来のコンピュータシステムにおいて、電力が失われたときでも不揮発性デュアルインラインメモリモジュール（ＮＶＤＩＭＭ）が、メモリモジュールおよび中央演算処理装置（ＣＰＵ）からのデータコンテンツを保持できる。従来の手順は、電源ユニットが実際にオフにされるまでタイマを設定する。この間に、揮発性コンポーネントは、そのデータを不揮発性コンポーネントに変換できる。このタイマが問題となり得るのは、これが、データを保全するために必要な時間の常に正確な描写ではないからである。加えて、これらの従来のデータ保全プロセスは、コンピュータシステムがシャットダウンしそうであることを知っているが、まだ実際には電源を失っていないような状況に合わせた手順を有さない。
【０００４】
電力損失中だけではなく、データが失われ得る全ての他のシナリオにおいてもデータを保全するためのメカニズムが必要とされる。例えば、メカニズムは、ソフトウェア起動されたシャットダウンモード、ソフトウェア起動されたリスタートモード、ユーザ起動されたシャットダウンモード、ユーザ起動されたリスタートモード、およびオーバーヒートしているコンピュータコンポーネントによりトリガされるシャットダウンを考慮しなければならない。メカニズムは、さらにシステムが電源を失う前に可能な限り多くのデータが保全されることを保証する必要がある。
【０００５】
「ＩＮＦＯＲＭＡＴＩＯＮ  ＰＲＯＣＥＳＳＩＮＧ  ＡＰＰＡＲＡＴＵＳ，  ＭＥＴＨＯＤ，  ＡＮＤ  ＲＥＣＯＲＤＩＮＧ  ＭＥＤＩＵＭ」と題する米国特許公開第２００８０２２８７８８Ａ１号が、データをバックアップのために別の装置に転送した後、データが元の装置に戻される場合、記憶期限が設定されるデータを管理する方法を開示している。方法は、第１記憶ユニットから読み取ったデータを第２記憶ユニットに格納するための第１プロセス、および第１プロセスにより第２記憶ユニットに格納されたデータを第１記憶ユニットに格納するための第２プロセスを選択的に実行する段階と、第１プロセスにより第２記憶ユニットに格納されたデータが第２プロセスにより第１記憶ユニットに格納された場合、第１プロセスの実行から、第１プロセスにより読み出されたデータにあらかじめ設定された記憶期限情報により示される記憶期限までのあらかじめ定められた期間に基づいて、第２プロセスにより第１記憶ユニットに格納されたデータを無効化する段階とを含む。
【発明の概要】
【０００６】
本開示の様々な例は、コンピュータシステムが省電力モードに入るとき、データを保全するソフトウェアデータ保全プロセスのためのコンピュータ実装方法を対象とする。第１の実施形態において、コンピュータシステムは、ソフトウェアデータ保全プロセスが必要であることを検知し、その後、ソフトウェアデータ保全プロセスを実行する。コンピュータシステムは、省電力モードの開始を検知し、その後、処理ユニット内のデータコンテンツの同期プロセスを開始することによりこれを行う。方法は、次に、メモリモジュールのデータコンテンツを自動的に保存し、電源ユニットをオフにする。
【０００７】
本開示は、また、メモリモジュール内のデータを保全するために構成されるコンピュータシステムを提供する。コンピュータシステムは、電源ユニット、メモリモジュール、処理ユニット、コントローラハブ、およびロジックデバイスを備えてよい。メモリモジュールは、データコンテンツを格納するよう構成され得る。処理ユニットは、同期プロセスをスタートするよう通知を受信すると、メモリモジュールでメモリのセルフリフレッシュプロセスをスタートするよう構成され得る。コントローラハブは、ソフトウェアデータ保全プロセスをスタートするよう構成され得る。コントローラハブは、省電力モードの開始を検知する段階、および処理ユニットにおいて同期プロセスを開始する段階を完了できる。ロジックデバイスは、ソフトウェアデータ保全プロセスを継続するよう構成され得る。ロジックデバイスは、また、メモリモジュール内のデータコンテンツを自動的に保存する段階、および電源ユニットをオフにする段階を完了できる。
【０００８】
省電力モードは、一時的低電力モード、ソフトウェア起動されたシャットダウンモード、ソフトウェア起動されたリスタートモード、ユーザ起動されたシャットダウンモード、ユーザ起動されたリスタートモード、またはオーバーヒートしているコンピュータコンポーネントによりトリガされるシャットダウンであってよい。
【０００９】
一例において、省電力モードは、ソフトウェア起動されたリスタートモード、またはユーザ起動されたリスタートモードであってよい。電源ユニットをオフにした後、ソフトウェアデータ保全プロセスは、省電力モードを終了する段階、およびコンピュータシステムをリブートする段階をさらに備え得る。
【００１０】
別の例において、省電力モードは、オーバーヒートしているコンピュータコンポーネントによりトリガされるシャットダウンであってよい。省電力モードの開始を検知する段階に代えて、ソフトウェアデータ保全プロセスは、処理ユニットまたはコントローラハブからコンピュータシステムがオーバーヒートしているという入力を受信できる。ソフトウェアデータ保全プロセスは、電源ボタンをトリガしてそれ自体を上書きし、電源ユニットをオフにすることによって応答し得る。
【００１１】
いくつかの実施形態において、処理ユニット内のデータコンテンツの同期プロセスは、処理ユニットの揮発性メモリからデータをコピーする段階を備えてよい。コピーされたデータは、次に、メモリモジュールの不揮発性メモリに入れられてよい。
【００１２】
いくつかの実施形態において、メモリモジュールのデータコンテンツを保存する段階は、データコンテンツを不揮発性コンピュータコンポーネント内に保存する段階を備え得る。
【００１３】
システム内のどこかに物理的メモリモジュールを有する任意の電子計算システムを特定すべく、本開示にわたって「パーソナルコンピュータ」、「サーバシステム」、「ラップトップコンピュータ」、「コンピュータシステム」、および「タブレット」といった用語が、同じ意味で用いられ得る。
【図面の簡単な説明】
【００１４】
本開示に係る上記の利点および特徴ならびに他の利点および特徴が得られる態様を説明すべく、上に簡潔に説明された当該原理に関する、より詳細な説明が、添付図面に図示された具体的な例を参照することによってなされる。これらの図面は、本開示の例示的な態様のみを示しており、故に、本開示の範囲を限定するものとみなされるべきではない。添付図面の使用を通じて、本明細書に記載の原理がさらに具体的におよび詳細に説明かつ解説される。
【００１５】
【図１Ａ】（従来技術）は、現在のデータ保全モジュールに係る、コンピュータシステムの例示的な構成の図を示す。
【００１６】
【図１Ｂ】（従来技術）は、現在のデータ保全モジュールに係る、電力損失中のデータを保全する例示的な方法を示す。
【００１７】
【図２】本開示の例示的な実施形態に係る、様々な障害シナリオ中にデータを保全するよう構成されるコンピュータシステムの図を示す。
【００１８】
【図３】本開示の例示的な実施形態に係る、ユーザ起動されたシャットダウンプロセス中にデータを保全する方法を示す。
【００１９】
【図４】本開示の例示的な実施形態に係る、ユーザ起動されたリスタートプロセス中にデータを保全する方法を示す。
【００２０】
【図５】本開示の例示的な実施形態に係る、任意のコンピュータシステムコンポーネントがオーバーヒートしているときにデータを保全する方法を示す。
【発明を実施するための形態】
【００２１】
本発明は、添付図面を参照して説明され、同様のまたは同等の要素を指定するために同様の参照符号が添付図面にわたって使用される。添付図面は、縮尺通りに描かれておらず、本発明を例示するために提供されるにすぎない。本発明のいくつかの態様が、例示的な適用を参照して例示のために以下で説明される。多数の具体的な詳細、関係、および方法が、本発明の完全な理解を提供するために記載されることが理解されるべきである。関連技術における当業者は、しかしながら、本発明が１または複数の具体的な詳細なしに実施され得ること、または他の方法によって実施され得ることを容易に認識するであろう。他の例において、本発明を不明瞭にしないように、周知の構造または動作は、詳細には示されていない。いくつかの動作は、異なる順序で起こり得、および／または他の動作またはイベントと同時に起こり得るので、本発明は、例示される動作またはイベントの順序によって限定されない。さらに、例示される全ての動作またはイベントが本発明に係るやり方を実装するために必要なわけではない。
【００２２】
本開示は、データを処理ユニット、コントローラハブ、および他の揮発性コンピュータコンポーネントから効果的に不揮発性メモリモジュールに移動できる方法を対象とする。タイマ機能に依存せずにシステムが正確で安定したデータの記憶を可能にするよう、本方法は、従来の方法より多くのコンポーネントとの間で通信することに依存する。加えて、本システムは、本システムがオーバーヒートしているコンポーネントによってシャットダウンしそうである場合、自動的に検知できる管理ユニットを提供する。管理コンポーネントは、データが不揮発性コンポーネント内に保全されていることを自主的に保証できる。
【００２３】
既存のソフトウェアデータ保全プロセスの制限を考慮すると、本開示は、コンピュータシステムの考えられるあらゆるシャットダウンシナリオ、または低電力動作のシナリオの中でメモリモジュール内のデータを保全することを対象とする。システムは、コンピュータシステムが入るシャットダウンモードまたは低電力動作モードを検知する。システムは、次に、そのシナリオに合わせた一連の段階を提供する。このように、本開示は、ユーザ起動されたシャットダウンであるか、ソフトウェア起動されたシャットダウンであるか、またはハードウェア起動されたシャットダウンであるかにかかわらず、効果的なデータの保全を可能にする。加えて、本開示は、コンピュータシステムがスリープモードに移行しているか、リスタートモードに移行しているか、またはコールドシャットダウンモードに移行しているかに基づいて、異なる段階を提供する。
【００２４】
図１Ａは、ＡＣ電源が失われたときにのみトリガされてデータを保全する、従来のＮＶＤＩＭＭアプリケーションシステム１００を示す。システム１００は、プラットフォームコントローラハブ（ＰＣＨ）１１０、中央演算処理装置（ＣＰＵ）１２０、電源１３０、コンプレックスプログラマブルロジックデバイス（ＣＰＬＤ）１４０、ロジック回路１５０、およびメモリモジュール１６０を含む。ＰＣＨ１１０がＣＰＵ１２０と併せて使用されるとき、ＰＣＨ１１０は、システム１００全体にわたってデータの移動を制御でき、システム１００上でホスティングされるアプリケーションの動作をサポートできる。図１Ａにおいて示されるように、ＰＣＨ１１０は、ＣＰＵ１２０およびＣＰＬＤ１４０と直接通信できる。ＰＣＨ１１０は、汎用入力／出力（ＧＰＩＯ）、インテルチップセット、シリアルアドバンスドテクノロジアタッチメント（ＳＡＴＡ）、ユニバーサルシリアルバス（ＵＳＢ）、電源シーケンス、または当技術分野において使用される任意の他のデバイスであってよい。
【００２５】
ＣＰＵ１２０は、タスクの割り当てを提供し、メモリモジュール１６０への書き込みデータを監視する。電源１３０は、システム１００に電力を提供する。システム１００は、ＰＳＵにより供給される電力なしには動作できない。電源ユニット１３０が取り外された場合、システム１００は、自動的に動作を停止する。ＣＰＬＤ１４０は、他のコンピュータコンポーネントとの通信から生じる複合的なロジックプロセスを実施できるロジックを含む。ＣＰＬＤ１４０は、信号を他のプログラムロジックユニットに入力し、出力する。ＣＰＬＤ１４０は、負論理ゲート（ＮＡＮＤゲート）、ＡＮＤゲート、ＯＲゲート、ＸＯＲゲート、または当技術分野において使用される任意の他のデバイスなどの物理的なロジックデバイスとして構成され得る。
【００２６】
ロジック回路１５０が、ＣＰＬＤ１４０内に収納されてよく、ＣＰＬＤ１４０が機能する実際の物理的メカニズムを提供する。例えば、ロジック回路１５０は、いつ電源１３０が動作可能であるかを特定でき、電源１３０のステータスをＰＣＨ１１０に通知できる。メモリモジュール１６０は、システム１００がシャットダウンした場合であってもメモリモジュール１６０上のコンテンツが永久的に保全され得るよう、データを永久的に格納できる。
【００２７】
コンポーネント間の矢印は、コンピュータシステム１００の種々のコンポーネントが互いに通信できる様々な方向を示す。コンポーネント間の通信は、独立した外部信号としてコンポーネント間を移動する。これらの通信は、図１Ｂを参照して以下で説明される。
【００２８】
図１Ａを参照して、図１Ｂは、システム１００などのコンピュータシステムにおいてＡＣ電源が失われたとき、従来のＮＶＤＩＭＭ  アプリケーションが行う一連の段階の方法２００を示す。方法２００は、ＣＰＬＤ１４０内のロジック回路１５０が、電源１３０からの電力損失を検知するとき、段階２１０において始まり得る。電力の欠如を検知したことに応答して、ＣＰＬＤ１４０内のロジック回路１５０は、非同期ダイナミックランダムアクセスメモリリフレッシュ（ＡＤＲ）をトリガできる。ＡＤＲは、不揮発性メモリ構成の一部であるＮＶＤＩＭＭシステム内の重要データの保全を可能にするメカニズムを提供できる。ＡＤＲは、インテルチップセット上でサポートされる機能であり、メモリモジュール１６０に対してハードウェア割り込みをトリガする。この割り込みは、メモリモジュール１６０内の書き込み保護データバッファをフラッシュし、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）をセルフリフレッシュモードに置く。このセルフリフレッシュモードは、電源損失イベント中、またはシステムクラッシュ中にデータが永久記憶状態にあることを保証する。
【００２９】
段階２２０において、ＡＤＲプロセスは、ＰＣＨ１１０にＡＤＲタイマをスタートさせる。ＰＣＨ１１０は、次に、同期プロセスをスタートするようＣＰＵ１２０を命令する。タイマは、任意の長さであってよく、ＣＰＵ１２０が同期プロセスをスタートし、完了するためにかかる時間と同じ長さの時間であるよう構成され得る。ＡＤＲタイマは、独立した機能であり、コンピュータシステム１００の内部クロックと同期しない。同期の欠如は、任意の保証時間においてデータの読み取り要求または書き込み要求が、メモリモジュールからの読出しのために利用可能でないことを意味し得る。ＡＤＲタイマは、データが保存されるために適切な時間を与えるための試みであるが、ＡＤＲタイマは、そのデータがいつ保全されたのか正確な指標を提供しない。
【００３０】
段階２３０において、ＣＰＵ１２０は、同期プロセスをスタートできる。同期プロセスは、ＣＰＵ１２０とメモリモジュール１６０との間のメモリのセルフリフレッシュプロセスであってよい。この同期プロセスは、ＣＰＵ１２０からメモリモジュール１６０内の不揮発性ストレージへデータを搬送できる。例えば、データは、電源がない場合にデータを保持するメモリの一種であるフラッシュメモリへ移動され得る。第１のメモリモジュール１６０が一杯のときコンピュータデータを第２のメモリモジュール１６０に格納することを可能にするために相互結合される単一のメモリモジュール１６０（またはメモリモジュール１６０のセット）が存在し得る。メモリモジュール１６０は、１または複数のＮＶＤＩＭＭであってよい。
【００３１】
段階２４０において、タイマが完了した後、ＰＣＨ１１０は、ＡＤＲプロセスが完了したことをＣＰＬＤ１４０内のロジック回路１５０に示す。段階２２０に関して先に言及されたように、これは、ＣＰＵ同期プロセスの完了についての不正確な描写であり得る。
【００３２】
段階２５０において、ＣＰＬＤ１４０は、データを不揮発性フラッシュメモリ内に保存するようメモリモジュール１６０を命令することにより、ＡＤＲプロセスの完了に応答する。不揮発性フラッシュメモリにデータを保存する段階は、電力損失後にデータが保全され得る即時的な記憶場所を提供する。データは、ハードドライブに書き込まれるよりもさらに迅速にフラッシュメモリに書き込まれ得る。段階２５０の完了後、段階２６０において、ＣＰＬＤ１４０は、電源にオフにするよう命令する。不揮発性コンピュータコンポーネント内に保全されたあらゆるデータが保存されるが、揮発性コンピュータコンポーネント内に残っているデータは失われる。
【００３３】
図２は、本開示の例示的な実施形態に係る、システム障害中のデータ保全を強化するために構成されるシステム３００を示す。システム３００は、ＰＣＨ３１０、ＣＰＵ３２０、電源３３０、ＣＰＬＤ３４０、ロジック回路３５０、メモリモジュール３６０、およびベースボード管理コントローラ（ＢＭＣ）３７０を含む。ＰＣＨ３１０、ＣＰＵ３２０、電源３３０、ＣＰＬＤ３４０、ロジック回路３５０、およびメモリモジュール３６０は、図１Ａにおいて示されたものと同様のプロセスを有する。しかしながら、図２を再び参照すると、そのようなコンポーネントに加えてシステム３００は、合理化された通信を可能にするためにベースボード管理コントローラ３７０を加える。ベースボード管理コントローラ３７０は、オーバーヒートについての入力をＰＣＨ３１０から、および／またはＣＰＵ３２０から直接受信できる。ＰＣＨ３１０および／またはＣＰＵ３２０がオーバーヒートしているという入力を受信すると、ベースボード管理コントローラ３７０は、データ保全プロセスをトリガするようＣＰＬＤ３４０に知らせることができる。
【００３４】
図３から図５を参照して以下でさらに説明されるように、システム３００におけるＰＣＨ３１０は、従来のシステム１００よりも、システム３００において、より多くのコンポーネントと通信する能力を用いてさらに構成される。タイマの完了を待つことに代えて、この通信の広がりが、より速くより正確なデータ保全プロセスをもたらす。
【００３５】
図３は、コンピュータシステムにおいてスリーププロセスを開始するとき、本開示の例示的な実施形態が行う一連の段階の方法４００を示す。スリーププロセスは、一時的低電力モードまたは完全なシャットダウンであってよい。スリーププロセスは、ユーザ起動されたプロセス、またはソフトウェア起動されたプロセスであってよい。説明を容易にするべく、これらの段階が、図２におけるシステム３００を参照して説明される。段階４１０において、ＰＣＨ３１０はスリーププロセスの開始を検知し、同期プロセスを始めるようＣＰＵ３２０に自動的に信号を送る。ＰＣＨ３１０は、また、スリーププロセスについてＣＰＬＤ３４０に通知する。図１Ａにおけるシステム１００と比較して図２におけるシステム３００の新しい構成の一部として、ＰＣＨ３１０は、スリーププロセスの開始を検知できる。故に、低電力モードを検知する段階と、（ＣＰＵ３２０などの）揮発性コンピュータコンポーネントから不揮発性メモリへデータを同期する重要な段階との間に存在する段階はより少ない。
【００３６】
段階４２０において、ＰＣＨ３１０からの信号に応答して、ＣＰＵ３２０が即時に同期プロセスを開始する。同期プロセスは、従って、ＣＰＵ３２０の揮発性メモリ内のデータをメモリモジュール３６０の不揮発性メモリ内に保全する。
【００３７】
段階４３０において、ＣＰＬＤ３４０は、ＰＣＨ３１０からスリーププロセスの通知を受信し、次に、メモリモジュール３６０にそのコンテンツを不揮発性コンポーネント内に保存するよう命令できる。段階４４０において、メモリモジュール３６０は、既にそのメモリに存在したデータと、段階４２０におけるＣＰＵ３２０の同期プロセスにより加えられたデータとの両方を保存する。例えば、段階４４０において、メモリモジュール３６０は、そのデータコンテンツをフラッシュメモリ内に保全できる。
【００３８】
段階４５０において、ＰＣＨ３１０がＣＰＬＤ３４０にスリーププロセスに入るよう伝えたとき、方法４００全体が終わる。ＣＰＬＤ３４０は、次に、電源３３０をオフにする。
【００３９】
このように、この方法４００は、スリーププロセスに入る前にデータを保存することをオペレーティングシステムに依存しないので、方法４００は、現在のプロセスに勝る利点を示す。オペレーティングシステムは、スリーププロセスを直ちにスタートでき、その間にＣＰＬＤおよびＰＣＨは、並行してデータのバックアップをスタートし、その間にオペレーティングシステムはスリーププロセスを完了する。これは、スリーププロセスに入る前にデータを保存することをオペレーティングシステムに依存する他の方法より優れているプロセスである。
【００４０】
加えて、方法４００は、ＰＣＨ３１０がスリーププロセスの通知を受信し、その後、ＣＰＵ３１０およびメモリモジュール３６０にそれらのデータを保全するよう直接命令することを可能にする。この方法において、ＰＣＨ３１０は、ＣＰＬＤ３４０からの通知を待つ必要がない。故に、方法４００は、コンピュータシステム３００がスリープモードへと進めるよう、より速いデータ保全および正確な完了時間を提供する。
【００４１】
コンピュータシステムがスリープモードに入るときデータの保全を提供することに加えて、システム３００は、他のシナリオのために構成され得る。図４は、コンピュータシステムにおいてリスタートプロセスを開始するとき、本開示の例示的な実施形態が行う一連の段階の方法５００を示す。リスタートプロセスは、ソフトウェア起動されたプロセス、またはユーザ起動されたプロセスであってよい。説明を容易にするべく、これらの段階は、図３におけるシステム３００を参照して説明される。段階５１０において、ＰＣＨ３１０は、システムのリスタートプロセスの開始を検知することにより、方法５００をスタートする。ＰＣＨ３１０は、次に、同期プロセスをスタートするようＣＰＵ３２０に直接伝える。ＰＣＨ３１０は、また、リスタートプロセスを始めるようＣＰＬＤ３４０に通知する。ＰＣＨ３１０は、リスタートプロセスの開始を検知し、ＣＰＵ３２０に直接通信するので、シャットダウンを検知する段階と、（ＣＰＵ３２０などの）揮発性コンピュータコンポーネントから不揮発性メモリへデータを同期する重要な段階との間に存在する段階はない。
【００４２】
段階５２０において、ＰＣＨ３１０からの信号に応答して、ＣＰＵ３２０が即時に同期プロセスを開始する。同期プロセスは、従って、ＣＰＵ３２０の揮発性メモリ内のデータをメモリモジュール３６０の不揮発性メモリ内に保全する。
【００４３】
段階５３０において、ＣＰＬＤ３４０は、リスタートプロセスの通知を受信している。ＣＰＬＤは、次に、メモリモジュール３６０にそのデータを不揮発性コンポーネント内に保存するよう伝えることができる。段階５４０において、メモリモジュール３６０は、既にそのメモリに存在したデータと、段階５２０におけるＣＰＵ３２０の同期プロセスにより加えられたデータとの両方を保全する。例えば、段階５４０において、メモリモジュール１６０は、そのデータコンテンツをフラッシュメモリ内に保全できる。
【００４４】
段階５５０において、ＣＰＬＤ３４０は、電源３３０にオフにするよう伝える。方法４００とは異なり、方法５００は、ここで止まらずに段階５６０に進む。段階５６０において、方法５００は、コンピュータシステム３００のリスタートプロセスに進む。ＰＣＨ３１０は、シャットダウンプロセスを終了し、リスタートプロセスをスタートするようＣＰＬＤ３４０に伝える。
【００４５】
段階５７０において、ＣＰＬＤ３４０が、電源３３０をオンにし、システムをリブートする。
【００４６】
このように、この方法５００は、リスタートのために効果的な手順へとシャットダウンプロセスのカスタマイズを可能にするので、方法５００は、現在のプロセスに勝る利点を示す。方法４００と同様に、方法５００は、ＣＰＵ３１０およびメモリモジュール３６０がそれらのデータを迅速に保全することを可能にする直接的な通信の利点を有する。方法５００は、次に、システムリスタートに安全に進むことができる。
【００４７】
図５は、オーバーヒートしている温度を検知した後、強制シャットダウンを開始するとき、本開示の例示的な実施形態が行う一連の段階の方法６００を示す。説明を容易にするべく、これらの段階は、図３におけるシステム３００を参照して説明される。段階６１０において、ＢＭＣ３７０は、ＣＰＵ３２０およびＰＣＨ３１０のうち少なくとも１つから、コンピュータコンポーネントがオーバーヒートしているという入力を受信することにより、方法６００を開始する。ＢＭＣ３７０は、コンピュータシステム３００がオーバーヒートしているという通知を代替的に受信でき、具体的なオーバーヒートしているコンポーネントを知っていることを必要としない。
【００４８】
段階６２０において、ＢＭＣ３７０は、電源ボタンをトリガして電源オンのステータスを上書きし、コンピュータシステム３００の電源をオフにさせる。段階６２０は、オーバーヒートによる電気部品への損傷から１または複数のコンピュータコンポーネントを保護するために開始される強制的なシャットダウンプロセスである。コンポーネントがもはや動作可能ではなく、動作の副産物として熱を発生させることができないので、電源の完全なシャットダウンが、電気コンポーネントを冷やすことができる。電気コンポーネントに対する損傷の恐れにより、システム３００は、即時シャットダウンを必要とする。ＢＭＣ３７０は、オーバーヒートが検知されたとき、即時に電源をシャットダウンすることにより、必要な電源オフを提供する。
【００４９】
段階６３０において、ＰＣＨ３１０は、同期プロセスを始めるようＣＰＵ３２０に伝える。ＰＣＨ３１０は、また、スリーププロセスを始めるようＣＰＬＤ３４０に通知する。ＰＣＨ３１０がシャットダウンプロセスの開始を検知し、ＣＰＵ３２０に直接通信するので、低電力モードを検知する段階と、（ＣＰＵ３２０などの）揮発性コンピュータコンポーネントから不揮発性メモリへデータを同期する重要な段階との間に存在する段階はない。
【００５０】
段階６４０において、ＣＰＵ３２０は、同期プロセスを開始する。同期プロセスは、従って、ＣＰＵ３２０の揮発性メモリ内のデータをメモリモジュール３６０の不揮発性メモリへと保全する。
【００５１】
段階６５０において、ＣＰＬＤ３４０は、シャットダウンプロセスの通知を受信しており、メモリモジュール３６０にそのデータを不揮発性コンポーネント内に保存するよう伝えることができる。段階６６０において、メモリモジュール３６０は、実際にこの段階を実行して、既にそのメモリに存在したデータと、段階６５０におけるＣＰＵ３２０の同期プロセスにより加えられたデータとの両方を保全する。例えば、段階６６０において、メモリモジュール１６０は、そのデータコンテンツをフラッシュメモリ内に保全できる。段階６５０は、ＣＰＬＤ３４０が電源３３０にシャットダウンプロセスを始めるよう伝えるとき完了する。方法６００は、段階６７０において、電源３３０がシャットダウンするときに完了する。
【００５２】
故に、本開示は、ＣＰＵ３２０またはＰＣＨ３１０がオーバーヒートしても、揮発性メモリコンポーネント内のデータを効果的に保護できるベースボード管理コントローラ３７０を提供する。方法は、熱を生み出すことを停止するべく、電源３３０がコンピュータシステムをシャットダウンする前に、不揮発性メモリコンポーネント内へのデータの効果的な保全を提供する。
【００５３】
本発明の様々な例が上記で説明されている一方で、それらは、単なる例として提示されており、制限するものではないことが理解されるべきである。開示された例に対する多数の変更が、本発明の趣旨または範囲から逸脱することなく、本明細書における開示に従って行われ得る。このように、本発明の広がりおよび範囲が、上記で説明されたいかなる例によっても限定されるべきではない。むしろ、本発明の範囲は、以下の特許請求の範囲およびそれらの均等物に従って定義されるべきである。
【００５４】
本発明は、１または複数の実装例を参照して例示され、説明されているが、この明細書および添付図面を読んで理解すると、同等の改変および改良が他の当業者によって想到されるであろう。加えて、本発明の特定の特徴が、いくつかの実装例のうちの１つのみに関して開示されたものであり得る一方、そのような特徴は、任意の所与のまたは特定の用途のために望ましいかつ有益であり得るので、他の実装例の１または複数の他の特徴と組み合わされてよい。
【００５５】
本明細書において用いられている用語は、特定の例のみを説明する目的で用いられており、本発明を限定することを意図していない。本明細書において用いられている通り、単数形の「１つの（ａ）」、「１つの（ａｎ）」、および「その（ｔｈｅ）」は、文脈が明確にそうでないと示さない限り、その複数形も含むことが意図される。さらに、「含む（ｉｎｃｌｕｄｉｎｇ）」、「含む（ｉｎｃｌｕｄｅｓ）」、「有する（ｈａｖｉｎｇ）」、「有する（ｈａｓ）」、「ともに（ｗｉｔｈ）」またはそれらの変形例である用語が、発明を実施するための形態、および／または特許請求の範囲の何れかで使用されている限りにおいて、そのような用語は、「備える（ｃｏｍｐｒｉｓｉｎｇ）」という用語と同様の態様で包括的であることが意図される。
【００５６】
別途定義されない限り、本明細書において用いられる全ての用語（技術的用語および科学的用語を含む）は、当業者によって一般に理解される意味と同じ意味を有する。さらに、一般に的に使用される辞書において定義されるような用語は、関連技術の文脈におけるそれらの意味と一致する意味を有するものとして解釈されるべきであり、本明細書において、そのように明示的に定義されない限り、理想的なまたは過度に形式的な意味で解釈されないものとする。
【図１Ａ】
2019133623.tif 000003
【図１Ｂ】
2019133623.tif 000004
【図２】
2019133623.tif 000005
【図３】
2019133623.tif 000006
【図４】
2019133623.tif 000007
【図５】
2019133623.tif 000008