CN100474268C - 非易失性高速缓存数据集成 - Google Patents

非易失性高速缓存数据集成 Download PDF

Info

Publication number
CN100474268C
CN100474268C CNB2004800143349A CN200480014334A CN100474268C CN 100474268 C CN100474268 C CN 100474268C CN B2004800143349 A CNB2004800143349 A CN B2004800143349A CN 200480014334 A CN200480014334 A CN 200480014334A CN 100474268 C CN100474268 C CN 100474268C
Authority
CN
China
Prior art keywords
memory
address
write operation
cache
storer
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 - Lifetime
Application number
CNB2004800143349A
Other languages
English (en)
Other versions
CN1826590A (zh
Inventor
R·科尔森
R·小罗耶
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
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of CN1826590A publication Critical patent/CN1826590A/zh
Application granted granted Critical
Publication of CN100474268C publication Critical patent/CN100474268C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • 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/0804Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
    • 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
    • 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/1417Boot up procedures
    • 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/1471Saving, restoring, recovering or retrying involving logging of persistent data for recovery

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Debugging And Monitoring (AREA)

Abstract

一种装置,以及系统、方法和产品,可以在执行操作系统高速缓存驱动之前记录下对由非易失性高速缓存所高速缓存的某一存储器进行的一次写操作的地址。

Description

非易失性高速缓存数据集成
技术领域
在此描述的各个实施例一般涉及用来保持存储在存储器内包括高速缓存数据在内的数据的完整性的装置、系统和方法。
背景技术
计算机存储器高速缓存可以使用易失性或非易失性的存储器来操作。当使用易失性存储器时,高速缓存策略通常包括(即因为高速缓存状态在每次导入期间重置)在相关的高速缓存驱动软件访问该高速缓存之前清除该高速缓存的机制。这样,就避免了那些在驱动软件的载入和执行之前发生的对高速缓存的介质(cachedmedium)的访问请求对高速缓存的数据(cached data)的污染。
虽然在高速缓存内使用非易失性存储器会更为有利(例如可以在系统停机或掉电的期间保持高速缓存状态),但是会引发实施中的问题。例如,要是与存储在非易失性高速缓存内数据相关的写请求先于高速缓存驱动载入,一旦驱动导入,就可能导致数据讹误。在驱动开始执行之后使非易失性高速缓存无效的方法可以避免数据讹误,但是持续高速缓存数据状态的优势也就此丧失。
发明内容
根据本发明的一种方法,包括:在执行与非易失性高速缓存相关联的操作系统高速缓存驱动之前,记录下对存储器的写操作的地址,所述非易失性高速缓存对存储器内的信息进行高速缓存。
根据本发明的一种系统,包括:用于在执行与非易失性高速缓存相关联的操作系统高速缓存驱动之前,记录下对存储器的写操作的地址的装置,所述非易失性高速缓存对存储器内的信息进行高速缓存。
根据本发明的一种装置,包括:非易失性高速缓存;以及第一存储器,用于在执行与非易失性高速缓存相关联的操作系统高速缓存驱动之前,存储与对第二存储器的写操作相关联的地址,所述非易失性高速缓存对第二存储器内的信息进行高速缓存。
根据本发明的一种系统,包括:非易失性高速缓存;第一存储器,用于在执行与非易失性高速缓存相关联的操作系统高速缓存驱动之前,存储与对第二存储器的写操作相关联的地址,所述非易失性高速缓存对第二存储器内的信息进行高速缓存;耦合到所述用于存储地址的存储设备的处理器;以及耦合到所述处理器的显示器。
附图说明
图1是根据各实施例的装置、系统和产品的框图。
图2是根据各实施例示出的若干方法的流程图。
具体实施方式
在随后各实施例的详细描述中可参考组成本说明的附图,其中以说明而非限制的形式示出可实践发明主题的特定实施例。对示出的实施例做出足够详尽的解释使得本领域普通技术人员能够实践在此公开的教示内容。可也利用和从中导出其他的实施例,致使结构和逻辑上的代替和改变不背离本发明的范围。因此如下的描述并非出于限制性的意义,而且各实施例的范围仅由所附权利要求连同全范围授于权力要求的等效物来限定。
在某些实施例中,可通过创建设备选项只读存储器(ROM或OROM),或通过修改相关的计算机基本输入输出系统(BIOS)以俘获与磁盘访问请求相关的软件中断(例如,Intel
Figure C200480014334D0006114407QIETU
x86兼容机的BIOS Intl3h接口)来实现非易失性高速缓存。可用此方式检测磁盘写活动,并且可将相关地址存储在用于所有修改数据地址的日志(例如逻辑块地址或LBA)中。此“写入日志”可以连同高速缓存本身存储在非易失性介质中。如果该写入日志在载入操作系统(OS)驱动(例如该OS的存储子系统驱动)之前没有足够的空间来记录所有的磁盘写活动,就会设置一个标记来指示超限情况。该标记可以包括在所述日志中,或存储在其他可以是易失性或非易失性的存储器中。
一旦该OS的存储子系统驱动载入,它们会询问所述写入日志并且失效或更新高速缓存内任何已改变的数据由写入日志指示。如果设置了写入日志超限标记,那么该驱动会根据当前可用的磁盘数据更新高速缓存内的所有数据或者使全部高速缓存的数据失效,因为磁盘将一直保有存储数据的正确版本,从而不会发生数据丢失。在驱动成功清除了写入日志内与地址相关的所有数据之后,该日志可被清空至空状态。如果高速缓存策略许可沾污数据(即回写策略),那么选项只读存储器(OROM)就在允许系统导入之前清除所有沾污数据。
图1是根据各实施例的装置100、系统110和产品112的框图。装置100可包括可以是易失性或非易失性的高速缓存114和存储器118。同样可以是易失性或非易失性的存储器118可用来存储一个或更多的地址122,这些地址122与先于载入和/或执行OS高速缓存驱动(未示出)出现的对另一个存储器130(由高速缓存114高速缓存的)的写操作相关联。所述地址122能以日志的形式存储在存储器118内。
如果中断被俘获以检测写操作(例如BIOS Intl3h中断),那么装置100还可包括中断模块134用于接收与对存储器130的写操作相关的中断请求136。地址122可以是,例如LBA并且中断请求136可以是可能包括了BIOS Intl3h中断或与之相关的硬件中断请求或软件中断请求。
存储器114和130可以包含多种存储器,包括随机存取存储器(RAM)、聚合体铁电RAM(PFRAM)、各种可编程只读存储器(PROM)、磁盘或光盘等等。如果存储器118由于记录地址122的数量大于该日志设定尺寸而超限,那么将设置支具138指示该超限情况。
对本申请来说,如果在当电源被移除以及再应用至其他相关处理器时通常存储其内的内容未加保持,那么该存储器就是易失性存储器。非易失性存储器是即使在对相关处理器的供电处于循环状态时仍可在所选时间范围内(例如几秒或更多时间)保持内容的任何种类的存储器。非易失性存储器包括,例如电池支持RAM、由闪存支持的RAM以及电池支持RAM加上包括磁盘的其他种类非易失性存储装置。
其他的实施例也是可以的。例如系统110可以包含如上所述的装置100,并结合其他元件。在一个实施例中,系统110可以包括耦合到装置100的处理器140。磁盘驱动器141(通常包括某种形式的非易失性存储器)以及耦合到处理器140的显示器144。显示器144可用于显示图形用户界面(GUI)148。
系统110可包括中断模块134用于接收与对存储器130的写操作相关的中断请求136。模块134可包括在设备选项存储器152内,或者可以作为BIOS模块156的一部分得以实现。如前所述,存储器118可以是易失性的或非易失性的,并且可用于存储日志,该日志具有与对存储器130的写操作相关的一个或多个地址122。
装置100、系统110、产品112、高速缓存114、存储器118、地址122、存储器130、中断模块134、中断请求136、标记138、处理器140、磁盘驱动器141、显示器144、GUI148、设备选项存储器152和BIOS模块156在此都可具有“模块”的特征。装置100、系统110、产品112的结构所期望的并适用于各实施例特定实现的这些模块可以包括硬件电路和/或一个或更多的处理器和/或存储器电路、包括对象和对象结合的软件程序模块和/或固件以及它们的组合。
应该理解的是,各实施例中的装置和系统除了用于计算机以及其他包括显示器和图形用户界面的系统之外还有其他的应用,这样各实施例就可不受限制。对装置100和系统110的说明意欲提供对各实施例结构的大致理解,并且它们并非作为对所有元件以及可能会利用在此描述的结构装置和系统特性作出完全描述。
这些应用可包括各实施例的新型装置和系统,它们包括在高速计算机上使用的电子电路、通信及信号处理电路、调制解调器、处理器模块、嵌入式处理器以及包括多层、多芯片模块的专用模块。这些装置和系统还可作为子组件包括在诸如电视机、蜂窝电话、个人计算机、工作站、无线电、视频播放器、运载工具之类的各电子系统内。还可实现许多不同的实施例。
例如,图2是根据各实施例示出了若干方法的流程图。方法211能够(可选地)在框213处以硬件初始化开始(例如对处理器上电),并且在框215处俘获包括硬中断或软中断请求的中断请求。
随后方法211行进到框217,在其中检测对由易失性或非易失性高速缓存所高速缓存的存储器的写操作,并且随后在框221处先于载入和/或执行操作系统高速缓存驱动的情况下记录写操作的地址。这样,在框215处对写操作的检测可包括俘获框213处的中断请求。该活动随后是在框223处发出对存储器的一次写入。
在框221处对写操作地址的记录可包括框225处在日志内记录地址(该日志可存储在易失性或非易失性存储器中,包括由至少一个随机存取存储器(RAM)组成的存储器、包括静态(SRAM)、动态RAM(DRAM)、闪存、聚合体铁电RAM(PFRAM))。
因为日志的大小通常有限,所以对多个地址的写操作的记录大于该日志大小的时可能会出现超限。如果在框231处确定日志超限,那么该方法211可包括在框235处设置标记来指示日志的超限。此外,本方法可行进到框223处发出对存储器的一次写入,并且在框239处确定OS高速缓存驱动是否被载入和/或执行。如果尚未载入和/或执行该驱动,那么就在框215处检测对高速缓存存储器的其他写操作。否则,本方法就行进到框245。
本方法在框245处还包括修改对应于写操作地址的数据。如果在框249处确定不设置日志超限标记,那么修改对应于写操作地址的数据可以包括在框255处更新对应于写操作地址的数据。如果在框249处确定设置日志超限标记,那么修改对应于写操作地址的数据可以包括在框259处使对应于写操作地址的数据失效,其中还包括如果设置该标记就使高速缓存也失效。此外,高速缓存内的所有数据可以在框259处更新。
应该认识到在此描述的方法无需以描述的顺序或任何特定的顺序来执行。此外,对于在此确定的方法所描述的各种活动能够以串行或并行的方式执行。包括参数、命令、操作数和其他数据的信息可以一种或更多载波的形式予以发送和接收。
一旦阅读和理解了本发明的内容,本领域普通技术人员将会理解可从基于计算机的系统内的计算机可读介质中启动软件程序的方式来执行由软件程序定义的功能。本领域普通技术人员还能理解可以使用各种编程语言来创建用于实现并执行本发明方法的一个或更多的软件程序。可使用诸如Jave、Smalltalk或C++之类的面向对象的语言将这些程序使架构成面向对象的格式。此外,可使用诸如COBOL、汇编或C之类的过程语言将这些程序架构成面向过程的格式。这些软件组分还可使用本领域普通技术人员所周知的任何种类的机制来实现通信,这些机制包括应用程序接口或者包括远程过程呼叫的进程间通信技术。对本发明各实施例的教示内容不限于包括超文本标记语言(HTML)以及可扩展标记语言(XML)在内的任何特定的编程语言或环境。
图1还根据各实施例示出了包括机器可访问介质在内的产品112。这样明显可知另一其他实施例也可包括产品112,诸如计算机、存储器系统、磁盘或光盘、其他存储设备和/或包括诸如具有相关数据162(例如计算机程序指令)的存储器130(例如包括电的、光学的或电磁的导体的存储器)之类的计算机可访问介质的任何种类的地址设备或系统。当访问这些数据162时,会导致机器执行诸如在执行操作系统高速缓存驱动之前,记录下由非易失性高速缓存所高速缓存的对某一存储器进行的一次写操作地址的动作,其中可包括在日志内记录写操作的地址。
日志可以包括在易失性或非易失性存储器内。如果该日志超限,那么该机器就设置标记指示超限情况。如果设置了标记,该机器可以使得高速缓存失效或者更新高速缓存内的所有数据。
因为在系统停机或掉电期间能够保持高速缓存的状态,使用非易失性高速缓存的能力可以增加计算机系统操作的通用性。这样,先于载入高速缓存驱动出现而记录下对与存储在非易失性高速缓存内数据相关联的写请求就可以在驱动开始执行之后防止数据沾污,从而无需使高速缓存的数据失效。
虽然在此示出并描述了特定的实施例,但是应该认识经计算完成相同目的的任何安排都可代替示出的特定实施例。本发明意欲覆盖本发明各实施例的任何及全部的改编和变化。也应理解以上描述是以说明而非限制性的方式作出的。上述实施例的组合以及其他未在此特定描述的实施例在本领域普通技术人员阅读以上描述后也将变得显而易见。
需要强调的是,将按照37C.F.R.§1.72(b)提供本发明的摘要,这就要求该摘要将使得读者快速得知公开技术的特性。应该理解摘要不用于解释或限制权利要求的范围或意义。此外在前述的详尽说明中会发现,各种特征被组合在一个实施例中,以使揭示内容更为流畅。本发明的方法不被解释为反映一种意图即,本发明声明的实施例要求比每个权利要求所清楚地阐述的特性更多。此外,正如随后的权利要求所反映的,本发明的主题处于比单个公开实施例的所有特性为少的状态。这样在每个权项都作为一个单独的较佳实施例的情况下,所附的权利要求据此并入详尽的说明书中。

Claims (23)

1.一种方法,该方法包括:
在执行与非易失性高速缓存相关联的操作系统高速缓存驱动之前,记录下对存储器的写操作的地址,所述非易失性高速缓存对存储器内的信息进行高速缓存。
2.如权利要求1所述的方法,其特征在于,记录下对存储器的写操作的地址还包括:
在日志内记录该地址。
3.如权利要求2所述的方法,其特征在于,日志存储在包括静态随机存取存储器SRAM、动态随机存取存储器DRAM、闪存和聚合物铁电RAMPFRAM中至少一个的存储器内。
4.如权利要求1所述的方法,其特征在于,本方法还包括:
在记录步骤之前,检测写操作。
5.如权利要求4所述的方法,其特征在于,本方法还包括:
在检测步骤之前,俘获中断请求。
6.如权利要求1所述的方法,其特征在于,本方法还包括:
在记录步骤之后,修改对应于写操作地址的数据。
7.如权利要求6所述的方法,其特征在于,本方法还包括:
在修改步骤之后,更新对应于写操作地址的数据。
8.如权利要求6所述的方法,其特征在于,本方法还包括:
在修改步骤之后,如果设置了写入日志超限标记,则使对应于写操作地址的数据失效。
9.一种系统,其包括:
用于在执行与非易失性高速缓存相关联的操作系统高速缓存驱动之前,记录下对存储器的写操作的地址的装置,所述非易失性高速缓存对存储器内的信息进行高速缓存。
10.如权利要求9所述的系统,其特征在于,还包括:
用于在日志内记录写操作地址的装置。
11.如权利要求10所述的系统,其特征在于,所述日志被包括在非易失性存储器内。
12.如权利要求10所述的系统,其特征在于,还包括:
用于设置标记用来指示日志的超限的装置。
13.如权利要求12所述的系统,其特征在于,还包括:
用于在已设置了标记时使非易失性高速缓存失效的装置。
14.一种装置,该装置包括:
非易失性高速缓存;以及
第一存储器,用于在执行与非易失性高速缓存相关联的操作系统高速缓存驱动之前,存储与对第二存储器的写操作相关联的地址,所述非易失性高速缓存对第二存储器内的信息进行高速缓存。
15.如权利要求14所述的装置,其特征在于,所述地址是逻辑块地址。
16.如权利要求14所述的装置,其特征在于,所述用于存储地址的第一存储器包括非易失性存储器。
17.如权利要求14所述的装置,其特征在于,该装置还包括:
接收与写操作相关的中断请求的模块。
18.如权利要求17所述的装置,其特征在于,所述中断请求是基本输入输出系统Int13h请求。
19.一种系统,该系统包括:
非易失性高速缓存;
第一存储器,用于在执行与非易失性高速缓存相关联的操作系统高速缓存驱动之前,存储与对第二存储器的写操作相关联的地址,所述非易失性高速缓存对第二存储器内的信息进行高速缓存;
耦合到所述第一存储器的处理器;以及
耦合到所述处理器的显示器。
20.如权利要求19所述的系统,其特征在于,该系统还包括:
接收与写操作相关的中断请求的模块。
21.如权利要求20所述的系统,其特征在于,所述模块包括在设备选项存储器内。
22.如权利要求20所述的系统,其特征在于,所述模块包括在基本输入输出系统内。
23.如权利要求19所述的系统,其特征在于,所述用于存储地址的第一存储器包括用于存储日志的非易失性存储器,该日志包括包含了写操作地址的多个存储器地址。
CNB2004800143349A 2003-06-27 2004-06-09 非易失性高速缓存数据集成 Expired - Lifetime CN100474268C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/607,772 US7299379B2 (en) 2003-06-27 2003-06-27 Maintaining cache integrity by recording write addresses in a log
US10/607,772 2003-06-27

Publications (2)

Publication Number Publication Date
CN1826590A CN1826590A (zh) 2006-08-30
CN100474268C true CN100474268C (zh) 2009-04-01

Family

ID=33540374

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004800143349A Expired - Lifetime CN100474268C (zh) 2003-06-27 2004-06-09 非易失性高速缓存数据集成

Country Status (4)

Country Link
US (3) US7299379B2 (zh)
CN (1) CN100474268C (zh)
TW (1) TWI243373B (zh)
WO (1) WO2005006196A2 (zh)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7299379B2 (en) * 2003-06-27 2007-11-20 Intel Corporation Maintaining cache integrity by recording write addresses in a log
US7277993B2 (en) * 2003-12-03 2007-10-02 Intel Corporation Write-back disk cache
US7644239B2 (en) 2004-05-03 2010-01-05 Microsoft Corporation Non-volatile memory cache performance improvement
US8805886B1 (en) * 2004-05-26 2014-08-12 Symantec Operating Corporation Recoverable single-phase logging
US7797483B1 (en) * 2004-06-23 2010-09-14 Emc Corporation Write interceptor for tracking changes to disk image
US7490197B2 (en) 2004-10-21 2009-02-10 Microsoft Corporation Using external memory devices to improve system performance
JP4681868B2 (ja) * 2004-12-16 2011-05-11 キヤノン株式会社 情報処理装置及びその制御方法、コンピュータプログラム及び記憶媒体
JP4641443B2 (ja) * 2005-03-28 2011-03-02 富士通株式会社 ログ情報管理装置、ログ情報管理方法およびログ情報管理プログラム
US7370143B1 (en) * 2005-06-20 2008-05-06 Network Appliance, Inc. Controlling write request access to a non-volatile log
US8914557B2 (en) * 2005-12-16 2014-12-16 Microsoft Corporation Optimizing write and wear performance for a memory
US7627713B2 (en) * 2005-12-29 2009-12-01 Intel Corporation Method and apparatus to maintain data integrity in disk cache memory during and after periods of cache inaccessibility
US8631203B2 (en) * 2007-12-10 2014-01-14 Microsoft Corporation Management of external memory functioning as virtual cache
US8032707B2 (en) * 2008-09-15 2011-10-04 Microsoft Corporation Managing cache data and metadata
US9032151B2 (en) 2008-09-15 2015-05-12 Microsoft Technology Licensing, Llc Method and system for ensuring reliability of cache data and metadata subsequent to a reboot
US7953774B2 (en) 2008-09-19 2011-05-31 Microsoft Corporation Aggregation of write traffic to a data store
US8667191B2 (en) * 2010-01-15 2014-03-04 Kingston Technology Corporation Managing and indentifying multiple memory storage devices
US9535835B2 (en) 2010-04-12 2017-01-03 Hewlett-Packard Development Company, L.P. Non-volatile cache
JP5175953B2 (ja) 2011-06-02 2013-04-03 株式会社東芝 情報処理装置およびキャッシュ制御方法
US9570124B2 (en) * 2012-01-11 2017-02-14 Viavi Solutions Inc. High speed logging system
JP6128388B2 (ja) * 2012-09-14 2017-05-17 パナソニックIpマネジメント株式会社 情報処理装置
CN104182349A (zh) * 2013-05-27 2014-12-03 联想(北京)有限公司 一种信息处理方法及电子设备
WO2015016824A1 (en) * 2013-07-30 2015-02-05 Hewlett-Packard Development Company, L.P. Resource management based on a process identifier
JP6541998B2 (ja) * 2015-03-24 2019-07-10 東芝メモリ株式会社 メモリデバイス、半導体装置および情報処理装置
US10162758B2 (en) * 2016-12-09 2018-12-25 Intel Corporation Opportunistic increase of ways in memory-side cache
JP2020160483A (ja) * 2019-03-25 2020-10-01 株式会社東芝 評価装置、システムlsi及びシステムlsiのための評価プログラム
CN109992973B (zh) * 2019-04-10 2021-04-20 北京可信华泰信息技术有限公司 一种利用oprom机制的启动度量方法及装置
CN111125794B (zh) * 2019-12-31 2023-09-26 海光云芯集成电路设计(上海)有限公司 访存控制方法、系统及存储装置控制器

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5359713A (en) * 1989-06-01 1994-10-25 Legato Systems, Inc. Method and apparatus for enhancing synchronous I/O in a computer system with a non-volatile memory and using an acceleration device driver in a computer operating system
US5603331A (en) * 1996-02-12 1997-02-18 Cardiac Pacemakers, Inc. Data logging system for implantable cardiac device
KR0174711B1 (ko) * 1996-04-24 1999-04-15 김광호 하드디스크 캐시의 제어방법
US5732238A (en) * 1996-06-12 1998-03-24 Storage Computer Corporation Non-volatile cache for providing data integrity in operation with a volatile demand paging cache in a data storage system
US6148368A (en) * 1997-07-31 2000-11-14 Lsi Logic Corporation Method for accelerating disk array write operations using segmented cache memory and data logging
US6640278B1 (en) * 1999-03-25 2003-10-28 Dell Products L.P. Method for configuration and management of storage resources in a storage network
US6446141B1 (en) * 1999-03-25 2002-09-03 Dell Products, L.P. Storage server system including ranking of data source
US6629198B2 (en) * 2000-12-08 2003-09-30 Sun Microsystems, Inc. Data storage system and method employing a write-ahead hash log
US6906320B2 (en) * 2003-04-02 2005-06-14 Merck & Co., Inc. Mass spectrometry data analysis techniques
US7299379B2 (en) 2003-06-27 2007-11-20 Intel Corporation Maintaining cache integrity by recording write addresses in a log
US7277993B2 (en) * 2003-12-03 2007-10-02 Intel Corporation Write-back disk cache
US7078684B2 (en) * 2004-02-05 2006-07-18 Florida State University High resolution fourier transform ion cyclotron resonance (FT-ICR) mass spectrometry methods and apparatus

Also Published As

Publication number Publication date
TWI243373B (en) 2005-11-11
US8244970B2 (en) 2012-08-14
WO2005006196A3 (en) 2006-01-12
TW200502954A (en) 2005-01-16
US7937524B2 (en) 2011-05-03
US20110238918A1 (en) 2011-09-29
CN1826590A (zh) 2006-08-30
US20080010401A1 (en) 2008-01-10
US20040268026A1 (en) 2004-12-30
WO2005006196A2 (en) 2005-01-20
US7299379B2 (en) 2007-11-20

Similar Documents

Publication Publication Date Title
CN100474268C (zh) 非易失性高速缓存数据集成
TWI614752B (zh) 經由記憶體通道關閉之節電技術
US7130962B2 (en) Writing cache lines on a disk drive
CN103988183B (zh) 2级存储器分级结构中的存储器侧高速缓存的动态部分断电
US20160253093A1 (en) A new USB protocol based computer acceleration device using multi I/O channel SLC NAND and DRAM cache
CN101981541B (zh) 使用闪存和有限功能存储器控制器来引导电子设备
CN102063943B (zh) Nand闪存参数自动检测系统
CN101916231B (zh) 使用存储属性的技术
WO2005082037A3 (en) Intelligent solid state disk with hot-swappable components
US20050021904A1 (en) Mass memory device based on a flash memory with multiple buffers
US20050086551A1 (en) Memory optimization for a computer system having a hibernation mode
CN103348333B (zh) 用于分级高速缓存设计中的高速缓存之间的高效通信的方法和装置
CN101246389A (zh) 提供从休眠状态瞬时接通恢复的计算系统节电方法和装置
CN103530237B (zh) 一种固态盘阵列的垃圾回收方法
CN101013351A (zh) 硬盘驱动器高速缓存存储器及重放装置
US20050185496A1 (en) Intelligent solid state disk
JP2004062344A (ja) 記憶装置システムのデステージ方法、ディスク制御装置、記憶装置システム、及びプログラム
CN102388368A (zh) 一种内存监控方法及装置
CN101963891A (zh) 数据存储处理方法与装置、固态硬盘系统与数据处理系统
US20080250189A1 (en) Circuit and Method for Improving Operation Life of Memory
CN109144899A (zh) 用于管理表恢复的方法
US20170031833A1 (en) Hibernation based on page source
CN101606136A (zh) 通过软件仿真实现为光存储设备或/和可移动磁盘的计算机外设及其实现方法
US8065497B2 (en) Data management method, and storage apparatus and controller thereof
KR101303535B1 (ko) 메인 메모리를 이용한 메모리 디스크 구성 방법 및 장치

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CX01 Expiry of patent term

Granted publication date: 20090401

CX01 Expiry of patent term