JP5161696B2 - 仮想計算機システムおよび仮想計算機システムにおけるエラー回復方法ならびに仮想計算機制御プログラム - Google Patents
仮想計算機システムおよび仮想計算機システムにおけるエラー回復方法ならびに仮想計算機制御プログラム Download PDFInfo
- Publication number
- JP5161696B2 JP5161696B2 JP2008203968A JP2008203968A JP5161696B2 JP 5161696 B2 JP5161696 B2 JP 5161696B2 JP 2008203968 A JP2008203968 A JP 2008203968A JP 2008203968 A JP2008203968 A JP 2008203968A JP 5161696 B2 JP5161696 B2 JP 5161696B2
- Authority
- JP
- Japan
- Prior art keywords
- error
- data
- cache memory
- address
- entry
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1048—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
- G06F11/106—Correcting systematically all correctable errors, i.e. scrubbing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0712—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a virtual computing platform, e.g. logically partitioned systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/073—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a memory management context, e.g. virtual memory or cache management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0793—Remedial or corrective actions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1479—Generic software techniques for error detection or fault masking
- G06F11/1482—Generic software techniques for error detection or fault masking by means of middleware or OS functionality
- G06F11/1484—Generic software techniques for error detection or fault masking by means of middleware or OS functionality involving virtual machines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Description
キャッシュメモリは、高速なプロセッサ(CPU)においてCPUから主記憶のデータへのアクセス性能を向上させるために用いられる高速なメモリである。以下では、一般的なキャッシュメモリの動作の一例について説明する。
以下、本発明の一実施の形態である仮想計算機システムについて説明する。図1は、本発明の一実施の形態である仮想計算機システムの例を示すブロック図である。
200…ロードアドレス、210…ディレクトリアレイ、211…アドレスタグ、212…有効ビット、220…データアレイ、
301…インデックスアドレス情報、302…エラー回復処理フラグ、303…エラーアドレス情報、304…エラーアドレス有効フラグ、
500…処理、
601、603…データ部、602…ECC部、610…1ビット反転データ、611…回復データ、
810…2ビット反転データ、811…回復データ、
910…2ビット反転データ、
1101…エラーアドレス、
1301…初期化データ、1302、1303…回復初期化データ。
Claims (5)
- 物理計算機上で、前記物理計算機を複数の論理区画に分割し、前記各論理区画に前記物理計算機の計算機資源を割当てて制御する仮想計算機制御プログラムを実行することにより、前記各論理区画上でそれぞれゲストOSを含むゲストプログラムを動作させる仮想計算機システムであって、
前記仮想計算機制御プログラムは、
周期的に前記物理計算機のキャッシュメモリのエラーを回復するエラー回復処理を行うエラー回復モジュールと、
前記キャッシュメモリで発生したエラーによる割込み通知に対して、前記キャッシュメモリのエラーを回復するエラー割込み処理を行うエラー割込みハンドラモジュールと、
前記論理区画のシャットダウンもしくは再起動を契機に、前記キャッシュメモリのエラーを回復するエラーデータ初期化処理を行うエラーデータ初期化モジュールとを有し、
前記各論理区画上で動作する前記ゲストプログラムの動作とは独立して、前記キャッシュメモリのエラーの回復処理を行い、
前記エラー割込み処理では、
訂正不可能なエラーが発生した前記キャッシュメモリのエントリのアドレスであるエラーアドレスを求め、前記エラーアドレスが、いずれかの前記論理区画に割当てられたアドレス領域に含まれるか否かを判定し、前記判定が真である場合に、該当する前記論理区画上で動作する前記ゲストOSへエラー割込みを通知し、前記判定が偽である場合に、前記エラーアドレスに対応する前記エントリに初期化データをストアすることで、前記キャッシュメモリのエラーを回復し、前記エラーアドレスに対応する前記エントリを無効とすることで、主記憶に前記キャッシュメモリのデータを反映させることを特徴とする仮想計算機システム。 - 物理計算機上で、前記物理計算機を複数の論理区画に分割し、前記各論理区画に前記物理計算機の計算機資源を割当てて制御する仮想計算機制御プログラムを実行することにより、前記各論理区画上でそれぞれゲストOSを含むゲストプログラムを動作させる仮想計算機システムにおけるエラー回復方法であって、
前記仮想計算機制御プログラムにより、
前記論理区画上で動作する前記ゲストプログラムを停止させるステップと、
前記物理計算機のキャッシュメモリの各エントリに対して、前記エントリが有効である場合に前記エントリを無効とするステップと、
無効とされた前記エントリに前記物理計算機の主記憶からデータをロードし直すことで前記キャッシュメモリのエラーを回復するステップと、
前記論理区画上の前記ゲストプログラムの動作を再開させるステップとを含むエラー回復処理を実行し、
前記キャッシュメモリの対象の前記エントリに前記物理計算機の主記憶からデータをロードし直すことで前記キャッシュメモリのエラーを回復する際に、前記キャッシュメモリにおける訂正不可能なエラーに起因するエラー割込みの通知を受けた場合、
前記訂正不可能なエラーが発生した前記キャッシュメモリの前記エントリのアドレスであるエラーアドレスを求めるステップと、
前記エラーアドレスが、いずれかの前記論理区画に割当てられたアドレス領域に含まれるか否かを判定するステップと、
前記判定が真である場合に、該当する前記論理区画上で動作する前記ゲストOSへエラー割込みを通知するステップと、
前記判定が偽である場合に、前記エラーアドレスに対応する前記エントリに初期化データをストアすることで、前記キャッシュメモリのエラーを回復するステップ、および、
前記エラーアドレスに対応する前記エントリを無効とすることで、前記主記憶に前記キャッシュメモリのデータを反映させるステップとを含むエラー割込み処理を実行することを特徴とする仮想計算機システムにおけるエラー回復方法。 - 請求項2に記載の仮想計算機システムにおけるエラー回復方法において、
前記エラーアドレスを含む前記論理区画のシャットダウンもしくは再起動を契機として、
前記仮想計算機制御プログラムにより、
前記エラーアドレスに対応する前記エントリに初期化データをストアすることで、前記キャッシュメモリのエラーを回復するステップと、
前記エラーアドレスに対応する前記エントリを無効とすることで、前記主記憶に前記キャッシュメモリのデータを反映させるステップとを含むエラーデータ初期化処理を実行することを特徴とする仮想計算機システムにおけるエラー回復方法。 - 物理計算機上で実行され、前記物理計算機を複数の論理区画に分割し、前記各論理区画に前記物理計算機の計算機資源を割当てて制御することにより、前記物理計算機を、前記各論理区画上でそれぞれゲストOSを含むゲストプログラムを動作させる仮想計算機システムとして機能させる仮想計算機制御プログラムであって、
前記論理区画上で動作する前記ゲストプログラムを停止させるステップと、
前記物理計算機のキャッシュメモリの各エントリに対して、前記エントリが有効である場合に前記エントリを無効とするステップと、
無効とされた前記エントリに前記物理計算機の主記憶からデータをロードし直すことで前記キャッシュメモリのエラーを回復するステップと、
前記論理区画上の前記ゲストプログラムの動作を再開させるステップとを含むエラー回復処理を実行し、
前記キャッシュメモリの対象の前記エントリに前記物理計算機の主記憶からデータをロードし直すことで前記キャッシュメモリのエラーを回復する際に、前記キャッシュメモリにおける訂正不可能なエラーに起因するエラー割込みの通知を受けた場合、
前記訂正不可能なエラーが発生した前記キャッシュメモリの前記エントリのアドレスであるエラーアドレスを求めるステップと、
前記エラーアドレスが、いずれかの前記論理区画に割当てられたアドレス領域に含まれるか否かを判定するステップと、
前記判定が真である場合に、対象の前記論理区画上で動作する前記ゲストOSへエラー割込みを通知するステップと、
前記判定が偽である場合に、前記エラーアドレスに対応する前記エントリに初期化データをストアすることで、前記キャッシュメモリのエラーを回復するステップ、および、
前記エラーアドレスに対応する前記エントリを無効とすることで、前記主記憶に前記キャッシュメモリのデータを反映させるステップとを含むエラー割込み処理を実行することを特徴とする仮想計算機制御プログラム。 - 請求項4に記載の仮想計算機制御プログラムにおいて、
前記エラーアドレスを含む前記論理区画のシャットダウンもしくは再起動を契機として、
前記エラーアドレスに対応する前記エントリに初期化データをストアすることで、前記キャッシュメモリのエラーを回復するステップと、
前記エラーアドレスに対応する前記エントリを無効とすることで、前記主記憶に前記キャッシュメモリのデータを反映させるステップとを含むエラーデータ初期化処理を実行することを特徴とする仮想計算機制御プログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008203968A JP5161696B2 (ja) | 2008-08-07 | 2008-08-07 | 仮想計算機システムおよび仮想計算機システムにおけるエラー回復方法ならびに仮想計算機制御プログラム |
US12/507,516 US8082469B2 (en) | 2008-08-07 | 2009-07-22 | Virtual computer system, error recovery method in virtual computer system, and virtual computer control program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008203968A JP5161696B2 (ja) | 2008-08-07 | 2008-08-07 | 仮想計算機システムおよび仮想計算機システムにおけるエラー回復方法ならびに仮想計算機制御プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010039895A JP2010039895A (ja) | 2010-02-18 |
JP5161696B2 true JP5161696B2 (ja) | 2013-03-13 |
Family
ID=41654026
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008203968A Expired - Fee Related JP5161696B2 (ja) | 2008-08-07 | 2008-08-07 | 仮想計算機システムおよび仮想計算機システムにおけるエラー回復方法ならびに仮想計算機制御プログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US8082469B2 (ja) |
JP (1) | JP5161696B2 (ja) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4882845B2 (ja) * | 2007-04-19 | 2012-02-22 | 株式会社日立製作所 | 仮想計算機システム |
US8543769B2 (en) * | 2009-07-27 | 2013-09-24 | International Business Machines Corporation | Fine grained cache allocation |
US8745618B2 (en) * | 2009-08-25 | 2014-06-03 | International Business Machines Corporation | Cache partitioning with a partition table to effect allocation of ways and rows of the cache to virtual machine in virtualized environments |
JP5494298B2 (ja) * | 2010-07-06 | 2014-05-14 | 富士通株式会社 | 計算機装置,障害復旧制御プログラムおよび障害復旧制御方法 |
US20120096462A1 (en) * | 2010-10-18 | 2012-04-19 | Electronics And Telecommunications Research Institute | Dynamic virtualization technique for multicore processor system |
JP5645262B2 (ja) * | 2011-01-12 | 2014-12-24 | 日本電気株式会社 | 情報処理装置 |
US9170947B2 (en) | 2011-12-29 | 2015-10-27 | Intel Corporation | Recovering from data errors using implicit redundancy |
US8954797B2 (en) * | 2012-04-16 | 2015-02-10 | International Business Machines Corporation | Reconfigurable recovery modes in high availability processors |
JP5965076B2 (ja) * | 2012-09-25 | 2016-08-03 | ヒューレット−パッカード デベロップメント カンパニー エル.ピー.Hewlett‐Packard Development Company, L.P. | 訂正不能メモリエラー処理方法及びその可読媒体 |
US9003223B2 (en) | 2012-09-27 | 2015-04-07 | International Business Machines Corporation | Physical memory fault mitigation in a computing environment |
CN109388519B (zh) * | 2017-08-07 | 2021-06-11 | 上海寒武纪信息科技有限公司 | 错误恢复方法及装置、处理器 |
US10877900B1 (en) * | 2019-06-26 | 2020-12-29 | Western Digital Technologies, Inc. | Enabling faster and regulated device initialization times |
JP7281528B2 (ja) * | 2020-04-16 | 2023-05-25 | 株式会社三菱Ufj銀行 | 情報処理装置 |
US11586513B2 (en) | 2020-11-17 | 2023-02-21 | Google Llc | Live migrating virtual machines to a target host upon fatal memory errors |
US11550673B2 (en) | 2020-11-17 | 2023-01-10 | Google Llc | Virtual machines recoverable from uncorrectable memory errors |
US11977431B2 (en) | 2022-03-15 | 2024-05-07 | Google Llc | Memory error prevention by proactive memory poison recovery |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63269233A (ja) | 1987-04-28 | 1988-11-07 | Oki Electric Ind Co Ltd | 誤り検出・訂正回路 |
JPH01112599A (ja) | 1987-10-26 | 1989-05-01 | Matsushita Electric Ind Co Ltd | 半導体記憶装置 |
JP3192664B2 (ja) * | 1991-01-22 | 2001-07-30 | 株式会社日立製作所 | キャッシュメモリシステムおよびキャッシュメモリコントローラ |
JPH0588987A (ja) * | 1991-09-25 | 1993-04-09 | Hitachi Ltd | バツフア記憶装置 |
JP3427901B2 (ja) | 1992-07-28 | 2003-07-22 | 日本電信電話株式会社 | メモリ内容回復装置 |
JPH08194648A (ja) | 1995-01-13 | 1996-07-30 | Hitachi Ltd | 記憶装置 |
JP3196004B2 (ja) * | 1995-03-23 | 2001-08-06 | 株式会社日立製作所 | 障害回復処理方法 |
WO1996033459A1 (en) * | 1995-04-18 | 1996-10-24 | International Business Machines Corporation | High available error self-recovering shared cache for multiprocessor systems |
JPH1139217A (ja) * | 1997-07-18 | 1999-02-12 | Nec Corp | キャッシュメモリのエラー処理機構 |
JP4426736B2 (ja) * | 2001-04-27 | 2010-03-03 | 株式会社日立製作所 | プログラム修正方法およびプログラム |
US7111200B2 (en) * | 2003-04-17 | 2006-09-19 | International Business Machines Corporation | Apparatus and method for debugging a logical partition |
US7134052B2 (en) * | 2003-05-15 | 2006-11-07 | International Business Machines Corporation | Autonomic recovery from hardware errors in an input/output fabric |
JP2007034514A (ja) * | 2005-07-25 | 2007-02-08 | Fuji Xerox Co Ltd | 情報処理装置 |
US7493515B2 (en) * | 2005-09-30 | 2009-02-17 | International Business Machines Corporation | Assigning a processor to a logical partition |
US8146091B2 (en) * | 2008-05-01 | 2012-03-27 | International Business Machines Corporation | Expansion and contraction of logical partitions on virtualized hardware |
-
2008
- 2008-08-07 JP JP2008203968A patent/JP5161696B2/ja not_active Expired - Fee Related
-
2009
- 2009-07-22 US US12/507,516 patent/US8082469B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20100037097A1 (en) | 2010-02-11 |
US8082469B2 (en) | 2011-12-20 |
JP2010039895A (ja) | 2010-02-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5161696B2 (ja) | 仮想計算機システムおよび仮想計算機システムにおけるエラー回復方法ならびに仮想計算機制御プログラム | |
EP2979189B1 (en) | Storing data from cache lines to main memory based on memory addresses | |
US7774636B2 (en) | Method and system for kernel panic recovery | |
US8356149B2 (en) | Memory migration | |
US8122308B2 (en) | Securely clearing an error indicator | |
US20110213954A1 (en) | Method and apparatus for generating minimum boot image | |
CN103493027A (zh) | 虚拟磁盘存储技术 | |
EP3084595A1 (en) | Memory-preserving reboot | |
US11620215B2 (en) | Multi-threaded pause-less replicating garbage collection | |
JP2010165251A (ja) | 情報処理装置及びプロセッサ並びに情報処理方法 | |
JP2002324058A (ja) | パイプライン処理内の実行を順序付ける命令 | |
US9235426B2 (en) | Multicore processor system, computer product, and notification method for updating operating system | |
US10482008B2 (en) | Aligned variable reclamation | |
US20150019906A1 (en) | Transparent and Lightweight Recovery From Hardware Memory Errors | |
WO2015153645A1 (en) | Memory migration in presence of live memory traffic | |
US10346234B2 (en) | Information processing system including physical memory, flag storage unit, recording device and saving device, information processing apparatus, information processing method, and computer-readable non-transitory storage medium | |
CN113127263B (zh) | 一种内核崩溃恢复方法、装置、设备及存储介质 | |
JP5035227B2 (ja) | 情報処理装置、プログラムの起動制御方法、及び起動制御プログラム | |
CN110928890B (zh) | 数据存储方法、装置、电子设备及计算机可读存储介质 | |
US20220318053A1 (en) | Method of supporting persistence and computing device | |
US11573905B2 (en) | Saving page retire information persistently across operating system reboots | |
JP4155052B2 (ja) | エミュレータ、エミュレーション方法およびプログラム | |
US20170357558A1 (en) | Apparatus and method to enable a corrected program to take over data used before correction thereof | |
JP2001306307A (ja) | ファームウェアの処理方法。 | |
US20240069742A1 (en) | Chassis servicing and migration in a scale-up numa system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20101102 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120828 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121029 |
|
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: 20121120 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121214 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5161696 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20151221 Year of fee payment: 3 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |