当前位置: 首页 > 专利查询>英特尔公司专利>正文

用于提高存取数据请求的处理速度的方法、装置和系统制造方法及图纸

技术编号:2863760 阅读:193 留言:0更新日期:2012-04-11 18:40
一种方法,包含:    确定请求的数据是否被存储在存储器中;    如果所请求的数据没有被存储在所述存储器中,则确定在预定数目的最近数据存取期间是否已经发生了用于存取所请求数据的多个请求;以及    如果在所述预定数目的最近数据存取期间已经发生了用于存取所请求数据的多个请求,则将所请求的数据存储到所述存储器中。(*该技术在2023年保护过期,可自由使用*)

【技术实现步骤摘要】

本公开涉及高速缓存器管理领域。
技术介绍
对存储在高速缓冲存储器中的数据的存取速度可以显著地大于对存储在磁盘存储器中的数据的存取速度。然而,就每一存储单元来说,高速缓冲存储器可能比磁盘存储器要更加昂贵。因此,在包含高速缓冲存储器和磁盘存储器的数据存储系统中,高速缓冲存储器的存储容量可能小于磁盘存储器的存储容量。当数据存储系统接收了一个用于存取在所述系统中存储的数据的请求时,系统可以确定是否能够使用在高速缓冲存储器中存储的数据来满足所述请求。如果能够用在高速缓冲存储器中存储的数据满足所述请求,则系统可以尝试使用在高速缓冲存储器中存储的数据来满足所述请求。相反地,如果使用在高速缓冲存储器中的数据不能满足所述请求,则系统可以使用在磁盘存储器中存储的数据来满足所述请求。可以使用一种高速缓存器管理技术来管理将数据加载到高速缓冲存储器,以及降级(destage)来自高速缓冲存储器的数据。使用的高速缓存器管理技术可以对系统的I/O请求处理速度具有重要的影响。附图说明随着以下详细说明的继续进行,并且参考附图,要求保护的主题的实施例的特征和优点将会变得明显,其中相同的数字描述了相同的部件,而且其中图1是一个说明了一个系统实施例的图。图2是依据一个实施例的如下图,所述图说明可以被存储在高速缓冲存储器中的高速缓存器管理信息和用户数据。图3是依据一个实施例的如下图,所述图说明可以被存储在海量存储器中的数据卷和数据段。图4是依据一个实施例的如下流程图,所述流程图说明可以在图1的系统中被执行的操作。图5是依据一个实施例的如下图,所述图说明可以被包括在高速缓冲存储器中的链表中的节点中的数据结构。图6是依据一个实施例的如下,所述图说明可以被包括在高速缓冲存储器中的链表。具体实施例方式尽管将参考说明性的实施例继续进行下列详细说明,但是对于本领域技术人员来说它的许多替换、修改、和变化将会是显而易见的。因此,目的在于所要求保护的主题应该被广泛地理解,并且仅仅由附加权利要求中所阐述的加以定义。图1说明了要求保护的主题的一个系统实施例100。系统100可以包含被耦合到一个芯片组14的主处理器12。主处理器12可以包含例如在市场上可从本主题申请的受让人那里买得到的IntelPentiumIII或者IV微处理器。当然,可选地,主处理器12可以包含其它类型的微处理器,诸如像从除本主题申请的受让人以外的来源中制造和/或在市场上买得到的微处理器,而没有背离这个实施例。芯片组14可以包含如下主机桥接器/集线器系统,所述主机桥接器/集线器系统可以将主处理器12、系统存储器21、和用户接口系统16相互耦合起来,并且可以耦合到总线系统22。芯片组14还可以包含如下I/O桥接器/集线器系统(未显示),所述I/O桥接器/集线器系统可以把主机桥接器/总线系统耦合到总线22。芯片组14可以包含集成电路芯片,诸如在市场上可从本主题申请的受让人那里买得到的集成电路芯片组中选择出来的那些(例如,图形存储器和I/O控制器集线器芯片组),但是也可以或可选地使用其它集成电路芯片,而没有背离这个实施例。另外,芯片组14可以包含如下中断控制器(未显示),所述中断控制器可以经由一条或多条中断信号线(未显示)耦合到其它组件,诸如像I/O控制器电路卡20,此时电路卡20被插入到电路卡总线扩充槽30中。这个中断控制器可以处理如下中断,所述中断可以由所述中断控制器从系统100中的其它组件经由这些中断信号线加以接收。在此描述的、在卡20内中所包含的操作电路42未必要被包括在卡20内,但是相反,在没有背离这个实施例的情况下,它可以被包含在其它结构、系统、和/或设备中,所述其他结构、系统、和/或设备例如可以被包含在母板32中,耦合到总线22,并且与在系统100中的其它组件交换数据和/或命令。用户接口系统16可以包含例如键盘、指示设备、和显示系统,它们可允许人类用户向系统100输入命令,并且监控系统100的操作。总线22可以包含如下总线(以下被称为“PCI总线”),所述总线遵循可从美国俄勒冈州(Oregon)波特兰(Portland)的PCI Special Interest Group中获得的1998年12月18日的Peripheral Component Interconnect(PCI)LocalBus Specification 2.2修订版。可选地,总线22可以改为包含如下总线(以下称为“PCI-X总线”),所述总线遵循可从上述的美国俄勒冈州波特兰的PCISpecial Interest Group中获得的2000年7月24日的PCI-X Specification 1.0a修订版。此外,可选地,总线22可以包含其它类型和配置的总线系统,而没有背离这个实施例。I/O控制器卡20可以被耦合到一组一个或多个磁盘、光盘、固态、和/或半导体海量存储器设备(在下文中统称为或单称为“海量存储器28”),并且控制它们的操作。在这个实施例中,海量存储器28可以包含例如一个或多个廉价磁盘冗余阵列(RAID)海量存储器设备29。处理器12、系统存储器21、芯片组14、PCI总线22、和电路卡插槽30可以被包含在单个电路板,诸如系统母板32中。海量存储器28可以被包含在一个或多个相应的如下外壳中,所述外壳可以与其中封装了母板32和包含在母板32中的组件的外壳相独立。可选地,卡20可以被包含在一个可以包含海量存储器28的外壳中。根据海量存储器28的特定配置和操作特性,I/O控制器卡20可以经由一个或多个网络通信链路或介质44耦合到海量存储器28。卡20可以使用各种不同通信协议中的任何一种通信协议,经由链路44与海量存储器28交换数据和/或命令,所述不同的通信协议例如是小型计算机系统接口(Small Computer SystemsInterface,SCSI)、光纤信道(Fibre Channel,FC)、以太网(Ethernet)、串行先进技术附件(Serial Advanced Technology Attachment,S-ATA)、或传输控制协议/网际协议(TCP/IP)。当然,可选地,I/O控制器卡20可以使用其它通信协议与海量存储器28交换数据和/或命令,而没有背离要求保护的主题的这个实施例。依据这个实施例,可由控制器卡20使用来与海量存储器28交换数据和/或命令的SCSI协议可以遵循或是兼容如下接口/协议,所述接口/协议描述在American National Standards Institute(美国国家标准学会,ANSI)SmallComputer Systems Interface-2(小型计算机系统接口-2,SCSI-2)ANSIX3.131-1994 Specification中。如果FC协议被控制器卡20使用来与海量存储器28交换数据和/或命令,则它可以遵循或是兼容于如下接口/协议,所述接口/协议描述在ANSI Standard Fibre Channel(FC)Physical and SignalingInterface-3 X3.3031998 Specification中。可选地,如果Ethernet协议被控制器卡20使用来与海量存储器28交换数据和/或本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种方法,包含确定请求的数据是否被存储在存储器中;如果所请求的数据没有被存储在所述存储器中,则确定在预定数目的最近数据存取期间是否已经发生了用于存取所请求数据的多个请求;以及如果在所述预定数目的最近数据存取期间已经发生了用于存取所请求数据的多个请求,则将所请求的数据存储到所述存储器中。2.如权利要求1所述的方法,还包括如果在所述预定数目的最近数据存取期间已经发生了用于存取所请求数据的多个请求,则从所述存储器中降级最近最少使用的数据。3.如权利要求1所述的方法,还包括如果在所述预定数目的最近数据存取期间已经发生了用于存取所请求数据的多个请求,则将所请求的数据指定为在所述存储器中的最近使用的数据。4.如权利要求1所述的方法,还包括如果在所述预定数目的最近数据存取期间已经发生了比所述用于存取所请求数据的多个请求更少的请求,则将所请求的数据指定为要存储在所述存储器中的一个可能的候选者;以及通过存取在海量存储器中的至少一个数据段,至少部分地满足用于存取所请求数据的最近请求。5.如权利要求4所述的方法,还包括将所述至少一个数据段指定为在所述海量存储器中最近使用的数据段;以及取消在所述海量存储器中的另一个数据段作为要存储在所述存储器中的一个可能候选者的先前指定,所述另一个数据段是在所述海量存储器中先前存取的数据段。6.如权利要求1所述的方法,其中所述预定数目的最近数据存取包含两个或更多的最近数据存取。7.如权利要求1所述的方法,其中所请求的数据包含至少一个数据段;以及用于存取所请求数据的请求中的每一个请求读取所请求的数据和向所请求数据中写入中的一个。8.一种装置,包含电路,用于确定请求的数据是否被存储在存储器中,并且用于确定在所请求的数据没有被存储在所述存储器的情况下,在预定数目的最近数据存取期间是否已经发生了用于存取所请求数据的多个请求,并且所述电路还能够在所述预定数目的最近数据存取期间已经发生了用于存取所请求数据的多个请求的情况下,将所请求的数据存储到所述存储器中。9.如权利要求8所述的装置,其中如果在所述预定数目的最近数据存取期间已经发生了用于存取所请求数据的多个请求,则所述电路还能够从所述存储器中降级最近最少使用的数据。10.如权利要求8所述的装置,其中如果在所述预定数目的最近数据存取期间已经发生了用于存取所请求数据的多个请求,则所述电路还能够将所请求的数据指定为在所述存储器中的最近使用的数据。11.如权利要求8所述的装置,其中如果在所述预定数目的最近数据存取期间已经发生了比用于存取所请求数据的多个请求更少的请求,则所述电路还能够将所请求的数据指定为要存储在所述存储器中的一个可能的候选者;以及通过存取在海量存储器中的至少一个数据段,至少部分地满足用于存取所请求数据的最近请求。12.如权利要求11所述的装置,其中所述电路还能够将所述至少一个数据段指定为在所述海量存储器中最近使用的数据段;以及取消在所述海量存储器中的另一个数据段作为要存储在所述存储器中的一个可能候选者的先前指定,所述另一个数据段是在所述海量存储器中先前存取的数据段。13.如权利要求8所述的装置,其中用于存取所请求数据的多个请求包含3个或更多的最近数据存取。14.如权利要求8所述的装置,其特征在于所请求的数据包含至...

【专利技术属性】
技术研发人员:J·S·卡瓦罗S·J·伊波利托
申请(专利权)人:英特尔公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1