JP5683023B2 - 不揮発性一時データの処理 - Google Patents
不揮発性一時データの処理 Download PDFInfo
- Publication number
- JP5683023B2 JP5683023B2 JP2012173367A JP2012173367A JP5683023B2 JP 5683023 B2 JP5683023 B2 JP 5683023B2 JP 2012173367 A JP2012173367 A JP 2012173367A JP 2012173367 A JP2012173367 A JP 2012173367A JP 5683023 B2 JP5683023 B2 JP 5683023B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- temporary
- electronic device
- page
- nvm
- 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
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
-
- 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/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4418—Suspend and resume; Hibernate and awake
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1041—Resource optimization
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7201—Logical to physical mapping or translation of blocks or pages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7209—Validity control, e.g. using flags, time stamps or sequence numbers
Description
Claims (20)
- 休止前の動作状態でオペレーティングしている少なくとも1つのアプリケーションに関係するアプリケーション生成データを記憶するための揮発性メモリと、
複数のページを有する不揮発性メモリ(NVM)と、
制御回路と、
を備えた電子装置であって、
前記制御回路は、
休止前の動作状態でオペレーティング中のアプリケーションが休止状態に入っていく通知を受信し、
休止状態に入っていくアプリケーションに関係する前記アプリケーション生成データを一時データとして前記不揮発性メモリに記憶する、
ように構成され、
前記制御回路が、前記電子装置の唯一のブートサイクルのために要求されるデータを含む前記一時データを記憶する前記複数のページの少なくとも1つのページに一時マーカを記憶し、前記アプリケーション生成データが、休止状態中の前記アプリケーションを休止前の動作状態に戻ることを可能にするデータを含む、ことを特徴とする前記電子装置。 - 前記電子装置がさらに、
前記一時データのためのメタデータを準備し、
前記メタデータ及び前記一時マーカを、前記一時データを記憶する前記ページの少なくとも1つのメタデータフィールドに記憶することを特徴とする請求項1に記載の電子装置。 - 前記一時マーカが、所定のビットパターンを有することを特徴とする請求項1に記載の電子装置。
- 前記複数のページがブロックに編成され、
前記制御回路が、さらに、
前記一時データを記憶するための、前記ブロックの1つを選択し、
前記一時マーカを、前記選択したブロックの少なくとも1つのページに記憶する、
ことを特徴とする請求項1に記載の電子装置。 - 前記制御回路が、さらに、前記選択したブロックの前記ページ全てに前記一時マーカを記憶することを特徴とする請求項4に記載の電子装置。
- 前記制御回路が、さらに、
前記揮発性メモリが低メモリ状態であることを識別し、
前記低メモリ状態の識別に応答して、前記一時データを前記不揮発性メモリに記憶する、
ことを特徴とする請求項1に記載の電子装置。 - 前記制御回路が、さらに、前記一時データを記憶するためにより低性能のページを選択することを特徴とする請求項1に記載の電子装置。
- 前記制御回路が、さらに、前記一時データを記憶するためにより高速のプログラミング技術を選択することを特徴とする請求項1に記載の電子装置。
- 複数のページを有する不揮発性メモリにデータを記憶する方法であって、
休止前の動作状態でオペレーティングしている少なくとも1つのアプリケーションに関係するアプリケーション生成データとして一時データを識別するステップと、
前記データのための、一時マーカを有するメタデータを準備するステップと、
休止前の動作状態でオペレーティング中のアプリケーションが休止状態に入っていく通知を受信するステップと、
前記データに関し、一時マーカを含むメタデータを準備するステップと、
休止状態に入っていくアプリケーションに関係する前記アプリケーション生成データ及び前記メタデータを一時データとして前記不揮発性メモリの少なくとも1つのページに記憶するステップであって、前記一時データは、前記不揮発性メモリを備える電子装置の唯一のブートサイクルのために要求されるデータを含み、前記アプリケーション生成データは、休止状態中の前記アプリケーションを休止前の動作状態に戻ることを可能にするデータを含むことを特徴とする方法。 - 前記データを、書き込み要求によってファイルシステムから不揮発性メモリインターフェイスに提供するステップをさらに含み、
前記識別ステップが、前記書き込み要求に応答して前記不揮発性メモリインターフェイスにより実行されることを特徴とする請求項9に記載の方法。 - 前記一時マーカが、少なくとも1ビットの所定値を有することを特徴とする請求項9に記載の方法。
- 前記準備ステップが、前記データの論理アドレス対物理アドレスマッピングを決定するステップをさらに含む請求項9に記載の方法。
- 前記識別ステップに基づいて、前記不揮発性メモリの前記少なくとも1つのページを選択するステップをさらに含むことを特徴とする請求項9に記載の方法。
- 前記不揮発性メモリに記憶するための追加データを、一時データではないものとして識別するステップと、
前記追加データのための、一時マーカを含まない追加メタデータを準備するステップと、
前記追加データ及び前記追加メタデータを前記不揮発性メモリの他の少なくとも1つのページに記憶するステップと、
をさらに含むことを特徴とする請求項9に記載の方法。 - 前記識別ステップが、ハードウェアベースの休止状態データ、アプリケーション生成データ、アプリケーションベースの休止状態データ、及び仮想メモリ方式のためのデータのうちの少なくとも1つを前記データが含むことを識別するステップを含む、
ことを特徴とする請求項9に記載の方法。 - 不揮発性メモリと、
電子装置の起動時に前記不揮発性メモリのためのメタデータテーブルを作成する制御回路とを備えた電子装置であって、
前記メタデータテーブルの作成において、
前記不揮発性メモリの複数のページを読み込むこと、ここで、少なくとも1つのページにおいて、当該ページに関連するデータが、ブートアップの前に実行していたプログラムをもはや要求しない休止状態のデータであることを知らせる一時マーカを含んでおり、
前記一時マーカを含む少なくとも1つのページを前記メタデータテーブルから削除すること、
が行われることを特徴とする電子装置。 - 前記制御回路が、さらに、前記少なくとも1つのページを無効としてマークすることにより前記メタデータテーブルを作成する請求項16に記載の電子装置。
- 前記制御回路が、さらに、前記不揮発性メモリの一時マーカを含まない有効なページを前記メタデータテーブルに追加することにより前記メタデータテーブルを作成する請求項16に記載の電子装置。
- 前記メタデータテーブルは、どの論理アドレスがファイルシステムによる使用のために現在割り当てられているかを示すテーブルを含む請求項16に記載の電子装置。
- 前記メタデータテーブルは、論理アドレス対物理アドレスマッピングを含む請求項16に記載の電子装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/184,647 | 2011-07-18 | ||
US13/184,647 US8949508B2 (en) | 2011-07-18 | 2011-07-18 | Non-volatile temporary data handling |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013033482A JP2013033482A (ja) | 2013-02-14 |
JP5683023B2 true JP5683023B2 (ja) | 2015-03-11 |
Family
ID=46548260
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012173367A Expired - Fee Related JP5683023B2 (ja) | 2011-07-18 | 2012-07-18 | 不揮発性一時データの処理 |
Country Status (9)
Country | Link |
---|---|
US (1) | US8949508B2 (ja) |
EP (1) | EP2549385B1 (ja) |
JP (1) | JP5683023B2 (ja) |
KR (2) | KR101385789B1 (ja) |
CN (1) | CN102890620B (ja) |
AU (1) | AU2012205187B2 (ja) |
BR (1) | BR102012017717B1 (ja) |
TW (2) | TWI519952B (ja) |
WO (1) | WO2013012632A1 (ja) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8949508B2 (en) | 2011-07-18 | 2015-02-03 | Apple Inc. | Non-volatile temporary data handling |
EP2745203B1 (en) * | 2011-08-19 | 2016-09-21 | Kabushiki Kaisha Toshiba | Information processing apparatus |
US20130124778A1 (en) * | 2011-11-10 | 2013-05-16 | Greenliant Llc | Method of storing host data and meta data in a nand memory, a memory controller and a memory system |
US20160002826A1 (en) | 2013-02-22 | 2016-01-07 | Kuraray Co., Ltd. | Fiber, fabric, and nonwoven fabric |
US10528116B2 (en) * | 2013-03-14 | 2020-01-07 | Seagate Technology Llc | Fast resume from hibernate |
CN104346292B (zh) | 2013-08-05 | 2017-10-24 | 慧荣科技股份有限公司 | 用来管理一记忆装置的方法、记忆装置与控制器 |
CN107391389B (zh) | 2013-08-05 | 2020-11-24 | 慧荣科技股份有限公司 | 用来管理一记忆装置的方法以及记忆装置与控制器 |
US10140477B2 (en) | 2013-12-09 | 2018-11-27 | Thales E-Security, Inc. | Obfuscating in memory encryption keys |
FR3046266A1 (fr) * | 2015-12-28 | 2017-06-30 | Proton World Int Nv | Stockage dans une memoire flash |
US9990023B2 (en) * | 2016-03-28 | 2018-06-05 | Apple Inc. | Systems and methods for handling sudden power failures in solid state drives |
CN106569744B (zh) * | 2016-10-31 | 2020-07-14 | 华为数字技术(成都)有限公司 | 一种存储临时数据的方法及存储设备 |
CN108536611B (zh) * | 2017-03-03 | 2022-05-13 | 西部数据技术公司 | 用于损耗均衡的系统和方法 |
US10705918B1 (en) | 2017-07-21 | 2020-07-07 | EMC IP Holding Company LLC | Online metadata backup consistency check |
US10956052B1 (en) * | 2017-07-21 | 2021-03-23 | EMC IP Holding Company LLC | Online address to hash (A2H) metadata scanner |
US10515701B1 (en) * | 2017-10-31 | 2019-12-24 | Pure Storage, Inc. | Overlapping raid groups |
CN108304280A (zh) * | 2018-01-30 | 2018-07-20 | 郑州云海信息技术有限公司 | 控制异构混合内存系统异常恢复的方法、bmc及装置 |
US10446254B1 (en) * | 2018-05-03 | 2019-10-15 | Western Digital Technologies, Inc. | Method for maximizing power efficiency in memory interface block |
US10936456B1 (en) | 2019-02-20 | 2021-03-02 | Apple Inc. | Handling malfunction in a memory system comprising a nonvolatile memory by monitoring bad-block patterns |
US11216388B2 (en) | 2019-04-30 | 2022-01-04 | EMC IP Holding Company LLC | Tiering between storage media in a content aware storage system |
JP6874814B2 (ja) * | 2019-10-30 | 2021-05-19 | 株式会社安川電機 | 産業機器の制御装置、産業機器の制御装置の設定システム、産業機器の制御装置の設定方法、及びプログラム |
Family Cites Families (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8010A (en) * | 1851-04-01 | Peter mckinlay | ||
US9024A (en) * | 1852-06-15 | Motion of the lay in looms | ||
JP3106401B2 (ja) * | 1993-07-26 | 2000-11-06 | インターナショナル・ビジネス・マシーンズ・コーポレ−ション | 情報処理システム |
JPH11242631A (ja) | 1998-02-26 | 1999-09-07 | Toshiba Corp | コンピュータシステムおよび同システムにおけるデータ保存/復元方法 |
US6209088B1 (en) | 1998-09-21 | 2001-03-27 | Microsoft Corporation | Computer hibernation implemented by a computer operating system |
US6574717B1 (en) * | 2001-05-31 | 2003-06-03 | Oracle Corporation | Techniques for time-based retention of a reusable resource |
US7467274B2 (en) * | 2001-12-31 | 2008-12-16 | Hewlett-Packard Development Company, L.P. | Method to increase the life span of limited cycle read/write media |
US7082495B2 (en) * | 2002-06-27 | 2006-07-25 | Microsoft Corporation | Method and apparatus to reduce power consumption and improve read/write performance of hard disk drives using non-volatile memory |
JP3994071B2 (ja) | 2003-06-12 | 2007-10-17 | インターナショナル・ビジネス・マシーンズ・コーポレーション | コンピュータ装置、システムの稼働状態の切り換え制御方法、およびプログラム |
US7093089B2 (en) | 2003-08-18 | 2006-08-15 | Hewlett-Packard Development Company, Lp. | Systems and methods for storing data on computer systems |
GB0320142D0 (en) | 2003-08-28 | 2003-10-01 | Ibm | Data storage systems |
JP4688584B2 (ja) * | 2005-06-21 | 2011-05-25 | 株式会社日立製作所 | ストレージ装置 |
US20070234028A1 (en) | 2005-09-15 | 2007-10-04 | Rothman Michael A | Method and apparatus for quickly changing the power state of a data processing system |
KR100843543B1 (ko) | 2006-10-25 | 2008-07-04 | 삼성전자주식회사 | 플래시 메모리 장치를 포함하는 시스템 및 그것의 데이터복구 방법 |
WO2008132760A2 (en) * | 2007-04-26 | 2008-11-06 | Hewlett-Packard Development Company, L.P. | Method and system for allocating memory in a computing environment |
US8239639B2 (en) * | 2007-06-08 | 2012-08-07 | Sandisk Technologies Inc. | Method and apparatus for providing data type and host file information to a mass storage system |
US8214343B2 (en) * | 2008-03-19 | 2012-07-03 | Microsoft Corporation | Purposing persistent data through hardware metadata tagging |
DE102008062934A1 (de) | 2008-12-23 | 2010-06-24 | Kuka Roboter Gmbh | Vernetzte Industriesteuerung und Verfahren zum Wechsel des Betriebsmodus einer solchen Industriesteuerung |
US20100169540A1 (en) * | 2008-12-30 | 2010-07-01 | Sinclair Alan W | Method and apparatus for relocating selected data between flash partitions in a memory device |
US9098396B2 (en) * | 2009-02-13 | 2015-08-04 | Sandisk Il Ltd. | Enhancement of efficiency in power failure handling in flash memory |
US8380676B1 (en) * | 2009-05-27 | 2013-02-19 | Google Inc. | Automatic deletion of temporary files |
WO2010144587A2 (en) | 2009-06-12 | 2010-12-16 | Violin Memory, Inc. | Memory system having persistent garbage collection |
US8688894B2 (en) * | 2009-09-03 | 2014-04-01 | Pioneer Chip Technology Ltd. | Page based management of flash storage |
JP5999645B2 (ja) | 2009-09-08 | 2016-10-05 | ロンギチュード エンタープライズ フラッシュ エスエイアールエル | ソリッドステート記憶デバイス上にデータをキャッシングするための装置、システム、および方法 |
US9063886B2 (en) | 2009-09-18 | 2015-06-23 | Apple Inc. | Metadata redundancy schemes for non-volatile memories |
US8296506B2 (en) | 2009-11-09 | 2012-10-23 | Lite-On It Corporation | Method for managing a non-violate memory and computer readable medium thereof |
US8694814B1 (en) * | 2010-01-10 | 2014-04-08 | Apple Inc. | Reuse of host hibernation storage space by memory controller |
KR101678911B1 (ko) * | 2010-03-12 | 2016-11-23 | 삼성전자주식회사 | 데이터 저장 장치 및 그것을 포함하는 컴퓨팅 시스템 |
US8949508B2 (en) | 2011-07-18 | 2015-02-03 | Apple Inc. | Non-volatile temporary data handling |
-
2011
- 2011-07-18 US US13/184,647 patent/US8949508B2/en not_active Expired - Fee Related
-
2012
- 2012-07-11 WO PCT/US2012/046236 patent/WO2013012632A1/en active Application Filing
- 2012-07-17 AU AU2012205187A patent/AU2012205187B2/en not_active Ceased
- 2012-07-17 EP EP12176705.7A patent/EP2549385B1/en not_active Not-in-force
- 2012-07-18 KR KR1020120078463A patent/KR101385789B1/ko active IP Right Grant
- 2012-07-18 BR BR102012017717-0A patent/BR102012017717B1/pt not_active IP Right Cessation
- 2012-07-18 JP JP2012173367A patent/JP5683023B2/ja not_active Expired - Fee Related
- 2012-07-18 TW TW101125916A patent/TWI519952B/zh not_active IP Right Cessation
- 2012-07-18 CN CN201210248924.4A patent/CN102890620B/zh not_active Expired - Fee Related
- 2012-07-18 TW TW102107952A patent/TWI573019B/zh not_active IP Right Cessation
- 2012-08-30 KR KR1020120095776A patent/KR101818599B1/ko active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
JP2013033482A (ja) | 2013-02-14 |
CN102890620B (zh) | 2016-05-18 |
AU2012205187B2 (en) | 2014-10-16 |
KR101818599B1 (ko) | 2018-01-15 |
BR102012017717B1 (pt) | 2020-09-15 |
EP2549385A1 (en) | 2013-01-23 |
US20130024600A1 (en) | 2013-01-24 |
KR20130010449A (ko) | 2013-01-28 |
CN102890620A (zh) | 2013-01-23 |
TW201329713A (zh) | 2013-07-16 |
TWI573019B (zh) | 2017-03-01 |
TWI519952B (zh) | 2016-02-01 |
AU2012205187A1 (en) | 2013-01-31 |
TW201324146A (zh) | 2013-06-16 |
KR20130010447A (ko) | 2013-01-28 |
US8949508B2 (en) | 2015-02-03 |
EP2549385B1 (en) | 2015-06-10 |
BR102012017717A2 (pt) | 2013-07-30 |
KR101385789B1 (ko) | 2014-04-16 |
WO2013012632A1 (en) | 2013-01-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5683023B2 (ja) | 不揮発性一時データの処理 | |
US8478796B2 (en) | Uncorrectable error handling schemes for non-volatile memories | |
US9342449B2 (en) | Metadata redundancy schemes for non-volatile memories | |
US9645895B2 (en) | Data storage device and flash memory control method | |
US8812816B2 (en) | Garbage collection schemes for index block | |
US9367451B2 (en) | Storage device management device and method for managing storage device | |
US9063728B2 (en) | Systems and methods for handling hibernation data | |
US20070094440A1 (en) | Enhanced data access in a storage device | |
US10168940B2 (en) | Data storage using SLC and TLC memory banks and data maintenance method thereof | |
CN104461397A (zh) | 一种固态硬盘及其读写方法 | |
US8892816B1 (en) | System and method for writing data to a memory | |
TWI523030B (zh) | 緩衝記憶體管理方法、記憶體控制器與記憶體儲存裝置 | |
CN113031856A (zh) | 存储器子系统中的断电数据保护 | |
US20200241955A1 (en) | Data storage device and operating method thereof | |
US20200201563A1 (en) | Data storage device and method of operating the same | |
US8850160B2 (en) | Adaptive write behavior for a system having non-volatile memory |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20131118 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20140218 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20140221 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140519 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20141105 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20141118 |
|
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: 20150107 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150109 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5683023 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |