Movatterモバイル変換


[0]ホーム

URL:


US20040088481A1 - Using non-volatile memories for disk caching - Google Patents

Using non-volatile memories for disk caching
Download PDF

Info

Publication number
US20040088481A1
US20040088481A1US10/287,115US28711502AUS2004088481A1US 20040088481 A1US20040088481 A1US 20040088481A1US 28711502 AUS28711502 AUS 28711502AUS 2004088481 A1US2004088481 A1US 2004088481A1
Authority
US
United States
Prior art keywords
cache
disk
memory
volatile memory
polymer
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.)
Abandoned
Application number
US10/287,115
Inventor
John Garney
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.)
Intel Corp
Original Assignee
Individual
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 IndividualfiledCriticalIndividual
Priority to US10/287,115priorityCriticalpatent/US20040088481A1/en
Assigned to INTEL CORPORATIONreassignmentINTEL CORPORATIONASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS).Assignors: GARNEY, JOHN I.
Publication of US20040088481A1publicationCriticalpatent/US20040088481A1/en
Priority to US11/251,665prioritypatent/US7412562B2/en
Abandonedlegal-statusCriticalCurrent

Links

Images

Classifications

Definitions

Landscapes

Abstract

A disk cache may include a volatile memory such as a dynamic random access memory and a nonvolatile memory such as a polymer memory. When a cache line needs to be allocated on a write, the polymer memory may be allocated and when a cache line needs to be allocated on a read, the volatile memory may be allocated.

Description

Claims (35)

What is claimed is:
1. A method comprising:
determining whether a cache line needs to be allocated on a read and, if so, allocating the cache line to a volatile memory disk cache; and
determining if a cache line needs to be allocated on a write and, if so, allocating the write to a polymer memory disk cache.
2. The method ofclaim 1 including allocating a cache line read to a dynamic random access memory.
3. The method ofclaim 1 including, after a predetermined time, transferring data from the polymer or memory disk cache to the volatile memory disk cache.
4. The method ofclaim 1 including transferring data written to a cache line in the volatile memory cache to the polymer memory cache.
5. The method ofclaim 1 including moving a cache line read from the polymer memory cache to the volatile memory cache.
6. A disk cache comprising:
a polymer memory; and
a volatile memory.
7. The cache ofclaim 6 wherein said polymer memory and said volatile memory are coupled to exchange data.
8. The cache ofclaim 6 wherein said volatile memory is a dynamic random access memory.
9. The cache ofclaim 6 wherein a cache line read is allocated to the volatile memory cache.
10. The cache ofclaim 6 wherein a cache line write is allocated to the polymer memory cache.
11. The cache ofclaim 6 wherein, after a period of time, data written in the polymer memory is automatically moved to the volatile memory cache.
12. The disk cache ofclaim 6, wherein the polymer memory is a destructive read memory device.
13. A processor-based system comprising:
a processor;
a disk cache coupled to said processor, said disk cache including a volatile memory disk cache and a polymer memory disk cache; and
a wireless interface coupled to said processor.
14. The system ofclaim 13 wherein said volatile memory disk cache is a dynamic random access memory.
15. The system ofclaim 13 including a disk drive coupled to said cache and to said processor.
16. The system ofclaim 13 wherein said volatile memory cache is coupled to said polymer memory cache.
17. The system ofclaim 13 wherein data written to said polymer memory cache is automatically transferred to said volatile memory cache after a period of time.
18. An article comprising a medium storing instruction that, if executed, enable a processor-based system to:
determine whether a cache line needs to be allocated on a read and, if so, allocate the cache line to a volatile memory disk cache; and
determine if a cache line needs to be allocated on a write and, if so, allocate the write to a polymer memory disk cache.
19. The article ofclaim 18 further storing instructions that, if executed, enable a processor-based system to move data written in the polymer memory disk cache to said volatile memory cache after the data has been stored on the polymer memory disk cache for a predetermined time period.
20. A method comprising:
saving a partition table entry from a disk to a disk cache; and
scrambling the entry on the disk.
21. The method ofclaim 20 including redirecting an access to said entry on said disk to said cache.
22. The method ofclaim 20 including restoring said entry to the disk from the cache.
23. The method ofclaim 22 including determining whether disk caching is enabled and, if so, restoring said entry to the disk.
24. An article comprising a medium storing instructions that, if executed, enable a processor-based system to:
save a partition table entry from a disk to a disk cache; and
scramble the entry on the disk.
25. The article ofclaim 24 further storing instructions to redirect an access to said entry on said disk to said disk cache.
26. The article ofclaim 24 further storing instructions to restore said entry to the disk from the cache.
27. The article ofclaim 26 further storing instructions to determine whether disk caching is disabled and, if so, to restore said entry to said disk.
28. A system comprising:
a processor;
a disk cache coupled to said processor;
a storage coupled to said processor storing instructions that, if executed, enable a processor-based system to save a partition table entry from a disk to the disk cache and scramble the entry on the disk; and
a wireless interface.
29. The system ofclaim 28 including a disk drive.
30. The system ofclaim 28 wherein said cache includes a polymer memory.
31. The system ofclaim 28 wherein said storage stores instructions to redirect an access to said entry on said disk to said disk cache.
32. The system ofclaim 28 wherein said storage stores instructions to restore said entry to the disk from the cache.
33. The system ofclaim 32 wherein said storage storing instructions to determine whether disk caching is enabled and, if so, to restore said entry to said disk.
34. A disk cache comprising:
a ferroelectric memory; and
a volatile memory.
35. The cache ofclaim 34 wherein said ferroelectric memory and said volatile memory are coupled to exchange data.
US10/287,1152002-11-042002-11-04Using non-volatile memories for disk cachingAbandonedUS20040088481A1 (en)

Priority Applications (2)

Application NumberPriority DateFiling DateTitle
US10/287,115US20040088481A1 (en)2002-11-042002-11-04Using non-volatile memories for disk caching
US11/251,665US7412562B2 (en)2002-11-042005-10-17Using non-volatile memories for disk caching of partition table entries

Applications Claiming Priority (1)

Application NumberPriority DateFiling DateTitle
US10/287,115US20040088481A1 (en)2002-11-042002-11-04Using non-volatile memories for disk caching

Related Child Applications (1)

Application NumberTitlePriority DateFiling Date
US11/251,665DivisionUS7412562B2 (en)2002-11-042005-10-17Using non-volatile memories for disk caching of partition table entries

Publications (1)

Publication NumberPublication Date
US20040088481A1true US20040088481A1 (en)2004-05-06

Family

ID=32175612

Family Applications (2)

Application NumberTitlePriority DateFiling Date
US10/287,115AbandonedUS20040088481A1 (en)2002-11-042002-11-04Using non-volatile memories for disk caching
US11/251,665Expired - Fee RelatedUS7412562B2 (en)2002-11-042005-10-17Using non-volatile memories for disk caching of partition table entries

Family Applications After (1)

Application NumberTitlePriority DateFiling Date
US11/251,665Expired - Fee RelatedUS7412562B2 (en)2002-11-042005-10-17Using non-volatile memories for disk caching of partition table entries

Country Status (1)

CountryLink
US (2)US20040088481A1 (en)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US20030046493A1 (en)*2001-08-312003-03-06Coulson Richard L.Hardware updated metadata for non-volatile mass storage cache
US20030074524A1 (en)*2001-10-162003-04-17Intel CorporationMass storage caching processes for power reduction
US20030188123A1 (en)*2002-04-012003-10-02Royer Robert J.Method and apparatus to generate cache data
US20050038963A1 (en)*2003-08-122005-02-17Royer Robert J.Managing dirty evicts from a cache
US20050283580A1 (en)*2004-06-172005-12-22Lewis Russell LMethod, system, and article of manufacture for storing data
US20060190769A1 (en)*2005-02-182006-08-24Intel CorporationMethod and system for setting a breakpoint
US20070050540A1 (en)*2005-09-012007-03-01Klein Dean ANon-volatile hard disk drive cache system and method
US20070118688A1 (en)*2000-01-062007-05-24Super Talent Electronics Inc.Flash-Memory Card for Caching a Hard Disk Drive with Data-Area Toggling of Pointers Stored in a RAM Lookup Table
US20080046660A1 (en)*2006-08-182008-02-21Kabushiki Kaisha ToshibaInformation recording apparatus and control method thereof
US20080147970A1 (en)*2006-12-142008-06-19Gilad SadeData storage system having a global cache memory distributed among non-volatile memories within system disk drives
US20140059293A1 (en)*2012-08-272014-02-27Samsung Electronics Co., Ltd.Method for protecting a gpt cached disks data integrity in an external operating system environment
US20150242155A1 (en)*2012-08-272015-08-27Samsung Electronics Co., Ltd.Method for protecting storage device data integrity in an external operating environment
US9208101B2 (en)2013-06-262015-12-08Western Digital Technologies, Inc.Virtual NAND capacity extension in a hybrid drive
US20160048450A1 (en)*2014-08-132016-02-18PernixData, Inc.Distributed caching systems and methods
US11475017B2 (en)*2019-03-052022-10-18Microsoft Technology Licensing, LlcAsynchronous data enrichment for an append-only data store

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US7558911B2 (en)*2003-12-182009-07-07Intel CorporationMaintaining disk cache coherency in multiple operating system environment
US7644239B2 (en)2004-05-032010-01-05Microsoft CorporationNon-volatile memory cache performance improvement
US7490197B2 (en)2004-10-212009-02-10Microsoft CorporationUsing external memory devices to improve system performance
US7991850B2 (en)*2005-07-282011-08-02Advanced Micro Devices, Inc.Resilient system partition for personal internet communicator
US8914557B2 (en)2005-12-162014-12-16Microsoft CorporationOptimizing write and wear performance for a memory
TWI344612B (en)*2007-10-232011-07-01Asustek Comp IncMethod for data protection
US8631203B2 (en)2007-12-102014-01-14Microsoft CorporationManagement of external memory functioning as virtual cache
US8032707B2 (en)2008-09-152011-10-04Microsoft CorporationManaging cache data and metadata
US9032151B2 (en)2008-09-152015-05-12Microsoft Technology Licensing, LlcMethod and system for ensuring reliability of cache data and metadata subsequent to a reboot
US7953774B2 (en)2008-09-192011-05-31Microsoft CorporationAggregation of write traffic to a data store
US8533445B2 (en)*2009-04-212013-09-10Hewlett-Packard Development Company, L.P.Disabling a feature that prevents access to persistent secondary storage
US9478249B2 (en)*2013-08-302016-10-25Seagate Technology LlcCache data management for program execution

Citations (6)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US5519831A (en)*1991-06-121996-05-21Intel CorporationNon-volatile disk cache
US5586291A (en)*1994-12-231996-12-17Emc CorporationDisk controller with volatile and non-volatile cache memories
US5835940A (en)*1993-10-141998-11-10Fujitsu Limiteddisk apparatus with multiple raid operating modes
US5936832A (en)*1990-08-031999-08-10Hitachi, Ltd.Semiconductor memory device and method of operation thereof
US6295577B1 (en)*1998-02-242001-09-25Seagate Technology LlcDisc storage system having a non-volatile cache to store write data in the event of a power failure
US6646903B2 (en)*2001-12-032003-11-11Intel CorporationFerroelectric memory input/output apparatus

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
RU2298824C2 (en)*2001-09-282007-05-10Хай Денсити Дивайсез АсMethod and device for encoding/decoding data in high capacity memory device

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US5936832A (en)*1990-08-031999-08-10Hitachi, Ltd.Semiconductor memory device and method of operation thereof
US5519831A (en)*1991-06-121996-05-21Intel CorporationNon-volatile disk cache
US5835940A (en)*1993-10-141998-11-10Fujitsu Limiteddisk apparatus with multiple raid operating modes
US5586291A (en)*1994-12-231996-12-17Emc CorporationDisk controller with volatile and non-volatile cache memories
US6295577B1 (en)*1998-02-242001-09-25Seagate Technology LlcDisc storage system having a non-volatile cache to store write data in the event of a power failure
US6646903B2 (en)*2001-12-032003-11-11Intel CorporationFerroelectric memory input/output apparatus

Cited By (29)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US7610438B2 (en)*2000-01-062009-10-27Super Talent Electronics, Inc.Flash-memory card for caching a hard disk drive with data-area toggling of pointers stored in a RAM lookup table
US20070118688A1 (en)*2000-01-062007-05-24Super Talent Electronics Inc.Flash-Memory Card for Caching a Hard Disk Drive with Data-Area Toggling of Pointers Stored in a RAM Lookup Table
US7275135B2 (en)2001-08-312007-09-25Intel CorporationHardware updated metadata for non-volatile mass storage cache
US20030046493A1 (en)*2001-08-312003-03-06Coulson Richard L.Hardware updated metadata for non-volatile mass storage cache
US20030074524A1 (en)*2001-10-162003-04-17Intel CorporationMass storage caching processes for power reduction
US20030188123A1 (en)*2002-04-012003-10-02Royer Robert J.Method and apparatus to generate cache data
US7103724B2 (en)*2002-04-012006-09-05Intel CorporationMethod and apparatus to generate cache data
US20050038963A1 (en)*2003-08-122005-02-17Royer Robert J.Managing dirty evicts from a cache
US7177983B2 (en)*2003-08-122007-02-13Intel CorporationManaging dirty evicts from a cache
US20050283580A1 (en)*2004-06-172005-12-22Lewis Russell LMethod, system, and article of manufacture for storing data
US7840845B2 (en)2005-02-182010-11-23Intel CorporationMethod and system for setting a breakpoint
US20060190769A1 (en)*2005-02-182006-08-24Intel CorporationMethod and system for setting a breakpoint
US20070050540A1 (en)*2005-09-012007-03-01Klein Dean ANon-volatile hard disk drive cache system and method
US7966450B2 (en)2005-09-012011-06-21Micron Technology, Inc.Non-volatile hard disk drive cache system and method
US20110219167A1 (en)*2005-09-012011-09-08Klein Dean ANon-volatile hard disk drive cache system and method
US9235526B2 (en)2005-09-012016-01-12Round Rock Research, LlcNon-volatile hard disk drive cache system and method
US8850112B2 (en)2005-09-012014-09-30Round Rock Research, LlcNon-volatile hard disk drive cache system and method
US20080046660A1 (en)*2006-08-182008-02-21Kabushiki Kaisha ToshibaInformation recording apparatus and control method thereof
US8762636B2 (en)*2006-12-142014-06-24Emc CorporationData storage system having a global cache memory distributed among non-volatile memories within system disk drives
US20080147970A1 (en)*2006-12-142008-06-19Gilad SadeData storage system having a global cache memory distributed among non-volatile memories within system disk drives
CN103631564A (en)*2012-08-272014-03-12三星电子株式会社Method for protecting a gpt cached disks data integrity in an external operating system environment
KR20140027885A (en)*2012-08-272014-03-07삼성전자주식회사Method and computer-readable medium emboding program for protecting data integrity of disk in alternate operating system environment
US20150242155A1 (en)*2012-08-272015-08-27Samsung Electronics Co., Ltd.Method for protecting storage device data integrity in an external operating environment
US20140059293A1 (en)*2012-08-272014-02-27Samsung Electronics Co., Ltd.Method for protecting a gpt cached disks data integrity in an external operating system environment
KR102145358B1 (en)*2012-08-272020-08-18삼성전자주식회사Method and computer-readable medium emboding program for protecting data integrity of disk in alternate operating system environment
US9208101B2 (en)2013-06-262015-12-08Western Digital Technologies, Inc.Virtual NAND capacity extension in a hybrid drive
US20160048450A1 (en)*2014-08-132016-02-18PernixData, Inc.Distributed caching systems and methods
US9792050B2 (en)*2014-08-132017-10-17PernixData, Inc.Distributed caching systems and methods
US11475017B2 (en)*2019-03-052022-10-18Microsoft Technology Licensing, LlcAsynchronous data enrichment for an append-only data store

Also Published As

Publication numberPublication date
US7412562B2 (en)2008-08-12
US20060036806A1 (en)2006-02-16

Similar Documents

PublicationPublication DateTitle
US7412562B2 (en)Using non-volatile memories for disk caching of partition table entries
US7962687B2 (en)Flash memory allocation for improved performance and endurance
US6571326B2 (en)Space allocation for data in a nonvolatile memory
US6243795B1 (en)Redundant, asymmetrically parallel disk cache for a data storage system
US6339813B1 (en)Memory system for permitting simultaneous processor access to a cache line and sub-cache line sectors fill and writeback to a system memory
US5519831A (en)Non-volatile disk cache
US7533215B2 (en)Distributed and packed metadata structure for disk cache
US7814276B2 (en)Data cache architecture and cache algorithm used therein
US7130962B2 (en)Writing cache lines on a disk drive
US9063862B2 (en)Expandable data cache
TW201903612A (en)Memory module and method for operating memory module
US20090070526A1 (en)Using explicit disk block cacheability attributes to enhance i/o caching efficiency
US20090279366A1 (en)Hybrid solid-state memory system having volatile and non-volatile memory
US20090327608A1 (en)Accelerated resume from hibernation in a cached disk system
US8214581B2 (en)System and method for cache synchronization
US20110258487A1 (en)Nand power fail recovery
US20120239853A1 (en)Solid state device with allocated flash cache
US20050251630A1 (en)Preventing storage of streaming accesses in a cache
US20050144396A1 (en)Coalescing disk write back requests
WO2006107095A1 (en)Computer system, memory management method, and program thereof
US20050193164A1 (en)Interface for a block addressable mass storage system
US8332575B2 (en)Data management systems, methods and computer program products using a phase-change random access memory for selective data maintenance
US7558911B2 (en)Maintaining disk cache coherency in multiple operating system environment
WO2017105597A1 (en)Computing system having multi-level system memory capable of operating in a single level system memory mode
US11966590B2 (en)Persistent memory with cache coherent interconnect interface

Legal Events

DateCodeTitleDescription
ASAssignment

Owner name:INTEL CORPORATION, CALIFORNIA

Free format text:ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:GARNEY, JOHN I.;REEL/FRAME:013466/0088

Effective date:20021101

STCBInformation on status: application discontinuation

Free format text:ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION


[8]ページ先頭

©2009-2025 Movatter.jp