用于保留存储器的方法、系统及产品的制作方法

文档序号:6511726阅读:133来源:国知局
专利名称:用于保留存储器的方法、系统及产品的制作方法
技术领域
本发明涉及用于保留存储器的方法、系统及产品。
背景技术
在许多计算设备中,辅助存储器,例如磁盘驱动器的存储容量会比主存储器,例如随机存取存储器的存储容量更大。在某些实现中,虚拟存储器管理器可以实现虚拟存储器,使得计算设备中的应用程序可用的可寻址存储空间不受计算设备中主存储器存储容量的限制。虚拟存储器管理器可以通过使用辅助存储器模拟附加的主存储器来实现虚拟存储器。
在虚拟存储器的实现中,为了容纳需要被存储在主存储器中的数据和指令,虚拟存储器管理器可以从主存储器向辅助存储器交换数据和指令。在某些实现中,数据和指令可以被存储在称为页的数据结构中,而虚拟存储器管理器可以按需从主存储器向辅助存储器交换页。
操作系统可以允许在主存储器中保留一定量的存储器,使得不从主存储器向辅助存储器交换保留存储器。某些类型的保留存储器可以被称为钉扎存储器(pinned memory)或隐藏存储器。存取存储在主存储器中的指令和数据的速度会比存取存储在辅助存储器中的指令和数据的速度更快。在某些实现,例如涉及实时应用的实现中,会需要这种存储器保留以用于实时执行指令。在某些实现中,这种实时应用可在企业存储服务器*(ESS)系统中执行。在某些实现中,除了实时应用之外的其他应用也可保留部分主存储器。
某些操作系统可以设定可被保留的主存储器的总量的上限。例如,在UNIX操作系统的许多版本中,例如在AIX操作系统中,可以被保留的主存储器的总量不会超过主存储器总量的80%。

发明内容
提供了一种方法,系统及产品,其中,在某些实施例中,分配对应于可计算设备中存储器的多个逻辑存储器块。属性与至少一个逻辑存储器块相关联,其中,该属性指示是否能从存储器交换出该至少一个逻辑存储器块,而且其中对应于该至少一个逻辑存储器块的物理块是相连的。
在另外的实施例中,分配多个逻辑存储器块和将属性关联还包括(a)确定计算设备中的固件是否拥有关于多个逻辑存储器块中的哪些被配置成保留逻辑存储器块的信息;以及(b)响应于确定计算设备中的固件拥有关于多个逻辑存储器块中的哪些被配置成保留逻辑存储器块的信息,根据所拥有的信息,设置与该至少一个逻辑存储器块相关联的该属性,其中在被设置的情况下,该属性指示不能从存储器交换出该至少一个逻辑存储器块,并且指示该至少一个逻辑存储器块是保留逻辑存储器块。
在另外的实施例中,分配多个逻辑存储器块和将属性关联还包括(a)确定计算设备中的固件是否拥有关于多个逻辑存储器块中的哪些被配置成保留逻辑存储器块的信息;(b)响应于确定计算设备中的固件不拥有关于多个逻辑存储器块中的哪些被配置成保留逻辑存储器块的信息,由固件结合存储器保留应用程序来确定多个逻辑存储器块中的哪些被配置成保留逻辑存储器块;以及(c)由固件在计算设备的初始程序加载过程中保存关于多个逻辑存储器块中的那些被配置成保留逻辑存储器块的信息。
在另外的实施例中,将附加属性关联于该至少一个逻辑存储器块,其中该附加属性进一步表征该至少一个逻辑存储器块的特性。
在另外的实施例中,将附加属性关联于该至少一个逻辑存储器块,其中该附加属性指明在该至少一个逻辑存储器块中的数据是否可修改。
在另外的实施例中,虚拟存储器管理器执行用于交换该至少一个逻辑存储器块到被连接到计算设备的辅助存储器的指令。虚拟存储器管理器确定该至少一个逻辑存储器块的关联属性是否指示不能从存储器交换出逻辑存储器块。响应于确定该至少一个逻辑存储器块的关联属性没有指示不能从存储器交换出逻辑存储器块,从存储器交换该至少一个逻辑存储器块到辅助存储器。
在另外的实施例中,对保留逻辑存储器块运用第一存储器管理策略。对非保留逻辑存储器块运用第二存储器管理策略。确定该至少一个逻辑存储器块是否保留逻辑存储器块。响应于确定该至少一个逻辑存储器块是保留逻辑存储器块,根据第一存储器管理策略对该至少一个逻辑存储器块执行存储器管理操作。
在另外的实施例中,由计算设备中的固件执行分配多个逻辑存储器块和将属性关联的步骤,其中计算设备包括操作系统,该操作系统对能被保留用于从存储器交换出的存储器的量有限制,并且其中分配多个逻辑存储器块和将属性关联允许应用程序超出对能保留的存储器的量的限制。
在另外的实施例中,由计算设备中的应用程序执行分配多个逻辑存储器块和将属性关联的步骤,并且其中该应用程序与计算设备中的操作系统不同。
在另外的实施例中,如果不能从存储器交换出该至少一个逻辑存储器块,则对该至少一个逻辑存储器块执行静态地址翻译。
某些实施例为每个逻辑存储器块提供属性以指示该逻辑存储器块是保留的,并且不被允许从主存储器换页到辅助存储器。操作系统可将存储器分为常规池和保留池,其中常规池对应于不被保留的存储器,而保留池对应于保留的存储器。操作系统的虚拟存储器管理器可以为常规池和保留池双方提供地址翻译。然而,虚拟存储器管理器可以只从常规池向辅助存储器换出存储器。


现在参照附图,其中,同样的引用数字表示对应的部分图1根据某些所描述的本发明的实施例,图解了计算环境的模块图;图2根据某些所描述的本发明的实施例,图解了计算环境中实现的数据结构的模块图;图3根据某些所描述的本发明的实施例,图解了在计算环境中实现的示例逻辑存储器块的模块图;图4根据某些所描述的本发明的实施例,图解了用于保留存储器的逻辑;图5根据某些所描述的本发明的实施例,图解了用于从存储器交换到辅助存储器的逻辑;图6根据某些所描述的本发明的实施例,图解了计算环境中实现的存储器管理策略的模块图;图7根据某些所描述的本发明的实施例,图解了用于应用存储器管理策略的逻辑;而图8图解了其中实现了本发明某些所述方面的计算机体系结构模块图。
具体实施例方式
在以下描述中,参照了附图,这些附图形成描述的一部分,并且图解了几个实施例。可以理解,在不偏离本发明范围的情况下,可以利用其它实施例,并且可以进行结构和操作的改变。
图1根据本发明的某些实施例,图解了计算环境的模块图。所示计算设备100被连接到辅助存储器102。尽管对于计算设备100,所示辅助存储器102是外部的,然而在某些实施例中,辅助存储器102可以是计算设备100内部的。在另外的实施例中,可以实现另外的计算设备(没有示出),例如,执行关于计算设备100的输入/输出(I/O)操作的主机系统。
计算设备100可以包括个人计算机,工作站,服务器,大型机,手持计算机,掌上型计算机(palm top computer),电话设备,网络装置,刀片计算机,存储控制器,等等。辅助存储器102可以包括直接存取存储设备,例如磁盘,磁带,读/写DVD,读/写CDROM,独立磁盘冗余阵列(RAID),磁盘束(JBOD),等等,或者任何其他存储设备。可以通过网络(没有示出),例如因特网,企业内部网,局域网(LAN),存储区域网(SAN),广域网(WAN),无线网等等连接计算设备100和辅助存储器102。可选地,可以在没有网络的情况下连接计算设备100和辅助存储器102,例如通过直连线,公共总线系统,等等。
计算设备100可以包括中央处理单元(CPU)104,存储器106,固件108,操作系统110以及存储器保留应用程序112。
CPU104可以包含复杂指令集计算(CISC)处理器,精简指令集计算(RISC)处理器,或任何其他处理器。虽然只示出了单CPU104,然而在某些实施例中,计算设备100可以包括附加的CPU,以形成多处理系统。
存储器106可以包含随机存取存储器(RAM)。存储器106还可以被称为物理存储器。在某些实施例中,计算设备100中连接到总线的芯片中可以包括存储器106。存储器106可以是易失的,这表示存储器106可能需要稳定的电流以保持存储器106中的内容。响应关闭电源,可能失去存储器106中已经存在的数据。可以在CPU104中执行存储器106中所装载的指令。当在CPU104中执行指令时,存储器106中所装载的指令可以存取存储器106中存在的数据。存储器106的量可以小于辅助存储器102的数量。
固件108可以包括可能已经被写到只读存储器(ROM),可编程只读存储器(PROM),可擦除可编程只读存储器(EEPROM)等等的程序或者数据。固件108可以是硬件和软件的结合。
操作系统110可以是控制在计算设备100中执行的系统和应用程序的执行的软件。操作系统110可以向在计算设备100中执行的系统和应用程序提供各种服务。在某些实施例中,操作系统110可以包括UNIX操作系统,AIX操作系统,或者一些其他操作系统。操作系统110可以包括虚拟存储器管理器114,在这里,虚拟存储器管理器114可以从存储器106交换数据到辅助存储器102。例如,如果当存储器106满时存储器106中必须容纳新指令或者数据,虚拟存储器管理器114可以从存储器106交换某些页到辅助存储器102。
存储器保留应用程序112是在计算设备100中实现的应用程序。存储器保留应用程序112可以确定存储器106中的哪些逻辑存储器块要被配置为保留存储器。可以通过软件,硬件或固件实现存储器保留应用程序112。在某些实施例中,存储器保留应用程序112可以结合固件108来在存储器106中实现保留存储器。
因此,图1图解了某些实施例,其中存储器保留应用程序112结合固件108可以保留一定量的存储器106,使得虚拟存储器管理器114不能将保留存储器交换到辅助存储器102。
图2根据本发明的某些实施例,图解了计算设备100中实现的数据结构的模块图。
可以用多个逻辑存储器块200a...200n表示存储器106。除了逻辑存储器块200a...200n之外的附加逻辑存储器块位于辅助存储器102中。位于存储器106中的逻辑存储器块200a...200n以及位于辅助存储器102中的逻辑存储器块一起可以形成在计算设备100中执行的应用程序的虚拟地址空间。逻辑存储器块,例如逻辑存储器块200a可以包括若干字节的存储器。
与多个逻辑存储器块200a...200n相关联的是多个属性202a...202n。例如,属性202a与逻辑存储器块200a相关联,属性202b与逻辑存储器块200b相关联,而属性202n与逻辑存储器块200n相关联。在某些实施例中,属性可以定义存储器块的一个或多个特性。例如,属性可以指明存储器块是否为保留存储器块,即,不能从存储器106交换出的存储器块。在某些实施例中,辅助存储器102中包括的逻辑存储器块也可以包括与属性200a...200n相似的属性。在某些实施例中,如果从存储器106交换逻辑存储器块到辅助存储器102,则对应的属性也被交换到辅助存储器。
在图2中,所示属性202a...202n对于逻辑存储器块而言是外部的。然而,在某些实施例中,可以作为逻辑存储器块202a...202n的一部分来实现属性202a...202n。
在某些实施例中,属性202a...202n可以包括保留属性204a...204n以及一个或多个其他属性206a...206n。例如,属性202a可以包括保留属性204a和其他属性206a,属性202b可以包括保留属性204b和其他属性206b,而属性202n可以包括保留属性204n和其他属性206n。
保留属性204a...204n可以指明相应的逻辑存储器块200a是否为保留的。例如,如果保留属性204a具有布尔值“真”,则相应的逻辑存储器块200a是保留存储器,即虚拟存储器管理器114不能将逻辑存储器块200a交换到辅助存储器102。
其他属性206a...206n可以包括除了保留属性之外的其他属性,其中,其他属性206a...206n定义逻辑存储器块200a...200n的附加特征。例如,其他属性206a可以指明逻辑存储器块200a是否包括用户已经修改的数据。
因此,图2的图解实施例中,构成存储器106的逻辑存储器块200a...200n具有相应的属性202a...202n。某些属性,例如保留属性204a...204n可以指明虚拟存储器管理器114是否能从存储器106交换出相应逻辑存储器块。
图3根据本发明的某些实施例,图解了计算设备100中实现的示例逻辑存储器块200a...200n和示例属性202a...202n的模块图。
在某些实施例中,示例逻辑存储器块200a...200n可以包括可交换数据,用户未修改数据,和用户已修改数据。在其它实施例中,逻辑存储器块可以包括具有附加的或者不同的特征的数据。可交换数据可以包括可从存储器106交换到辅助存储器102的数据。用户已修改数据可以包括已经被用户修改的数据。用户未修改数据可以包括还没有被用户修改的数据。在某些实施例中,在计算设备100是存储控制器的情况下,在与计算设备100相连的主机系统上运行的应用程序可以将用户数据写到计算设备100。例如,逻辑存储器块200a可以包括用户未修改数据208a,逻辑存储器块200b可以包括用户已修改数据208b,而逻辑存储器块200n可以包括可交换数据208n。
还在图3中示出了对应于示例逻辑存储器块200a...200n的属性202a...202n的示例值。例如,逻辑存储器块200a包括用户未修改数据208a。在某些实施例中,虚拟存储器管理器114不向辅助存储器102交换用户数据,无论是用户未修改数据,还是用户已修改数据。在这样的实施例中,相应保留属性204a可以具有布尔值“真”,而相应的其他属性206a可以指明逻辑存储器块200a包含用户未修改数据。
为提供进一步的示例,逻辑存储器块200b包括用户已修改数据208b。相应保留属性204b可以具有布尔值“真”,并且相应的其他属性206b可以指明逻辑存储器块200b包含用户已修改数据。为提供附加例子,逻辑存储器块200n可以包括可交换数据208n。相应保留属性204n可以有布尔值“假”,并且相应的其他属性206n可为“空”。
因此,图3描述了某些示例实施例,其中,属性202a...202n指明逻辑存储器块200a...200n是否为保留存储器。属性202a...202n还可指明与逻辑存储器块200a...200n相关的其他特征。
图4根据本发明的某些实施例,图解了计算设备100中实现的用于保留存储器的逻辑。
控制起始于模块400,在其中,计算设备100执行计算设备100的初始程序加载(IPL)或重新初始化程序加载(重新IPL),其中,重新IPL是计算设备100的第二次或后续的IPL。在某些实施例中,在IPL或者重新IPL中,计算设备100可以经历引导序列。例如,IPL或者重新IPL过程可以包括检查存储器106并装载操作系统100,设备驱动程序,以及其他居于计算设备100中的应用程序。
固件108确定(在模块402)固件108是否拥有关于存储器206中的哪些逻辑存储器块200a...200n被配置成保留存储器的信息。在某些实施例中,这种信息可位于计算设备100中驻留的文件中,或者已经由固件108通过之前的IPL而保存。
如果固件108确定(在模块402)固件108不拥有关于哪些逻辑存储器块200a...200n被配置成保留存储器的信息,则固件108将全部逻辑存储器块200a...200n配置(在模块404)为常规存储器,即可以被交换到辅助存储器102的存储器。在某些实施例中,全部逻辑存储器块200a...200n在此情况下可以被称为属于常规存储器池。保留属性204a...204n可以被设定为布尔值“假”。
固件108输出(在模块406)接口给存储器保留应用程序112,以确定哪些逻辑存储器块要被设置为保留存储器。根据存储器保留应用程序112返回的信息,固件设置(在模块408)与逻辑存储器块200a...200n相关的保留属性204a...204n。例如,如果逻辑存储器块200a要被设置为保留存储器,则保留属性204a会被设定为布尔值“真”。存储器保留应用程序112可能已经由用户指定的输入,计算设备100中所存储的数据,计算设备100中所存储的策略等等返回关于哪些逻辑存储器块要被设置为保留存储器的信息。
固件108保存(在模块410)随后IPL的保留存储器的范围。因为固件108拥有关于哪些逻辑存储器块被配置为保留存储器的信息,固件108可以以本领域已知的任何方式保存信息,例如,通过在后续IPL期间读取的文件中存储该信息。因此,保留存储器的范围在计算设备100的重复IPL的过程中可以是持久的。
如果固件108确定(在模块402)固件108拥有关于哪些逻辑存储器块200a...200n被配置为保留存储器的信息,则固件108根据所拥有的信息,设置(在模块412)对应于逻辑存储器块的保留属性204a...204n,并返回控制到模块400,在模块400中,计算设备100执行重新IPL。
因此,图5图解了某些实施例,其中,固件108执行存储器106的保留,使得保留存储器不能被交换到辅助存储器102。在某些实施例中,在相连的物理块中保存逻辑存储器块的内容,即,在存储器106中的相连物理存储中保存逻辑存储器块的实际内容。如果逻辑存储器块的实际内容被保存在存储器106中的相连物理存储中,则与逻辑存储器块的实际内容没有被保存在相连物理存储中的情况下的实际数据内容的存取时间相比,可更快地存取逻辑存储器块的实际数据内容。
通过在固件中实现实施例,以及在某些实施例中,通过在IPL时执行存储器保留,可以避开在操作系统中可能存在的对存储器保留的限制。例如,相对于存储器总量,即使操作系统110设置的保留存储器数量的上限为80%,实施例仍然能允许保留存储器超出操作系统110所设定的80%的上限。
图5根据本发明的某些实施例,图解了用于将逻辑存储器块200a...200n交换到辅助存储器102的逻辑。可以在计算设备100中实现此逻辑。
控制起始于模块500,其中操作系统110的虚拟存储器管理器114执行将逻辑存储器块从存储器106交换到辅助存储器102的指令。
虚拟存储器管理器114检查(在模块502)逻辑块并确定(在模块504)对应于所检查逻辑块的保留属性204a...204n是否具有布尔值“真”。如果布尔值为“真”,则虚拟存储器管理器114不将所检查的存储器块从存储器106移到辅助存储器102(在模块506)。
虚拟存储器管理器114确定(在模块508)是否有更多的逻辑存储器块必须被交换到辅助存储器102。如果必须交换更多的逻辑存储器块,则虚拟存储器管理器114检查(在模块502)下一个逻辑存储器块。如果不必交换更多的逻辑存储器块,则进程停止(在模块510)。
如果虚拟存储器管理器114确定(在模块504)所检查的逻辑块的保留属性204a...204n不是布尔值“真”,则虚拟存储器管理器114可将所检查的逻辑存储器块从存储器106移动(在模块512),即交换到辅助存储器102。虚拟存储器管理器114确定(在模块508)附加逻辑存储器块是否必须被交换到辅助存储器102。
因此,图5示出了某些实施例,其中虚拟存储器管理器114可以只将还没有保留的存储器换页到辅助存储器102。另外,虚拟存储器管理器114也可以对已经保留的存储器,以及还没有保留的存储器提供地址翻译。
图6根据本发明的某些实施例,图解了操作系统110实现的存储器管理策略的模块图。在某些实施例中,操作系统110可以具有常规存储器管理策略600,用于管理还没有保留的存储器,以及保留存储器管理策略602,用于管理已经保留的存储器。
例如,示例的常规存储器管理策略600可以包括周期性废物收集,而在某些实施例中,示例的保留存储器管理策略602可以不包括周期性废物收集的措施。
图7根据本发明的某些实施例,图解了用于应用存储器管理策略600,602的逻辑。
控制起始于模块700,其中操作系统110准备好对逻辑存储器块200a...200n执行存储器管理操作。操作系统110确定(在模块702)逻辑存储器块200a...200n的相应保留属性204a...204n是否指明逻辑存储器块200a...200n为保留存储器块。如果指明逻辑存储器块200a...200n是保留存储器块,则操作系统110以保留存储器管理策略602执行(在模块704)存储器管理操作。如果未指明逻辑存储器块200a...200n是保留存储器块,则操作系统110以常规存储器管理策略执行(在模块706)存储器管理操作。在某些附加实施例中,还可以使用其他属性206a...206n确定特定的存储器管理策略。
因此,图6和图7图解了某些实施例,其中,根据逻辑存储器块200a...200n是保留存储器,还是不保留的存储器,可以针对逻辑存储器块200a...200n应用不同的存储器管理策略。
实施例为每个逻辑存储器块200a...200n提供保留属性204a...204n,以指明逻辑存储器块是保留的,并且不允许被换出到辅助存储器102。在某些实施例中,操作系统110可以将存储器106中的逻辑存储器块200a...200n分到常规池和保留池中。操作系统110的虚拟存储器管理器114可以对常规池和保留池两者提供地址翻译。然而,虚拟存储器管理器114可以只从常规池向辅助存储器102换出存储器。
在某些实施例中,可以使用保留存储器缓冲用户数据,使得虚拟存储器管理器不向辅助存储器换出用户数据。对于操作系统的现有存储器保留方案,实施例可以不需要作任何修改。然而,如果操作系统对允许保留的存储器的量有限制,则实施例可以允许应用程序超出此限制。
与不保留的存储器相比,某些实施例可允许操作系统110对保留存储器应用不同的存储器管理策略。某些实施例也可以允许操作系统110为其他应用程序提供标准翻译,以便存取保留存储器。某些实施例可进一步实现保留存储器为相连物理块,以进行更快速的地址翻译。保留存储器不可以被换出到辅助存储器,并且保留存储器的地址翻译可以是静态的。在某些实施例中,应用程序可以在不查询关联页表项的情况下,计算地址翻译。另外,在计算设备100的重复IPL的过程中,保留存储器的范围和身份标识可以是持久的。
附加实现细节可使用标准编程和/或工程化技术生成软件,固件,硬件或其任何结合,所述技术可以被实现为方法,装置或产品。这里所使用的术语“产品”是指代码或逻辑,其在硬件电路(例如,集成电路芯片,可编程门阵列(PGA),专用集成电路(ASIC),等等)中实现,或计算机可读介质(例如,磁存储介质,例如硬盘驱动器,软盘驱动器,磁带),光存储器(例如,CD-ROM,光盘,等等),易失和非易失存储器设备(例如,EEPROM,ROM,PROM,RAM,DRAM,SRAM,固件,可编程逻辑,等等)。由处理器存取并执行计算机可读取介质中的代码。还可以通过传输介质,或者通过网络从文件服务器存取其中实现实施例的代码。在这些情况下,其中实现代码的产品可以包含传输介质,例如网络传输线路,无线传输介质,通过空间传播的信号,无线电波,红外信号,等等。当然,本领域的技术人员会认识到,在不偏离实施例范围的情况下,可以对此配置作出许多修改,并且产品可以包括本领域已知的任何信息承载介质。
图8图解了其中实现本发明的某些方面的计算机体系结构的模块图。图8图解了计算设备100的一个实现。计算设备100可以实现计算体系结构800,计算体系结构800具有处理器802(例如,CPU104),存储器804(例如,易失性存储器设备,例如,存储器106),以及存储设备806(例如,非易失性存储设备,磁盘驱动器,光盘驱动器,磁带驱动器,等等)。在某些实施例中,存储设备806可以包括辅助存储器102。存储设备806可以包括内部存储设备,附连的存储设备或者网络可存取存储设备。存储设备806中的程序可以被装载进存储器804,并可由处理器802以本领域已知的方式执行。该体系结构可进一步包括网卡808,以便能与网络进行通信。该体系结构还可以包括至少一个输入810,例如键盘,触摸屏,笔,语音激活输入,等等,以及至少一个输出812,例如显示设备,扬声器,打印机,等等。
图4,图5和图7的逻辑描述了以特定的顺序发生的特定操作。此外,可以顺序执行操作,也可以并行地执行操作。在可选实施例中,某些逻辑操作可以以不同的顺序,可以被修改或者删除,并且仍然可以实现本发明的实施例。此外,可以添加步骤到上述逻辑中,并且仍然符合实施例要求。还可以通过单进程或者分布式进程执行其它步骤。
为了说明的目的,已经在单独的模块中描述了许多软件和硬件部分。这样的部分可以被集成到较少量的部分中,或者被分成较大数量的部分。另外,被描述为由特定部分执行的某些操作可以由其他部分执行。
因此,上述实施例是为图解和说明目的而提供的。其目的不是穷举本发明或将本发明限制到所公开的具体形式上。根据上述教导,可想到许多修改和变化。不希望通过这里的具体说明来限制本发明的范围,而是希望通过附加的权利要求来限制本发明的范围。以上说明,示例和数据提供了本发明的组成的制造和使用的完整说明。因为可以在不偏离本发明实质和范围的情况下得到本发明的许多实施例,本发明由下文中所附加的权利要求来限定。
注*AIX,Enterprise Storage Server(企业存储服务器)(ESS)是国际商用机器公司的商标。
*UNIX是Open Group(开放组织)的商标。
权利要求
1.一种方法,包括分配对应于计算设备中存储器的多个逻辑存储器块;以及将属性关联于至少一个逻辑存储器块,其中该属性指明是否能从存储器交换出至少一个逻辑存储器块,并且其中对应于该至少一个逻辑存储器块的物理块是相连的。
2.如权利要求1所述的方法,其中分配多个逻辑存储器块和将属性关联还包括确定计算设备中的固件是否拥有关于多个逻辑存储器块中的哪些被配置成保留逻辑存储器块的信息;以及响应于确定计算设备中的固件拥有关于多个逻辑存储器块中的哪些被配置成保留逻辑存储器块的信息,根据所拥有的信息,设置与该至少一个逻辑存储器块相关联的该属性,其中在被设置的情况下,该属性指明不能从存储器交换出该至少一个逻辑存储器块,并且指明该至少一个逻辑存储器块是保留逻辑存储器块。
3.如权利要求1所述的方法,其中分配多个逻辑存储器块和将属性关联还包括确定计算设备中的固件是否拥有关于多个逻辑存储器块中的哪些被配置成保留逻辑存储器块的信息;响应于确定计算设备中的固件不拥有关于多个逻辑存储器块中的哪些被配置成保留逻辑存储器块的信息,由固件结合存储器保留应用程序来确定多个逻辑存储器块中的哪些被配置成保留逻辑存储器块;以及由固件在计算设备的初始程序加载过程中保存关于多个逻辑存储器块中的那些被配置成保留逻辑存储器块的信息。
4.如权利要求1所述的方法,还包括将附加属性关联于该至少一个逻辑存储器块,其中该附加属性进一步表征该至少一个逻辑存储器块的特性。
5.如权利要求1所述的方法,还包括将附加属性关联于该至少一个逻辑存储器块,其中该附加属性指明在该至少一个逻辑存储器块中的数据是否可修改。
6.如权利要求1所述的方法,还包括由虚拟存储器管理器执行用于交换该至少一个逻辑存储器块到被连接到计算设备的辅助存储器的指令;由虚拟存储器管理器确定该至少一个逻辑存储器块的关联属性是否指明不能从存储器交换出逻辑存储器块;以及响应于确定该至少一个逻辑存储器块的关联属性没有指明不能从存储器交换出逻辑存储器块,从存储器交换该至少一个逻辑存储器块到辅助存储器。
7.如权利要求1所述的方法,还包括对保留逻辑存储器块运用第一存储器管理策略;对非保留逻辑存储器块运用第二存储器管理策略;确定该至少一个逻辑存储器块是否保留逻辑存储器块;以及响应于确定该至少一个逻辑存储器块是保留逻辑存储器块,根据第一存储器管理策略对该至少一个逻辑存储器块执行存储器管理操作。
8.如权利要求1所述的方法,其中,由计算设备中的固件执行分配多个逻辑存储器块和将属性关联的步骤,其中计算设备包括操作系统,该操作系统对能被保留用于从存储器交换出的存储器的量有限制,并且其中分配多个逻辑存储器块和将属性关联允许应用程序超出对能保留的存储器的量的限制。
9.如权利要求1所述的方法,其中由计算设备中的应用程序执行分配多个逻辑存储器块和将属性关联的步骤,并且其中该应用程序与计算设备中的操作系统不同。
10.如权利要求1所述的方法,还包括如果不能从存储器交换出该至少一个逻辑存储器块,则对该至少一个逻辑存储器块执行静态地址翻译。
11.一种系统,包括计算设备;连接到计算设备的存储器;用于分配对应于计算设备中存储器的多个逻辑存储器块的装置;和用于将属性关联于至少一个逻辑存储器块的装置,其中该属性指明是否能从存储器交换出该至少一个逻辑存储器块,并且其中对应于该至少一个逻辑存储器块的物理块是相连的。
12.如权利要求11所述的系统,还包括在计算设备中实现的固件,其中用于分配多个逻辑存储器块的装置以及用于关联属性的装置还执行(i)确定该固件是否拥有关于多个逻辑存储器块中的哪些被配置成保留逻辑存储器块的信息;以及(ii)响应于确定计算设备中的固件拥有关于多个逻辑存储器块中的哪些被配置成保留逻辑存储器块的信息,根据所拥有的信息,设置与该至少一个逻辑存储器块相关联的属性,其中在被设置的情况下,该属性指明不能从存储器交换出该至少一个逻辑存储器块,并且指明该至少一个逻辑存储器块是保留逻辑存储器块。
13.如权利要求11所述的系统,还包括在计算设备中实现的存储器保留应用程序;和在计算设备中实现的固件,其中用于分配多个逻辑存储器块的装置以及用于关联属性的装置还执行(i)确定固件是否拥有关于多个逻辑存储器块中的哪些被配置成保留逻辑存储器块的信息;(ii)响应于确定计算设备中的固件不拥有关于多个逻辑存储器块中的哪些被配置成保留逻辑存储器块的信息,该固件结合存储器保留应用程序确定多个逻辑存储器块中的哪些被配置成保留逻辑存储器块;以及(iii)由固件在计算设备的初始程序加载过程中保存关于多个逻辑存储器块中的那些被配置成保留逻辑存储器块的信息。
14.如权利要求11所述的系统,还包括用于将附加属性关联于该至少一个逻辑存储器块的装置,其中该附加属性进一步表征该至少一个逻辑存储器块的特性。
15.如权利要求11所述的系统,还包括用于将附加属性关联于该至少一个逻辑存储器块的装置,其中该附加属性指明在该至少一个逻辑存储器块中的数据是否可修改。
16.如权利要求11所述的系统,还包括连接到计算设备的虚拟存储器管理器;连接到计算设备的辅助存储器;用于通过虚拟存储器管理器执行用来交换该至少一个逻辑存储器块到被连接到计算设备的辅助存储器的指令的装置;用于通过虚拟存储器管理器确定该至少一个逻辑存储器块的关联属性是否指明不能从存储器交换出逻辑存储器块的装置;以及用于响应于确定该至少一个逻辑存储器块的关联属性没有指明不能从存储器交换出逻辑存储器块,交换该至少一个逻辑存储器块到辅助存储器的装置。
17.如权利要求11所述的系统,还包括用于保留逻辑存储器块的第一存储器管理策略;用于非保留逻辑存储器块的第二存储器管理策略;用于对保留逻辑存储器块运用第一存储器管理策略的装置;用于对非保留逻辑存储器块运用第二存储器管理策略的装置;用于确定该至少一个逻辑存储器块是否保留逻辑存储器块的装置;以及用于响应于确定该至少一个逻辑存储器块是保留逻辑存储器块,根据第一存储器管理策略,对该至少一个逻辑存储器块执行存储器管理操作的装置。
18.如权利要求11所述的系统,还包括在计算设备中实现的应用程序;连接到计算设备的操作系统,其中操作系统对能保留用于从存储器交换出的存储器的量有限制;以及计算设备中的固件,其中在固件中实现用于分配多个逻辑存储器块的装置以及用于关联属性的装置,并且其中用于分配多个逻辑存储器块的装置和用于关联属性的装置允许该应用程序超出对能保留的存储器的量的限制。
19.如权利要求11所述的系统,还包括连接到计算设备的操作系统;和计算设备中实现的应用程序,其中由该应用程序实施用于分配多个逻辑存储器块的装置和用于关联属性的装置,并且其中该应用程序与操作系统不同。
20.如权利要求11所述的系统,还包括用于在不能从存储器交换出该至少一个逻辑存储器块的情况下,对该至少一个逻辑存储器块执行静态地址翻译的装置。
21.一件产品,其中该产品能导致操作,该操作包括分配对应于计算设备中存储器的多个逻辑存储器块;以及将属性关联于至少一个逻辑存储器块,其中该属性指明是否能从存储器交换出至少一个逻辑存储器块,并且其中对应于该至少一个逻辑存储器块的物理块是相连的。
22.如权利要求21所述的产品,其中分配多个逻辑存储器块和将属性关联还包括确定计算设备中的固件是否拥有关于多个逻辑存储器块中的哪些被配置成保留逻辑存储器块的信息;以及响应于确定计算设备中的固件拥有关于多个逻辑存储器块中的哪些被配置成保留逻辑存储器块的信息,根据所拥有的信息,设置与该至少一个逻辑存储器块相关联的该属性,其中在被设置的情况下,该属性指明不能从存储器交换出该至少一个逻辑存储器块,并且指明该至少一个逻辑存储器块是保留逻辑存储器块。
23.如权利要求21所述的一件产品,其中分配多个逻辑存储器块和将属性关联还包括确定计算设备中的固件是否拥有关于多个逻辑存储器块中的哪些被配置成保留逻辑存储器块的信息;响应于确定计算设备中的固件不拥有关于多个逻辑存储器块中的哪些被配置成保留逻辑存储器块的信息,由固件结合存储器保留应用程序来确定多个逻辑存储器块中的哪些被配置成保留逻辑存储器块;以及由固件在计算设备的初始程序加载过程中保存关于多个逻辑存储器块中的那些被配置成保留逻辑存储器块的信息。
24.如权利要求21所述的产品,其中所述操作还包括将附加属性关联于该至少一个逻辑存储器块,其中该附加属性进一步表征该至少一个逻辑存储器块的特性。
25.如权利要求21所述的产品,其中所述操作还包括将附加属性关联于该至少一个逻辑存储器块,其中该附加属性指明在该至少一个逻辑存储器块中的数据是否可修改。
26.如权利要求21所述的产品,其中所述操作还包括由虚拟存储器管理器执行用于交换该至少一个逻辑存储器块到被连接到计算设备的辅助存储器的指令;由虚拟存储器管理器确定该至少一个逻辑存储器块的关联属性是否指明不能从存储器交换出逻辑存储器块;以及响应于确定该至少一个逻辑存储器块的关联属性没有指明不能从存储器交换出逻辑存储器块,从存储器交换该至少一个逻辑存储器块到辅助存储器。
27.如权利要求21所述的产品,其中所述操作还包括对保留逻辑存储器块运用第一存储器管理策略;对非保留逻辑存储器块运用第二存储器管理策略;确定该至少一个逻辑存储器块是否保留逻辑存储器块;以及响应于确定该至少一个逻辑存储器块是保留逻辑存储器块,根据第一存储器管理策略对该至少一个逻辑存储器块执行存储器管理操作。
28.如权利要求21所述的产品,其中,由计算设备中的固件执行分配多个逻辑存储器块和将属性关联的步骤,其中计算设备包括操作系统,该操作系统对能被保留用于从存储器交换出的存储器的量有限制,并且其中分配多个逻辑存储器块和将属性关联允许应用程序超出对能保留的存储器的量的限制。
29.如权利要求21所述的产品,其中由计算设备中的应用程序执行分配多个逻辑存储器块和将属性关联的步骤,并且其中该应用程序与计算设备中的操作系统不同。
30.如权利要求21所述的产品,其中所述操作还包括如果不能从存储器交换出该至少一个逻辑存储器块,则对该至少一个逻辑存储器块执行静态地址翻译。
全文摘要
提供了一种方法、系统及产品,其中,在某些实施例中,分配对应于计算设备中存储器的多个逻辑存储器块。属性与至少一个逻辑存储器块相关联,其中属性指明是否能从存储器交换出至少一个逻辑存储器块,并且其中对应于至少一个逻辑存储器块的物理块是相连的。
文档编号G06F12/08GK1637725SQ200510004139
公开日2005年7月13日 申请日期2005年1月7日 优先权日2004年1月9日
发明者苏玉成, 约翰·诺伯特·迈克考利, 宋正中, 威廉·格里斯伍尔德·西尔曼 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1