JP2019133623A - メモリモジュール内のデータを保全するコンピュータシステムおよびそれを用いたコンピュータ実装方法 - Google Patents

メモリモジュール内のデータを保全するコンピュータシステムおよびそれを用いたコンピュータ実装方法 Download PDF

Info

Publication number
JP2019133623A
JP2019133623A JP2018160456A JP2018160456A JP2019133623A JP 2019133623 A JP2019133623 A JP 2019133623A JP 2018160456 A JP2018160456 A JP 2018160456A JP 2018160456 A JP2018160456 A JP 2018160456A JP 2019133623 A JP2019133623 A JP 2019133623A
Authority
JP
Japan
Prior art keywords
data
computer system
computer
software
mode
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.)
Pending
Application number
JP2018160456A
Other languages
English (en)
Inventor
▲啓▼翰 彭
qi han Peng
▲啓▼翰 彭
舜宏 王
Shuen-Hung Wang
舜宏 王
俊慶 余
Chun-Chin Yu
俊慶 余
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.)
Quanta Computer Inc
Original Assignee
Quanta Computer Inc
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 Quanta Computer Inc filed Critical Quanta Computer Inc
Publication of JP2019133623A publication Critical patent/JP2019133623A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1456Hardware arrangements for backup
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/30Means for acting in the event of power-supply failure or interruption, e.g. power-supply fluctuations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/28Supervision thereof, e.g. detecting power-supply failure by out of limits supervision
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3215Monitoring of peripheral devices
    • G06F1/3225Monitoring of peripheral devices of memory devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1441Resetting or repowering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Computer Interaction (AREA)
  • Power Sources (AREA)
  • Retry When Errors Occur (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

【課題】コンピュータシステムのメモリモジュール内のデータを保全するためのシステムおよび方法を提供する。【解決手段】コンピュータシステムにおいて、プラットフォームコントローラハブ(PCH)は、ソフトウェア保全プロセスが必要かどうかを検知し、その後、ソフトウェア保全プロセスを実行する。ソフトウェア保全プロセスは、コンピュータシステムにおいて、省電力モードの開始を検知する段階により始めることができる。データコンテンツの同期プロセスは、次にコンピュータシステムの処理ユニット内で開始できる。次に、コンピュータシステムは、メモリモジュールのデータコンテンツを自動的に保存する。ソフトウェア保全プロセスは、コンピュータシステムの電源ユニットをオフにすることにより完了する。【選択図】図3

Description

本発明は、ソフトウェアデータ保全に関し、より詳細には、コンピュータシステムが電源を失うときコンピュータシステム内のデータを保全するシステムおよび方法に関する。
コンピュータシステムは、データの大量の入力を扱い、データを収容するためにいくつかのメモリモジュールを有する。データは、コンピュータシステム中を動的に移動する。動的なデータの移動の結果として、突然シャットダウンが起こる場合、データは、必ずしも回復可能な記憶場所に格納されていない。データは、動作中、揮発性コンピュータコンポーネントおよび不揮発性コンピュータコンポーネントの両方に格納され得る。揮発性コンポーネントは、動作中コンピュータシステムが電力を有するとき、データが使用されることを可能にする。電力が失われた場合、揮発性コンポーネントは、何れのデータも保持しない。対照的に、不揮発性コンポーネントは、電力のない場合でもデータを保持できる。不揮発性コンポーネントは、ハードドライブのような、メモリ記憶コンポーネントとは異なり得る。ハードドライブは、データを書き込むおよび読み取るために時間がかかる。故に、コンピュータが突然電源を失いそうな場合、揮発性コンポーネントは、コンピュータがシャットダウンする前に、そのデータを永久記憶コンポーネントへ書き込むために十分な時間を有さないかもしれない。
いくつかのコンピュータシステムは、コンピュータシステムに対する電力が失われたとき、データを保護するために設計されたプロセスを有する。例えば、従来のコンピュータシステムにおいて、電力が失われたときでも不揮発性デュアルインラインメモリモジュール(NVDIMM)が、メモリモジュールおよび中央演算処理装置(CPU)からのデータコンテンツを保持できる。従来の手順は、電源ユニットが実際にオフにされるまでタイマを設定する。この間に、揮発性コンポーネントは、そのデータを不揮発性コンポーネントに変換できる。このタイマが問題となり得るのは、これが、データを保全するために必要な時間の常に正確な描写ではないからである。加えて、これらの従来のデータ保全プロセスは、コンピュータシステムがシャットダウンしそうであることを知っているが、まだ実際には電源を失っていないような状況に合わせた手順を有さない。
電力損失中だけではなく、データが失われ得る全ての他のシナリオにおいてもデータを保全するためのメカニズムが必要とされる。例えば、メカニズムは、ソフトウェア起動されたシャットダウンモード、ソフトウェア起動されたリスタートモード、ユーザ起動されたシャットダウンモード、ユーザ起動されたリスタートモード、およびオーバーヒートしているコンピュータコンポーネントによりトリガされるシャットダウンを考慮しなければならない。メカニズムは、さらにシステムが電源を失う前に可能な限り多くのデータが保全されることを保証する必要がある。
「INFORMATION PROCESSING APPARATUS, METHOD, AND RECORDING MEDIUM」と題する米国特許公開第20080228788A1号が、データをバックアップのために別の装置に転送した後、データが元の装置に戻される場合、記憶期限が設定されるデータを管理する方法を開示している。方法は、第1記憶ユニットから読み取ったデータを第2記憶ユニットに格納するための第1プロセス、および第1プロセスにより第2記憶ユニットに格納されたデータを第1記憶ユニットに格納するための第2プロセスを選択的に実行する段階と、第1プロセスにより第2記憶ユニットに格納されたデータが第2プロセスにより第1記憶ユニットに格納された場合、第1プロセスの実行から、第1プロセスにより読み出されたデータにあらかじめ設定された記憶期限情報により示される記憶期限までのあらかじめ定められた期間に基づいて、第2プロセスにより第1記憶ユニットに格納されたデータを無効化する段階とを含む。
本開示の様々な例は、コンピュータシステムが省電力モードに入るとき、データを保全するソフトウェアデータ保全プロセスのためのコンピュータ実装方法を対象とする。第1の実施形態において、コンピュータシステムは、ソフトウェアデータ保全プロセスが必要であることを検知し、その後、ソフトウェアデータ保全プロセスを実行する。コンピュータシステムは、省電力モードの開始を検知し、その後、処理ユニット内のデータコンテンツの同期プロセスを開始することによりこれを行う。方法は、次に、メモリモジュールのデータコンテンツを自動的に保存し、電源ユニットをオフにする。
本開示は、また、メモリモジュール内のデータを保全するために構成されるコンピュータシステムを提供する。コンピュータシステムは、電源ユニット、メモリモジュール、処理ユニット、コントローラハブ、およびロジックデバイスを備えてよい。メモリモジュールは、データコンテンツを格納するよう構成され得る。処理ユニットは、同期プロセスをスタートするよう通知を受信すると、メモリモジュールでメモリのセルフリフレッシュプロセスをスタートするよう構成され得る。コントローラハブは、ソフトウェアデータ保全プロセスをスタートするよう構成され得る。コントローラハブは、省電力モードの開始を検知する段階、および処理ユニットにおいて同期プロセスを開始する段階を完了できる。ロジックデバイスは、ソフトウェアデータ保全プロセスを継続するよう構成され得る。ロジックデバイスは、また、メモリモジュール内のデータコンテンツを自動的に保存する段階、および電源ユニットをオフにする段階を完了できる。
省電力モードは、一時的低電力モード、ソフトウェア起動されたシャットダウンモード、ソフトウェア起動されたリスタートモード、ユーザ起動されたシャットダウンモード、ユーザ起動されたリスタートモード、またはオーバーヒートしているコンピュータコンポーネントによりトリガされるシャットダウンであってよい。
一例において、省電力モードは、ソフトウェア起動されたリスタートモード、またはユーザ起動されたリスタートモードであってよい。電源ユニットをオフにした後、ソフトウェアデータ保全プロセスは、省電力モードを終了する段階、およびコンピュータシステムをリブートする段階をさらに備え得る。
別の例において、省電力モードは、オーバーヒートしているコンピュータコンポーネントによりトリガされるシャットダウンであってよい。省電力モードの開始を検知する段階に代えて、ソフトウェアデータ保全プロセスは、処理ユニットまたはコントローラハブからコンピュータシステムがオーバーヒートしているという入力を受信できる。ソフトウェアデータ保全プロセスは、電源ボタンをトリガしてそれ自体を上書きし、電源ユニットをオフにすることによって応答し得る。
いくつかの実施形態において、処理ユニット内のデータコンテンツの同期プロセスは、処理ユニットの揮発性メモリからデータをコピーする段階を備えてよい。コピーされたデータは、次に、メモリモジュールの不揮発性メモリに入れられてよい。
いくつかの実施形態において、メモリモジュールのデータコンテンツを保存する段階は、データコンテンツを不揮発性コンピュータコンポーネント内に保存する段階を備え得る。
システム内のどこかに物理的メモリモジュールを有する任意の電子計算システムを特定すべく、本開示にわたって「パーソナルコンピュータ」、「サーバシステム」、「ラップトップコンピュータ」、「コンピュータシステム」、および「タブレット」といった用語が、同じ意味で用いられ得る。
本開示に係る上記の利点および特徴ならびに他の利点および特徴が得られる態様を説明すべく、上に簡潔に説明された当該原理に関する、より詳細な説明が、添付図面に図示された具体的な例を参照することによってなされる。これらの図面は、本開示の例示的な態様のみを示しており、故に、本開示の範囲を限定するものとみなされるべきではない。添付図面の使用を通じて、本明細書に記載の原理がさらに具体的におよび詳細に説明かつ解説される。
(従来技術)は、現在のデータ保全モジュールに係る、コンピュータシステムの例示的な構成の図を示す。
(従来技術)は、現在のデータ保全モジュールに係る、電力損失中のデータを保全する例示的な方法を示す。
本開示の例示的な実施形態に係る、様々な障害シナリオ中にデータを保全するよう構成されるコンピュータシステムの図を示す。
本開示の例示的な実施形態に係る、ユーザ起動されたシャットダウンプロセス中にデータを保全する方法を示す。
本開示の例示的な実施形態に係る、ユーザ起動されたリスタートプロセス中にデータを保全する方法を示す。
本開示の例示的な実施形態に係る、任意のコンピュータシステムコンポーネントがオーバーヒートしているときにデータを保全する方法を示す。
本発明は、添付図面を参照して説明され、同様のまたは同等の要素を指定するために同様の参照符号が添付図面にわたって使用される。添付図面は、縮尺通りに描かれておらず、本発明を例示するために提供されるにすぎない。本発明のいくつかの態様が、例示的な適用を参照して例示のために以下で説明される。多数の具体的な詳細、関係、および方法が、本発明の完全な理解を提供するために記載されることが理解されるべきである。関連技術における当業者は、しかしながら、本発明が1または複数の具体的な詳細なしに実施され得ること、または他の方法によって実施され得ることを容易に認識するであろう。他の例において、本発明を不明瞭にしないように、周知の構造または動作は、詳細には示されていない。いくつかの動作は、異なる順序で起こり得、および/または他の動作またはイベントと同時に起こり得るので、本発明は、例示される動作またはイベントの順序によって限定されない。さらに、例示される全ての動作またはイベントが本発明に係るやり方を実装するために必要なわけではない。
本開示は、データを処理ユニット、コントローラハブ、および他の揮発性コンピュータコンポーネントから効果的に不揮発性メモリモジュールに移動できる方法を対象とする。タイマ機能に依存せずにシステムが正確で安定したデータの記憶を可能にするよう、本方法は、従来の方法より多くのコンポーネントとの間で通信することに依存する。加えて、本システムは、本システムがオーバーヒートしているコンポーネントによってシャットダウンしそうである場合、自動的に検知できる管理ユニットを提供する。管理コンポーネントは、データが不揮発性コンポーネント内に保全されていることを自主的に保証できる。
既存のソフトウェアデータ保全プロセスの制限を考慮すると、本開示は、コンピュータシステムの考えられるあらゆるシャットダウンシナリオ、または低電力動作のシナリオの中でメモリモジュール内のデータを保全することを対象とする。システムは、コンピュータシステムが入るシャットダウンモードまたは低電力動作モードを検知する。システムは、次に、そのシナリオに合わせた一連の段階を提供する。このように、本開示は、ユーザ起動されたシャットダウンであるか、ソフトウェア起動されたシャットダウンであるか、またはハードウェア起動されたシャットダウンであるかにかかわらず、効果的なデータの保全を可能にする。加えて、本開示は、コンピュータシステムがスリープモードに移行しているか、リスタートモードに移行しているか、またはコールドシャットダウンモードに移行しているかに基づいて、異なる段階を提供する。
図1Aは、AC電源が失われたときにのみトリガされてデータを保全する、従来のNVDIMMアプリケーションシステム100を示す。システム100は、プラットフォームコントローラハブ(PCH)110、中央演算処理装置(CPU)120、電源130、コンプレックスプログラマブルロジックデバイス(CPLD)140、ロジック回路150、およびメモリモジュール160を含む。PCH110がCPU120と併せて使用されるとき、PCH110は、システム100全体にわたってデータの移動を制御でき、システム100上でホスティングされるアプリケーションの動作をサポートできる。図1Aにおいて示されるように、PCH110は、CPU120およびCPLD140と直接通信できる。PCH110は、汎用入力/出力(GPIO)、インテルチップセット、シリアルアドバンスドテクノロジアタッチメント(SATA)、ユニバーサルシリアルバス(USB)、電源シーケンス、または当技術分野において使用される任意の他のデバイスであってよい。
CPU120は、タスクの割り当てを提供し、メモリモジュール160への書き込みデータを監視する。電源130は、システム100に電力を提供する。システム100は、PSUにより供給される電力なしには動作できない。電源ユニット130が取り外された場合、システム100は、自動的に動作を停止する。CPLD140は、他のコンピュータコンポーネントとの通信から生じる複合的なロジックプロセスを実施できるロジックを含む。CPLD140は、信号を他のプログラムロジックユニットに入力し、出力する。CPLD140は、負論理ゲート(NANDゲート)、ANDゲート、ORゲート、XORゲート、または当技術分野において使用される任意の他のデバイスなどの物理的なロジックデバイスとして構成され得る。
ロジック回路150が、CPLD140内に収納されてよく、CPLD140が機能する実際の物理的メカニズムを提供する。例えば、ロジック回路150は、いつ電源130が動作可能であるかを特定でき、電源130のステータスをPCH110に通知できる。メモリモジュール160は、システム100がシャットダウンした場合であってもメモリモジュール160上のコンテンツが永久的に保全され得るよう、データを永久的に格納できる。
コンポーネント間の矢印は、コンピュータシステム100の種々のコンポーネントが互いに通信できる様々な方向を示す。コンポーネント間の通信は、独立した外部信号としてコンポーネント間を移動する。これらの通信は、図1Bを参照して以下で説明される。
図1Aを参照して、図1Bは、システム100などのコンピュータシステムにおいてAC電源が失われたとき、従来のNVDIMM アプリケーションが行う一連の段階の方法200を示す。方法200は、CPLD140内のロジック回路150が、電源130からの電力損失を検知するとき、段階210において始まり得る。電力の欠如を検知したことに応答して、CPLD140内のロジック回路150は、非同期ダイナミックランダムアクセスメモリリフレッシュ(ADR)をトリガできる。ADRは、不揮発性メモリ構成の一部であるNVDIMMシステム内の重要データの保全を可能にするメカニズムを提供できる。ADRは、インテルチップセット上でサポートされる機能であり、メモリモジュール160に対してハードウェア割り込みをトリガする。この割り込みは、メモリモジュール160内の書き込み保護データバッファをフラッシュし、ダイナミックランダムアクセスメモリ(DRAM)をセルフリフレッシュモードに置く。このセルフリフレッシュモードは、電源損失イベント中、またはシステムクラッシュ中にデータが永久記憶状態にあることを保証する。
段階220において、ADRプロセスは、PCH110にADRタイマをスタートさせる。PCH110は、次に、同期プロセスをスタートするようCPU120を命令する。タイマは、任意の長さであってよく、CPU120が同期プロセスをスタートし、完了するためにかかる時間と同じ長さの時間であるよう構成され得る。ADRタイマは、独立した機能であり、コンピュータシステム100の内部クロックと同期しない。同期の欠如は、任意の保証時間においてデータの読み取り要求または書き込み要求が、メモリモジュールからの読出しのために利用可能でないことを意味し得る。ADRタイマは、データが保存されるために適切な時間を与えるための試みであるが、ADRタイマは、そのデータがいつ保全されたのか正確な指標を提供しない。
段階230において、CPU120は、同期プロセスをスタートできる。同期プロセスは、CPU120とメモリモジュール160との間のメモリのセルフリフレッシュプロセスであってよい。この同期プロセスは、CPU120からメモリモジュール160内の不揮発性ストレージへデータを搬送できる。例えば、データは、電源がない場合にデータを保持するメモリの一種であるフラッシュメモリへ移動され得る。第1のメモリモジュール160が一杯のときコンピュータデータを第2のメモリモジュール160に格納することを可能にするために相互結合される単一のメモリモジュール160(またはメモリモジュール160のセット)が存在し得る。メモリモジュール160は、1または複数のNVDIMMであってよい。
段階240において、タイマが完了した後、PCH110は、ADRプロセスが完了したことをCPLD140内のロジック回路150に示す。段階220に関して先に言及されたように、これは、CPU同期プロセスの完了についての不正確な描写であり得る。
段階250において、CPLD140は、データを不揮発性フラッシュメモリ内に保存するようメモリモジュール160を命令することにより、ADRプロセスの完了に応答する。不揮発性フラッシュメモリにデータを保存する段階は、電力損失後にデータが保全され得る即時的な記憶場所を提供する。データは、ハードドライブに書き込まれるよりもさらに迅速にフラッシュメモリに書き込まれ得る。段階250の完了後、段階260において、CPLD140は、電源にオフにするよう命令する。不揮発性コンピュータコンポーネント内に保全されたあらゆるデータが保存されるが、揮発性コンピュータコンポーネント内に残っているデータは失われる。
図2は、本開示の例示的な実施形態に係る、システム障害中のデータ保全を強化するために構成されるシステム300を示す。システム300は、PCH310、CPU320、電源330、CPLD340、ロジック回路350、メモリモジュール360、およびベースボード管理コントローラ(BMC)370を含む。PCH310、CPU320、電源330、CPLD340、ロジック回路350、およびメモリモジュール360は、図1Aにおいて示されたものと同様のプロセスを有する。しかしながら、図2を再び参照すると、そのようなコンポーネントに加えてシステム300は、合理化された通信を可能にするためにベースボード管理コントローラ370を加える。ベースボード管理コントローラ370は、オーバーヒートについての入力をPCH310から、および/またはCPU320から直接受信できる。PCH310および/またはCPU320がオーバーヒートしているという入力を受信すると、ベースボード管理コントローラ370は、データ保全プロセスをトリガするようCPLD340に知らせることができる。
図3から図5を参照して以下でさらに説明されるように、システム300におけるPCH310は、従来のシステム100よりも、システム300において、より多くのコンポーネントと通信する能力を用いてさらに構成される。タイマの完了を待つことに代えて、この通信の広がりが、より速くより正確なデータ保全プロセスをもたらす。
図3は、コンピュータシステムにおいてスリーププロセスを開始するとき、本開示の例示的な実施形態が行う一連の段階の方法400を示す。スリーププロセスは、一時的低電力モードまたは完全なシャットダウンであってよい。スリーププロセスは、ユーザ起動されたプロセス、またはソフトウェア起動されたプロセスであってよい。説明を容易にするべく、これらの段階が、図2におけるシステム300を参照して説明される。段階410において、PCH310はスリーププロセスの開始を検知し、同期プロセスを始めるようCPU320に自動的に信号を送る。PCH310は、また、スリーププロセスについてCPLD340に通知する。図1Aにおけるシステム100と比較して図2におけるシステム300の新しい構成の一部として、PCH310は、スリーププロセスの開始を検知できる。故に、低電力モードを検知する段階と、(CPU320などの)揮発性コンピュータコンポーネントから不揮発性メモリへデータを同期する重要な段階との間に存在する段階はより少ない。
段階420において、PCH310からの信号に応答して、CPU320が即時に同期プロセスを開始する。同期プロセスは、従って、CPU320の揮発性メモリ内のデータをメモリモジュール360の不揮発性メモリ内に保全する。
段階430において、CPLD340は、PCH310からスリーププロセスの通知を受信し、次に、メモリモジュール360にそのコンテンツを不揮発性コンポーネント内に保存するよう命令できる。段階440において、メモリモジュール360は、既にそのメモリに存在したデータと、段階420におけるCPU320の同期プロセスにより加えられたデータとの両方を保存する。例えば、段階440において、メモリモジュール360は、そのデータコンテンツをフラッシュメモリ内に保全できる。
段階450において、PCH310がCPLD340にスリーププロセスに入るよう伝えたとき、方法400全体が終わる。CPLD340は、次に、電源330をオフにする。
このように、この方法400は、スリーププロセスに入る前にデータを保存することをオペレーティングシステムに依存しないので、方法400は、現在のプロセスに勝る利点を示す。オペレーティングシステムは、スリーププロセスを直ちにスタートでき、その間にCPLDおよびPCHは、並行してデータのバックアップをスタートし、その間にオペレーティングシステムはスリーププロセスを完了する。これは、スリーププロセスに入る前にデータを保存することをオペレーティングシステムに依存する他の方法より優れているプロセスである。
加えて、方法400は、PCH310がスリーププロセスの通知を受信し、その後、CPU310およびメモリモジュール360にそれらのデータを保全するよう直接命令することを可能にする。この方法において、PCH310は、CPLD340からの通知を待つ必要がない。故に、方法400は、コンピュータシステム300がスリープモードへと進めるよう、より速いデータ保全および正確な完了時間を提供する。
コンピュータシステムがスリープモードに入るときデータの保全を提供することに加えて、システム300は、他のシナリオのために構成され得る。図4は、コンピュータシステムにおいてリスタートプロセスを開始するとき、本開示の例示的な実施形態が行う一連の段階の方法500を示す。リスタートプロセスは、ソフトウェア起動されたプロセス、またはユーザ起動されたプロセスであってよい。説明を容易にするべく、これらの段階は、図3におけるシステム300を参照して説明される。段階510において、PCH310は、システムのリスタートプロセスの開始を検知することにより、方法500をスタートする。PCH310は、次に、同期プロセスをスタートするようCPU320に直接伝える。PCH310は、また、リスタートプロセスを始めるようCPLD340に通知する。PCH310は、リスタートプロセスの開始を検知し、CPU320に直接通信するので、シャットダウンを検知する段階と、(CPU320などの)揮発性コンピュータコンポーネントから不揮発性メモリへデータを同期する重要な段階との間に存在する段階はない。
段階520において、PCH310からの信号に応答して、CPU320が即時に同期プロセスを開始する。同期プロセスは、従って、CPU320の揮発性メモリ内のデータをメモリモジュール360の不揮発性メモリ内に保全する。
段階530において、CPLD340は、リスタートプロセスの通知を受信している。CPLDは、次に、メモリモジュール360にそのデータを不揮発性コンポーネント内に保存するよう伝えることができる。段階540において、メモリモジュール360は、既にそのメモリに存在したデータと、段階520におけるCPU320の同期プロセスにより加えられたデータとの両方を保全する。例えば、段階540において、メモリモジュール160は、そのデータコンテンツをフラッシュメモリ内に保全できる。
段階550において、CPLD340は、電源330にオフにするよう伝える。方法400とは異なり、方法500は、ここで止まらずに段階560に進む。段階560において、方法500は、コンピュータシステム300のリスタートプロセスに進む。PCH310は、シャットダウンプロセスを終了し、リスタートプロセスをスタートするようCPLD340に伝える。
段階570において、CPLD340が、電源330をオンにし、システムをリブートする。
このように、この方法500は、リスタートのために効果的な手順へとシャットダウンプロセスのカスタマイズを可能にするので、方法500は、現在のプロセスに勝る利点を示す。方法400と同様に、方法500は、CPU310およびメモリモジュール360がそれらのデータを迅速に保全することを可能にする直接的な通信の利点を有する。方法500は、次に、システムリスタートに安全に進むことができる。
図5は、オーバーヒートしている温度を検知した後、強制シャットダウンを開始するとき、本開示の例示的な実施形態が行う一連の段階の方法600を示す。説明を容易にするべく、これらの段階は、図3におけるシステム300を参照して説明される。段階610において、BMC370は、CPU320およびPCH310のうち少なくとも1つから、コンピュータコンポーネントがオーバーヒートしているという入力を受信することにより、方法600を開始する。BMC370は、コンピュータシステム300がオーバーヒートしているという通知を代替的に受信でき、具体的なオーバーヒートしているコンポーネントを知っていることを必要としない。
段階620において、BMC370は、電源ボタンをトリガして電源オンのステータスを上書きし、コンピュータシステム300の電源をオフにさせる。段階620は、オーバーヒートによる電気部品への損傷から1または複数のコンピュータコンポーネントを保護するために開始される強制的なシャットダウンプロセスである。コンポーネントがもはや動作可能ではなく、動作の副産物として熱を発生させることができないので、電源の完全なシャットダウンが、電気コンポーネントを冷やすことができる。電気コンポーネントに対する損傷の恐れにより、システム300は、即時シャットダウンを必要とする。BMC370は、オーバーヒートが検知されたとき、即時に電源をシャットダウンすることにより、必要な電源オフを提供する。
段階630において、PCH310は、同期プロセスを始めるようCPU320に伝える。PCH310は、また、スリーププロセスを始めるようCPLD340に通知する。PCH310がシャットダウンプロセスの開始を検知し、CPU320に直接通信するので、低電力モードを検知する段階と、(CPU320などの)揮発性コンピュータコンポーネントから不揮発性メモリへデータを同期する重要な段階との間に存在する段階はない。
段階640において、CPU320は、同期プロセスを開始する。同期プロセスは、従って、CPU320の揮発性メモリ内のデータをメモリモジュール360の不揮発性メモリへと保全する。
段階650において、CPLD340は、シャットダウンプロセスの通知を受信しており、メモリモジュール360にそのデータを不揮発性コンポーネント内に保存するよう伝えることができる。段階660において、メモリモジュール360は、実際にこの段階を実行して、既にそのメモリに存在したデータと、段階650におけるCPU320の同期プロセスにより加えられたデータとの両方を保全する。例えば、段階660において、メモリモジュール160は、そのデータコンテンツをフラッシュメモリ内に保全できる。段階650は、CPLD340が電源330にシャットダウンプロセスを始めるよう伝えるとき完了する。方法600は、段階670において、電源330がシャットダウンするときに完了する。
故に、本開示は、CPU320またはPCH310がオーバーヒートしても、揮発性メモリコンポーネント内のデータを効果的に保護できるベースボード管理コントローラ370を提供する。方法は、熱を生み出すことを停止するべく、電源330がコンピュータシステムをシャットダウンする前に、不揮発性メモリコンポーネント内へのデータの効果的な保全を提供する。
本発明の様々な例が上記で説明されている一方で、それらは、単なる例として提示されており、制限するものではないことが理解されるべきである。開示された例に対する多数の変更が、本発明の趣旨または範囲から逸脱することなく、本明細書における開示に従って行われ得る。このように、本発明の広がりおよび範囲が、上記で説明されたいかなる例によっても限定されるべきではない。むしろ、本発明の範囲は、以下の特許請求の範囲およびそれらの均等物に従って定義されるべきである。
本発明は、1または複数の実装例を参照して例示され、説明されているが、この明細書および添付図面を読んで理解すると、同等の改変および改良が他の当業者によって想到されるであろう。加えて、本発明の特定の特徴が、いくつかの実装例のうちの1つのみに関して開示されたものであり得る一方、そのような特徴は、任意の所与のまたは特定の用途のために望ましいかつ有益であり得るので、他の実装例の1または複数の他の特徴と組み合わされてよい。
本明細書において用いられている用語は、特定の例のみを説明する目的で用いられており、本発明を限定することを意図していない。本明細書において用いられている通り、単数形の「1つの(a)」、「1つの(an)」、および「その(the)」は、文脈が明確にそうでないと示さない限り、その複数形も含むことが意図される。さらに、「含む(including)」、「含む(includes)」、「有する(having)」、「有する(has)」、「ともに(with)」またはそれらの変形例である用語が、発明を実施するための形態、および/または特許請求の範囲の何れかで使用されている限りにおいて、そのような用語は、「備える(comprising)」という用語と同様の態様で包括的であることが意図される。
別途定義されない限り、本明細書において用いられる全ての用語(技術的用語および科学的用語を含む)は、当業者によって一般に理解される意味と同じ意味を有する。さらに、一般に的に使用される辞書において定義されるような用語は、関連技術の文脈におけるそれらの意味と一致する意味を有するものとして解釈されるべきであり、本明細書において、そのように明示的に定義されない限り、理想的なまたは過度に形式的な意味で解釈されないものとする。

Claims (12)

  1. メモリモジュール内のデータを保全するコンピュータ実装方法であって、
    コンピュータシステムにソフトウェアデータ保全プロセスが必要であると検知する段階と、
    ソフトウェアデータ保全プロセスが必要であると検知したことに応答して、前記ソフトウェアデータ保全プロセスを実行する段階と
    を備え、前記ソフトウェアデータ保全プロセスは、
    省電力モードの開始を検知する段階と、
    処理ユニット内のデータコンテンツの同期プロセスを開始する段階と、
    メモリモジュールのデータコンテンツを自動的に保存する段階と、
    電源ユニットをオフにする段階と
    を備える、コンピュータ実装方法。
  2. 前記省電力モードは、一時的低電力モード、ソフトウェア起動されたシャットダウンモード、ソフトウェア起動されたリスタートモード、ユーザ起動されたシャットダウンモード、ユーザ起動されたリスタートモード、およびオーバーヒートしているコンピュータコンポーネントによりトリガされるシャットダウンのうち少なくとも1つを含み得る、請求項1に記載のコンピュータ実装方法。
  3. 前記省電力モードは、前記ソフトウェア起動されたリスタートモード、または前記ユーザ起動されたリスタートモードであり、前記ソフトウェアデータ保全プロセスは、
    前記電源ユニットをオフにしたことに応答して、前記省電力モードを終了する段階と、
    前記コンピュータシステムをリブートする段階と
    をさらに備える、請求項2に記載のコンピュータ実装方法。
  4. 前記省電力モードは、オーバーヒートしているコンピュータコンポーネントによりトリガされる前記シャットダウンであって、省電力モードの開始を検知する段階に代えて、前記ソフトウェアデータ保全プロセスは、
    前記処理ユニットから、前記コンピュータシステムがオーバーヒートしているという入力を受信する段階と、
    電源ボタンをトリガしてそれ自体を上書きし、前記電源ユニットをオフにする段階と
    をさらに備える、請求項2に記載のコンピュータ実装方法。
  5. 処理ユニット内のデータコンテンツの前記同期プロセスは、
    前記処理ユニットの揮発性メモリからデータをコピーする段階と、
    前記コピーされたデータを前記メモリモジュールの不揮発性メモリ内に配置する段階と
    をさらに備える、請求項1から4の何れか一項に記載のコンピュータ実装方法。
  6. メモリモジュールのデータコンテンツを自動的に保存する段階は、前記データコンテンツを不揮発性コンピュータコンポーネント内に保存する段階をさらに備える、請求項1から5の何れか一項に記載のコンピュータ実装方法。
  7. メモリモジュール内のデータを保全するために構成されるコンピュータシステムであって、
    電源ユニットと、
    データコンテンツを格納するよう構成されるメモリモジュールと、
    同期プロセスをスタートするよう通知を受信すると、前記メモリモジュールでメモリのセルフリフレッシュプロセスをスタートするよう構成される処理ユニットと、
    ソフトウェアデータ保全プロセスをスタートするよう構成されるコントローラハブであって、前記ソフトウェアデータ保全プロセスをスタートすることは、
    省電力モードの開始を検知することと、
    前記処理ユニット内の同期プロセスを開始することとを含む、コントローラハブと、
    前記ソフトウェアデータ保全プロセスを継続するよう構成されるロジックデバイスであって、前記ソフトウェアデータ保全プロセスを継続することは、
    メモリモジュール内のデータコンテンツを自動的に保存することと、
    電源ユニットをオフにすることとを含むロジックデバイスと
    を備える、コンピュータシステム。
  8. 前記省電力モードは、スリープモード、ソフトウェア起動されたシャットダウンモード、ソフトウェア起動されたリスタートモード、ユーザ起動されたシャットダウンモード、ユーザ起動されたリスタートモード、およびオーバーヒートしているコンピュータコンポーネントによりトリガされるシャットダウンのうち少なくとも1つを含み得る、請求項7に記載のコンピュータシステム。
  9. 前記省電力モードは、前記ソフトウェア起動されたリスタートモード、または前記ユーザ起動されたリスタートモードであり、前記ソフトウェアデータ保全プロセスを継続することは、前記省電力モードを終了することと、前記コンピュータシステムをリブートすることとをさらに含む、請求項8に記載のコンピュータシステム。
  10. 前記省電力モードは、オーバーヒートしているコンピュータコンポーネントによりトリガされる前記シャットダウンであり、省電力モードを開始するよう構成されるコントローラハブに代えて、前記コンピュータシステムは、管理ユニットをさらに備え、前記管理ユニットは、
    前記処理ユニットから、前記コンピュータシステムがオーバーヒートしているという入力を受信し、
    電源ボタンをトリガしてそれ自体を上書きし、前記電源ユニットをオフにし、
    前記処理ユニットにおいて同期プロセスを開始することにより、前記ソフトウェアデータ保全プロセスをスタートできることを前記コントローラハブに示すよう構成される、請求項8に記載のコンピュータシステム。
  11. 処理ユニット内のデータコンテンツの前記同期プロセスは、
    前記処理ユニットの揮発性メモリからデータをコピーすることと、
    前記コピーされたデータを前記メモリモジュールの不揮発性メモリ内に配置することと
    をさらに含む、請求項7から10の何れか一項に記載のコンピュータシステム。
  12. メモリモジュールのデータコンテンツを自動的に保存することは、前記データコンテンツを不揮発性コンピュータコンポーネント内に保存することをさらに含む、請求項7から10の何れか一項に記載のコンピュータシステム。
JP2018160456A 2018-01-30 2018-08-29 メモリモジュール内のデータを保全するコンピュータシステムおよびそれを用いたコンピュータ実装方法 Pending JP2019133623A (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201862623717P 2018-01-30 2018-01-30
US62/623,717 2018-01-30
US15/985,349 2018-05-21
US15/985,349 US10872018B2 (en) 2018-01-30 2018-05-21 Memory data preservation solution

Publications (1)

Publication Number Publication Date
JP2019133623A true JP2019133623A (ja) 2019-08-08

Family

ID=63207607

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018160456A Pending JP2019133623A (ja) 2018-01-30 2018-08-29 メモリモジュール内のデータを保全するコンピュータシステムおよびそれを用いたコンピュータ実装方法

Country Status (5)

Country Link
US (1) US10872018B2 (ja)
EP (1) EP3518074A1 (ja)
JP (1) JP2019133623A (ja)
CN (1) CN110096125B (ja)
TW (1) TW201933097A (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11237610B2 (en) * 2019-11-20 2022-02-01 Intel Corporation Handling loss of power for uninterruptible power supply efficiency
CN111427518B (zh) * 2020-04-24 2023-01-24 西安紫光国芯半导体有限公司 数据保护方法以及nvdimm
US11977900B2 (en) 2021-05-10 2024-05-07 Hewlett Packard Enterprise Development Lp Dynamic timing for shutdown including asynchronous dynamic random access memory refresh (ADR) due to AC undervoltage
TWI796935B (zh) * 2022-01-19 2023-03-21 宏碁股份有限公司 記憶體控制方法與記憶體儲存系統
CN114779883B (zh) * 2022-05-17 2024-03-19 西安易朴通讯技术有限公司 系统时钟同步方法、装置、系统及存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0944418A (ja) * 1995-07-21 1997-02-14 Internatl Business Mach Corp <Ibm> 情報処理システム及びその制御方法
JPH10240367A (ja) * 1997-02-25 1998-09-11 Toshiba Corp コンピュータシステムおよびそのサスペンド制御方法
JP2013065261A (ja) * 2011-09-20 2013-04-11 Denso Corp メモリ管理装置
CN104035893A (zh) * 2014-06-30 2014-09-10 浪潮(北京)电子信息产业有限公司 一种在计算机异常掉电时的数据保存方法
WO2014147700A1 (ja) * 2013-03-18 2014-09-25 富士通株式会社 情報処理装置、情報処理装置の停止方法、及び情報処理装置の停止プログラム
JP2015222903A (ja) * 2014-05-23 2015-12-10 株式会社リコー 情報処理装置、情報処理方法、及び情報処理プログラム
JP2016014957A (ja) * 2014-07-01 2016-01-28 株式会社東芝 ストレージ装置及びそのデータ処理方法
JP2017045379A (ja) * 2015-08-28 2017-03-02 株式会社東芝 メモリ装置およびメモリ制御方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI237759B (en) * 2001-10-04 2005-08-11 Via Tech Inc Method for data accessing in a computer and the computer thereof
US7487391B2 (en) 2005-08-04 2009-02-03 Dot Hill Systems Corporation Storage controller super capacitor adaptive life monitor
CN102272734B (zh) 2009-01-05 2014-09-10 马维尔国际贸易有限公司 使用非易失性存储器设备用于休眠或挂起的方法和系统
TWI521538B (zh) 2010-10-08 2016-02-11 群聯電子股份有限公司 非揮發性記憶體儲存裝置、記憶體控制器與資料儲存方法
EP2566293A1 (en) 2011-08-31 2013-03-06 Koninklijke Philips Electronics N.V. Appliance heater malfunction detection
US9164898B2 (en) * 2011-09-09 2015-10-20 International Business Machines Corporation Administering thermal distribution among memory modules of a computing system
TWI515549B (zh) 2012-12-26 2016-01-01 萬國商業機器公司 目標裝置的過熱保護方法、過熱保護裝置、及其資訊處理系統
CN103544080B (zh) 2013-08-27 2015-09-30 华为技术有限公司 一种数据保护方法、装置及系统
WO2015041698A1 (en) 2013-09-23 2015-03-26 Intel Corporation Event-triggered storage of data to non-volatile memory
CN104850511A (zh) * 2014-02-19 2015-08-19 株式会社东芝 磁盘装置以及数据保存方法
US20150317248A1 (en) 2014-05-01 2015-11-05 International Business Machines Corporation Sizing a write cache buffer based on emergency data save parameters
US20170091042A1 (en) 2015-09-25 2017-03-30 Quanta Computer Inc. System and method for power loss protection of storage device
CN105893196A (zh) 2016-04-05 2016-08-24 浪潮电子信息产业股份有限公司 一种服务器调试辅助工具及系统
US20180011714A1 (en) 2016-07-08 2018-01-11 Super Micro Computer, Inc. Graceful shutdown with asynchronous dram refresh of non-volatile dual in-line memory module

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0944418A (ja) * 1995-07-21 1997-02-14 Internatl Business Mach Corp <Ibm> 情報処理システム及びその制御方法
JPH10240367A (ja) * 1997-02-25 1998-09-11 Toshiba Corp コンピュータシステムおよびそのサスペンド制御方法
JP2013065261A (ja) * 2011-09-20 2013-04-11 Denso Corp メモリ管理装置
WO2014147700A1 (ja) * 2013-03-18 2014-09-25 富士通株式会社 情報処理装置、情報処理装置の停止方法、及び情報処理装置の停止プログラム
JP2015222903A (ja) * 2014-05-23 2015-12-10 株式会社リコー 情報処理装置、情報処理方法、及び情報処理プログラム
CN104035893A (zh) * 2014-06-30 2014-09-10 浪潮(北京)电子信息产业有限公司 一种在计算机异常掉电时的数据保存方法
JP2016014957A (ja) * 2014-07-01 2016-01-28 株式会社東芝 ストレージ装置及びそのデータ処理方法
JP2017045379A (ja) * 2015-08-28 2017-03-02 株式会社東芝 メモリ装置およびメモリ制御方法

Also Published As

Publication number Publication date
CN110096125B (zh) 2021-02-26
US20190235965A1 (en) 2019-08-01
CN110096125A (zh) 2019-08-06
US10872018B2 (en) 2020-12-22
TW201933097A (zh) 2019-08-16
EP3518074A1 (en) 2019-07-31

Similar Documents

Publication Publication Date Title
US10872018B2 (en) Memory data preservation solution
US8464257B2 (en) Method and system for reducing power loss to backup IO start time of a storage device in a storage virtualization environment
TW201802694A (zh) 具有非揮發性雙列記憶體模組之非同步式dram再新之正常關機
TW535112B (en) Method for initializing computer system
JP4511140B2 (ja) メモリをセルフリフレッシュ状態にする装置および方法
TWI493460B (zh) 電子裝置以及開機方法
US10067834B1 (en) Systems and methods for resetting one or more system components in response to a watchdog timer (WDT) event
TWI407300B (zh) 電源管理控制器與方法
US8984316B2 (en) Fast platform hibernation and resumption of computing systems providing secure storage of context data
US9658863B2 (en) Information processing apparatus and control method therefor
JP3777136B2 (ja) コンピュータ装置、データのデッドコピー方法、プログラム、コンピュータ装置の稼動方法
JP2017521768A (ja) 耐性があるメモリストレージを伴うファームウェアインターフェイス
US8996852B2 (en) Electronic device and booting method thereof
TW201525869A (zh) 用於雙作業系統記憶體切換的系統及方法
JP2007505396A (ja) Ac電力不足における動作状態の保存及び回復のためのbios
TWI602059B (zh) 伺服器節點關機技術
CN114258517B (zh) 用于调制解调器指导的应用处理器引导流程的系统和方法
US20120233451A1 (en) Method for fast resuming computer system and computer system
KR20080057688A (ko) 비휘발성 메모리를 이용한 운영체계 부팅 방법
US20130073792A1 (en) Electronic apparatus using nand flash and memory management method thereof
JP4359646B1 (ja) 情報処理装置、外部記憶装置、制御方法
TWI522924B (zh) 電子裝置及其切換作業系統的方法
CN114138314A (zh) 一种cpu微码升级方法、系统及相关组件
WO2012126345A1 (zh) 计算机的启动方法、启动装置、状态转换方法和状态转换装置
JPH1091296A (ja) 情報処理装置および情報処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180829

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190930

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191008

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200106

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20200825