JP2015115051A - 制御装置、制御方法、及び制御プログラム - Google Patents

制御装置、制御方法、及び制御プログラム Download PDF

Info

Publication number
JP2015115051A
JP2015115051A JP2013259221A JP2013259221A JP2015115051A JP 2015115051 A JP2015115051 A JP 2015115051A JP 2013259221 A JP2013259221 A JP 2013259221A JP 2013259221 A JP2013259221 A JP 2013259221A JP 2015115051 A JP2015115051 A JP 2015115051A
Authority
JP
Japan
Prior art keywords
data
storage device
unit
power
power failure
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.)
Granted
Application number
JP2013259221A
Other languages
English (en)
Other versions
JP6264012B2 (ja
Inventor
陽子 河野
Yoko Kono
陽子 河野
光正 羽根田
Mitsumasa Haneda
光正 羽根田
淳 内田
Atsushi Uchida
淳 内田
敏宏 友崎
Toshihiro Tomosaki
敏宏 友崎
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 JP2013259221A priority Critical patent/JP6264012B2/ja
Priority to US14/554,161 priority patent/US9588567B2/en
Publication of JP2015115051A publication Critical patent/JP2015115051A/ja
Application granted granted Critical
Publication of JP6264012B2 publication Critical patent/JP6264012B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • 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/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3419Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • G06F12/0868Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/88Monitoring involving counting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/31Providing disk cache in a specific location of a storage system
    • G06F2212/313In storage device

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Power Sources (AREA)
  • Retry When Errors Occur (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)

Abstract

【課題】情報処理装置の信頼性を向上させる。【解決手段】主電源の電力供給停止時に副電源から電力の供給を受けて第1の記憶装置からのデータを第2の記憶装置8に書き込ませる制御装置7は、副電源が電力を供給可能な残供給時間を取得する残供給時間取得部26と、データの書き込み時にエラーが発生した際に、残供給時間取得部26が取得した残供給時間に基づいて、第1の記憶装置から第2の記憶装置8へのデータの書き込みのリトライ回数を設定するリトライ回数設定部25と、をそなえる。【選択図】図2

Description

本発明は、制御装置、制御方法、及び制御プログラムに関する。
ストレージ装置にそなえられているControl Module(CM)等の情報処理装置では、停電等の発生時に、Central Processing Unit(CPU)配下のキャッシュメモリ内のデータを、System Capacitor Unit(SCU)と呼ばれる停電時給電ユニットからの電力を用いて不揮発性メモリに退避させる。そして、次に情報処理装置を起動する際に、不揮発性メモリに退避(バックアップ)させたデータがキャッシュメモリに戻され、情報処理装置の処理が再開される。なお、以下の説明では、停電など、情報処理装置への電力供給が絶たれる状況を総称して「停電」と呼ぶ。
キャッシュメモリのデータのバックアップ)先のメモリとして、NAND型フラッシュメモリが使用されてきたが、最近では、Serial Advanced Technology Attachment(SATA)準拠のSolid State Drive(SSD)(以下、SATA−SSDと呼ぶ)が多く用いられるようになっている。
SATA−SSDは、電源の切断前に、Standby、Standby Immediate、Sleep等のコマンドが実行され、パワーオフ(P−OFF)シーケンス(SEQ)を実行する必要がある。パワーオフシーケンスを実行せずに電力供給が絶たれると、期待外のパワーオフが発生して、SATA−SSDが故障する可能性がある。ここで、StandbyコマンドはSATA−SSDをスタンドバイモードに移行させるコマンドであり、Standby ImmediateコマンドはSATA−SSDを即時にスタンドバイモードに移行させるコマンである。又、Sleepコマンドは、SATA−SSDスリープモードに移行させるコマンドである。これらのコマンドやパワーオフシーケンスはATAにおいて一般的な概念であるため、その詳細な説明は省略する。
図14は、従来の情報処理装置101の構成を示す図である。
情報処理装置101は、CPU102、メモリコントローラ103、キャッシュメモリ104、電源供給部105、停電時給電部106、バックアップ制御部107、及びSATA−SSD108をそなえる。
CPU102は、種々の制御や演算を行なう処理装置であり、Operating System(OS)やプログラムを実行することにより、種々の機能を実現する。
メモリコントローラ103は、CPU102と後述するキャッシュメモリ104との間、及びCPU102と後述するバックアップ制御部107との間、及びキャッシュメモリ104とバックアップ制御部107との間のデータの転送を制御する。
キャッシュメモリ104は、CPU102に対して読み書きされるデータ(ユーザデータ)を、一時的に記憶する高速のメモリである。キャッシュメモリ104は、CPU102内部に設けられることが多い。
SATA−SSD108は、停電等の発生時に、キャッシュメモリ104に記憶されているデータをバックアップする先のメモリである。以下、SATA−SSD108をSSD108とも呼ぶ。
電源供給部105は、外部からAC電力を供給されて、CPU102、メモリコントローラ103、キャッシュメモリ104、停電時給電部106、バックアップ制御部107、及びSSD108にDC電力を供給する電源である。
停電時給電部106は、コンデンサ114をそなえるSCUである。停電時給電部106は、電源供給部105からDC電力の供給を受け、コンデンサ114に蓄電を行なう。停電時に、停電時給電部106は、コンデンサ114に蓄電されている電力を、メモリコントローラ103、キャッシュメモリ104、バックアップ制御部107、及びSSD108に供給する。
バックアップ制御部107は、停電時に、停電時給電部106からDC電力の給電を受けて、キャッシュメモリ104に格納されているデータをSSD108にバックアップするための制御を行なう。
バックアップ制御部107は、Peripheral Component Interconnect Express(PCIe)インタフェース(IF)制御部121、SATA IF部122、非データDirect Memory Access(DMA)部123、ライトDMA部124、及び停電シーケンス(SEQ)部125をそなえる。
情報処理装置101において、メモリコントローラ103とバックアップ制御部107とは、4レーンのPCIeリンク111によって接続されている。このPCIeリンク111を介して、キャッシュメモリ104からSSD108にバックアップされるユーザデータが、キャッシュメモリ104からメモリコントローラ103経由でバックアップ制御部7に送られる。
又、バックアップ制御部107とSSD108とは、SATAリンク112を介して接続されている。このSATAリンク112を介して、キャッシュメモリ104からSSD108にバックアップされるユーザデータが、バックアップ制御部107からSSD108に送られる。
PCIe IF制御部121は、情報処理装置101のメモリコントローラ103とバックアップ制御部107との間のPCIeリンク111を介した通信を制御する処理部である。
SATA IF部122は、バックアップ制御部107とSSD108との間のSATAリンク112を介した通信を制御する処理部である。
非データDMA部123は、情報処理装置101のメモリコントローラ103とSSD108との間で、コマンド等の非データの転送を行なう処理部である。例えば、非データDMA部123は、バックアップデータのSSD108へのライト完了後に、SSD108にパワーオフシーケンスを実行させるために、SSD108にStandby Immediateコマンドを実行する。
ライトDMA部124は、メモリコントローラ103とSSD108との間で、ユーザデータのダイレクトメモリアクセスによるライトを行なう処理部である。例えば、ライトDMA部124は、キャッシュメモリ104からSSD108にバックアップするデータを、キャッシュメモリ104からメモリコントローラ103経由でSSD108にライトする。
停電シーケンス部125は、情報処理装置101において停電が発生した際に、停電シーケンスを実行する。
特開平6−309234号公報
ところで、停電時給電部106は、バックアップが行なわれる情報処理装置のライフタイム(例えば5年)が終了するまで、停電処理の間電力を給電可能であればよい。ただし、コンデンサ114の給電可能時間は、一般に、経年による劣化が大きいため、情報処理装置101の出荷時には、コンデンサ114の容量が、ライフタイム終了後にバックアップ可能な容量、例えば、停電処理時間の2倍程度の時間、電力を供給可能な容量に選定される。
このため、情報処理装置101の出荷から2〜3年程度は、停電時に停電時給電部106が供給可能な電力には大きなマージンがある。このため、キャッシュメモリ104からSSD108へのデータのバックアップ時にSSD108へのライトエラーが発生した場合でも、リトライを何度も実行して、データを確実にバックアップすることができる。
しかし、従来の情報処理装置101においては、キャッシュメモリ104からSSD108へのバックアップデータのライト時のエラーリトライ回数は固定値(例えば8回)に設定されている。このため、停電時給電部106に蓄電されている電力を、バックアップデータのライトリトライを多く実行するために使用することができない。このため、停電時給電部106が新しいうちにコンデンサ114に多く蓄電されている電力を、バックアップデータのライトリトライに有効活用することができない。
一方で、前述のように、SSD108は、パワーオフシーケンスを実行せずに電力供給が絶たれると、期待外のパワーオフが発生し、SSD108が故障する可能性がある。運良くSSD108が故障を免れたとしても、情報処理装置101に次に電源が投入された際に、SSD108の起動時間が異常に長くなったり、SSD108への初回のライト時間が異常に増加してしまう。
例えば、期待外パワーオフ後のSSD108のパワーオン(P−ON)は、通常のSSD108のパワーオン時間の100倍以上遅くなる。又、SSD108への初回ライト時間は、正常時の数百ミリ秒が、数十秒と異常に長くなってしてしまう。
つまり、停電時給電部106のコンデンサ114が古くなった場合には、コンデンサ114の給電可能時間が短くなるため、停電時のバックアップデータのライトリトライ中に、停電時給電部106からの給電が終了するおそれがある。この場合、SSD108のパワーオフシーケンスが実行される前にSSD108がパワーオフされ、上述の如く、SSD108の期待外のパワーオフが発生し、SSD108が故障する可能性がある。
このため、情報処理装置において、SATA−SSDへのデータバックアップ時のリトライ回数を最適な値に設定することにより、情報処理装置の信頼性を向上させることが望ましい。
上記課題に鑑みて、1つの側面では、本発明は、情報処理装置の信頼性を向上させることを目的とする。
なお、前記目的に限らず、後述する発明を実施するための形態に示す各構成により導かれる作用効果であって、従来の技術によっては得られない作用効果を奏することも本発明の他の目的の1つとして位置付けることができる。
このため、主電源の電力供給停止時に副電源から電力の供給を受けて第1の記憶装置からのデータを第2の記憶装置に書き込ませる制御装置は、前記副電源が電力を供給可能な残供給時間を取得する残供給時間取得部と、前記データの書き込み時にエラーが発生した際に、前記残供給時間取得部が取得した前記残供給時間に基づいて、前記第1の記憶装置から前記第2の記憶装置への前記データの書き込みのリトライ回数を設定するリトライ回数設定部と、をそなえる。
又、主電源の電力供給停止時に副電源から電力の供給を受けて第1の記憶装置からのデータを第2の記憶装置に書き込ませる制御方法は、前記副電源が電力を供給可能な残供給時間を取得し、前記データの書き込み時にエラーが発生した際に、取得した前記残供給時間に基づいて、前記第1の記憶装置から前記第2の記憶装置への前記データの書き込みのリトライ回数を設定する。
さらに、主電源の電力供給停止時に副電源から電力の供給を受けて第1の記憶装置からのデータを第2の記憶装置に書き込ませる制御プログラムは、前記副電源が電力を供給可能な残供給時間を取得し、前記データの書き込み時にエラーが発生した際に、取得した前記残供給時間に基づいて、前記第1の記憶装置から前記第2の記憶装置への前記データの書き込みのリトライ回数を設定する、処理をコンピュータに実行させる。
本発明によれば、情報処理装置の信頼性を向上させることができる。
実施形態の一例としての情報処理装置のハードウェア構成を示す図である。 第1実施形態の一例としてのバックアップ制御部の構成を示す図である。 第1実施形態の一例としての情報処理装置の停電処理を示す図である。 第1実施形態の一例としての情報処理装置における停電処理を示すフローチャートである。 第1実施形態の一例としての情報処理装置における停電処理を示すフローチャートである。 第1実施形態の一例としての停電シーケンス部によるリトライ算出処理を示すフローチャートである。 第1実施形態の一例としての停電シーケンス部によるリトライ回数の算出例を示す図である。 第2実施形態の一例としてのバックアップ制御部の構成を示す図である。 第2実施形態の一例としての優先度テーブルを例示する図である。 第2実施形態の一例としての情報処理装置における停電処理を示すフローチャートである。 第2実施形態の一例としての情報処理装置における停電処理を示すフローチャートである。 第2実施形態の一例としての停電シーケンス部によるリトライ算出処理を示すフローチャートである。 第2実施形態の一例としての停電シーケンス部によるリトライ回数の算出例を示す図である。 従来の情報処理装置の構成を示す図である。
以下、図面を参照して、本実施の形態の一例としての制御装置、制御方法、及び制御プログラムについて説明する。
ただし、以下に示す実施形態はあくまでも例示に過ぎず、実施形態で明示しない種々の変形例や技術の適用を排除する意図はない。すなわち、本実施形態を、その趣旨を逸脱しない範囲で種々変形(実施形態及び各変形例を組み合わせる等)して実行することができる。
(A)第1実施形態
最初に、第1実施形態の一例としての情報処理装置1の構成を説明する。
図1は、第1実施形態の一例としての情報処理装置1のハードウェア構成を示す図である。
情報処理装置1は、例えば不図示のストレージ装置にそなえられるストレージ制御装置(Control Module;CM)などである。
情報処理装置1は、CPU2、メモリコントローラ3、キャッシュメモリ(第1の記憶装置)4、電源供給部(主電源)5、停電時給電部(副電源)6、バックアップ制御部(制御装置、コンピュータ)7、SATA−SSD(第2の記憶装置)8、及びMagnetoresistive Random Access Memory(MRAM)9をそなえる。
CPU2は、種々の制御や演算を行なう処理装置であり、後述するMRAM9等に格納されたOSやプログラムを実行することにより、種々の機能を実現する。CPU2は、例えば、公知のCPUを使用して実装することができる。
メモリコントローラ3は、CPU2と後述するキャッシュメモリ4との間、CPU2と後述するバックアップ制御部7との間、及びキャッシュメモリ4とバックアップ制御部7との間のデータの転送を制御する。
キャッシュメモリ4は、CPU2に対して読み書きされるデータ(ユーザデータ)を、一時的に記憶する高速のメモリである。キャッシュメモリ4は、CPU2内部に設けられることが多い。キャッシュメモリ4としては、例えば、Static Random Access Memory(SRAM)を用いることができる。
SATA−SSD8は、停電等の発生時に、キャッシュメモリ4に記憶されているデータをバックアップする先のメモリである。SATA−SSD8としては、公知のSATA−SSDを使用することができる。以降簡潔を期するために、SATA−SSD8を単にSSD8とも称する。又、以下の説明では、停電など、情報処理装置1への電力供給が絶たれる状況を総称して「停電」と呼ぶ。
電源供給部5は、外部からAC電力を供給されて、CPU2、メモリコントローラ3、キャッシュメモリ4、停電時給電部6、バックアップ制御部7、SSD8、MRAM9、及び後述する監視部10(図2参照)にDC電力を供給する電源である。
停電時給電部6は、コンデンサ14をそなえるSCUである。停電時給電部6は、電源供給部5からDC電力の供給を受け、コンデンサ14に蓄電を行なう。停電時に、停電時給電部6は、コンデンサ14に蓄電されているDC電力を、メモリコントローラ3、キャッシュメモリ4、バックアップ制御部7、SSD8、MRAM9、及び監視部10に供給する。
コンデンサ14は、電源供給部5から供給されるDC電力を蓄電可能なコンデンサである。コンデンサ14は、経年による劣化を受けるため、コンデンサ14が供給可能な電力の持続時間は、コンデンサ14の使用期間によって変化する。情報処理装置1の工場出荷時には、コンデンサ14の給電可能時間は、情報処理装置1のライフタイム(例えば5年)の間、キャッシュメモリ4のデータのバックアップ及びSSD8のパワーオフシーケンスを実行可能な時間の2倍程度の時間に設定される。なお、以下の説明においては、キャッシュメモリ4のデータのバックアップ及びSSD8のパワーオフシーケンスを総称して「停電処理」と呼ぶ。
バックアップ制御部7は、停電時に停電処理を行なうField-Programmable Gate Array(FPGA)である。詳細には、バックアップ制御部7は、停電時給電部6からDC電力の給電を受けて、キャッシュメモリ4に格納されているデータをSSD8にバックアップし、その後SSD8のパワーオフシーケンスを実行する。本第1実施形態においては、バックアップ制御部7は、停電時のSSD8へのバックアップの際に、停電時給電部6のコンデンサ14の経年劣化に伴う給電時間や性能値に基づいて、データのライトエラー発生時のリトライ回数を決定する。バックアップ制御部7の詳細な構成及び機能については、図2を用いて後述する。
MRAM9は、磁気を利用した不揮発性メモリであり、情報処理装置1の電源切断後も保持される管理用の各種データの保持に使用される。本実施形態においては、MRAM9は、後述するSSD8のライト性能値27及びSSD前回P−OFF SEQ時間28(図2参照)を記憶するために使用される。
情報処理装置1において、メモリコントローラ3とバックアップ制御部7とは、4レーンのPCIeリンク11によって接続されている。このPCIeリンク11を介して、キャッシュメモリ4からSSD8にバックアップされるユーザデータが、キャッシュメモリ4からメモリコントローラ3経由でバックアップ制御部7に送られる。
又、バックアップ制御部7とSSD8とは、SATAリンク12を介して接続されている。このSATAリンク12を介して、キャッシュメモリ4からSSD8にバックアップされるユーザデータが、バックアップ制御部7からSSD8に送られる。
図2は、第1実施形態の一例としてのバックアップ制御部7の構成を示す図である。
バックアップ制御部7は、PCIe IF制御部21、SATA IF部22、非データDMA部23、ライトDMA部24、停電シーケンス(SEQ)部(リトライ回数設定部)25、及び性能モニタ(残供給時間取得部,記録部)26をそなえる。
又、バックアップ制御部7には監視部10がリンク13を介して接続されている。
監視部10は、情報処理装置1の電源供給部5及び停電時給電部6の監視及び制御を行なうFPGAである。本実施形態においては、監視部10は、停電時給電部6のコンデンサ14によって停電発生時に給電可能な時間を監視している。
PCIe IF制御部21は、メモリコントローラ3とバックアップ制御部7との間のPCIeリンク11を介した通信を制御する処理部である。PCIe IF制御部21は、例えば回路として実施することができる。
SATA IF部22は、バックアップ制御部7とSSD8との間のSATAリンク12を介した通信を制御する処理部である。SATA IF部22は、例えば回路として実施することができる。
非データDMA部23は、メモリコントローラ3とSSD8との間で、コマンド等の非データの転送を行なう処理部である。例えば、非データDMA部23は、バックアップデータのSSD8へのライト完了後に、SSD8にパワーオフシーケンスを実行させるために、SSD8にStandby Immediateを実行する。非データDMA部23は、例えば回路として実施することができる。
ライトDMA部24は、メモリコントローラ3とSSD8との間で、ユーザデータのダイレクトメモリアクセスによるライトを行なう処理部である。例えば、ライトDMA部24は、キャッシュメモリ4からSSD8にバックアップするデータを、キャッシュメモリ4からメモリコントローラ3経由でSSD8にライトする。ライトDMA部24は、例えば回路として実施することができる。
性能モニタ26は、停電の処理に関わる各種モニタを行なう処理部である。性能モニタ26は、情報処理装置1において停電が発生すると、CPU2によって起動される。
詳細には、性能モニタ26は、CPU2によって起動されると、停電発生時点からの経過時間のカウントアップを開始する。又、停電シーケンス部25がライトDMA部24を起動する。又、性能モニタ26は、PCIeリンク11の総レーン数(図2の例では4レーン)のうち、使用可能なレーン数を監視する。
さらに、性能モニタ26は、情報処理装置1の停電発生時に実行される停電処理が正常終了すると、キャッシュメモリ4からSSD8へのバックアップに要した時間と、バックアップしたバックアップデータ量とから、ライト性能値(例えばMB/s)を算出する。そして、性能モニタ26は、算出したライト性能値を、MRAM9内にライト性能値27として記録する。このライト性能値27は、次に停電が発生した際に、停電シーケンス部25によるリトライ回数の算出に用いられる。
又、性能モニタ26は、SSD8のパワーオフシーケンスに要した時間を測定し、MRAM9内にSSD前回P−OFF SEQ時間28として記録する。このSSD前回P−OFF SEQ時間28も、停電シーケンス部25によるリトライ回数の算出に用いられる。
性能モニタ26は、例えば回路として実施することができる。
停電シーケンス部25は、情報処理装置1において停電が発生した際に、停電シーケンスを実行する。その際、停電シーケンス部25は、図6を用いて後述するリトライ算出処理を実行して、キャッシュメモリ4からSSD8へのバックアップデータのライトエラー時のリトライ回数を設定する。詳細には、停電シーケンス部25は、監視部10からコンデンサ14の残給電時間の通知を受け、その時間内で、SSD8のパワーオフシーケンスの実行のための時間を残して、SSD8へライトのリトライ可能回数を算出する。
ここで、図3を参照して、情報処理装置1の停電発生時に実行される停電処理について説明する。
図3は、第1実施形態の一例としての情報処理装置1の停電処理を示す図である。
一般に、情報処理装置1内でのデータ転送においては、転送するデータ量が大きい場合、転送するデータを複数のかたまりに分割して、分割したかたまり単位でデータ転送が複数回に分けて行なわれる。このため、停電発生時のキャッシュメモリ4からSSD8へのデータバックアップも、数回に分けて行なわれる。ここでは、キャッシュメモリ4からSSD8への1回のデータバックアップを「1アクセス」又は「1転送」と呼ぶ。
前述のように、情報処理装置1において停電が発生すると、キャッシュメモリ4からSSD8へのデータバックアップが複数アクセス(転送)で行なわれる。図3の例では、3回のデータ転送(転送1〜転送3)が行なわれた後に、4回目のデータ転送(転送4)において、エラーが発生する。
エラーが発生すると、停電シーケンス部25が、図6を用いて後述するリトライ算出処理を実行して、前回のSSD8のパワーオフシーケンス時間と、1転送あたりに使用できる時間とから、1転送あたりのリトライ回数を算出する。つまり、停電シーケンス部25は、SSD8のパワーオフシーケンス時間が残されるように、リトライ回数を算出する。
停電シーケンス部25は、このリトライ算出処理をバックアップデータ転送中、エラーが発生する毎に実行する。
図4,図5は、第1実施形態の一例としての情報処理装置1における停電処理を示すフローチャート(ステップS1〜S24)である。図4はステップS1〜S8,S17〜S24を、図5はステップS9〜S16をそれぞれ示す。
停電等が発生し、情報処理装置1において電源供給部5へのAC電力の供給が絶たれると、ステップS1において、CPU2が、キャッシュメモリ4からSSD8にバックアップするデータのデータサイズ及びデータのアドレスを設定して、停電シーケンス部25を起動する。その後、CPU2は、省電力のため、情報処理装置1が再起動されるまでスリープ状態に入る。
次に、ステップS2において、ステップS1で起動された性能モニタ26が、停電発生時点からの経過時間のカウントアップを開始する。又、性能モニタ26は、PCIeリンク11の全レーン数のうち使用可能なレーン数を監視(特定)する。
次にステップS3において、停電シーケンス部25は、ライトDMA部24を起動する。
ステップS4において、ライトDMA部24が、バックアップするキャッシュメモリ4のデータをSSD8にライトする。
ステップS5において、ライトDMA部24は、バックアップデータのライトにおいてエラーが発生しているかどうかを判定する。
エラーが発生していない場合(ステップS5のNOルート参照)、ステップS6において、ライトDMA部24は、キャッシュメモリ4からバックアップする全データをSSD8に転送したかどうかを判定する。その際、例えば、ライトDMA部24は、バックアップする全データのサイズ(総バックアップデータサイズ)を、SSD8に転送済みのデータのサイズ(転送済みデータサイズ)と比較することによってこの判定を行なう。
まだ全てのデータを転送していない場合(ステップS6のNOルート参照)、ライトDMA部24はステップS4に戻りデータの転送を続行する。
一方、全データの転送が完了した場合(ステップS6のYESルート参照)、ステップS7において、性能モニタ26が、ステップS4のキャッシュメモリ4からSSD8へのライト転送に要した時間と、総バックアップデータ量とから、ライト性能値を算出する。そして、性能モニタ26は、算出したライト性能値27をMRAM9に記録する。
次にステップS8において、ライトDMA部24は、停電シーケンス部25に、バックアップデータ転送の完了を通知する。
一方、ステップS5でエラーが発生している場合(ステップS5のYESルート参照)、ライトリトライ処理を開始する。詳細には、図5のステップS9において、ライトDMA部24が停電シーケンス部25にエラーを通知する。さらに、ライトDMA部24は、エラー発生前にSSD8に転送が完了しているデータのサイズを、停電シーケンス部25に通知する。
次に、ステップS10において、停電シーケンス部25は、停電シーケンス部25によってリトライ回数が算出済みであるかどうかを判定する。
リトライ回数が算出済みである場合(ステップS10のYESルート参照)、ステップS11において、停電シーケンス部25は、リトライが可能(すなわち、リトライ回数が1以上)であるかどうかを判定する。
リトライが可能な場合(ステップS11のYESルート参照)、処理が後述するステップS14に移る。
一方、リトライが可能ではない場合(ステップS11のNOルート参照)、ステップS15において、停電シーケンス部25は、全アクセスが完了した(全ての転送が終了した)かどうかを判定する。
全アクセスが完了していない場合(ステップS15のNOルート参照)、ステップS16において、停電シーケンス部25は、次のアクセス(次に転送するデータのかたまり)に移行する。
全アクセスが完了している場合(ステップS15のYESルート参照)、処理が前述のステップS7に移る。
一方、ステップS10でリトライ回数をまだ算出していない場合(ステップS10のNOルート参照)、ステップS12において、停電シーケンス部25は、図6を用いて後述するリトライ算出処理を実行する。
次に、ステップS13において、停電シーケンス部25は、リトライが可能であるかどうかを判定する。
リトライが可能ではない場合(ステップS13のNOルート参照)、処理は前述のステップS15に移る。
一方、リトライが可能な場合(ステップS13のYESルート参照)、ステップS14において、停電シーケンス部25は、図4のステップS4でエラーとなったデータのリトライを開始し、リトライ回数を1デクリメント(−1)する。その後、処理は前述の図4のステップS3に移る。
ここまでがデータバックアップ処理である。データバックアップ処理が完了すると、SSD8のパワーオフシーケンス(P−OFF SEQ)処理が実行される。まず、ステップS17において、性能モニタ26が、SSD8のパワーオフシーケンスにかかる時間の測定を開始する。
次に、ステップS18において、停電シーケンス部25は、非データDMA部23を起動する。
ステップS19において、非データDMA部23は、SSD8にパワーオフシーケンスを実行させるために、SSD8にStandby Immediateコマンドを実行する。
ステップS20において、停電シーケンス部25は、Standby Immediateコマンドでエラーが発生しているかどうかを判定する。
エラーが発生している場合(ステップS20のYESルート参照)、ステップS21において、非データDMA部23は、停電シーケンス部25にStandby Immediateのエラーを通知する。
次に、ステップS22において、停電シーケンス部25は、非データDMA部23を再起動して本処理を終了する。
一方、ステップS20でエラーが発生していない場合(ステップS20のNOルート参照)、ステップS23において、非データDMA部23は、停電シーケンス部25にStandby Immediateの完了を通知する。
ステップS24において、性能モニタ26が、SSD8のパワーオフシーケンスに要した時間を、MRAM9にSSD前回P−OFF SEQ時間28として記録して、本処理を終了する。
図6は、第1実施形態の一例としての停電シーケンス部25によるリトライ算出処理を示すフローチャート(ステップS31〜S41)である。
ステップS31において、停電シーケンス部25が、監視部10から、停電時給電部6のコンデンサ14によって給電可能な時間である残給電時間TREMAINを受信する。
ステップS32において、停電シーケンス部25は、性能モニタ26から、前回の停電時のライト性能値27(WP)を受信する。
次にステップS33において、停電シーケンス部25は、SSD8の前回のパワーオフシーケンスに要したパワーオフシーケンス時間TP−OFFを、性能モニタ26に問い合わせて受信する。
ステップS34において、停電シーケンス部25は、性能モニタ26から、使用PCIeレーン数LCを受信する。
ステップS35において、停電シーケンス部25は、キャッシュメモリ4からSSD8にバックアップするデータの合計サイズである、総バックアップデータサイズSTOTALを取得する。
次にステップS36において、停電シーケンス部25は、キャッシュメモリ4からSSD8に既にバックアップが行なわれている転送済みデータサイズSSENTを取得する。
ステップS37において、停電シーケンス部25は、ステップS35で取得したSTOTALとステップS36で取得したSSENTとから、SSD8にバックアップする残りのデータのサイズである残バックアップデータサイズSREMAINを以下の式(1)により計算する。
REMAIN=STOTAL−SSENT …(1)
ステップS38において、停電シーケンス部25は、ステップS37で求めたSREMAINから、残りのデータをバックアップするためにSDD8に何回アクセスするかを示す残アクセス数AREMAINを以下の式(2)により計算する。
REMAIN=SREMAIN/1アクセスのデータサイズ …(2)
次にステップS39において、停電シーケンス部25は、ステップS32,S34で取得したWPとLCとから、1アクセスに要する時間TACCESSを以下の式(3)により計算する。
ACCESS=1アクセスのデータサイズ/(WP×LC/総レーン数) …(3)
ステップS40において、停電シーケンス部25は、ステップS31,S33でそれぞれ取得したTREMAIN及びTP−OFFと、ステップS38で求めたAREMAINから、1アクセスに割り当てられる時間TALLOCを以下の式(4)により計算する。
ALLOC=(TREMAIN−TP−OFF)/AREMAIN …(4)
ステップS41において、停電シーケンス部25は、ステップS39で求めたTACCESSと、ステップS40で求めたTALLOCとから、1アクセスにおいてライトをリトライできる回数RCを以下の式(5)により計算して、本処理を終了する。
RC=TALLOC/TACCESS …(5)
図7は、第1実施形態の一例としての停電シーケンス部25によるリトライ回数の算出例を示す図である。
本例においては、コンデンサ14の総給電時間が80秒、ライト性能値WPが250MB/s、1アクセスのデータサイズが1MB、PCIeの総レーン数のうちの使用レーン数LCが4レーン、総バックアップサイズSTOTALが8GB、前回のパワーオフシーケンス時間TP−OFFが1秒とする。このとき、停電から30秒後(残り給電時間が50秒)、7GBのデータを転送済みの時点で、ライトエラー発生が発生したとする。
図6のステップS37において、停電シーケンス部25は、残バックアップデータサイズSREMAINを、SREMAIN=総バックアップデータサイズ8GB−転送済みデータサイズ7GB=1GBと算出する。
次に、ステップS38において、停電シーケンス部25は、残アクセス数AREMAINを、残バックアップデータサイズ1GB/1アクセスのデータサイズ1MB=1024アクセスと算出する。
ステップS39において、停電シーケンス部25は、1アクセスに要する時間TACCESSを、1アクセスのデータサイズ1MB/(ライト性能250MB/s×リンク数4/4レーン)=4msと算出する。
次に、ステップS40において、停電シーケンス部25は、1アクセスに割り当てられる時間TALLOCを、(残り給電時間50秒−パワーオフシーケンス時間)1秒/残アクセス数1024アクセス=47msと算出する。
ステップS41において、停電シーケンス部25は、1アクセスにライトをリトライできる回数RCを、リトライに使用できる時間47ms/1アクセスに要する時間4ms=11回と算出する。
このように、第1実施形態の一例によれば、停電シーケンス部25が、SSD8のパワーオフシーケンス、停電時給電部6のコンデンサ14の給電時間、及びライト性能値27から、SSD8へのデータバックアップ時のライトエラーのリトライの回数を算出する。このように、停電シーケンス部25は、SSD8のパワーオフシーケンスの時間を確保した上でライトエラーのリトライ回数が算定されるので、停電時にSSD8のパワーオフシーケンスを実行できる確率が上がる。これにより、SSD8の期待外パワーオフを防止して、SSD8の故障を防止でき、情報処理装置1の次回の自動時に、SSD8の起動時間や初回ライト時間の増加を防止することができる。
又、停電シーケンス部25は、ライトエラー時のリトライ回数として、停電時給電部6のコンデンサ14の給電可能時間内で最大値にリトライ回数を設定するため、停電時給電部6のコンデンサ14に蓄電されている電力を有効活用して、情報処理装置1の信頼性を向上させることができる。
さらに、停電シーケンス部25は、PCIeリンク11の総レーンのうち、現在使用可能なレーン数に基づいてライトエラーのリトライの回数を算出するため、PCIeリンク11の一部が使用できない場合にも、リトライの回数を正確に算出することができる。
(B)第2実施形態
ところで、情報処理装置においては、全てのデータが等しく重要であるケースは少なく、通常は、情報処理装置には優先度が高いデータと優先度が低いデータとが存在する。このため、停電発生時においては、優先度の高いデータを確実にバックアップすることが望ましい。
このため、第2実施形態の一例の情報処理装置1′は、上記の第1実施形態のバックアップ制御部7に代えて、バックアップ制御部7′をそなえる。このバックアップ制御部7′は、バックアップ制御部7に記載のようにリトライ回数を算出すると共に、データの優先度に応じてリトライ回数を調整する。
なお、第2実施形態の一例の情報処理装置1′は、図1に示した第1実施形態の一例の情報処理装置1と同様のハードウェア構成をそなえるため、その説明並びに図示を省略する。
図8は、第2実施形態の一例としてのバックアップ制御部7′の構成を示す図である。
第2実施形態の一例としての情報処理装置1′は、ライト性能値27及びSSD前回P−OFF SEQ時間28を格納するMRAM9、バックアップ制御部7′、SATA−SSD(以下SSDとも呼ぶ)8、及び監視部10をそなえる。
バックアップ制御部7′は、PCIe IF制御部21、SATA IF部22、非データDMA部23、ライトDMA部24、停電シーケンス部25′、及び性能モニタ26をそなえる。
又、本第2実施形態の一例においては、バックアップ制御部7′の不図示の内部メモリ等に、優先度テーブル(優先度情報)29と所定割合30とが格納されている。 なお、本第2実施形態の一例では、優先度テーブル29は、実際には、バックアップ制御部7′が、その不図示の内部メモリに格納されている優先度情報を読み出して展開する際に、図9に例示するようにテーブル化する。すなわち、優先度テーブル29は、テーブルの状態で内部メモリに格納されているわけではない。しかし、以下、図8においては、優先度テーブル29がバックアップ制御部7′に格納されている状態を示す。
或いは、優先度テーブル29自体が、バックアップ制御部7′の内部メモリに記憶されており、優先度テーブル29がこれを読み出してもよい。
第2実施形態の一例としての情報処理装置1′のMRAM9、SSD8、監視部10、PCIe IF制御部21、SATA IF部22、非データDMA部23、ライトDMA部24、性能モニタ26、ライト性能値27、及びSSD前回P−OFF SEQ時間28は、上記の第1実施形態の一例と同じ機能及び構成を有するため、その説明を省略する。
停電シーケンス部25′は、情報処理装置1において停電が発生した際に、図12を用いて後述するリトライ算出処理を実行して、キャッシュメモリ4からSSD8へのバックアップデータのライトエラー時のリトライ回数を設定する。詳細には、停電シーケンス部25′は、監視部10からコンデンサ14の残給電時間の通知を受け、その時間内で、SSD8のパワーオフシーケンスの実行のための時間を残して、SSD8へライトのリトライ可能回数を算出する。
次に、停電シーケンス部25′は、CPU2によって事前に設定され、MRAM9に記憶されている所定割合30(X%)と、後述する優先度テーブル29とに基づいて、データの優先度に応じて、リトライ回数を調整する。この所定割合30は、優先度の低いデータについて、通常の優先度のデータのリトライ数から減算する値SUBのうち、優先度の高いデータに加算する値ADDに割り当てる割合を示す。
例えば、X=50%の場合、優先度の低いデータについて、通常優先度のデータのリトライ数から減算する値SUBが6のとき、優先度の高いデータに加算する値ADDは、SUB×X%=6×50%=3となる。この場合、通常の優先度のデータのリトライ回数が10であるとすると、優先度の低いデータのリトライ回数は10−6=4、優先度の高いデータのリトライ回数は10+3=13となる。
優先度テーブル29は、キャッシュメモリ4内のデータのアドレス毎に、当該データの優先度と、当該バックアップが完了したかどうかを示す情報とを格納している。
図9は、第2実施形態の一例としての優先度テーブル29を例示する図である。
優先度テーブル29は、アドレスフィールド291、優先度フィールド292、及び完了フラグ293を有する。
アドレスフィールド291は、キャッシュメモリ4内のデータのアドレスを格納している。例えば、アドレスフィールド291は、キャッシュメモリ4内のデータの1MB単位のアドレスが格納されており、後述の停電処理時には、キャッシュメモリ4内のデータが1MB単位でSSD8にバックアップされる。
優先度フィールド292は、キャッシュメモリ4内の当該データの優先度を示す値を格納している。例えば、優先度フィールド292には、1(優先度高)、2(優先度低)、及び3(通常)の3種類の値が格納される。
完了フラグフィールド293は、停電時に、キャッシュメモリ4内の当該データのSSD8へのバックアップが完了したかどうかを示す値が格納される。例えば、完了フラグフィールド293には、1(バックアップ済み)及び0(未バックアップ)の2種類の値が格納される。
なお、図9に示す優先度テーブル29に登録される情報が優先度情報であり、バックアップ制御部7′の不図示の内部メモリにはこれらの情報が関連付けられて格納される。なお、本第2の実施形態の一例では、優先度情報を優先度テーブル29として説明したが、優先度情報は必ずしもテーブルでなくてもよく、優先度情報が他の形態でバックアップ制御部7′に格納されてもよい。
図10,図11は、第2実施形態の一例としての情報処理装置1′における停電処理を示すフローチャート(ステップS51〜S75)である。図10はステップS51〜S59,S68〜S75を、図11はステップS60〜S67をそれぞれ示す。
停電等が発生し、情報処理装置1′において電源供給部5へのAC電力の供給が絶たれると、ステップS51において、CPU2が、キャッシュメモリ4からSSD8にバックアップするデータのデータサイズ及びデータのアドレスを設定して、停電シーケンス部25′を起動する。その後、CPU2は、省電力のため、情報処理装置1′が再起動されるまでスリープ状態に入る。
次に、ステップS52において、ステップS51で起動された性能モニタ26が、停電発生時点からの経過時間のカウントアップを開始する。又、性能モニタ26は、PCIeリンク11の全レーン数のうち使用可能なレーン数を監視(特定)する。
次にステップS53において、停電シーケンス部25′は、ライトDMA部24を起動する。
ステップS54において、ライトDMA部24が、バックアップするキャッシュメモリ4のデータをSSD8にライトする。
ステップS55において、ライトDMA部24は、バックアップデータのライトにおいてエラーが発生しているかどうかを判定する。
エラーが発生していない場合(ステップS55のNOルート参照)、ステップS56において、ライトDMA部24は、優先度テーブル29の、転送が完了したデータの完了フラグフィールド293に、バックアップの完了を示す値“1”を設定する。
次にステップS57において、ライトDMA部24は、キャッシュメモリ4からバックアップする全データをSSD8に転送したかどうかを判定する。その際、例えば、ライトDMA部24は、バックアップする全データのサイズ(総バックアップデータサイズ)を、SSD8に転送済みのデータのサイズ(転送済みデータサイズ)と比較することによってこの判定を行なう。
まだ全てのデータを転送していない場合(ステップS57のNOルート参照)、ライトDMA部24はステップS54に戻りデータの転送を続行する。
一方、全データの転送が完了した場合(ステップS57のYESルート参照)、ステップS58において、性能モニタ26が、ステップS54のキャッシュメモリ4からSSD8へのライト転送に要した時間と、総バックアップデータ量とから、ライト性能値を算出する。そして、性能モニタ26は、算出したライト性能値27をMRAM9に記録する。
次にステップS59において、ライトDMA部24は、停電シーケンス部25′に、バックアップデータ転送の完了を通知する。
一方、ステップS55でエラーが発生している場合(ステップS55のYESルート参照)、ライトリトライ処理を開始する。詳細には、図11のステップS60において、ライトDMA部24が停電シーケンス部25′にエラーを通知する。さらに、ライトDMA部24は、エラー発生前にSSD8に転送が完了しているデータのサイズを、停電シーケンス部25′に通知する。
次に、ステップS61において、停電シーケンス部25′は、停電シーケンス部25′によってリトライ回数が算出済みであるかどうかを判定する。
リトライ回数が算出済みである場合(ステップS61のYESルート参照)、ステップS62において、停電シーケンス部25′は、リトライが可能(すなわち、リトライ回数が1以上)であるかどうかを判定する。
リトライが可能な場合(ステップS62のYESルート参照)、処理が後述するステップS65に移る。
一方、リトライが可能ではない場合(ステップS62のNOルート参照)、ステップS66において、停電シーケンス部25′は、全アクセスが完了した(全ての転送が終了した)かどうかを判定する。
全アクセスが完了していない場合(ステップS66のNOルート参照)、ステップS67において、停電シーケンス部25′は、次のアクセス(次に転送するデータのかたまり)に移行する。
全アクセスが完了している場合(ステップS66のYESルート参照)、処理が前述のステップS58に移る。
一方、ステップS61でリトライ回数をまだ算出していない場合(ステップS61のNOルート参照)、ステップS63において、停電シーケンス部25′は、図12を用いて後述するリトライ算出処理を実行する。
次に、ステップS64において、停電シーケンス部25′は、リトライが可能であるかどうかを判定する。
リトライが可能ではない場合(ステップS64のNOルート参照)、処理は前述のステップS66に移る。
一方、リトライが可能な場合(ステップS64のYESルート参照)、ステップS65において、停電シーケンス部25′は、図10のステップS54でエラーとなったデータのリトライを開始し、リトライ回数を1デクリメント(−1)する。その後、処理は前述の図10のステップS53に移る。
ここまでがデータバックアップ処理である。データバックアップ処理が完了すると、SSD8のパワーオフシーケンス処理が実行される。まず、ステップS68において、性能モニタ26が、SSD8のパワーオフシーケンスにかかる時間の測定を開始する。
次に、ステップS69において、停電シーケンス部25′は、非データDMA部23を起動する。
ステップS70において、非データDMA部23は、SSD8にパワーオフシーケンスを実行させるために、SSD8にStandby Immediateコマンドを実行する。
ステップS71において、停電シーケンス部25′は、Standby Immediateコマンドでエラーが発生しているかどうかを判定する。
エラーが発生している場合(ステップS71のYESルート参照)、ステップS72において、非データDMA部23は、停電シーケンス部25′にStandby Immediateのエラーを通知する。
次に、ステップS73において、ステップ20で停電シーケンス部25′は、非データDMA部23を再起動して本処理を終了する。
一方、ステップS71でエラーが発生していない場合(ステップS71のNOルート参照)、ステップS74において、非データDMA部23は、停電シーケンス部25′にStandby Immediateの完了を通知する。
ステップS75において、性能モニタ26が、SSD8のパワーオフシーケンスに要した時間を、MRAM9にSSD前回P−OFF SEQ時間28として記録して、本処理を終了する。
図12は、第2実施形態の一例としての停電シーケンス部25′によるリトライ算出処理を示すフローチャート(ステップS81〜S96)である。
ステップS81において、停電シーケンス部25′が、監視部10から、停電時給電部6のコンデンサ14によって給電可能な時間である残給電時間TREMAINを受信する。
ステップS82において、停電シーケンス部25′は、性能モニタ26から、前回の停電時のライト性能値27(WP)を受信する。
次にステップS83において、停電シーケンス部25′は、SSD8の前回のパワーオフシーケンスに要したパワーオフシーケンス時間TP−OFFを、性能モニタ26に問い合わせて受信する。
ステップS84において、停電シーケンス部25′は、性能モニタ26から、使用PCIeレーン数LCを受信する。
ステップS85において、停電シーケンス部25′は、キャッシュメモリ4からSSD8にバックアップするデータの合計サイズである、総バックアップデータサイズSTOTALを取得する。
次にステップS86において、停電シーケンス部25′は、キャッシュメモリ4からSSD8に既にバックアップが行なわれている転送済みデータサイズSSENTを取得する。
ステップS87において、停電シーケンス部25′は、ステップS85で取得したSTOTALとステップS86で取得したSSENTとから、SSD8にバックアップする残りのデータのサイズである残バックアップデータサイズSREMAINを以下の式(1)により計算する。
REMAIN=STOTAL−SSENT …(1)
ステップS88において、停電シーケンス部25′は、ステップS87で求めたSREMAINから、残りのデータをバックアップするためにSDD8に何回アクセスするかを示す残アクセス数AREMAINを以下の式(2)により計算する。
REMAIN=SREMAIN/1アクセスのデータサイズ …(2)
次にステップS89において、停電シーケンス部25′は、ステップS82,S84で取得したWPとLCとから、1アクセスに要する時間TACCESSを以下の式(3)により計算する。
ACCESS=1アクセスのデータサイズ/(WP×LC/総レーン数) …(3)
ステップS90において、停電シーケンス部25′は、ステップS81,S83でそれぞれ取得したTREMAIN及びTP−OFFと、ステップS88で求めたAREMAINから、1アクセスに割り当てられる時間TALLOCを以下の式(4)により計算する。
ALLOC=(TREMAIN−TP−OFF)/AREMAIN …(4)
ステップS91において、停電シーケンス部25′は、ステップS89で求めたTACCESSと、ステップS90で求めたTALLOCとから、1アクセスにおいてライトをリトライできる回数RCを以下の式(5)により計算する。
RC=TALLOC/TACCESS …(5)
次に、ステップS92において、停電シーケンス部25′は、例えばMRAM9から、CPU2によって事前に設定され、バックアップ制御部7′に記憶されている所定割合30(X%)と優先度テーブル29とを読み出す。
次に、ステップS93において、停電シーケンス部25′は、ステップS92で読み出した優先度テーブル29を参照して、SSD8にバックアップするデータのうち、未転送の優先高データのアクセス数AHIGHと優先度低のデータのアクセス数ALOWとを得る。
ステップS94において、停電シーケンス部25′は、ステップS91で読み出したX(%)に基づいて、優先度が低いデータのリトライ回数から減算する回数SUBを以下の式(6)により算出する。
SUB=RC×(X/100) …(6)
ステップS95において、停電シーケンス部25′は、ステップS93で得たAHIGH及びALOWと、ステップS94で求めたSUBとを使用して、優先度の高いデータのリトライ回数に加算する回数ADDを以下の式(7)により算出する。
ADD=(SUB×ALOW)/AHIGH …(7)
ステップS96において、停電シーケンス部25′は、ステップS91で求めたRCと、ステップS94,S95でそれぞれSUB及びADDとを使用して、データの優先度毎のリトライ回数を以下の式(8)〜(10)により算出する。
優先度の高いデータのリトライ回数=RC+ADD …(8)
優先度の低いデータのリトライ回数=RC−SUB …(9)
通常の優先度のデータのリトライ回数=RC …(10)
その後停電シーケンス部25′は本処理を終了する。
図13は、第2実施形態の一例としての停電シーケンス部25′によるリトライ回数の算出例を示す図である。
本例においては、コンデンサ14の総給電時間が80秒、ライト性能値WPが250MB/s、1アクセスのデータサイズが1MB、PCIeの総レーン数のうちの使用レーン数LCが4レーン、総バックアップサイズSTOTALが8GB、前回のパワーオフシーケンス時間TP−OFFが1秒とする。又、所定割合X=50%である。このとき、停電から30秒後(残り給電時間が50秒)、7GBのデータを転送済みの時点で、ライトエラー発生が発生したとする。このとき、未転送の優先度高データのアクセス数AHIGHが100、未転送の優先度低データのアクセスALOWが200であるとする。
図12のステップS87において、停電シーケンス部25′は、残バックアップデータサイズSREMAINを、SREMAIN=総バックアップデータサイズ8GB−転送済みデータサイズ7GB=1GBと算出する。
次に、ステップS88において、停電シーケンス部25′は、残アクセス数AREMAINを、残バックアップデータサイズ1GB/1アクセスのデータサイズ1MB=1024アクセスと算出する。
ステップS89において、停電シーケンス部25′は、1アクセスに要する時間TACCESSを、1アクセスのデータサイズ1MB/(ライト性能250MB/s×リンク数4/4レーン)=4msと算出する。
次に、ステップS90において、停電シーケンス部25′は、1アクセスに割り当てられる時間TALLOCを、(残り給電時間50秒−パワーオフシーケンス時間)1秒/残アクセス数1024アクセス=47msと算出する。
ステップS91において、停電シーケンス部25′は、1アクセスにライトをリトライできる回数RCを、リトライに使用できる時間47ms/1アクセスに要する時間4ms=11回と算出する。この値は、優先度が通常のデータ(通常データ)のリトライ回数である。
ステップS94において、停電シーケンス部25′は、優先度が低いデータのリトライ回数から減算する回数SUBを、SUB=11×(50/100)=5(小数点以下切り捨て)として求める。
次に、ステップS95において、停電シーケンス部25′は、優先度の高いデータのリトライ回数に加算する回数ADDを、ADD=(5×ALOW200アクセス)/AHIGH100アクセス=10と求める。
ステップS96において、停電シーケンス部25′は、データの優先度毎のリトライ回数を以下のように求める。
優先度の高いデータのリトライ回数=11+10=21
優先度の低いデータのリトライ回数=11−5=6
通常の優先度のデータのリトライ回数=11
このように、第2実施形態の一例によれば、停電シーケンス部25′が、前述の第1実施形態の処理を実行することに加え、優先度テーブル29内のデータの優先度に基づいて、ライトエラーのリトライ回数を調整する。詳細には、停電シーケンス部25′は、優先度の低いデータのリトライ回数を低く設定し、優先度の高いデータのリトライ回数は多く設定する。
キャッシュメモリ4内のデータのうち、重要度の高いデータに対し、優先度テーブル29の優先度フィールド292に、高優先度を示す値(例えば“1”)を設定することで、低優先度のデータのリトライ回数を高優先度のデータに回すことができる。これにより、このため、第2実施形態の一例は、上記の第1実施形態の一例の作用・効果に加え、停電発生時に、情報処理装置1′内の重要なデータがバックアップされる確率をさらに高めることができるという効果を奏する。
(C)その他
なお、上述した実施形態に関わらず、本実施形態の趣旨を逸脱しない範囲で種々変形して実施することができる。
例えば、上記の実施形態の一例においては、性能値27、前回のSSD前回P−OFF SEQ時間28、及びPCIeリンク11の使用レーン数に基づいてライトリトライエラー回数を算出しているが、ほかのパラメータが使用されてもよい。
例えば、上記の実施形態の一例においては、キャッシュメモリ4のデータのバックアップ先としてSATA−SSD8を使用していたが、バックアップ先として他のタイプの不揮発性メモリも使用可能である。
上記の第2実施形態の一例においては、通常、優先度高及び優先度低の3段階の優先度を設定していたが、優先度の範囲を任意に設定することができる。
又、上記の実施形態の一例においては、バックアップ制御部7,7′及び監視部10をFPGAとして実施し、PCIe IF制御部21、SATA IF部22、非データDMA部23、ライトDMA部24、停電シーケンス部25,25′、及び性能モニタ26を回路として実施する例を取り上げた。
しかし、バックアップ制御部7,7′、監視部10、PCIe IF制御部21、SATA IF部22、非データDMA部23、ライトDMA部24、停電シーケンス部25,25′、及び性能モニタ26を、ソフトウェアとして実施してもよい。
その場合、情報処理装置1,1′のCPU2が、制御プログラムを実行することにより、上述したパバックアップ制御部7,7′、監視部10、PCIe IF制御部21、SATA IF部22、非データDMA部23、ライトDMA部24、停電シーケンス部25,25′、及び性能モニタ26として機能するようになっている。
なお、上述したバックアップ制御部7,7′、監視部10、PCIe IF制御部21、SATA IF部22、非データDMA部23、ライトDMA部24、停電シーケンス部25,25′、及び性能モニタ26としての機能を実現するための制御プログラムは、例えばフレキシブルディスク,CD(CD−ROM,CD−R,CD−RW等),DVD(DVD−ROM,DVD−RAM,DVD−R,DVD+R,DVD−RW,DVD+RW,HD DVD等),ブルーレイディスク,磁気ディスク,光ディスク,光磁気ディスク等の、コンピュータ読取可能な記録媒体に記録された形態で提供される。そして、コンピュータはその記録媒体から、不図示の媒体リーダーを用いてプログラムを読み取って内部記憶装置又は外部記憶装置に転送し格納して用いる。又、そのプログラムを、例えば磁気ディスク,光ディスク,光磁気ディスク等の記憶装置(記録媒体)に記録しておき、その記憶装置から通信経路を介してコンピュータに提供するようにしてもよい。
上述したバックアップ制御部7,7′、監視部10、PCIe IF制御部21、SATA IF部22、非データDMA部23、ライトDMA部24、停電シーケンス部25,25′、及び性能モニタ26としての機能を実現する際には、内部記憶装置(本実施形態ではMRAM9等)に格納されたプログラムがコンピュータのマイクロプロセッサ(本実施形態ではCPU2)によって実行される。このとき、記録媒体に記録されたプログラムをコンピュータが読み取って実行するようにしてもよい。
(D)付記
以上の実施形態に関し、さらに以下の付記を開示する。
(付記1)
主電源の電力供給停止時に副電源から電力の供給を受けて第1の記憶装置からのデータを第2の記憶装置に書き込ませる制御装置であって、
前記副電源が電力を供給可能な残供給時間を取得する残供給時間取得部と、
前記データの書き込み時にエラーが発生した際に、前記残供給時間取得部が取得した前記残供給時間に基づいて、前記第1の記憶装置から前記第2の記憶装置への前記データの書き込みのリトライ回数を設定するリトライ回数設定部と、
をそなえることを特徴とする制御装置。
(付記2)
前記第2の記憶装置は、該第2の記憶装置への電源切断前にパワーオフシーケンスが実行される記憶装置であり、
前記リトライ回数設定部は、前記第2の記憶装置の前回のパワーオフシーケンスに要した所要時間にさらに基づいて前記リトライ回数を設定する
ことを特徴とする付記1記載の制御装置。
(付記3)
前記主電源の前回の電力供給停止時の前記第1の記憶装置から前記第2の記憶装置へのデータ転送時間を記録する記録部をさらにそなえ、
前記リトライ回数設定部は、前記データ転送時間にさらに基づいて前記リトライ回数を設定する
ことを特徴とする付記1又は2記載の制御装置。
(付記4)
前記第1の記憶装置内のデータについて、前記第1の記憶装置から前記第2の記憶装置への前記データの書き込みの優先度を記憶する優先度情報をそなえ、
前記リトライ回数設定部は、前記優先度情報をさらに基づいて前記リトライ回数を設定する
ことを特徴とする付記1〜3のいずれか1項に記載の制御装置。
(付記5)
前記リトライ回数設定部は、前記優先度情報に基づいて前記第1の記憶装置内のデータ毎に異なる値を前記リトライ回数として設定することを特徴とする付記4記載の制御装置。
(付記6)
前記リトライ回数設定部は、前記第1の記憶装置と前記第2の記憶装置との間で利用可能なデータ転送リンク数にも基づいて前記リトライ回数を設定することを特徴とする付記1〜5のいずれか1項に記載の制御装置。
(付記7)
主電源の電力供給停止時に副電源から電力の供給を受けて第1の記憶装置からのデータを第2の記憶装置に書き込ませる制御方法であって、
前記副電源が電力を供給可能な残供給時間を取得し、
前記データの書き込み時にエラーが発生した際に、取得した前記残供給時間に基づいて、前記第1の記憶装置から前記第2の記憶装置への前記データの書き込みのリトライ回数を設定する、
ことを特徴とする制御方法。
(付記8)
前記第2の記憶装置は、該第2の記憶装置への電源切断前にパワーオフシーケンスが実行される記憶装置であり、
前記第2の記憶装置の前回のパワーオフシーケンスに要した所要時間にさらに基づいて前記リトライ回数を設定する
ことを特徴とする付記7記載の制御方法。
(付記9)
前記主電源の前回の電力供給停止時の前記第1の記憶装置から前記第2の記憶装置へのデータ転送時間を記録し、
前記データ転送時間にさらに基づいて前記リトライ回数を設定する
ことを特徴とする付記7又は8記載の制御方法。
(付記10)
前記第1の記憶装置内のデータについて、前記第1の記憶装置から前記第2の記憶装置への前記データの書き込みの優先度情報を記憶し、
前記優先度情報にさらに基づいて前記リトライ回数を設定する
ことを特徴とする付記7〜9のいずれか1項に記載の制御方法。
(付記11)
前記優先度情報に基づいて前記第1の記憶装置内のデータ毎に異なる値を前記リトライ回数として設定することを特徴とする付記10記載の制御方法。
(付記12)
前記第1の記憶装置と前記第2の記憶装置との間で利用可能なデータ転送リンク数にも基づいて前記リトライ回数を設定することを特徴とする付記7〜11のいずれか1項に記載の制御方法。
(付記13)
主電源の電力供給停止時に副電源から電力の供給を受けて第1の記憶装置からのデータを第2の記憶装置に書き込ませる制御プログラムであって、
前記副電源が電力を供給可能な残供給時間を取得し、
前記データの書き込み時にエラーが発生した際に、取得した前記残供給時間に基づいて、前記第1の記憶装置から前記第2の記憶装置への前記データの書き込みのリトライ回数を設定する、
処理をコンピュータに実行させることを特徴とする制御プログラム。
(付記14)
前記第2の記憶装置は、該第2の記憶装置への電源切断前にパワーオフシーケンスが実行される記憶装置であり、
前記第2の記憶装置の前回のパワーオフシーケンスに要した所要時間にさらに基づいて前記リトライ回数を設定する
処理を前記コンピュータに実行させることを特徴とする付記13記載の制御プログラム。
(付記15)
前記主電源の前回の電力供給停止時の前記第1の記憶装置から前記第2の記憶装置へのデータ転送時間を記録し、
前記データ転送時間にさらに基づいて前記リトライ回数を設定する
処理を前記コンピュータに実行させることを特徴とする付記13又は14記載の制御プログラム。
(付記16)
前記第1の記憶装置内のデータについて、前記第1の記憶装置から前記第2の記憶装置への前記データの書き込みの優先度情報を記憶し、
前記優先度情報にさらに基づいて前記リトライ回数を設定する
処理を前記コンピュータに実行させることを特徴とする付記13〜15のいずれか1項に記載の制御プログラム。
(付記17)
前記優先度情報に基づいて前記第1の記憶装置内のデータ毎に異なる値を前記リトライ回数として設定する処理を前記コンピュータに実行させることを特徴とする付記16記載の制御プログラム。
(付記18)
前記第1の記憶装置と前記第2の記憶装置との間で利用可能なデータ転送リンク数にも基づいて前記リトライ回数を設定する処理を前記コンピュータに実行させることを特徴とする付記13〜17のいずれか1項に記載の制御プログラム。
(付記19)
情報処理装置であって、
主電源と、
副電源と、
第1の記憶装置と、
第2の記憶装置と、
前記情報処理装置への電力供給停止時に前記副電源から電力の供給を受けて前記第1の記憶装置のデータを前記第2の記憶装置に送信する制御装置と、をそなえ、
前記制御装置は、
前記副電源が電力を供給可能な残供給時間を取得する残供給時間取得部と、
前記データの書き込み時にエラーが発生した際に、前記残供給時間取得部が取得した前記残供給時間に基づいて、前記第1の記憶装置から前記第2の記憶装置への前記データの書き込みのリトライ回数を設定するリトライ回数設定部と、
をそなえることを特徴とする情報処理装置。
(付記20)
前記制御装置は、前記第1の記憶装置内のデータについて、前記第1の記憶装置から前記第2の記憶装置への前記データの書き込みの優先度を記憶する優先度情報をそなえ、
前記リトライ回数設定部は、前記優先度情報をさらに基づいて前記リトライ回数を設定する
ことを特徴とする付記19記載の情報処理装置。
1 情報処理装置
2 CPU
3 メモリコントローラ
4 キャッシュメモリ(第1の記憶装置)
5 電源供給部(主電源)
6 停電時給電部(副電源)
7 バックアップ制御部(制御装置、コンピュータ)
8 SATA−SSD(第2の記憶装置)
9 MRAM
10 監視部
14 コンデンサ
21 PCIe IF制御部
22 SATA IF部
23 非DMA部
24 ライトDMA部
25 停電シーケンス部(リトライ回数設定部)
26 性能モニタ(残供給時間取得部,記録部)
27 ライト性能値(データ転送時間)
28 SSDパワーオフ時間(所要時間)
29 優先度テーブル(優先度情報)

Claims (8)

  1. 主電源の電力供給停止時に副電源から電力の供給を受けて第1の記憶装置からのデータを第2の記憶装置に書き込ませる制御装置であって、
    前記副電源が電力を供給可能な残供給時間を取得する残供給時間取得部と、
    前記データの書き込み時にエラーが発生した際に、前記残供給時間取得部が取得した前記残供給時間に基づいて、前記第1の記憶装置から前記第2の記憶装置への前記データの書き込みのリトライ回数を設定するリトライ回数設定部と、
    をそなえることを特徴とする制御装置。
  2. 前記第2の記憶装置は、該第2の記憶装置への電源切断前にパワーオフシーケンスが実行される記憶装置であり、
    前記リトライ回数設定部は、前記第2の記憶装置の前回のパワーオフシーケンスに要した所要時間にさらに基づいて前記リトライ回数を設定する
    ことを特徴とする請求項1記載の制御装置。
  3. 前記主電源の前回の電力供給停止時の前記第1の記憶装置から前記第2の記憶装置へのデータ転送時間を記録する記録部をさらにそなえ、
    前記リトライ回数設定部は、前記データ転送時間にさらに基づいて前記リトライ回数を設定する
    ことを特徴とする請求項1又は2記載の制御装置。
  4. 前記第1の記憶装置内のデータについて、前記第1の記憶装置から前記第2の記憶装置への前記データの書き込みの優先度を記憶する優先度情報をそなえ、
    前記リトライ回数設定部は、前記優先度情報をさらに基づいて前記リトライ回数を設定する
    ことを特徴とする請求項1〜3のいずれか1項に記載の制御装置。
  5. 前記リトライ回数設定部は、前記優先度情報に基づいて前記第1の記憶装置内のデータ毎に異なる値を前記リトライ回数として設定することを特徴とする請求項4記載の制御装置。
  6. 前記リトライ回数設定部は、前記第1の記憶装置と前記第2の記憶装置との間で利用可能なデータ転送リンク数にも基づいて前記リトライ回数を設定することを特徴とする請求項1〜5のいずれか1項に記載の制御装置。
  7. 主電源の電力供給停止時に副電源から電力の供給を受けて第1の記憶装置からのデータを第2の記憶装置に書き込ませる制御方法であって、
    前記副電源が電力を供給可能な残供給時間を取得し、
    前記データの書き込み時にエラーが発生した際に、取得した前記残供給時間に基づいて、前記第1の記憶装置から前記第2の記憶装置への前記データの書き込みのリトライ回数を設定する、
    ことを特徴とする制御方法。
  8. 主電源の電力供給停止時に副電源から電力の供給を受けて第1の記憶装置からのデータを第2の記憶装置に書き込ませる制御プログラムであって、
    前記副電源が電力を供給可能な残供給時間を取得し、
    前記データの書き込み時にエラーが発生した際に、取得した前記残供給時間に基づいて、前記第1の記憶装置から前記第2の記憶装置への前記データの書き込みのリトライ回数を設定する、
    処理をコンピュータに実行させることを特徴とする制御プログラム。
JP2013259221A 2013-12-16 2013-12-16 制御装置、及び制御プログラム Active JP6264012B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013259221A JP6264012B2 (ja) 2013-12-16 2013-12-16 制御装置、及び制御プログラム
US14/554,161 US9588567B2 (en) 2013-12-16 2014-11-26 Control apparatus, computer-readable storage medium, and information processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013259221A JP6264012B2 (ja) 2013-12-16 2013-12-16 制御装置、及び制御プログラム

Publications (2)

Publication Number Publication Date
JP2015115051A true JP2015115051A (ja) 2015-06-22
JP6264012B2 JP6264012B2 (ja) 2018-01-24

Family

ID=53368380

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013259221A Active JP6264012B2 (ja) 2013-12-16 2013-12-16 制御装置、及び制御プログラム

Country Status (2)

Country Link
US (1) US9588567B2 (ja)
JP (1) JP6264012B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018128939A (ja) * 2017-02-10 2018-08-16 富士通株式会社 ストレージ制御装置、ストレージ制御プログラムおよびストレージ制御方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3352023B1 (en) * 2016-09-23 2022-03-23 Apex Microelectronics Co., Ltd Storage medium, data processing method and cartridge chip using this method
TWI604326B (zh) * 2016-10-27 2017-11-01 財團法人工業技術研究院 基於fpga之系統功率評估裝置與方法

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0651918A (ja) * 1992-08-03 1994-02-25 Fujitsu Ltd 半導体ディスク装置
JP2000200152A (ja) * 1999-01-06 2000-07-18 Toshiba Corp 磁気ディスク装置
JP2001084712A (ja) * 1999-09-13 2001-03-30 Toshiba Corp 磁気ディスク装置及び同装置のエラーリトライ制御方法
JP2004164792A (ja) * 2002-11-15 2004-06-10 Ricoh Co Ltd 情報記録再生システム及び情報記録再生方法並びに情報記録再生プログラム及びそれを記録した記録媒体
JP2005260699A (ja) * 2004-03-12 2005-09-22 Sharp Corp データ記憶装置及び撮像装置
JP2008097068A (ja) * 2006-10-06 2008-04-24 Konica Minolta Business Technologies Inc 情報処理装置及びプログラム
JP2008176362A (ja) * 2007-01-16 2008-07-31 Ricoh Co Ltd データ変換装置とデータ変換方法と電子装置
JP2009237881A (ja) * 2008-03-27 2009-10-15 Hitachi Ltd ディスクアレイ装置
JP2010157139A (ja) * 2008-12-27 2010-07-15 Toshiba Corp メモリシステム
JP2012203862A (ja) * 2011-03-28 2012-10-22 Fujitsu Ltd 退避処理装置、及び、退避処理方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06309234A (ja) 1993-02-15 1994-11-04 Toshiba Corp ディスク制御装置
JP3498651B2 (ja) 1999-11-02 2004-02-16 日本電気株式会社 ディスク制御装置、ディスク装置、ディスク制御システム、リトライ回数制御方法、および記録媒体
KR100585098B1 (ko) * 2003-07-01 2006-06-01 삼성전자주식회사 적응적 리트라이 제어 방법 및 이를 이용한 디스크 드라이브
JP4940681B2 (ja) 2006-02-07 2012-05-30 株式会社デンソー 電子制御装置
US8924352B1 (en) * 2007-03-31 2014-12-30 Emc Corporation Automated priority backup and archive

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0651918A (ja) * 1992-08-03 1994-02-25 Fujitsu Ltd 半導体ディスク装置
JP2000200152A (ja) * 1999-01-06 2000-07-18 Toshiba Corp 磁気ディスク装置
JP2001084712A (ja) * 1999-09-13 2001-03-30 Toshiba Corp 磁気ディスク装置及び同装置のエラーリトライ制御方法
JP2004164792A (ja) * 2002-11-15 2004-06-10 Ricoh Co Ltd 情報記録再生システム及び情報記録再生方法並びに情報記録再生プログラム及びそれを記録した記録媒体
JP2005260699A (ja) * 2004-03-12 2005-09-22 Sharp Corp データ記憶装置及び撮像装置
JP2008097068A (ja) * 2006-10-06 2008-04-24 Konica Minolta Business Technologies Inc 情報処理装置及びプログラム
JP2008176362A (ja) * 2007-01-16 2008-07-31 Ricoh Co Ltd データ変換装置とデータ変換方法と電子装置
JP2009237881A (ja) * 2008-03-27 2009-10-15 Hitachi Ltd ディスクアレイ装置
JP2010157139A (ja) * 2008-12-27 2010-07-15 Toshiba Corp メモリシステム
JP2012203862A (ja) * 2011-03-28 2012-10-22 Fujitsu Ltd 退避処理装置、及び、退避処理方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018128939A (ja) * 2017-02-10 2018-08-16 富士通株式会社 ストレージ制御装置、ストレージ制御プログラムおよびストレージ制御方法

Also Published As

Publication number Publication date
JP6264012B2 (ja) 2018-01-24
US9588567B2 (en) 2017-03-07
US20150169040A1 (en) 2015-06-18

Similar Documents

Publication Publication Date Title
TWI677694B (zh) 智慧型備用電容器管理
US8412876B2 (en) Storage device with multiple storage units and control method thereof
JP5906966B2 (ja) 制御装置、電力供給装置及び電力制御方法
US9396755B2 (en) Temperature-defined data-storage policy for a hybrid disk drive
JP6135276B2 (ja) ストレージ装置、制御装置、および制御プログラム
TW201435729A (zh) 固態硬碟機架構
US9858002B1 (en) Open block stability scanning
KR20100029268A (ko) 비휘발성 메모리를 위한 향상된 기록 중단 메커니즘
JP6515752B2 (ja) ストレージ制御装置、制御方法、および制御プログラム
JP6264012B2 (ja) 制御装置、及び制御プログラム
US20120084503A1 (en) Disk control apparatus, disk control method, and storage medium storing disk control program
US9940192B2 (en) Non-volatile semiconductor storage apparatus
JPWO2012086072A1 (ja) ストレージ装置,制御装置および制御方法
US20150324248A1 (en) Information processing device, control method and recording medium for recording control program
US9870281B1 (en) Power loss mitigation for data storage device
TWI386922B (zh) Can improve the efficiency of the implementation of the hard disk device and its reading and writing methods
JP5217452B2 (ja) 情報処理装置及びシステム、並びに、記憶領域管理方法及びプログラム
US10528275B2 (en) Storage system, storage control device, and method of controlling a storage system
US20130073792A1 (en) Electronic apparatus using nand flash and memory management method thereof
JP2008059007A (ja) 半導体記憶装置
US9779001B2 (en) Mirroring device, control method thereof, and storage medium that maintain difference in remaining writable amounts of data
TW201438019A (zh) 具有使用歷程記錄的主記憶體模組以及此主記憶體模組於電腦系統之應用
JP6004115B2 (ja) メモリ制御装置、情報処理装置、及びメモリ制御方法
US11934662B2 (en) Solid state storage system with data loss prevention and user alert
JP2018190192A (ja) ストレージ装置およびストレージ制御プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160905

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170419

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170425

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170626

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: 20171121

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171204

R150 Certificate of patent or registration of utility model

Ref document number: 6264012

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150