CN101331463A - 优化存储器的写入和磨损性能 - Google Patents
优化存储器的写入和磨损性能 Download PDFInfo
- Publication number
- CN101331463A CN101331463A CNA2006800473846A CN200680047384A CN101331463A CN 101331463 A CN101331463 A CN 101331463A CN A2006800473846 A CNA2006800473846 A CN A2006800473846A CN 200680047384 A CN200680047384 A CN 200680047384A CN 101331463 A CN101331463 A CN 101331463A
- Authority
- CN
- China
- Prior art keywords
- data
- speed memory
- speed
- low
- memory
- 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
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
- 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
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0804—Addressing 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
-
- 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
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0808—Multiuser, multiprocessor or multiprocessing cache systems with cache invalidating means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing 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/0868—Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing 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/0873—Mapping of cache memory to specific storage devices or parts thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/12—Replacement control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0616—Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/065—Replication mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0685—Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
-
- 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/1016—Performance improvement
- G06F2212/1024—Latency reduction
-
- 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/1032—Reliability improvement, data loss prevention, degraded operation etc
- G06F2212/1036—Life time enhancement
-
- 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/30—Providing cache or TLB in specific location of a processing system
- G06F2212/304—In main memory subsystem
- G06F2212/3042—In main memory subsystem being part of a memory device, e.g. cache DRAM
-
- 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/30—Providing cache or TLB in specific location of a processing system
- G06F2212/305—Providing cache or TLB in specific location of a processing system being part of a memory device, e.g. cache DRAM
-
- 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/7211—Wear leveling
Abstract
确定并使用要从高速存储器传送到低速存储器的理想长度的存储器可以导致对低速存储器的更快保存以及低速存储器的更长的寿命。
Description
背景
存储器设备具有许多取舍选择。快速的存储器可能是昂贵的。而慢速的存储器则可能是廉价的。由于现代应用程序对存储器的需求超过了消费者系统的物理容量,因此对硬盘驱动器的分页操作会很快使系统和应用程序显得慢速且反应迟钝,特别是当在各个任务或用户间进行切换的时候。在一理想计算机中,所有存储器都应尽可能地快,但是这种计算机太过昂贵以致于是不现实的。此外,存在所有需求仅是低价的、长期的存储的一些应用。结果是,计算机可具有各种存储器,如从接近处理器的超快存储器到诸如基于磁盘的存储器等慢速存储器。另外,计算机具有添加诸如便携式硬盘驱动器、软盘和闪存设备等更多和不同类型的存储器的能力。这些设备中的每一个都具有可能会被最大化的执行和磨损特性。
概述
确定并使用要从高速存储器传送到低速存储器的理想大小的存储器可以导致对低速存储器的更快速的保存,以及低速存储器的更长的寿命。例如,一些闪存设备具有使对闪存的擦写次数最小化的存储器写入打下。其它低速存储器设备可以具有使得低速存储器上的大的块能够存储邻接数据的理想写入大小。此外,数据可以在快速存储器中访问,即使已指示应将该数据发送到较低速的存储器。
附图
图1是可以根据权利要求书操作的计算系统的框图;以及
图2是根据权利要求书的方法的示图。
描述
虽然下文阐明了多种不同实施例的详细描述,但应了解,说明书的合法范围应由在本专利结尾处所阐明的权利要求书中的文字来限定。该详细描述应被解释为只是示例性的,而并没有描述每一个可能的实施例,因为描述每一个可能的实施例即便不是不可能,也是不切实际的。无论使用现有技术,还是本专利申请日以后开发的技术,都能实现许多可选实施例,且这仍将落入权利要求书的范围之内。
应了解,除非本专利中使用句子“如此处所使用的,术语‘’在此被定义为指的是”或类似的句子来对一术语作出明确的定义,否则并没有将该术语的含义无论是明确地还是隐含地限于超出其一般或普通含义的意图,并且不应将该术语解释为限于以本专利的任何部分中(除了权利要求中的语言之外)所作出的任何叙述为基础的范围内。就在本专利末尾处的权利要求书中所提到的任何术语在本专利中都以与单数含义相一致的方式提及而言,这样做只是为了清楚,以便不会使读者混淆,而并非旨在通过限定、隐含或以其它方式来将该权利要求中的术语解释为该单数含义。最后,除非一权利要求要素是通过叙述单词“装置”和功能来限定的,而并没有任何结构叙述,否则并不旨在基于35U.S.C§112第6段的应用来对任何权利要求要素的范围进行解释。
图1示出了其上可实现用于所要求保护的方法和装置的步骤的系统的合适的计算系统环境100的示例。计算系统环境100只是合适的计算环境的一个示例,并非旨在对权利要求书中的方法或装置的使用范围或功能提出任何限制。也不应将该计算环境100解释为对涉及在该示例性计算环境100中说明的任何一个组件或组件组合具有任何依赖性或要求。
所要求保护的方法和装置的步骤是可与许多其它通用或专用计算系统环境或配置一起操作。可以适用于权利要求书的方法或装置的公知的计算系统、环境和/或配置的示例包括,但不限于,个人计算机、服务器计算器、手持式或膝上型设备、多处理器系统、基于微处理器的系统、机顶盒、可编程消费电子产品、网络PC、小型计算机、大型计算机、包含有上述系统或设备中的任何一种的分布式计算环境等。
所要求保护的方法和装置的步骤可以在诸如程序模块等由计算机执行的计算机可读指令的一般上下文中描述。一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等。该方法和装置还可以在其中任务由通过通信网络链接的远程处理设备来执行的分布式计算环境中实施。在分布式计算环境中,程序模块可以同时位于含有存储器存储设备的本地和远程计算机存储介质中。
参考图1,用于实现所要求保护的方法和装置的步骤的示例性系统包括计算机110形式的通用计算设备。计算机110的组件可以包括,但不限于,处理单元120、系统存储器130、和用于将包括系统存储器的各种系统组件耦合到处理单元120的系统总线121。系统总线121可以是各种类型的总线结构中的任意一种,包括存储器总线或存储器控制器、外围设备总线、和使用多种总线体系结构中的任意一种的局部总线。作为示例,而非限制,这种体系结构包括工业标准体系结构(ISA)总线、微通道体系结构(MCA)总线、增强型ISA(EISA)总线、视频电子技术标准协会(VESA)局部总线、和通常被称为夹层(Mazzanine)总线的外围部件互连(PCI)总线。
计算机110通常包括多种计算机可读介质。计算机可读介质可以是可被计算机110访问的任何可用介质,并包括易失性和非易失性介质、可移动和不可移动介质两者。作为示例,而非限制,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息的任何方法或技术来实现的易失性和非易失性、可移动和不可移动介质两者。计算机存储介质包括,但不限于,RAM、ROM、EEPRPM、闪存或其它存储器技术、CD-ROM、数字通用盘(DVD)或其它光盘存储、磁带盒、磁带、磁盘存储或其它磁性存储设备、或者可以用来存储期望信息并能被计算机110访问的任何其它介质。通信介质通常以诸如载波或其它传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其它数据,并包括所有信息传送介质。术语“已调制数据信号”指以将信息编码到信号中的方式来设置或改变其一个或多个特性的信号。作为示例,而非限制,通信介质包括有线介质,如有线网络或直接线连接等,还包括无线介质,如声学、射频(RF)、红外和其它无线介质。上面任意一种组合也应包含在计算机可读介质的范围内。
系统存储器130包括诸如只读存储器(ROM)131和随机存取存储器(RAM)132等易失性和/或非易失性存储器形式的计算机存储介质。含有诸如在启动期间帮助在计算机110内的各个元件之间传送信息的基本例程的基本输入/输出系统133(BIOS)通常存储在ROM 131中。RAM 132通常包含处理单元120立即可访问和/或目前正在操作的数据和/或程序模块。作为示例,而并非限制,图1说明了操作系统134、应用程序135、其它程序模块136及程序数据137。
计算机110还可以包括其它可移动/不可移动、易失性/非易失性计算机存储介质。仅作为示例,图1示出了可从不可移动、非易失性磁性介质中读取或向其写入的硬盘驱动器140;可从可移动、非易失性磁盘152中读取或向其写入的磁盘驱动器151;以及可从诸如CD ROM或其它光学介质等可移动、非易失性光盘156中读取或向其写入的光盘驱动器155。可以在该示例性操作环境中使用的其它可移动/不可移动、易失性/非易失性计算机存储介质包括,但不限于:磁带盒、闪存卡、数字通用盘、数字录像带、固态RAM、固态ROM等。硬盘驱动器141一般通过诸如接口140等不可移动存储器接口连接到系统总线121,而磁盘驱动器151和光盘驱动器155一般则通过诸如接口150等可移动存储器接口连接到系统总线121。
上述和在图1中示出的驱动器及与其相关联的计算机存储介质为计算机110提供了对计算机可读指令、数据结构、程序模块和其它数据的存储。在图1中,例如,将硬盘驱动器141示为存储操作系统144、应用程序145、其它程序模块146和程序数据147。应注意,这些组件既可以与操作系统134、应用程序135、其它程序模块136和程序数据137相同,也可以不相同。操作系统144、应用程序145、其它程序模块146和程序数据147在此被赋予了不同的标号,以至少说明它们是不同的副本。用户可以通过如键盘162和定点设备161(一般指鼠标、跟踪球或触摸垫)等输入设备将命令和信息输入到计算机20中。其它输入设备(未示出)可以包括:话筒、操纵杆、游戏手柄、圆盘式卫星天线、扫描仪等。这些和其它输入设备通常通过与系统总线耦合的用户输入接口160连接到处理单元120,但是也可以用如并行端口、游戏端口或通用串行总线(USB)等其它接口和总线结构来连接。监视器191或其它类型的显示设备通过诸如视频接口190等接口也连接到系统总线121。除监视器以外,计算机还可以包括可通过外围设备输出接口190连接的其它外围输出设备,如扬声器197和打印机196等。
计算机110可以使用到诸如远程计算机180等一个或多个远程计算机的逻辑连接在网络环境下操作。远程计算机180可以是个人计算机、服务器、路由器、网络PC、对等设备或其它常见的网络节点,并且通常包括前面相对于计算机110所描述的许多或所有元件,虽然在图1中仅示出了存储器设备181。图1所示的逻辑连接包括局域网(LAN)171和广域网(WAN)173,但也可以包括其它网络。这种网络环境在办公室、企业范围计算机网络、内联网和因特网中都是常见的。
当用于LAN网络环境时,计算机110通过网络接口或适配器170连接到LAN 171。而当用于WAN网络环境时,计算机110通常包括调制解调器172,或用于通过诸如因特网等WAN 173来建立通信的其它装置。调制解调器172可以是内置的或外置的,它可以通过用户输入接口160或其它合适的机制连接到系统总线121。在网络环境中,相对于计算机110所描述的程序模块或其部分可以存储在远程存储器存储设备中。作为示例,而并限制,图1示出远程应用程序185驻留在存储器存储设备181上。应意识到,所示的网络连接是示例性的,并且可以使用在各计算机之间建立通信链路的其它手段。
图2可以说明一种在存在具有数据存储速度分层结构的多种数据存储设备的情况下有效地存储数据的方法。存储器设备可以具有许多取舍选择。快速的存储器可能是昂贵的。慢速的存储器则可能是廉价的。在一理想的计算机中,所有存储器都应尽可能地快,但是这种计算机对于大多数使用来说都太过昂贵。此外,还存在所有需求仅是低价的、长期的存储的一些应用。结果是,计算机可具有各种存储器,如从接近处理器的超快存储器到诸如基于磁盘的存储器等慢速存储器。另外,计算机具有添加诸如便携式硬盘驱动器140和闪存设备152等更多且不同类型的存储器的能力。这些设备中的每一个都具有可以被最大化的执行和磨损特性。
例如,可将闪存152制造成两种常见的形式:或非(NOR)闪存和与非(NAND)闪存。也可以构想其他形式的闪存152。两种类型的闪存152和EEPROM都会因用于存储数据的电荷存储机制周围的绝缘氧化层上的磨损而在多次擦除操作后损坏。典型的或非闪存152单元可以在10,000-100,000次擦/写操作后损坏,而典型的与非闪存152则可以在1,000,000次后损坏。闪存152的一个局限是:虽然它可以用随机访问的方式每次被读取或编程一个字节或一个字,但却每次必须擦除一个“块”。从最新近被擦除的块开始,可对该块中的任何字节编程。然而,一旦某个字节已被编程,在擦除整个块以前,不能再次改变该字节。当与硬盘驱动器140相比时,闪存152的局限在于:它具有有限的擦一写周期数,因此须予以关注以便最小化擦/写周期数。
在其它设备中,写周期的缓慢性可以是确定优选写入大小时的一个因素。例如,如果需要大量的开销时间来设置写入功能,则能够通过最小化写入次数来节约时间,而该最小化是通过最大化要写入的数据的大小来实现的。类似地,在某些存储设备中,重复的小容量的保存可能导致数据分散在存储设备各处,这与在数据被连续存储(可能是更少次数、更大容量的保存的结果)时相比,可以导致更长的读取时间。此外,写周期可以加重处理器的负担,因此在高处理器使用期间,以更少的频率间隔、用更大的存储大小来进行频率较小的保存可能是有意义的。
再次参考硬盘驱动器140,如果不存在高速存储器,则对该硬盘140的每次写入都可能会涉及在系统等待硬盘140以访问该硬盘140上的正确位置并写入数据的同时的执行碰撞(performance hit)。在大多数驱动器上这至少要用10毫秒,这在计算机领域中这是很长的时间,并且的确可能在系统要等待硬盘时使执行变慢。
当诸如RAM 132等高速存储器可用时(也称为写入高速缓存被启用),在系统向硬盘140发送写入时,逻辑电路会将该写入记录在其更快速的高速缓存或者高速存储器132中,并随后立即向操作系统发回实际上表明“已完成”的确认。随后,系统的其余部分可以在不必等待致动器定位和硬盘旋转等的情况下继续工作,这可改善执行。然而,驱动器140在其还没有真正完成——即数据根本不在硬盘上,而只在高速缓存132中时,发回表明“已完成”的确认。硬盘140的逻辑电路开始向该硬盘写入数据,但当然这将花费一些时间。
典型的PC 100的使用涉及加载程序、以及频繁地加载和保存数据。所有这些操作都可能需要访问硬盘140。因此,硬盘140的执行成为问题。令CPU120的速度快得足以在其等待时能够处理两百万条指令不会使用户获益太多,除非CPU在那时有事情需要处理。其中硬盘140的执行问题是最重要的应用程序是诸如多媒体编辑应用程序等要向硬盘进行许多读写、而不是进行许多处理的应用程序,特别是那些要处理大量音频和视频文件的应用程序。
访问时间是表示反映定位在硬盘140中的随机执行的所有其它规范的合成。最常见的定义是:
访问时间=命令开销时间+寻道时间+稳定时间+等待时间
命令开销可以指从将命令交付给硬盘140直到一些事情实际开始发生以履行该命令所经过的时间。硬盘140的寻道时间可以测量读/写头在盘片表面上的各个磁道间移动所需要的时间量。在各磁道间进行切换要求磁头致动器能物理地移动磁头臂,由于这是机械过程,因此要花费一定量的时间。在两个磁道间进行切换所需要的时间量取决于各个磁道间的距离。然而,由于在磁道切换时涉及一定量的“开销”,因此其关系不是线性的。从磁道1切换到磁道3所要花费的时间可能不是从磁道1切换到磁道2所要花费的时间的两倍。
通常用毫秒(一般缩写为“msec”或“ms”)来表示寻道时间。当然,在现代PC 110中,毫秒是巨大的时间量,因为诸如RAM 132等高速系统存储器可以具有例如用纳秒(小一百万倍)来测量的速度。1GHz处理器(理论上)可以在一毫秒内执行超过一百万条的指令。寻道时间中甚至很小的减少都可以导致整个系统性能的改善,因为系统的其余部分经常要等待硬盘140。
硬盘140的盘片以高速旋转,并且该旋转速度可能与在随机访问硬盘140时将读/写头移动到正确柱面的过程并不同步。因此,在磁头到达正确柱面时,所需要的实际扇区可能会在任何地方。当致动器组件已完成其对正确磁道的寻道后,驱动器140可以等待正确扇区转回到读/写头所在的位置。这个时间称为等待时间。等待时间直接与驱动器的旋转速度有关,因此只受驱动器旋转特性的影响。因此,可以减少访问时间的任何动作都可以对系统性能具有较大的影响。
可用RAM 132的数量也可能会对能够存储到高速存储器中的数据的大小有影响。例如,如果系统只具有8k的高速RAM 132,则与系统具有512kb的高速RAM 132时相比必须发生更频繁的写操作,这仅仅是因为该RAM 132不能存储许多数据。
在框200处,该方法可以接收要存储到低速数据存储设备上的数据。例如,一文字处理文件可被指定为存储到硬盘驱动器140上。在框205处,可以将数据存储到高速存储器中。例如,该文字处理文件可以被存储在RAM 132中的高速缓存中。在框210处,该方法可以收集附加数据到高速存储器132中,直到存储了目的地为诸如硬盘驱动器140等特定低速数据设备的优选数量的数据。在框215处,该方法可以将数据存储到高速存储器132中,直到数据的大小是适合于特定存储设备的写入大小。如前所述,该优选数量的数据可以随设备变化。例如,优选写入大小可以是2的幂,诸如为128kb、256kb和512kb中的一个。在闪存示例中,该大小可以是闪存块的大小,以便可通过仅在整个闪存块都准备好存储时再写入到该闪存设备(而非多次擦/写操作)来使擦/写擦操作最少。在框220处,一旦将适合于该特定设备的写入大小的数据存储到高速存储器设备132中,可将数据写入到低速设备140中。
在框225处,该方法可以将数据保持在高速存储132中,直到确定该数据在高速存储器132中不再需要。例如,如果系统具有剩余RAM 132,则将那些已经写入到低速存储器140中的数据还保持在高速存储器132中可能不会再加重系统的负担。由于数据已经被存储到了低速存储器140中,因此该数据在高速存储器132中不再需要,但是不管怎样,为了方便用户,该数据也可以保留在那里。
在框230处是权利要求1中的方法,其中,将要写入到低速存储设备140的数据备份到附加低速存储设备140上。在一些情况中,用户或程序可以指示将数据存储到低速存储设备140上。该方法可以在写入低速存储器前等待最优数量的数据。同时,可以将诸如闪存单元152等低速存储器从系统中移除。在这些情况下,在附加低速存储设备中具有数据的备份可能是有好处的。可以将数据从高速存储器132移动到速度比高速存储器132低、但比该低速存储器高的附加存储器中。在框235处,当低速存储设备152在数据从高速存储器132写入到低速存储器设备152之前已经从系统中移除时,该方法可以警告用户还没来得及将数据写入到诸如闪存152等低速存储器设备中。在框240处,可以在移出低速存储器设备之前向用户呈现将数据从高速存储器132写入低速存储器152的选项。在框245处,该方法可以等待,直到写入到低速存储设备的低系统活动时段。
作为示例,用户或方法可以指示将一文字处理文件存储到闪存152上。本方法可以等待有足够的数据匹配用于闪存152的最优写入大小,因此如果该文字处理文件的大小小于该最优写入大小的大小,则可能不会立即将该数据写入到闪存152中。如果闪存152被移除,则可以警告用户还没来得及将数据写入到闪存152中。另外,数据可能已经被备份到一“中间”速度存储设备中,且该备份可以用于防止数据在高速存储设备132中时被盖写。
在框250处,该方法可以组织高速存储器132中的数据,使得对低速存储器140的写入更有效。这种组织可以像将高速存储器132中的数据重新排列为邻接的那样简单,以使向低速存储器140的传送可以更有效地进行。
在框255处,该方法可以分析高速存储器132中的数据,以便确定在数据被写入到低速存储器140之前该数据中的任一个是否被一较新的数据替换。在框260处,该方法可以分析高速存储器132中的数据,以便确定要写入到低速存储器140中的数据中的任意一个是否是重复数据,其中较旧的重复数据不被写入低速存储器140设备中。在框265处,该方法可以在写操作在高速存储器132中的块被提交给低速设备140之前影响这些块时使这些块无效。
在框270处,该方法可以将要写入低速存储器140中的数据的索引保持在高速存储器132中,并且如果要写入低速设备140的数据驻留在高速存储器132中,则该方法可以服务对来自高速存储器132的数据的读请求,而无需关心该数据是否已被写入低速存储器140中。
在框275处,该方法可以测试低速存储器140,以确定对于该低速存储器140的优选写入大小。例如,该方法可以询问闪存152什么是理想的擦/写大小。在框280处,该方法还可以使用来自低速存储设备140的指示来计算优选写入大小。例如,在如闪存152的示例中,该方法可以确定块是以1024字节的增量来擦除的,因此该方法可以确定保存操作应当以1024字节的增量发生。优选写入大小可能与低速存储器152的优选擦除大小有关。
虽然前文阐明了多种不同实施例的详细描述,但应了解,本专利的范围应由在本专利结尾处阐明的权利要求书中的文字来限定。该详细描述将被解释为只是示例性的,而并没有描述每一个可能的实施例,因为描述每一个可能的实施例即便不是不可能,也是不切实际的。无论使用现有技术,还是本专利申请日以后开发的技术,都能实现许多可选实施例,且这仍将落入权利要求书的范围。
因此,对在此描述和说明的技术和结构可以作出许多实施例和变化,而不会偏离该权利要求书的精神与范围。因此,应了解,在此描述的方法和装置只是说明性的,而并不会限制权利要求书的范围。
Claims (20)
1.一种在存在数据存储速度分层结构的多个数据存储设备的情况下有效地存储数据的方法,包括:
接收要存储在低速数据存储设备上的数据;
将所述数据存储到高速存储器中;
收集附加数据到所述高速存储器中,直到存储了目的地为一特定低速数据设备的优选数量的数据;
将所述数据存储在高速存储器中,直到所述数据的大小是适合于一特定存储设备的写入大小;以及
一旦在所述高速存储器设备中存储了适合于所述特定设备的写入大小的数据,将所述数据写入所述低速设备中。
2.如权利要求1所述的方法,其特征在于,还包括将所述数据保留在所述高速存储中,直到确定在高速存储中不再需要所述数据。
3.如权利要求1所述的方法,其特征在于,要被写入到所述低速存储设备的所述数据被备份在一附加低速存储设备上。
4.如权利要求1所述的方法,其特征在于,所述低速设备是闪存设备。
5.如权利要求4所述的方法,其特征在于,所述写入大小是所述闪存的擦除块大小。
6.如权利要求1所述的方法,其特征在于,还包括等待,直到写入所述低速存储设备的低系统活动时段。
7.如权利要求1所述的方法,其特征在于,还包括当一低速存储器设备在所述数据从所述高速存储器设备写入所述低速存储器设备之前已从所述系统中移除时,警告用户还没来得及将所述数据写入所述低速存储器设备中。
8.如权利要求7所述的方法,其特征在于,在将所述低速存储器设备移除之前,向所述用户呈现将所述数据从所述高速存储器写入所述低速存储器的选项。
9.如权利要求1所述的方法,其特征在于,还包括组织所述高速存储器中的所述数据,以使对所述低速存储器的写入更有效。
10.如权利要求1所述的方法,其特征在于,还包括分析所述高速存储器中的所述数据,以便确定在所述数据被写入所述低速存储器之前所述数据中的任意一个是否已被较新的数据替换。
11.如权利要求1所述的方法,其特征在于,还包括分析所述高速存储器中的所述数据,以便确定要写入所述低速存储器的所述数据中的任意一个是否是重复数据,其中较旧的重复数据不被写入所述低速存储器设备中。
12.如权利要求1所述的方法,其特征在于,还包括当写操作在所述高速存储器中的块被提交给所述低速存储器之前影响这些块时,令所述块无效。
13.如权利要求1所述的方法,其特征在于,还包括将所述数据从所述高速存储器移至一速度比所述高速存储器低、但比所述低速存储器高的附加存储器。
14.如权利要求1所述的方法,其特征在于,还包括将要写入低速存储器的数据的索引保持在高速存储器中,并且如果要写入所述低速设备中的所述数据驻留在所述高速存储器中,则服务对来自所述高速存储器的数据的读请求,而无需关心所述数据是否已被写入低速存储器中。
15.如权利要求1所述的方法,其特征在于,还包括测试所述低速存储器,以便确定对于所述低速存储器的优选写入大小。
16.如权利要求1所述的方法,其特征在于,还包括将所述优选写入大小计算为与所述低速存储器的优选擦除大小相关。
17.一种具有计算机可执行指令的计算机可读介质,所述指令用于在存在具有数据存储速度分层结构的多个数据存储设备的情况下有效地存储数据,所述计算机指令包括:
接收要存储到一低速数据存储设备上的数据;
将所述数据存储在高速存储器中;
收集附加数据到所述高速存储器中,直到存储了目的地为一特定低速数据设备的优选数量的数据;
将所述数据存储在高速存储器中,直到所述数据的大小是适合于一特定存储设备的写入大小;
分析所述高速存储器中的所述数据,以便确定在所述数据被写入到所述低速存储器之前所述数据中的任意一个是否已被较新的数据替换;以及
一旦在所述高速存储器设备中存储了适合于所述特定设备的写入大小的数据,将所述数据写入所述低速设备中。
18.如权利要求17所述的计算机可读介质,其特征在于,所述计算机指令还包括测试所述低速存储器,以便确定对于所述低速存储器的优选擦除和优选写入大小。
19.一种计算机系统,包括处理器、输入输出设备和存储器,所述处理器执行计算机可执行指令,且所述存储器存储计算机可执行指令,其中所述计算机可执行指令用于在存在具有数据存储速度分层结构的多个数据存储的情况下有效地存储数据,所述计算机指令包括:
接收要存储到一低速数据存储设备上的数据;
将所述数据存储在一高速存储器中;
测试所述低速存储器,以便确定对于所述低速存储器的优选擦除和优选写入大小;
收集附加数据到所述高速存储器中,直到存储了目的地为一特定低速数据设备的优选数量的数据;
将所述数据存储在所述高速存储器中,直到所述数据的大小是适合于一特定存储设备的写入大小;
分析所述高速存储器中的所述数据,以便在所述数据被写入到所述低速存储器前所述数据中的任意一个是否已被较新的数据替换;以及
一旦在所述高速存储器设备中存储了适合于所述特定设备的写入大小的数据,将所述数据写入所述低速设备中。
20.如权利要求19所述的计算机系统,其特征在于,所述计算机可执行指令还包括将要写入低速存储器的数据的索引保持在高速存储器中,并且如果要写入所述低速设备中的所述数据驻留在所述高速存储器中,则服务对来自所述高速存储器的数据的读请求,而无需关心所述数据是否已被写入低速存储器中。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/303,382 | 2005-12-16 | ||
US11/303,382 US8914557B2 (en) | 2005-12-16 | 2005-12-16 | Optimizing write and wear performance for a memory |
PCT/US2006/048402 WO2007075668A1 (en) | 2005-12-16 | 2006-12-18 | Optimizing write and wear performance for a memory |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101331463A true CN101331463A (zh) | 2008-12-24 |
CN101331463B CN101331463B (zh) | 2012-02-08 |
Family
ID=38218316
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2006800473846A Active CN101331463B (zh) | 2005-12-16 | 2006-12-18 | 优化存储器的写入和磨损性能 |
Country Status (10)
Country | Link |
---|---|
US (3) | US8914557B2 (zh) |
EP (1) | EP1960888B1 (zh) |
JP (1) | JP5254031B2 (zh) |
KR (1) | KR101422855B1 (zh) |
CN (1) | CN101331463B (zh) |
AU (1) | AU2006331830B2 (zh) |
DK (1) | DK1960888T3 (zh) |
IL (1) | IL191502A (zh) |
MY (1) | MY151964A (zh) |
WO (1) | WO2007075668A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102750112A (zh) * | 2012-05-30 | 2012-10-24 | 浪潮电子信息产业股份有限公司 | 一种san服务端闪存混合加速方法 |
CN111930300A (zh) * | 2020-06-28 | 2020-11-13 | 深圳佰维存储科技股份有限公司 | 数据写入方法、装置、计算机可读存储介质及电子设备 |
Families Citing this family (43)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7644239B2 (en) | 2004-05-03 | 2010-01-05 | Microsoft Corporation | Non-volatile memory cache performance improvement |
US7490197B2 (en) | 2004-10-21 | 2009-02-10 | Microsoft Corporation | Using external memory devices to improve system performance |
US7392338B2 (en) | 2006-07-31 | 2008-06-24 | Metaram, Inc. | Interface circuit system and method for autonomously performing power management operations in conjunction with a plurality of memory circuits |
US10013371B2 (en) | 2005-06-24 | 2018-07-03 | Google Llc | Configurable memory circuit system and method |
US8055833B2 (en) | 2006-10-05 | 2011-11-08 | Google Inc. | System and method for increasing capacity, performance, and flexibility of flash storage |
US8077535B2 (en) | 2006-07-31 | 2011-12-13 | Google Inc. | Memory refresh apparatus and method |
US9171585B2 (en) | 2005-06-24 | 2015-10-27 | Google Inc. | Configurable memory circuit system and method |
US8438328B2 (en) | 2008-02-21 | 2013-05-07 | Google Inc. | Emulation of abstracted DIMMs using abstracted DRAMs |
US8359187B2 (en) | 2005-06-24 | 2013-01-22 | Google Inc. | Simulating a different number of memory circuit devices |
US8130560B1 (en) | 2006-11-13 | 2012-03-06 | Google Inc. | Multi-rank partial width memory modules |
US20080028136A1 (en) | 2006-07-31 | 2008-01-31 | Schakel Keith R | Method and apparatus for refresh management of memory modules |
US8796830B1 (en) | 2006-09-01 | 2014-08-05 | Google Inc. | Stackable low-profile lead frame package |
US8386722B1 (en) | 2008-06-23 | 2013-02-26 | Google Inc. | Stacked DIMM memory interface |
US8060774B2 (en) | 2005-06-24 | 2011-11-15 | Google Inc. | Memory systems and memory modules |
US9507739B2 (en) | 2005-06-24 | 2016-11-29 | Google Inc. | Configurable memory circuit system and method |
US8335894B1 (en) | 2008-07-25 | 2012-12-18 | Google Inc. | Configurable memory system with interface circuit |
US8397013B1 (en) | 2006-10-05 | 2013-03-12 | Google Inc. | Hybrid memory module |
US8041881B2 (en) | 2006-07-31 | 2011-10-18 | Google Inc. | Memory device with emulated characteristics |
US8089795B2 (en) | 2006-02-09 | 2012-01-03 | Google Inc. | Memory module with memory stack and interface with enhanced capabilities |
US8081474B1 (en) | 2007-12-18 | 2011-12-20 | Google Inc. | Embossed heat spreader |
US8111566B1 (en) | 2007-11-16 | 2012-02-07 | Google, Inc. | Optimal channel design for memory devices for providing a high-speed memory interface |
US7386656B2 (en) | 2006-07-31 | 2008-06-10 | Metaram, Inc. | Interface circuit system and method for performing power management operations in conjunction with only a portion of a memory circuit |
US8090897B2 (en) | 2006-07-31 | 2012-01-03 | Google Inc. | System and method for simulating an aspect of a memory circuit |
US20080082763A1 (en) | 2006-10-02 | 2008-04-03 | Metaram, Inc. | Apparatus and method for power management of memory circuits by a system or component thereof |
US8327104B2 (en) | 2006-07-31 | 2012-12-04 | Google Inc. | Adjusting the timing of signals associated with a memory system |
US8244971B2 (en) | 2006-07-31 | 2012-08-14 | Google Inc. | Memory circuit system and method |
US9542352B2 (en) | 2006-02-09 | 2017-01-10 | Google Inc. | System and method for reducing command scheduling constraints of memory circuits |
GB2444663B (en) | 2005-09-02 | 2011-12-07 | Metaram Inc | Methods and apparatus of stacking drams |
US8914557B2 (en) | 2005-12-16 | 2014-12-16 | Microsoft Corporation | Optimizing write and wear performance for a memory |
US9632929B2 (en) | 2006-02-09 | 2017-04-25 | Google Inc. | Translating an address associated with a command communicated between a system and memory circuits |
US7724589B2 (en) | 2006-07-31 | 2010-05-25 | Google Inc. | System and method for delaying a signal communicated from a system to at least one of a plurality of memory circuits |
US8209479B2 (en) | 2007-07-18 | 2012-06-26 | Google Inc. | Memory circuit system and method |
US8080874B1 (en) | 2007-09-14 | 2011-12-20 | Google Inc. | Providing additional space between an integrated circuit and a circuit board for positioning a component therebetween |
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 |
US9256542B1 (en) * | 2008-09-17 | 2016-02-09 | Pmc-Sierra Us, Inc. | Adaptive intelligent storage controller and associated methods |
US7953774B2 (en) | 2008-09-19 | 2011-05-31 | Microsoft Corporation | Aggregation of write traffic to a data store |
EP2441007A1 (en) | 2009-06-09 | 2012-04-18 | Google, Inc. | Programming of dimm termination resistance values |
TWI485623B (zh) * | 2011-03-08 | 2015-05-21 | Compal Electronics Inc | 快速喚醒電腦系統方法與電腦系統 |
JP2012221333A (ja) * | 2011-04-12 | 2012-11-12 | Sony Corp | メモリ管理装置、メモリ管理方法、および、制御プログラム |
JP6000754B2 (ja) * | 2012-08-28 | 2016-10-05 | キヤノン株式会社 | 画像処理装置、画像処理装置の制御方法、及びプログラム |
JP7073952B2 (ja) * | 2018-07-09 | 2022-05-24 | 横河電機株式会社 | データ収集システム及びデータ収集方法 |
Family Cites Families (408)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS57161933A (en) | 1981-03-31 | 1982-10-05 | Fujitsu Ltd | Automatic program editing system |
JPS57161933U (zh) | 1981-04-06 | 1982-10-12 | ||
US4476526A (en) | 1981-11-27 | 1984-10-09 | Storage Technology Corporation | Cache buffered memory subsystem |
US4612612A (en) | 1983-08-30 | 1986-09-16 | Amdahl Corporation | Virtually addressed cache |
CH655845A5 (de) | 1983-11-17 | 1986-05-30 | Straumann Inst Ag | Einrichtung mit einem schraubstift zum einschrauben in einen zahn und einer spannvorrichtung zum halten des schraubstiftes. |
JPS60140466A (ja) | 1983-12-28 | 1985-07-25 | Toshiba Corp | 画像検索装置 |
JPS60140446U (ja) | 1984-02-29 | 1985-09-17 | タイガー魔法瓶株式会社 | スライド式テ−ブルを備えた収納庫 |
US4671111A (en) | 1984-10-12 | 1987-06-09 | Lemelson Jerome H | Vehicle performance monitor and method |
US4979108A (en) | 1985-12-20 | 1990-12-18 | Ag Communication Systems Corporation | Task synchronization arrangement and method for remote duplex processors |
JPH0635802Y2 (ja) | 1986-02-28 | 1994-09-21 | 池田物産株式会社 | 車輌用成形天井におけるブラケットの取付機構 |
JPS63201127A (ja) | 1987-02-17 | 1988-08-19 | Otsuka Pharmaceut Co Ltd | 5−フルオロウラシル誘導体を含有する制癌剤 |
US4972316A (en) | 1987-03-30 | 1990-11-20 | International Business Machines Corporation | Method of handling disk sector errors in DASD cache |
JP2501823B2 (ja) | 1987-05-20 | 1996-05-29 | 旭化成工業株式会社 | 裏面補強した金属複合alcパネル |
JPH0239256Y2 (zh) | 1988-02-29 | 1990-10-22 | ||
US4945474A (en) | 1988-04-08 | 1990-07-31 | Internatinal Business Machines Corporation | Method for restoring a database after I/O error employing write-ahead logging protocols |
JPH01267943A (ja) | 1988-04-19 | 1989-10-25 | Agency Of Ind Science & Technol | イオン源装置 |
JPH01303547A (ja) | 1988-05-31 | 1989-12-07 | Toshiba Corp | 情報記憶制御システム |
JPH0239256A (ja) | 1988-07-28 | 1990-02-08 | Toshiba Corp | メモリシステム |
US5394531A (en) | 1989-04-03 | 1995-02-28 | International Business Machines Corporation | Dynamic storage allocation system for a prioritized cache |
DE69034191T2 (de) * | 1989-04-13 | 2005-11-24 | Sandisk Corp., Sunnyvale | EEPROM-System mit aus mehreren Chips bestehender Blocklöschung |
JPH02273843A (ja) | 1989-04-14 | 1990-11-08 | Nec Corp | スワッピング装置 |
US5900870A (en) | 1989-06-30 | 1999-05-04 | Massachusetts Institute Of Technology | Object-oriented computer user interface |
JPH03147157A (ja) | 1989-11-02 | 1991-06-24 | Nec Eng Ltd | 情報処理装置 |
JP2781238B2 (ja) | 1990-01-08 | 1998-07-30 | 株式会社リコー | ファクシミリ多段中継方法 |
US5088026A (en) | 1990-02-09 | 1992-02-11 | International Business Machines Corporation | Method for managing a data cache using virtual external storage addresses as arguments |
JPH03294942A (ja) | 1990-04-12 | 1991-12-26 | Hitachi Ltd | ファイルバックアップ方式及び情報複写方式 |
US5307497A (en) | 1990-06-25 | 1994-04-26 | International Business Machines Corp. | Disk operating system loadable from read only memory using installable file system interface |
RU2010317C1 (ru) | 1990-07-20 | 1994-03-30 | Институт точной механики и вычислительной техники им.С.А.Лебедева РАН | Устройство управления буферной памятью |
JPH04205634A (ja) | 1990-11-30 | 1992-07-27 | Matsushita Electric Ind Co Ltd | 記憶装置制御方法 |
JPH04246746A (ja) | 1991-02-01 | 1992-09-02 | Hitachi Ltd | 記憶装置システム |
JPH05229066A (ja) | 1991-04-02 | 1993-09-07 | Dainippon Printing Co Ltd | 化粧シート |
US5263136A (en) | 1991-04-30 | 1993-11-16 | Optigraphics Corporation | System for managing tiled images using multiple resolutions |
US5764877A (en) | 1991-06-25 | 1998-06-09 | Digital Equipment Corporation | Media recovery with time-split B-trees |
JP2582487B2 (ja) | 1991-07-12 | 1997-02-19 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 半導体メモリを用いた外部記憶システム及びその制御方法 |
JPH0562329A (ja) | 1991-08-29 | 1993-03-12 | Hitachi Ltd | データ処理装置 |
JP2995942B2 (ja) | 1991-09-10 | 1999-12-27 | セイコーエプソン株式会社 | 文書印刷システム及びその方法 |
US6230233B1 (en) * | 1991-09-13 | 2001-05-08 | Sandisk Corporation | Wear leveling techniques for flash EEPROM systems |
JPH0582329A (ja) | 1991-09-20 | 1993-04-02 | Furukawa Electric Co Ltd:The | 酸化物系超電導体コイルの製造方法 |
JPH0594353A (ja) | 1991-10-02 | 1993-04-16 | Hokkaido Nippon Denki Software Kk | データベース管理方式 |
US5297258A (en) | 1991-11-21 | 1994-03-22 | Ast Research, Inc. | Data logging for hard disk data storage systems |
JP3451099B2 (ja) | 1991-12-06 | 2003-09-29 | 株式会社日立製作所 | 外部記憶サブシステム |
EP0547992A3 (en) | 1991-12-17 | 1993-12-01 | Ibm | Method and system for enhanced efficiency of data recovery in balanced tree memory structures |
JPH0559537U (ja) | 1992-01-10 | 1993-08-06 | 三菱電機株式会社 | 計算機 |
JPH05226066A (ja) | 1992-02-18 | 1993-09-03 | Matsushita Electric Ind Co Ltd | ヒータユニット |
JP2839060B2 (ja) | 1992-03-02 | 1998-12-16 | インターナショナル・ビジネス・マシーンズ・コーポレイション | データ処理システムおよびデータ処理方法 |
WO1993018461A1 (en) | 1992-03-09 | 1993-09-16 | Auspex Systems, Inc. | High-performance non-volatile ram protected write cache accelerator system |
JP3485938B2 (ja) | 1992-03-31 | 2004-01-13 | 株式会社東芝 | 不揮発性半導体メモリ装置 |
US5420998A (en) | 1992-04-10 | 1995-05-30 | Fujitsu Limited | Dual memory disk drive |
US5398325A (en) | 1992-05-07 | 1995-03-14 | Sun Microsystems, Inc. | Methods and apparatus for improving cache consistency using a single copy of a cache tag memory in multiple processor computer systems |
JPH0635802A (ja) | 1992-07-21 | 1994-02-10 | Hitachi Ltd | 複数キャッシュ付きディスク制御装置 |
US5574877A (en) | 1992-09-25 | 1996-11-12 | Silicon Graphics, Inc. | TLB with two physical pages per virtual tag |
US5454098A (en) | 1992-09-28 | 1995-09-26 | Conner Peripherals, Inc. | Method of emulating access to a sequential access data storage device while actually using a random access storage device |
US5561783A (en) | 1992-11-16 | 1996-10-01 | Intel Corporation | Dynamic cache coherency method and apparatus using both write-back and write-through operations |
US5751932A (en) | 1992-12-17 | 1998-05-12 | Tandem Computers Incorporated | Fail-fast, fail-functional, fault-tolerant multiprocessor system |
US5463739A (en) | 1992-12-22 | 1995-10-31 | International Business Machines Corporation | Apparatus for vetoing reallocation requests during a data transfer based on data bus latency and the number of received reallocation requests below a threshold |
JPH06236351A (ja) | 1993-02-10 | 1994-08-23 | Hitachi Ltd | オンラインシステムのバックアップリストア装置 |
US5557770A (en) | 1993-03-24 | 1996-09-17 | International Business Machines Corporation | Disk storage apparatus and method for converting random writes to sequential writes while retaining physical clustering on disk |
KR970008188B1 (ko) | 1993-04-08 | 1997-05-21 | 가부시끼가이샤 히다찌세이사꾸쇼 | 플래시메모리의 제어방법 및 그것을 사용한 정보처리장치 |
JP3600257B2 (ja) | 1993-05-31 | 2004-12-15 | 富士通株式会社 | 情報処理装置及びキャッシュ制御装置 |
US5636355A (en) | 1993-06-30 | 1997-06-03 | Digital Equipment Corporation | Disk cache management techniques using non-volatile storage |
US5551002A (en) | 1993-07-01 | 1996-08-27 | Digital Equipment Corporation | System for controlling a write cache and merging adjacent data blocks for write operations |
US5572660A (en) * | 1993-10-27 | 1996-11-05 | Dell Usa, L.P. | System and method for selective write-back caching within a disk array subsystem |
JPH086854A (ja) | 1993-12-23 | 1996-01-12 | Unisys Corp | アウトボードファイルキャッシュ外部処理コンプレックス |
US6026027A (en) * | 1994-01-31 | 2000-02-15 | Norand Corporation | Flash memory system having memory cache |
ATE220811T1 (de) | 1994-02-22 | 2002-08-15 | Advanced Micro Devices Inc | Virtuelle speicheranordnung |
US6185629B1 (en) | 1994-03-08 | 2001-02-06 | Texas Instruments Incorporated | Data transfer controller employing differing memory interface protocols dependent upon external input at predetermined time |
JPH07253935A (ja) | 1994-03-15 | 1995-10-03 | Toshiba Corp | コンピュータのデータ保護装置 |
US5751990A (en) | 1994-04-26 | 1998-05-12 | International Business Machines Corporation | Abridged virtual address cache directory |
US5603001A (en) | 1994-05-09 | 1997-02-11 | Kabushiki Kaisha Toshiba | Semiconductor disk system having a plurality of flash memories |
US5642501A (en) | 1994-07-26 | 1997-06-24 | Novell, Inc. | Computer method and apparatus for asynchronous ordered operations |
US5897640A (en) | 1994-08-08 | 1999-04-27 | Microsoft Corporation | Method and system of associating, synchronizing and reconciling computer files in an operating system |
JPH10507566A (ja) | 1994-10-18 | 1998-07-21 | アイオメガ コーポレイション | ディスクカートリッジの検出方法および装置 |
JPH08137634A (ja) * | 1994-11-09 | 1996-05-31 | Mitsubishi Electric Corp | フラッシュディスクカード |
DE4447091C1 (de) | 1994-12-29 | 1996-05-23 | Duerkopp Adler Ag | Einrichtung zum Ausschleusen von aus einer Fördertasche abgeworfenem Fördergut aus einer Hängeförderanlage |
JPH08195068A (ja) | 1995-01-20 | 1996-07-30 | Pioneer Electron Corp | オーディオ信号混合装置 |
JPH11500548A (ja) | 1995-01-23 | 1999-01-12 | タンデム コンピューターズ インコーポレイテッド | データベース完全性の保守用システム |
JPH08236351A (ja) | 1995-02-28 | 1996-09-13 | Toshiba Corp | 変流器鉄心の残留磁束の消去方法及び減磁装置 |
JP3426385B2 (ja) | 1995-03-09 | 2003-07-14 | 富士通株式会社 | ディスク制御装置 |
JPH08263380A (ja) | 1995-03-22 | 1996-10-11 | Mitsubishi Electric Corp | ディスクキャッシュ制御方式 |
US5897660A (en) | 1995-04-07 | 1999-04-27 | Intel Corporation | Method for managing free physical pages that reduces trashing to improve system performance |
US6078925A (en) | 1995-05-01 | 2000-06-20 | International Business Machines Corporation | Computer program product for database relational extenders |
US5917723A (en) | 1995-05-22 | 1999-06-29 | Lsi Logic Corporation | Method and apparatus for transferring data between two devices with reduced microprocessor overhead |
US5758174A (en) | 1995-06-07 | 1998-05-26 | International Business Machines Corporation | Computer system having a plurality of stored system capability states from which to resume |
US5608892A (en) | 1995-06-09 | 1997-03-04 | Alantec Corporation | Active cache for a microprocessor |
US5720029A (en) | 1995-07-25 | 1998-02-17 | International Business Machines Corporation | Asynchronously shadowing record updates in a remote copy session using track arrays |
US5765151A (en) | 1995-08-17 | 1998-06-09 | Sun Microsystems, Inc. | System and method for file system fix-on-panic for a computer operating system |
EP0764907A1 (en) | 1995-09-22 | 1997-03-26 | International Business Machines Corporation | Method and system for error recovery in a data processing system |
US5809280A (en) | 1995-10-13 | 1998-09-15 | Compaq Computer Corporation | Adaptive ahead FIFO with LRU replacement |
US5717954A (en) | 1995-10-13 | 1998-02-10 | Compaq Computer Corporation | Locked exchange FIFO |
JP3704767B2 (ja) | 1995-11-16 | 2005-10-12 | ソニー株式会社 | 情報記録装置 |
US5754782A (en) | 1995-12-04 | 1998-05-19 | International Business Machines Corporation | System and method for backing up and restoring groupware documents |
US5860095A (en) | 1996-01-02 | 1999-01-12 | Hewlett-Packard Company | Conflict cache having cache miscounters for a computer memory system |
US5754888A (en) | 1996-01-18 | 1998-05-19 | The Board Of Governors For Higher Education, State Of Rhode Island And Providence Plantations | System for destaging data during idle time by transferring to destage buffer, marking segment blank , reodering data in buffer, and transferring to beginning of segment |
US5764505A (en) | 1996-01-23 | 1998-06-09 | Cymer, Inc. | Gas discharge laser control systems using multiple CPU's with shared memory on a common bus |
US5758056A (en) | 1996-02-08 | 1998-05-26 | Barr; Robert C. | Memory system having defective address identification and replacement |
US5806074A (en) | 1996-03-19 | 1998-09-08 | Oracle Corporation | Configurable conflict resolution in a computer implemented distributed database |
US6247026B1 (en) | 1996-10-11 | 2001-06-12 | Sun Microsystems, Inc. | Method, apparatus, and product for leasing of delegation certificates in a distributed system |
KR0174711B1 (ko) | 1996-04-24 | 1999-04-15 | 김광호 | 하드디스크 캐시의 제어방법 |
US5778070A (en) | 1996-06-28 | 1998-07-07 | Intel Corporation | Method and apparatus for protecting flash memory |
JPH1040170A (ja) | 1996-07-26 | 1998-02-13 | Toshiba Corp | ディスクキャッシュシステム |
US6026293A (en) | 1996-09-05 | 2000-02-15 | Ericsson Inc. | System for preventing electronic memory tampering |
US5832515A (en) | 1996-09-12 | 1998-11-03 | Veritas Software | Log device layered transparently within a filesystem paradigm |
US6021408A (en) | 1996-09-12 | 2000-02-01 | Veritas Software Corp. | Methods for operating a log device |
JPH1091488A (ja) | 1996-09-12 | 1998-04-10 | Sony Corp | データ処理装置および方法 |
US5996054A (en) | 1996-09-12 | 1999-11-30 | Veritas Software Corp. | Efficient virtualized mapping space for log device data storage system |
US6321234B1 (en) | 1996-09-18 | 2001-11-20 | Sybase, Inc. | Database server system with improved methods for logging transactions |
GB2317720A (en) * | 1996-09-30 | 1998-04-01 | Nokia Mobile Phones Ltd | Managing Flash memory |
GB2317722B (en) * | 1996-09-30 | 2001-07-18 | Nokia Mobile Phones Ltd | Memory device |
US6112024A (en) | 1996-10-02 | 2000-08-29 | Sybase, Inc. | Development system providing methods for managing different versions of objects with a meta model |
US5832529A (en) | 1996-10-11 | 1998-11-03 | Sun Microsystems, Inc. | Methods, apparatus, and product for distributed garbage collection |
JPH10154101A (ja) | 1996-11-26 | 1998-06-09 | Toshiba Corp | データ記憶システム及び同システムに適用するキャッシュ制御方法 |
JPH10177563A (ja) | 1996-12-17 | 1998-06-30 | Mitsubishi Electric Corp | フラッシュメモリ内蔵マイクロコンピュータ |
US6073232A (en) | 1997-02-25 | 2000-06-06 | International Business Machines Corporation | Method for minimizing a computer's initial program load time after a system reset or a power-on using non-volatile storage |
US5943687A (en) | 1997-03-14 | 1999-08-24 | Telefonakiebolaget Lm Ericsson | Penalty-based cache storage and replacement techniques |
US5940856A (en) | 1997-04-14 | 1999-08-17 | International Business Machines Corporation | Cache intervention from only one of many cache lines sharing an unmodified value |
US6345000B1 (en) | 1997-04-16 | 2002-02-05 | Sandisk Corporation | Flash memory permitting simultaneous read/write and erase operations in a single memory array |
US5943692A (en) | 1997-04-30 | 1999-08-24 | International Business Machines Corporation | Mobile client computer system with flash memory management utilizing a virtual address map and variable length data |
US5991847A (en) | 1997-06-06 | 1999-11-23 | Acceleration Software International Corporation | Data pattern caching for speeding up write operations |
US5897638A (en) | 1997-06-16 | 1999-04-27 | Ab Initio Software Corporation | Parallel virtual file 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 |
US6879266B1 (en) | 1997-08-08 | 2005-04-12 | Quickshift, Inc. | Memory module including scalable embedded parallel data compression and decompression engines |
US6000006A (en) * | 1997-08-25 | 1999-12-07 | Bit Microsystems, Inc. | Unified re-map and cache-index table with dual write-counters for wear-leveling of non-volatile flash RAM mass storage |
KR19990019377A (ko) * | 1997-08-29 | 1999-03-15 | 윤종용 | 플래시 메모리 이용 보조기억장치 및 그 방법 |
US6240414B1 (en) | 1997-09-28 | 2001-05-29 | Eisolutions, Inc. | Method of resolving data conflicts in a shared data environment |
US6189071B1 (en) | 1997-10-06 | 2001-02-13 | Emc Corporation | Method for maximizing sequential output in a disk array storage device |
US6108004A (en) | 1997-10-21 | 2000-08-22 | International Business Machines Corporation | GUI guide for data mining |
FR2770952B1 (fr) | 1997-11-12 | 2000-01-21 | Adl Systeme Sa | Dispositif de tele-ecriture |
US6560702B1 (en) | 1997-12-10 | 2003-05-06 | Phoenix Technologies Ltd. | Method and apparatus for execution of an application during computer pre-boot operation |
US6098075A (en) | 1997-12-16 | 2000-08-01 | International Business Machines Corporation | Deferred referential integrity checking based on determining whether row at-a-time referential integrity checking would yield the same results as deferred integrity checking |
US6567889B1 (en) | 1997-12-19 | 2003-05-20 | Lsi Logic Corporation | Apparatus and method to provide virtual solid state disk in cache memory in a storage controller |
US6018746A (en) | 1997-12-23 | 2000-01-25 | Unisys Corporation | System and method for managing recovery information in a transaction processing system |
US6006291A (en) | 1997-12-31 | 1999-12-21 | Intel Corporation | High-throughput interface between a system memory controller and a peripheral device |
US6205527B1 (en) | 1998-02-24 | 2001-03-20 | Adaptec, Inc. | Intelligent backup and restoring system and method for implementing the same |
US6272534B1 (en) | 1998-03-04 | 2001-08-07 | Storage Technology Corporation | Method and system for efficiently storing web pages for quick downloading at a remote device |
US7007072B1 (en) | 1999-07-27 | 2006-02-28 | Storage Technology Corporation | Method and system for efficiently storing web pages for quick downloading at a remote device |
US6959318B1 (en) | 1998-03-06 | 2005-10-25 | Intel Corporation | Method of proxy-assisted predictive pre-fetching with transcoding |
JP2918531B1 (ja) | 1998-03-13 | 1999-07-12 | 三菱電機株式会社 | キャッシュメモリ制御装置 |
JP2995033B2 (ja) | 1998-03-16 | 1999-12-27 | 三洋電機株式会社 | デジタルカメラ |
US6298428B1 (en) | 1998-03-30 | 2001-10-02 | International Business Machines Corporation | Method and apparatus for shared persistent virtual storage on existing operating systems |
US6360330B1 (en) | 1998-03-31 | 2002-03-19 | Emc Corporation | System and method for backing up data stored in multiple mirrors on a mass storage subsystem under control of a backup server |
US6138125A (en) | 1998-03-31 | 2000-10-24 | Lsi Logic Corporation | Block coding method and system for failure recovery in disk arrays |
US6263342B1 (en) | 1998-04-01 | 2001-07-17 | International Business Machines Corp. | Federated searching of heterogeneous datastores using a federated datastore object |
US6128627A (en) | 1998-04-15 | 2000-10-03 | Inktomi Corporation | Consistent data storage in an object cache |
US6101601A (en) | 1998-04-20 | 2000-08-08 | International Business Machines Corporation | Method and apparatus for hibernation within a distributed data processing system |
JPH11316699A (ja) | 1998-05-01 | 1999-11-16 | Hiroaki Horikoshi | データベース作成方法、データベース作成システムおよびデータベース作成プログラムを記録したプログラム記録媒体 |
US6122685A (en) | 1998-05-06 | 2000-09-19 | Emc Corporation | System for improving the performance of a disk storage device by reconfiguring a logical volume of data in response to the type of operations being performed |
KR100283243B1 (ko) | 1998-05-11 | 2001-03-02 | 구자홍 | 운영체제의 부팅방법 |
JP3404289B2 (ja) | 1998-05-22 | 2003-05-06 | 富士通株式会社 | ディスク制御装置及びその制御方法 |
US6314433B1 (en) | 1998-06-12 | 2001-11-06 | Hewlett-Packard Company | Frame-based heroic data recovery |
FR2780178B1 (fr) | 1998-06-18 | 2001-08-10 | Inst Nat Rech Inf Automat | Procede de transformation et d'acheminement de donnees entre des serveurs d'agents presents sur des machines et un serveur d'agent central present sur une autre machine |
US6425057B1 (en) | 1998-08-27 | 2002-07-23 | Hewlett-Packard Company | Caching protocol method and system based on request frequency and relative storage duration |
US6209088B1 (en) | 1998-09-21 | 2001-03-27 | Microsoft Corporation | Computer hibernation implemented by a computer operating system |
US6714935B1 (en) | 1998-09-21 | 2004-03-30 | Microsoft Corporation | Management of non-persistent data in a persistent database |
US6519597B1 (en) | 1998-10-08 | 2003-02-11 | International Business Machines Corporation | Method and apparatus for indexing structured documents with rich data types |
JP3175764B2 (ja) | 1998-11-06 | 2001-06-11 | 日本電気株式会社 | メモリスケジューリング方法及びメモリスケジューリングプログラムを格納する記憶媒体 |
US6249841B1 (en) * | 1998-12-03 | 2001-06-19 | Ramtron International Corporation | Integrated circuit memory device and method incorporating flash and ferroelectric random access memory arrays |
US6338056B1 (en) | 1998-12-14 | 2002-01-08 | International Business Machines Corporation | Relational database extender that supports user-defined index types and user-defined search |
KR20000039727A (ko) * | 1998-12-15 | 2000-07-05 | 구자홍 | 플래시 메모리 접근 방법 |
US6279081B1 (en) | 1998-12-22 | 2001-08-21 | Hewlett-Packard Company | System and method for performing memory fetches for an ATM card |
US6378043B1 (en) | 1998-12-31 | 2002-04-23 | Oracle Corporation | Reward based cache management |
US6463509B1 (en) * | 1999-01-26 | 2002-10-08 | Motive Power, Inc. | Preloading data in a cache memory according to user-specified preload criteria |
JP3543661B2 (ja) | 1999-03-05 | 2004-07-14 | 日本電気株式会社 | 交換機ファイルシステムにおけるバッファキャッシュ方法および装置 |
US6640278B1 (en) | 1999-03-25 | 2003-10-28 | Dell Products L.P. | Method for configuration and management of storage resources in a storage network |
US20030070065A1 (en) | 1999-03-31 | 2003-04-10 | Fleming Bruce L. | Suspending to nonvolatile storage |
US6401093B1 (en) | 1999-03-31 | 2002-06-04 | International Business Machines Corporation | Cross file system caching and synchronization |
US6295578B1 (en) | 1999-04-09 | 2001-09-25 | Compaq Computer Corporation | Cascaded removable media data storage system |
US6535949B1 (en) | 1999-04-19 | 2003-03-18 | Research In Motion Limited | Portable electronic device having a log-structured file system in flash memory |
US6237065B1 (en) | 1999-05-14 | 2001-05-22 | Hewlett-Packard Company | Preemptive replacement strategy for a caching dynamic translator |
US6317806B1 (en) | 1999-05-20 | 2001-11-13 | International Business Machines Corporation | Static queue and index queue for storing values identifying static queue locations |
US6381605B1 (en) | 1999-05-29 | 2002-04-30 | Oracle Corporation | Heirarchical indexing of multi-attribute data by sorting, dividing and storing subsets |
US6370534B1 (en) | 1999-06-01 | 2002-04-09 | Pliant Technologies, Inc. | Blocking techniques for data storage |
US6438750B1 (en) | 1999-06-18 | 2002-08-20 | Phoenix Technologies Ltd. | Determining loading time of an operating system |
TW479194B (en) | 1999-06-18 | 2002-03-11 | Phoenix Tech Ltd | Method and apparatus for execution of an application during computer pre-boot operation |
JP3204251B2 (ja) | 1999-06-30 | 2001-09-04 | インターナショナル・ビジネス・マシーンズ・コーポレーション | ハイバネーション装置及び方法、それを格納した記録媒体並びにそれを適用したコンピュータ |
US6199195B1 (en) | 1999-07-08 | 2001-03-06 | Science Application International Corporation | Automatically generated objects within extensible object frameworks and links to enterprise resources |
JP3812928B2 (ja) | 1999-07-14 | 2006-08-23 | 株式会社日立製作所 | 外部記憶装置及び情報処理システム |
US6513051B1 (en) | 1999-07-16 | 2003-01-28 | Microsoft Corporation | Method and system for backing up and restoring files stored in a single instance store |
US6311232B1 (en) | 1999-07-29 | 2001-10-30 | Compaq Computer Corporation | Method and apparatus for configuring storage devices |
US6542904B2 (en) | 1999-07-30 | 2003-04-01 | International Business Machines Corporation | Method and system for efficiently providing maintenance activity on a relational database that is utilized within a processing system |
AU774090B2 (en) | 1999-08-05 | 2004-06-17 | Oracle International Corporation | Internet file system |
JP3239335B2 (ja) | 1999-08-18 | 2001-12-17 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 電気的接続用構造体の形成方法およびはんだ転写用基板 |
JP2001067258A (ja) | 1999-08-25 | 2001-03-16 | Mitsubishi Electric Corp | フラッシュメモリ内蔵半導体装置及びフラッシュメモリアドレス変換方法 |
US6370541B1 (en) | 1999-09-21 | 2002-04-09 | International Business Machines Corporation | Design and implementation of a client/server framework for federated multi-search and update across heterogeneous datastores |
US6539456B2 (en) | 1999-10-13 | 2003-03-25 | Intel Corporation | Hardware acceleration of boot-up utilizing a non-volatile disk cache |
US6751658B1 (en) | 1999-10-18 | 2004-06-15 | Apple Computer, Inc. | Providing a reliable operating system for clients of a net-booted environment |
US6625742B1 (en) | 1999-11-05 | 2003-09-23 | Hewlett-Packard Development Company, L.P. | Computer diagnostic having an LED to provide direct visual feedback as to the status of the standby power supply when power button is actuated |
US6338126B1 (en) | 1999-12-06 | 2002-01-08 | Legato Systems, Inc. | Crash recovery without complete remirror |
JP2003517682A (ja) | 1999-12-17 | 2003-05-27 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | キャッシュを有するデータプロセッサ |
US6631474B1 (en) | 1999-12-31 | 2003-10-07 | Intel Corporation | System to coordinate switching between first and second processors and to coordinate cache coherency between first and second processors during switching |
JP3562419B2 (ja) | 2000-02-01 | 2004-09-08 | 日本電気株式会社 | 電子交換機 |
US6556983B1 (en) | 2000-01-12 | 2003-04-29 | Microsoft Corporation | Methods and apparatus for finding semantic information, such as usage logs, similar to a query using a pattern lattice data space |
US6609182B1 (en) | 2000-01-20 | 2003-08-19 | Microsoft Corporation | Smart hibernation on an operating system with page translation |
US6366996B1 (en) | 2000-01-24 | 2002-04-02 | Pmc-Sierra, Inc. | Page memory management in non time critical data buffering applications |
US6671757B1 (en) | 2000-01-26 | 2003-12-30 | Fusionone, Inc. | Data transfer and synchronization system |
US6694336B1 (en) | 2000-01-25 | 2004-02-17 | Fusionone, Inc. | Data transfer and synchronization system |
AU2001233131A1 (en) | 2000-02-02 | 2001-08-14 | Sony Electronics Inc. | System and method for effectively utilizing a cache memory in an electronic device |
AU2000224587A1 (en) | 2000-02-04 | 2001-08-14 | Hitachi Ltd. | Semiconductor device |
JP4131894B2 (ja) | 2000-02-29 | 2008-08-13 | 株式会社東芝 | ランダムディスクライトに好適なディスク制御機構 |
JP4078010B2 (ja) | 2000-03-03 | 2008-04-23 | 株式会社日立グローバルストレージテクノロジーズ | 磁気ディスク装置及び情報記録方法 |
US6633978B1 (en) | 2000-03-31 | 2003-10-14 | Hewlett-Packard Development Company, L.P. | Method and apparatus for restoring computer resources |
US6684294B1 (en) | 2000-03-31 | 2004-01-27 | Intel Corporation | Using an access log for disk drive transactions |
US6718361B1 (en) | 2000-04-07 | 2004-04-06 | Network Appliance Inc. | Method and apparatus for reliable and scalable distribution of data files in distributed networks |
US6820088B1 (en) | 2000-04-10 | 2004-11-16 | Research In Motion Limited | System and method for synchronizing data records between multiple databases |
US7421541B2 (en) | 2000-05-12 | 2008-09-02 | Oracle International Corporation | Version management of cached permissions metadata |
US6629201B2 (en) | 2000-05-15 | 2003-09-30 | Superspeed Software, Inc. | System and method for high-speed substitute cache |
KR100694043B1 (ko) | 2000-05-18 | 2007-03-12 | 삼성전자주식회사 | Av 시스템 및 그 기능 확장 모듈 |
US6671699B1 (en) | 2000-05-20 | 2003-12-30 | Equipe Communications Corporation | Shared database usage in network devices |
US6715016B1 (en) | 2000-06-01 | 2004-03-30 | Hitachi, Ltd. | Multiple operating system control method |
JP3705731B2 (ja) | 2000-06-05 | 2005-10-12 | 富士通株式会社 | 入出力制御装置 |
US7412369B1 (en) * | 2000-06-09 | 2008-08-12 | Stmicroelectronics, Inc. | System and method for designing and optimizing the memory of an embedded processing system |
JP4394806B2 (ja) | 2000-06-22 | 2010-01-06 | 独立行政法人科学技術振興機構 | バックアップ装置 |
TW576966B (en) | 2000-06-23 | 2004-02-21 | Intel Corp | Non-volatile cache integrated with mass storage device |
WO2002001365A2 (en) | 2000-06-23 | 2002-01-03 | Intel Corporation | Non-volatile cache |
US6557077B1 (en) | 2000-07-07 | 2003-04-29 | Lsi Logic Corporation | Transportable memory apparatus and associated methods of initializing a computer system having the same |
US6928521B1 (en) | 2000-08-01 | 2005-08-09 | International Business Machines Corporation | Method, system, and data structures for using metadata in updating data in a storage device |
US6418510B1 (en) | 2000-09-14 | 2002-07-09 | International Business Machines Corporation | Cooperative cache and rotational positioning optimization (RPO) scheme for a direct access storage device (DASD) |
US6725342B1 (en) | 2000-09-26 | 2004-04-20 | Intel Corporation | Non-volatile mass storage cache coherency apparatus |
US6434682B1 (en) | 2000-09-28 | 2002-08-13 | International Business Machines Corporation | Data management system with shortcut migration via efficient automatic reconnection to previously migrated copy |
US7574272B2 (en) | 2000-10-13 | 2009-08-11 | Eric Paul Gibbs | System and method for data transfer optimization in a portable audio device |
US7043524B2 (en) | 2000-11-06 | 2006-05-09 | Omnishift Technologies, Inc. | Network caching system for streamed applications |
US6999956B2 (en) | 2000-11-16 | 2006-02-14 | Ward Mullins | Dynamic object-driven database manipulation and mapping system |
US6629198B2 (en) | 2000-12-08 | 2003-09-30 | Sun Microsystems, Inc. | Data storage system and method employing a write-ahead hash log |
US7178100B2 (en) | 2000-12-15 | 2007-02-13 | Call Charles G | Methods and apparatus for storing and manipulating variable length and fixed length data elements as a sequence of fixed length integers |
US6871271B2 (en) | 2000-12-21 | 2005-03-22 | Emc Corporation | Incrementally restoring a mass storage device to a prior state |
JP2002197073A (ja) | 2000-12-25 | 2002-07-12 | Hitachi Ltd | キャッシュ一致制御装置 |
US6651141B2 (en) | 2000-12-29 | 2003-11-18 | Intel Corporation | System and method for populating cache servers with popular media contents |
US6546472B2 (en) | 2000-12-29 | 2003-04-08 | Hewlett-Packard Development Company, L.P. | Fast suspend to disk |
WO2002057917A2 (en) | 2001-01-22 | 2002-07-25 | Sun Microsystems, Inc. | Peer-to-peer network computing platform |
US6516380B2 (en) | 2001-02-05 | 2003-02-04 | International Business Machines Corporation | System and method for a log-based non-volatile write cache in a storage controller |
US6877081B2 (en) | 2001-02-13 | 2005-04-05 | International Business Machines Corporation | System and method for managing memory compression transparent to an operating system |
US6918022B2 (en) | 2001-02-28 | 2005-07-12 | Intel Corporation | Memory space organization |
JP2002259186A (ja) | 2001-03-06 | 2002-09-13 | Hitachi Ltd | Tree構造型インデクスの整合性チェック処理方法およびプログラムおよび装置 |
US6877111B2 (en) | 2001-03-26 | 2005-04-05 | Sun Microsystems, Inc. | Method and apparatus for managing replicated and migration capable session state for a Java platform |
US6996660B1 (en) | 2001-04-09 | 2006-02-07 | Matrix Semiconductor, Inc. | Memory device and method for storing and reading data in a write-once memory array |
US6584034B1 (en) | 2001-04-23 | 2003-06-24 | Aplus Flash Technology Inc. | Flash memory array structure suitable for multiple simultaneous operations |
US6961723B2 (en) | 2001-05-04 | 2005-11-01 | Sun Microsystems, Inc. | System and method for determining relevancy of query responses in a distributed network search mechanism |
US6717763B2 (en) | 2001-05-16 | 2004-04-06 | Hitachi Global Storage Technologies, Netherlands B.V. | Power savings method and apparatus for disk drives |
JP2002342037A (ja) | 2001-05-22 | 2002-11-29 | Fujitsu Ltd | ディスク装置 |
KR100389867B1 (ko) * | 2001-06-04 | 2003-07-04 | 삼성전자주식회사 | 플래시 메모리 관리방법 |
EP1409998A4 (en) | 2001-06-09 | 2007-07-11 | Glsynthesis Inc | LIPID STRUCTURES AND ITS USES |
US6697818B2 (en) | 2001-06-14 | 2004-02-24 | International Business Machines Corporation | Methods and apparatus for constructing and implementing a universal extension module for processing objects in a database |
US6922765B2 (en) | 2001-06-21 | 2005-07-26 | International Business Machines Corporation | Method of allocating physical memory space having pinned and non-pinned regions |
US6920533B2 (en) | 2001-06-27 | 2005-07-19 | Intel Corporation | System boot time reduction method |
US6772178B2 (en) | 2001-07-27 | 2004-08-03 | Sun Microsystems, Inc. | Method and apparatus for managing remote data replication in a distributed computer system |
US6742097B2 (en) | 2001-07-30 | 2004-05-25 | Rambus Inc. | Consolidation of allocated memory to reduce power consumption |
US20030041213A1 (en) | 2001-08-24 | 2003-02-27 | Yakov Tokar | Method and apparatus for using a cache memory |
JP2003076498A (ja) | 2001-09-05 | 2003-03-14 | Hitachi Ltd | ディスク記憶装置 |
US6769050B1 (en) | 2001-09-10 | 2004-07-27 | Rambus Inc. | Techniques for increasing bandwidth in port-per-module memory systems having mismatched memory modules |
JP2003085041A (ja) | 2001-09-10 | 2003-03-20 | Ricoh Co Ltd | ディスクキャッシュシステム |
US7472230B2 (en) * | 2001-09-14 | 2008-12-30 | Hewlett-Packard Development Company, L.P. | Preemptive write back controller |
JP3822081B2 (ja) | 2001-09-28 | 2006-09-13 | 東京エレクトロンデバイス株式会社 | データ書込装置、データ書込制御方法及びプログラム |
JP4093741B2 (ja) | 2001-10-03 | 2008-06-04 | シャープ株式会社 | 外部メモリ制御装置およびそれを含んだデータ駆動型情報処理装置 |
US6636942B2 (en) | 2001-10-05 | 2003-10-21 | International Business Machines Corporation | Storage structure for storing formatted data on a random access medium |
US20030074524A1 (en) | 2001-10-16 | 2003-04-17 | Intel Corporation | Mass storage caching processes for power reduction |
US6944757B2 (en) | 2001-10-16 | 2005-09-13 | Dell Products L.P. | Method for allowing CD removal when booting embedded OS from a CD-ROM device |
EP1304620A1 (en) | 2001-10-17 | 2003-04-23 | Texas Instruments Incorporated | Cache with selective write allocation |
US20030110357A1 (en) | 2001-11-14 | 2003-06-12 | Nguyen Phillip V. | Weight based disk cache replacement method |
US6687158B2 (en) | 2001-12-21 | 2004-02-03 | Fujitsu Limited | Gapless programming for a NAND type flash memory |
JP2003196032A (ja) | 2001-12-26 | 2003-07-11 | Nec Corp | ストレージ装置のライトキャッシュ制御方法及びストレージ装置 |
US6721672B2 (en) | 2002-01-02 | 2004-04-13 | American Power Conversion | Method and apparatus for preventing overloads of power distribution networks |
WO2003067787A2 (en) | 2002-02-08 | 2003-08-14 | I/O Integrity, Inc. | Redirecting local disk traffic to network attached storage |
US6782453B2 (en) | 2002-02-12 | 2004-08-24 | Hewlett-Packard Development Company, L.P. | Storing data in memory |
US6901499B2 (en) | 2002-02-27 | 2005-05-31 | Microsoft Corp. | System and method for tracking data stored in a flash memory device |
US6771536B2 (en) | 2002-02-27 | 2004-08-03 | Sandisk Corporation | Operating techniques for reducing program and read disturbs of a non-volatile memory |
JP4299555B2 (ja) | 2002-03-15 | 2009-07-22 | 富士通株式会社 | キャッシュ制御プログラム |
US7136966B2 (en) | 2002-03-18 | 2006-11-14 | Lsi Logic Corporation | Method and apparatus for using a solid state disk device as a storage controller cache |
US6801459B2 (en) | 2002-03-22 | 2004-10-05 | Intel Corporation | Obtaining data mask mapping information |
US20040044776A1 (en) | 2002-03-22 | 2004-03-04 | International Business Machines Corporation | Peer to peer file sharing system using common protocols |
US7065627B2 (en) | 2002-03-25 | 2006-06-20 | International Business Machines Corporation | Method and system for providing an event driven image for a boot record |
JP4229626B2 (ja) | 2002-03-26 | 2009-02-25 | 富士通株式会社 | ファイル管理システム |
US6820180B2 (en) | 2002-04-04 | 2004-11-16 | International Business Machines Corporation | Apparatus and method of cascading backup logical volume mirrors |
EP1351146A1 (en) | 2002-04-04 | 2003-10-08 | Hewlett-Packard Company | Power management system and method with recovery after power failure |
JP3901002B2 (ja) | 2002-04-23 | 2007-04-04 | 日本電気株式会社 | ページングシステム、ページング方法、および、ページングプログラム |
US6707748B2 (en) | 2002-05-07 | 2004-03-16 | Ritek Corporation | Back up power embodied non-volatile memory device |
US6891543B2 (en) | 2002-05-08 | 2005-05-10 | Intel Corporation | Method and system for optimally sharing memory between a host processor and graphics processor |
US6966006B2 (en) | 2002-05-09 | 2005-11-15 | International Business Machines Corporation | Adaptive startup policy for accelerating multi-disk array spin-up |
US6898609B2 (en) | 2002-05-10 | 2005-05-24 | Douglas W. Kerwin | Database scattering system |
US6968450B1 (en) | 2002-06-01 | 2005-11-22 | Western Digital Technologies, Inc. | Disk drive caching initial host requested data in non-volatile semiconductor memory to reduce start-up time of a host computer |
JP2004021370A (ja) | 2002-06-13 | 2004-01-22 | Hitachi Ltd | ディスクアレイ制御装置 |
US7062675B1 (en) | 2002-06-25 | 2006-06-13 | Emc Corporation | Data storage cache system shutdown scheme |
US7065527B2 (en) | 2002-06-26 | 2006-06-20 | Microsoft Corporation | Systems and methods of optimizing metadata publishing system updates by alternating databases |
US7017037B2 (en) | 2002-06-27 | 2006-03-21 | Microsoft Corporation | Apparatus and method to decrease boot time and hibernate awaken time of a computer system utilizing disk spin-up-time |
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 |
US6941310B2 (en) | 2002-07-17 | 2005-09-06 | Oracle International Corp. | System and method for caching data for a mobile application |
US7123512B2 (en) | 2002-07-19 | 2006-10-17 | Micron Technology, Inc. | Contiguous block addressing scheme |
AU2003250670A1 (en) | 2002-07-23 | 2004-02-09 | Research In Motion Limited | Data store management system and method for wireless devices |
JP2004054845A (ja) | 2002-07-24 | 2004-02-19 | Sony Corp | データ管理装置 |
JP4026753B2 (ja) | 2002-07-25 | 2007-12-26 | 株式会社日立製作所 | 半導体集積回路 |
NZ520786A (en) | 2002-08-14 | 2005-06-24 | Daniel James Oaeconnell | Method of booting a computer system using a memory image of the post boot content of the system RAM memory |
US7043610B2 (en) | 2002-08-19 | 2006-05-09 | Aristos Logic Corporation | System and method for maintaining cache coherency without external controller intervention |
US7243243B2 (en) | 2002-08-29 | 2007-07-10 | Intel Corporatio | Apparatus and method for measuring and controlling power consumption of a computer system |
US7096378B2 (en) | 2002-08-29 | 2006-08-22 | Freescale Semiconductor, Inc. | Data storage system having a non-volatile IC based memory for storing user data |
FI20021620A (fi) * | 2002-09-10 | 2004-03-11 | Nokia Corp | Muistirakenne, järjestelmä ja elektroniikkalaite sekä menetelmä muistipiirin yhteydessä |
US20040078508A1 (en) | 2002-10-02 | 2004-04-22 | Rivard William G. | System and method for high performance data storage and retrieval |
US6910106B2 (en) | 2002-10-04 | 2005-06-21 | Microsoft Corporation | Methods and mechanisms for proactive memory management |
US7284149B1 (en) | 2002-10-16 | 2007-10-16 | Ken Scott Fisher | Intermittent connection protection for external computer devices |
US20040088481A1 (en) * | 2002-11-04 | 2004-05-06 | Garney John I. | Using non-volatile memories for disk caching |
US7035974B2 (en) | 2002-11-06 | 2006-04-25 | Synology Inc. | RAID-5 disk having cache memory implemented using non-volatile RAM |
US7502791B2 (en) | 2002-11-26 | 2009-03-10 | Norsync Technology A/S | Database constraint enforcer |
US7003620B2 (en) | 2002-11-26 | 2006-02-21 | M-Systems Flash Disk Pioneers Ltd. | Appliance, including a flash memory, that is robust under power failure |
US7036040B2 (en) | 2002-11-26 | 2006-04-25 | Microsoft Corporation | Reliability of diskless network-bootable computers using non-volatile memory cache |
US7003532B2 (en) | 2002-11-27 | 2006-02-21 | Microsoft Corporation | System and method for scaleable multiplexed transactional log recovery |
JP4304974B2 (ja) | 2002-12-12 | 2009-07-29 | 富士ゼロックス株式会社 | キャッシュメモリのデータ管理方法、及び情報処理装置 |
US7039765B1 (en) | 2002-12-19 | 2006-05-02 | Hewlett-Packard Development Company, L.P. | Techniques for cache memory management using read and write operations |
US7010645B2 (en) | 2002-12-27 | 2006-03-07 | International Business Machines Corporation | System and method for sequentially staging received data to a write cache in advance of storing the received data |
US7437440B2 (en) | 2003-01-27 | 2008-10-14 | Microsoft Corporation | Peer-to-peer networking framework application programming interfaces |
KR100504696B1 (ko) | 2003-02-26 | 2005-08-03 | 삼성전자주식회사 | 블록 소거/프로그램 정보를 저장하기 위한 상태 셀들의어레이를 포함한 낸드 플래시 메모리 장치 |
JP2004272324A (ja) | 2003-03-05 | 2004-09-30 | Nec Corp | ディスクアレイ装置 |
US7505958B2 (en) | 2004-09-30 | 2009-03-17 | International Business Machines Corporation | Metadata management for a data abstraction model |
WO2004097650A1 (ja) * | 2003-04-25 | 2004-11-11 | Matsushita Electric Industrial Co., Ltd. | データ記録装置 |
CA2426606A1 (en) | 2003-04-25 | 2004-10-25 | Ibm Canada Limited - Ibm Canada Limitee | Using buffer to facilitate log catchup for online operations |
US7296043B2 (en) | 2003-05-30 | 2007-11-13 | Microsoft Corporation | Memory file size adjustment |
US7139933B2 (en) | 2003-06-20 | 2006-11-21 | International Business Machines Corporation | Preserving cache data against cluster reboot |
CA2433254A1 (en) | 2003-06-25 | 2004-12-25 | Ibm Canada Limited - Ibm Canada Limitee | System and method for warm shutdown and restart of a buffer pool |
US7299379B2 (en) | 2003-06-27 | 2007-11-20 | Intel Corporation | Maintaining cache integrity by recording write addresses in a log |
JP4090400B2 (ja) | 2003-07-24 | 2008-05-28 | 株式会社日立製作所 | ストレージシステム |
US7068575B2 (en) * | 2003-07-30 | 2006-06-27 | Microsoft Corporation | High speed optical disc recording |
US6977842B2 (en) | 2003-09-16 | 2005-12-20 | Micron Technology, Inc. | Boosted substrate/tub programming for flash memories |
US7366866B2 (en) * | 2003-10-30 | 2008-04-29 | Hewlett-Packard Development Company, L.P. | Block size allocation in copy operations |
EP1538525A1 (en) | 2003-12-04 | 2005-06-08 | Texas Instruments Incorporated | ECC computation simultaneously performed while reading or programming a flash memory |
US7774508B2 (en) * | 2003-12-09 | 2010-08-10 | Panasonic Corporation | Electronic apparatus, control method thereof, host device, and control method thereof |
US7130962B2 (en) | 2003-12-18 | 2006-10-31 | Intel Corporation | Writing cache lines on a disk drive |
US7558911B2 (en) | 2003-12-18 | 2009-07-07 | Intel Corporation | Maintaining disk cache coherency in multiple operating system environment |
JP2005191413A (ja) | 2003-12-26 | 2005-07-14 | Toshiba Corp | 不揮発性半導体記憶装置 |
US20050251617A1 (en) * | 2004-05-07 | 2005-11-10 | Sinclair Alan W | Hybrid non-volatile memory system |
US8458488B2 (en) | 2003-12-31 | 2013-06-04 | International Business Machines Corporation | Method and system for diagnosing operation of tamper-resistant software |
US20050145923A1 (en) | 2004-01-06 | 2005-07-07 | Chiou-Feng Chen | NAND flash memory with enhanced program and erase performance, and fabrication process |
US6993618B2 (en) * | 2004-01-15 | 2006-01-31 | Super Talent Electronics, Inc. | Dual-mode flash storage exchanger that transfers flash-card data to a removable USB flash key-drive with or without a PC host |
US7127549B2 (en) | 2004-02-04 | 2006-10-24 | Sandisk Corporation | Disk acceleration using first and second storage devices |
JP4494031B2 (ja) | 2004-02-06 | 2010-06-30 | 株式会社日立製作所 | ストレージ制御装置、及びストレージ制御装置の制御方法 |
KR100564613B1 (ko) | 2004-02-25 | 2006-03-29 | 삼성전자주식회사 | 플래시 메모리 및 광 드라이브의 펌웨어 모듈 동적 로딩동작 방법 |
US7421562B2 (en) | 2004-03-01 | 2008-09-02 | Sybase, Inc. | Database system providing methodology for extended memory support |
US20050204091A1 (en) * | 2004-03-11 | 2005-09-15 | Kilbuck Kevin M. | Non-volatile memory with synchronous DRAM interface |
US7620983B1 (en) | 2004-03-16 | 2009-11-17 | Symantec Corporation | Behavior profiling |
US7366740B2 (en) | 2004-05-03 | 2008-04-29 | Microsoft Corporation | Systems and methods for automatic maintenance and repair of enitites in a data model |
US7644239B2 (en) | 2004-05-03 | 2010-01-05 | Microsoft Corporation | Non-volatile memory cache performance improvement |
US7143120B2 (en) | 2004-05-03 | 2006-11-28 | Microsoft Corporation | Systems and methods for automated maintenance and repair of database and file systems |
JP4392601B2 (ja) * | 2004-05-07 | 2010-01-06 | パナソニック株式会社 | データアクセス装置および記録媒体 |
JP4205634B2 (ja) | 2004-05-27 | 2009-01-07 | Necディスプレイソリューションズ株式会社 | 画像送信装置で使用される方法、およびプログラム |
US7526608B2 (en) | 2004-05-28 | 2009-04-28 | Sony Computer Entertainment Inc. | Methods and apparatus for providing a software implemented cache memory |
US7231497B2 (en) | 2004-06-15 | 2007-06-12 | Intel Corporation | Merging write-back and write-through cache policies |
US20060010293A1 (en) | 2004-07-09 | 2006-01-12 | Schnapp Michael G | Cache for file system used in storage system |
CN1266229C (zh) | 2004-08-10 | 2006-07-26 | 汕头市龙华珠光颜料有限公司 | 一种随角异色的多层变色颜料及其生产方法 |
US7171532B2 (en) | 2004-08-30 | 2007-01-30 | Hitachi, Ltd. | Method and system for data lifecycle management in an external storage linkage environment |
WO2006024323A1 (en) | 2004-08-31 | 2006-03-09 | Freescale Semiconductor Inc. | A virtual address cache and method for sharing data using a unique task identifier |
EP1807767A1 (en) | 2004-09-07 | 2007-07-18 | Freescale Semiconductors, Inc. | A virtual address cache and method for sharing data stored in a virtual address cache |
JP4192129B2 (ja) * | 2004-09-13 | 2008-12-03 | 株式会社東芝 | メモリ管理装置 |
US20060075185A1 (en) | 2004-10-06 | 2006-04-06 | Dell Products L.P. | Method for caching data and power conservation in an information handling system |
US7657756B2 (en) | 2004-10-08 | 2010-02-02 | International Business Machines Corporaiton | Secure memory caching structures for data, integrity and version values |
US7490197B2 (en) | 2004-10-21 | 2009-02-10 | Microsoft Corporation | Using external memory devices to improve system performance |
JP4956922B2 (ja) * | 2004-10-27 | 2012-06-20 | ソニー株式会社 | 記憶装置 |
US7873782B2 (en) | 2004-11-05 | 2011-01-18 | Data Robotics, Inc. | Filesystem-aware block storage system, apparatus, and method |
US20060106889A1 (en) | 2004-11-12 | 2006-05-18 | Mannby Claes-Fredrik U | Method, system, and program for managing revisions to a file |
KR100643287B1 (ko) | 2004-11-19 | 2006-11-10 | 삼성전자주식회사 | 플래시 메모리의 데이터 처리 장치 및 방법 |
JP4689247B2 (ja) * | 2004-11-19 | 2011-05-25 | キヤノン株式会社 | カメラ及びその制御方法 |
US20060136664A1 (en) | 2004-12-16 | 2006-06-22 | Trika Sanjeev N | Method, apparatus and system for disk caching in a dual boot environment |
US7480654B2 (en) | 2004-12-20 | 2009-01-20 | International Business Machines Corporation | Achieving cache consistency while allowing concurrent changes to metadata |
US7480761B2 (en) | 2005-01-10 | 2009-01-20 | Microsoft Corporation | System and methods for an overlay disk and cache using portable flash memory |
KR100670010B1 (ko) | 2005-02-03 | 2007-01-19 | 삼성전자주식회사 | 하이브리드 브로드캐스트 암호화 방법 |
US20060212644A1 (en) * | 2005-03-21 | 2006-09-21 | Acton John D | Non-volatile backup for data cache |
US7620773B2 (en) | 2005-04-15 | 2009-11-17 | Microsoft Corporation | In-line non volatile memory disk read cache and write buffer |
US8812781B2 (en) | 2005-04-19 | 2014-08-19 | Hewlett-Packard Development Company, L.P. | External state cache for computer processor |
US8452929B2 (en) | 2005-04-21 | 2013-05-28 | Violin Memory Inc. | Method and system for storage of data in non-volatile media |
US7516277B2 (en) | 2005-04-28 | 2009-04-07 | Sap Ag | Cache monitoring using shared memory |
US20060277359A1 (en) | 2005-06-06 | 2006-12-07 | Faber Robert W | Blank memory location detection mechanism |
US7523256B2 (en) | 2005-06-15 | 2009-04-21 | Bea Systems, Inc. | System and method for scheduling disk writes in an application server of transactional environment |
JP4833595B2 (ja) | 2005-06-30 | 2011-12-07 | 大和ハウス工業株式会社 | 脱臭機能を備えたシューズボックス |
US7640398B2 (en) * | 2005-07-11 | 2009-12-29 | Atmel Corporation | High-speed interface for high-density flash with two levels of pipelined cache |
US7984084B2 (en) | 2005-08-03 | 2011-07-19 | SanDisk Technologies, Inc. | Non-volatile memory with scheduled reclaim operations |
US20070033356A1 (en) | 2005-08-03 | 2007-02-08 | Boris Erlikhman | System for Enabling Secure and Automatic Data Backup and Instant Recovery |
US7768548B2 (en) | 2005-08-12 | 2010-08-03 | William Bradford Silvernail | Mobile digital video recording system |
US7409524B2 (en) | 2005-08-17 | 2008-08-05 | Hewlett-Packard Development Company, L.P. | System and method for responding to TLB misses |
US7634516B2 (en) | 2005-08-17 | 2009-12-15 | International Business Machines Corporation | Maintaining an aggregate including active files in a storage pool in a random access medium |
US7533215B2 (en) | 2005-09-15 | 2009-05-12 | Intel Corporation | Distributed and packed metadata structure for disk cache |
US7395401B2 (en) * | 2005-09-30 | 2008-07-01 | Sigmatel, Inc. | System and methods for accessing solid-state memory devices |
US7409537B2 (en) | 2005-10-06 | 2008-08-05 | Microsoft Corporation | Fast booting an operating system from an off state |
US8914557B2 (en) | 2005-12-16 | 2014-12-16 | Microsoft Corporation | Optimizing write and wear performance for a memory |
US20070150966A1 (en) | 2005-12-22 | 2007-06-28 | Kirschner Wesley A | Method and apparatus for maintaining a secure software boundary |
US7451353B2 (en) | 2005-12-23 | 2008-11-11 | Intel Corporation | Cache disassociation detection |
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 |
US20070207800A1 (en) | 2006-02-17 | 2007-09-06 | Daley Robert C | Diagnostics And Monitoring Services In A Mobile Network For A Mobile Device |
JP2007233896A (ja) | 2006-03-03 | 2007-09-13 | Hitachi Ltd | ストレージ装置及びその制御方法 |
JP4246746B2 (ja) | 2006-03-23 | 2009-04-02 | 富士通株式会社 | コンテンツ復号装置、コンテンツ受信装置、コンテンツ復号方法、コンテンツ受信方法およびコンテンツ復号プログラム |
DE602007010439D1 (de) | 2006-03-31 | 2010-12-23 | Mosaid Technologies Inc | Flash-speichersystem-steuerverfahren |
US7849502B1 (en) | 2006-04-29 | 2010-12-07 | Ironport Systems, Inc. | Apparatus for monitoring network traffic |
US7558913B2 (en) | 2006-06-20 | 2009-07-07 | Microsoft Corporation | Atomic commit of cache transfer with staging area |
US7512739B2 (en) | 2006-07-05 | 2009-03-31 | International Business Machines Corporation | Updating a node-based cache LRU tree |
JP2008052321A (ja) | 2006-08-22 | 2008-03-06 | Murata Mach Ltd | ネットワークデジタル複合機 |
US8121977B2 (en) | 2006-08-30 | 2012-02-21 | Iwmage Systems, Inc. | Ensuring data persistence and consistency in enterprise storage backup systems |
US7870336B2 (en) | 2006-11-03 | 2011-01-11 | Microsoft Corporation | Operating system protection against side-channel attacks on secrecy |
US8489817B2 (en) | 2007-12-06 | 2013-07-16 | Fusion-Io, Inc. | Apparatus, system, and method for caching data |
US8096755B2 (en) | 2006-12-21 | 2012-01-17 | General Electric Company | Crowned rails for supporting arcuate components |
US7818701B1 (en) | 2006-12-22 | 2010-10-19 | Cypress Semiconductor Corporation | Memory controller with variable zone size |
US20080172518A1 (en) | 2007-01-11 | 2008-07-17 | Sandisk Il Ltd. | Systems For Supporting Readydrive And Readyboost Accelerators In A Single Flash-Memory Storage Device |
TWI417722B (zh) | 2007-01-26 | 2013-12-01 | Hicamp Systems Inc | 階層式不可改變的內容可定址的記憶體處理器 |
US7698506B1 (en) | 2007-04-26 | 2010-04-13 | Network Appliance, Inc. | Partial tag offloading for storage server victim cache |
US7945734B2 (en) | 2007-08-10 | 2011-05-17 | Eastman Kodak Company | Removable storage device with code to allow change detection |
US7895242B2 (en) | 2007-10-31 | 2011-02-22 | Microsoft Corporation | Compressed storage management |
US8190652B2 (en) | 2007-12-06 | 2012-05-29 | Intel Corporation | Achieving coherence between dynamically optimized code and original code |
US8631203B2 (en) | 2007-12-10 | 2014-01-14 | Microsoft Corporation | Management of external memory functioning as virtual cache |
US8082384B2 (en) | 2008-03-26 | 2011-12-20 | Microsoft Corporation | Booting an electronic device using flash memory and a limited function memory controller |
US8074014B2 (en) | 2008-03-31 | 2011-12-06 | Microsoft Corporation | Storage systems using write off-loading |
US8275970B2 (en) | 2008-05-15 | 2012-09-25 | Microsoft Corp. | Optimizing write traffic to a disk |
US8140739B2 (en) | 2008-08-08 | 2012-03-20 | Imation Corp. | Flash memory based storage devices utilizing magnetoresistive random access memory (MRAM) to store files having logical block addresses stored in a write frequency file buffer table |
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 |
US8032707B2 (en) | 2008-09-15 | 2011-10-04 | Microsoft Corporation | Managing cache data and metadata |
US7953774B2 (en) | 2008-09-19 | 2011-05-31 | Microsoft Corporation | Aggregation of write traffic to a data store |
US8352464B2 (en) | 2009-07-24 | 2013-01-08 | Peer Belt Inc. | System and method for ranking documents through human assistance |
-
2005
- 2005-12-16 US US11/303,382 patent/US8914557B2/en active Active
-
2006
- 2006-12-18 WO PCT/US2006/048402 patent/WO2007075668A1/en active Application Filing
- 2006-12-18 EP EP06839426A patent/EP1960888B1/en active Active
- 2006-12-18 JP JP2008545888A patent/JP5254031B2/ja active Active
- 2006-12-18 DK DK06839426.1T patent/DK1960888T3/da active
- 2006-12-18 KR KR1020087014092A patent/KR101422855B1/ko active IP Right Grant
- 2006-12-18 MY MYPI20081667 patent/MY151964A/en unknown
- 2006-12-18 AU AU2006331830A patent/AU2006331830B2/en not_active Ceased
- 2006-12-18 CN CN2006800473846A patent/CN101331463B/zh active Active
-
2008
- 2008-05-15 IL IL191502A patent/IL191502A/en active IP Right Grant
-
2013
- 2013-10-18 US US14/058,078 patent/US9529716B2/en active Active
-
2016
- 2016-11-01 US US15/340,826 patent/US11334484B2/en active Active
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102750112A (zh) * | 2012-05-30 | 2012-10-24 | 浪潮电子信息产业股份有限公司 | 一种san服务端闪存混合加速方法 |
CN111930300A (zh) * | 2020-06-28 | 2020-11-13 | 深圳佰维存储科技股份有限公司 | 数据写入方法、装置、计算机可读存储介质及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
US11334484B2 (en) | 2022-05-17 |
JP5254031B2 (ja) | 2013-08-07 |
WO2007075668A1 (en) | 2007-07-05 |
AU2006331830B2 (en) | 2011-06-02 |
EP1960888A1 (en) | 2008-08-27 |
EP1960888B1 (en) | 2013-01-16 |
EP1960888A4 (en) | 2009-06-10 |
IL191502A (en) | 2014-07-31 |
MY151964A (en) | 2014-07-31 |
CN101331463B (zh) | 2012-02-08 |
KR101422855B1 (ko) | 2014-07-24 |
US20170052892A1 (en) | 2017-02-23 |
US8914557B2 (en) | 2014-12-16 |
US20070162700A1 (en) | 2007-07-12 |
JP2009520280A (ja) | 2009-05-21 |
US20140047189A1 (en) | 2014-02-13 |
DK1960888T3 (da) | 2013-04-29 |
US9529716B2 (en) | 2016-12-27 |
KR20080084948A (ko) | 2008-09-22 |
AU2006331830A1 (en) | 2007-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101331463B (zh) | 优化存储器的写入和磨损性能 | |
CN102648457B (zh) | 使用混合存储来延伸ssd生存期 | |
CN101014929B (zh) | 使用nvram进行存储器管理的系统、方法和设备 | |
JP4768504B2 (ja) | 不揮発性フラッシュメモリを用いる記憶装置 | |
US20070016725A1 (en) | System and method for selective write to flash memory in HDD | |
US9424197B2 (en) | Hard disk drive with optional cache memory | |
CN103197899A (zh) | 增强基于闪存的存储的寿命和性能 | |
US20100100675A1 (en) | System and method for managing storage device caching | |
US20070124552A1 (en) | Memory control method for restoring data in a cache memory | |
JP2006012126A5 (zh) | ||
CN101004661A (zh) | 使用非易失性高速缓冲存储器的存储设备及其控制方法 | |
CN111026326A (zh) | 存储器控制器、存储装置及管理元数据的方法 | |
JP2008541283A (ja) | メモリーの使用寿命を向上できる回路と方法 | |
Takashima et al. | A 128 Mb chain FeRAM and system design for HDD application and enhanced HDD performance | |
CN101276257A (zh) | 采用非易失性高速缓冲存储器的存储设备及其控制方法 | |
JP2012521032A (ja) | Ssdコントローラおよびssdコントローラの動作方法 | |
CN102160038A (zh) | 管理非易失性磁盘高速缓存的方法和设备 | |
KR101691091B1 (ko) | 컴퓨팅 시스템 및 그것의 하이버네이션 방법 | |
KR19990019377A (ko) | 플래시 메모리 이용 보조기억장치 및 그 방법 | |
Rahiman et al. | Solid state disk: A new storage device for video storage server | |
CN112306398A (zh) | 存储装置及其操作方法 | |
US20100020430A1 (en) | Control device and storage device | |
KR100464788B1 (ko) | 초고속 저장장치 및 방법 | |
KR200404469Y1 (ko) | 플래쉬 메모리를 이용한 아이디이 및 스카시 방식의 데이터 저장장치 | |
Budd | IS NVME STORAGE RIGHT FOR TELEMETRY APPLICATIONS |
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 | ||
ASS | Succession or assignment of patent right |
Owner name: MICROSOFT TECHNOLOGY LICENSING LLC Free format text: FORMER OWNER: MICROSOFT CORP. Effective date: 20150505 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20150505 Address after: Washington State Patentee after: Micro soft technique license Co., Ltd Address before: Washington State Patentee before: Microsoft Corp. |