分析移动到非易失性存储器的ram存储对象的方法和设备的制作方法

文档序号:6583210阅读:146来源:国知局

专利名称::分析移动到非易失性存储器的ram存储对象的方法和设备的制作方法
技术领域
:本发明的实施例涉及分析用于移动到非易失性存储器的易失存储对象。特别地,本发明的实施例涉及识别位于随机存取存储器中的作为存储于和直接读取于非易失性存储器的候选者的存储对象以及将候选存储对象转移至非易失性存储器。
背景技术
:许多计算机架构存储器要么是(1)主存储器,其是易失的(意为当存储器关闭时信息会丢失),但是相对较快,例如随机存取存储器(RAM),要么是(2)辅助存储器,其是非易失的,但是相对较慢,例如闪存以及硬盘。一般地,原始设备制造商(OEM)将永久文件存储于非易失性的存储器,并在RAM中创建以及存储绝大多数其他对象。例如,OEM将代码存储于闪存而将数据存于DRAM。然而,随着时间的过去,OEM开始将代码存于易失性存储器,并使用大量的DRAM。许多存于DRAM中的对象可以被转变为能直接执行代码的非易失性存储器技术(例如,或非存储器(NOR)技术和相变存储器(PCM)技术)。然而,OEM—般都缺少识别存于DRAM的能被存储及直接读取于非易失性存储器的存储对象的工具。
发明内容根据本发明的实施方式,提供了一种方法,该方法包括监视对在易失性存储器中的存储对象的存储器存取以收集并创建分析数据;使用所述分析数据来确定在所述易失性存储器中的存储对象是否是将要被存储在非易失性存储器中以及从所述非易失性存储器直接读取的候选者;以及将存储对象候选者存储在所述非易失性存储器中以使得该存储对象从所述非易失性存储器中直接读取。根据本发明的另一实施方式,提供了一种机器可存取存储介质,该机器可存取存储介质提供指令,该指令如果由机器执行将使得所述机器执行操作,该操作包括监视对在易失性存储器中的存储对象的存储器存取以收集并创建分析数据;使用所述分析数据来确定在所述易失性存储器中的存储对象是否是将要被存储在非易失性存储器中以及从所述非易失性存储器直接读取的候选者;以及将所述存储对象候选者存储在所述非易失性存储器中以使得所述存储对象从所述非易失性存储器中直接读取。根据本发明的又一实施方式,提供了一种系统,该系统包括处理器;与所述处理器耦合的非易失性存储器;以及与所述处理器耦合的随机存取存储器,所述处理器将存储在所述随机存取存储器中的存储对象转移至所述非易失性存储器中,其中被转移的存储对象是从所述非易失性存储器中直接存取的。本发明的实施例是以示例的方式示出的,并不限于附图中的图,其中相似的附图标记表示相似的元素,其中图1示出了根据本发明的一个实施例的存储器分析系统;图2示出了根据本发明的一个实施例的存储器分析系统的结构图;图3是一种用于识别存储于易失性存储器中的作为要从非易失性存储器直接读取的候选者的存储对象的方法的一个实施例的流程图;图4是一种确定存储对象是否是要被存储于以及直接读取于非易失性存储器的候选者的方法的一个实施例的另一流程图;图5是一种确定存储对象的写入频率的方法的一个实施例的流程图;以及图6是一种确定存储对象的写入频率是否达到写入频率阈值的方法的一个实施例的流程图。具体实施例方式本发明的实施例提供了一种对存于易失性存储器(如RAM和DRAM)的作为要被移动至并直接读取于非易失性存储器(如N0R和PCM)的候选者的存储对象进行分析的方法和系统。该存储器分析系统通过页面错误监视存储器存取并且识别要被载入易失性存储器的存储对象。该分析系统使用页面错误来确定页错误类型以及存储对象的写入频率,并且确定该存储对象的存储器存取类型。该分析系统确定该对象的存储器存取类型是否达到非易失性存储器技术的能力。如果该存储器存取类型达到非易失性存储器技术的能力,则该分析系统将该存储对象识别为被转移到非易失性存储器(如N0R和PCM)的候选者。该分析系统将存储对象候选者存于非易失性存储器,这样该存储对象可以直接从非易失性存储器中读取。该方法和系统通过识别可直接从非易失性储存器(如N0R和PCM)中读取而不是从易失性储存器(如RAM和DRAM)载入或读取的存储对象而有更好的性能。图1示出了根据本发明的一个实施例的存储器分析系统100。对于一个实施例,该系统100具有无线接口120。该无线接口120与天线140耦合。该无线接口120接收并发送数据和信息。然而,实施例并不限于无线通信的实施例。其他非无线的应用可以使用本发明的实施例。该系统100包括与接口105耦合的处理器110。该接口105可以用于在处理器110和系统存储器115中的存储装置之间提供通信或信息。接口105可以包括串行和/或并行总线来与被用于在处理器110和系统存储器115之间提供信号交换的控制信号线路分享信息。系统存储器115可以选择性地被用于存储由处理器110执行的命令。系统存储器115可以由一个或多个不同类型的存储器提供,并且可以包括易失性存储器(例如随机存取存储器143(RAM)和动态随机存取存储器(DRAM))和非易失性存储器(例如只读存储器150(ROM)和具有相变材料的非易失性存储器155)。非易失性存储器155的例子包括NOR闪存、相变存储器(PCM)、相变随机存取存储器(PRAM或PCRAM)、双向通用存储器(OUM)或硫化物随机存取存储器(C-RAM)。易失性存储器143的例子是RAM和DRAM。系统存储器115包括存储器管理器141以对易失性存储器中的要从非易失性存储器中直接读取的存储6对象进行分析和转移。RAM143—般包含立即能被处理器110获取的数据和/或目前正被处理器110运行的程序模块。图1示出了操作系统145、应用程序147、其他程序模块149以及程序数据151。易失性存储器143和非易失性存储器150U55可以通过堆叠处理而被结合从而减少主板上的针脚,独立包装,或置于多片包装中,存储器组件置于处理器的顶端。该实施例还示出了可以嵌于非易失性存储器中的一个或多个处理器核心160、180。对于一个实施例,系统100包括带有整体存储器管理单元(匪U)130的处理器110。在其他实施例中,存储器管理单元130是独立芯片。该存储器管理单元(匪U)130是负责处理由处理器110请求的对存储器存取的硬件装置或电路。存储器管理单元130支持虚拟存储器以及通过将虚拟地址转换为物理地址进行页面调度。该存储器管理单元130将虚拟地址空间(由处理使用的地址的范围)分割成页面,每个页面具有的大小是2的幂(即,2,。地址底部N位(页面内偏移)是不变的。上层地址位是虚拟页码。存储器管理单元130可以包括保存有将虚拟页码转换成物理页码的表的少量存储器(如缓存)。该表可以作为转换后备缓冲(TLB),其将虚拟地址与物理地址相匹配。所有对数据的请求都被发送至存储器管理单元130,该存储器管理单元130确定该数据是否存储于易失性存储器143或需要从大容量存储器装置(例如磁盘驱动器170)中获取。如果该数据不在任何存储器中,则存储器管理单元130发布页面错误中断。图2示出了根据本发明的一个实施例的存储器分析系统200的框图。系统200使用页面类型虚拟地址方案并且包括存储器管理者141来对在易失性存储器中的要从非易失性存储器中直接读取的存储对象进行分析和转移。所有对数据的请求被发送至MMU130,该匪U130确定存储对象是否存储于易失性存储器(例如DRAM)。存储对象具有包括虚拟页码和页码偏移的虚拟地址。匪U130—般通过转换后备缓冲202(TLB)将虚拟页码转换成物理页码。例如,如果程序正在运行并试图访问存储对象,则匪U130在TLB202中查找地址。如果匪U130在TLB202中发现虚拟页面的对应(TLB命中),其物理位置被获取从而该程序可以访问该存储对象。然而,TLB202可以保存页面转换的固定页码,而如果TLB202没有转换(TLB失败),则匪U130访问203页面表204,一种包含硬件特定数据结构的机制。页面表204包含页面表项207A-E(PTE),其中每一项定义一页面的物理位置(206A、206B、206D或206E)。页面是RAM143的确定长度的相邻部分,并且可以存储任何类型的数据。该页面表项207A-E还可以包括关于该页面(存储对象)是否被写入、该页面何时被最后一次载入、什么类别的处理可能对该页面进行读取和写入、以及该页面是否应被缓存的信息。如果匪U130没有在页面表204中发现对应虚拟地址的有效项,则匪U130产生被称为页面错误205中断(或页面错误)的处理器中断。例如,当某存储对象在DRAM中不可获取,匪U130发现在页面表204(例如207C)中没有转换,匪U130产生一页面错误205。当页面错误205发生时,匪U130将控制转移至页面错误处理器220。页面错误处理器220决定如何处理页面错误205。页面错误处理器220确定该虚拟地址是否有效。如果该虚拟地址是有效的,则页面错误处理器220寻找一个可获得的页面,将存储对象置于那个页面,并利用转换来更新页面表204。页面错误处理器220通知匪U130重试操作。匪U130重试该操作,页面(存储对象)被载入易失性存储器(例如DRAM)。页面错误处理器220包括分析器209以对载入在DRAM中的作为要被存储以及直接读取于非易失性存储器(例如N0R、PCM)的候选者的存储对象进行分析。分析器209使用页面错误205来识别要被载入于DRAM的存储对象并监视页面表活动以产生用于确定存储对象是否是要从非易失性存储器直接读取的候选者的分析数据。分析数据可以包括存储对象的地址、对象多久被载入DRAM—次、以及对象多久被写入一次。分析器209使用这些分析数据对存储对象的存储器存取类型进行分类,并确定该存储器存取类型是否适合作为NOR或PCM存储器的候选者。表1示例性地示出了四种适合作为NOR或PCM技术候选者的存储器存取类型(例如,"只读"、"很少读写"、"读写"以及"频繁读写")。<table>tableseeoriginaldocumentpage8</column></row><table>表1理想的候选者包括只读或很少写入的存储对象。词语"很少"和"频繁"用于指代系统中的存储技术类型的具体参数。图6在下面对存储器存取类型进行了更详细的描述。分析器209通过确定存储对象的写入频率确定存储对象的存储器存取类型。分析器209在一段时间(分析期)内监视页面表活动。写入频率是在分析期中存储对象被写入的次数。分析器209通过在每次存储对象被写入时记录存储对象页面错误206而确定存储对象的写入频率。分析器209包括页面表项(PTE)清理器208来清理页面表的页面表项。当载入一页面时,PTE清理器208将该载入的页面重新标记为未载入。在一个实施例中,PTE清理器在预定的时间间隔(如10ms)内周期性地将载入的页面标记为未载入。将载入的页面标记为未载入人工地清理了页面表204,并使得当存储对象被请求时出现分析器209能检测的页面错误。分析器209检测该页面错误并确定存储对象是否被写入。分析器209记录存储对象被写入的次数。例如,系统200示出了页面206A和页面206B。分析器209确定页面206A被载入单次且对该页面206A没有进行写入活动。因此,分析器209将页面206A归类为只读存储器存取类型。分析器209确定页面206B在分析期内只被载入一次且只写入一次。因此,分析器209将页面206B归类为很少读写存储器存取类型。分析器209能以原始数据文件输出分析数据,该原始数据文件包含十六进制或二进制的信息。对于一个实施例,记录器210接收分析器209的输出,创建一个新的存储器映象(例如存储器配置文件),并且根据新的存储器映象自动重建系统存储。总的来说,页面(例如,206A-206E)在其被存储到非易失性存储器之前被压縮。当页面被请求时,操作系统将从存于非易失性存储器的压縮图象中读取页面,将该页面解压縮,并将解压縮的页面载入DRAM中。新的存储器映象定义哪个页面在其被存储到非易失性存储器前保持不被压縮,这样该页面能够从非易失性存储器中直接读取,而不再载入DRAM。例如,如果分析器209将页面206A识别为只读存储器存取类型,则页面206A是保留于非易失性存储器(例如PCM)的候选者。创建的新的存储器映象定义页面206A在PCM中不被压縮,而是在PCM中保持为未压縮的图象。因此,当下次页面206A被请求时,页面206A不载入DRAM,而是直接从PCM中读取。对于另一个实施例,记录器210将由分析器209产生的分析数据格式化为用户能使用的格式,用户能使用该格式手动改变系统的存储器映象并且手动重建系统存储器。记录器210接收分析器的输出并将其映射回具体页面(例如,特定数据对象、特定文件、特定可执行图像、特定数据库文件等、以及所述文件内的偏移)。该格式可以是柱状图,该柱状图能示出哪些页面被频繁地载入以及哪些页面很少被载入。用户可以根据柱状图提供的数据手动改变系统存储器映象以及手动重建系统存储器。对于另一个实施例,系统200包括存储器重配器240来动态地重新配置系统存储器。存储器重配器240自动地接收分析器209的输出并识别哪些页面应被作为未压縮的图像存于非易失性存储器。使用分析器209的输出,存储器重配器240解压縮所识别的页面并且将信息(例如,新的存储器映象)提供到存储器调动器(relocates)230。存储器调动器230使用新的存储器映象与页面错误处理器220进行交互以使得存储对象可根据新的存储器映象从NOR或PCM获得。使用上述示例,存储器调动器230探测到对页面206A的请求,识别页面206A是PCM中的未压縮图像,并通知页面错误处理器220不将页面206A载入DRAM而是从PCM中直接读取页面206A。图3是用于识别存于易失性存储器中的作为要从非易失性存储器直接读取的候选者的存储对象的方法的一个实施例的流程图。该方法可以通过处理逻辑实施,该处理逻辑可包含硬件(例如电路、专用逻辑等)、软件(如在通用计算机系统或专用机器上运行)或两者的结合。对于一个实施例,处理逻辑存在于图1的存储器分析系统100中。在框301处,处理逻辑监视载入易失性存储器(如DRAM)中的存储对象的存储器存取,以收集和创建分析数据。分析数据可以包括存储对象的地址、该对象多久被载入DRAM一次、以及该对象多久被写入一次。在框303处,处理逻辑使用分析数据确定存储对象是否是要被转移至非易失性存储器并从非易失性存储器直接读取的候选者。在框305处,处理逻辑将存储对象候选者以未压縮存储对象存于非易失性存储器,从而该存储对象可以从非易失性存储器直接读取。图4是用于确定存储对象是否为要被存储于并且直接读取于非易失性存储器的候选者的方法的一个实施例的另一个流程图。该方法可以通过处理逻辑实施,该处理逻辑可包含硬件(例如电路、专用逻辑等)、软件(如在通用计算机系统或专用机器上运行)或两者的结合。对于一个实施例,处理逻辑存在于图1的存储器分析系统100中。在框401处,处理逻辑检测页面错误并用页面错误识别要被载入DRAM的存储对象。处理逻辑通过在一段时间或分析时间内监视页面表的活动检测页面错误。分析时间可以是预定的时间段或用户定义的时间段。例如,OEM可以运行两小时的测试,从而处理逻辑在两小时的时间段内监视页面表的活动。处理逻辑可以通过地址和存取类型(例如读或写)来识别对象。9在框403处,处理逻辑确定存储对象的写入频率。写入频率是存储对象被写入的次数。下面结合图5对写入频率进行了更详细的讨论。在框405处,处理逻辑确定写入频率是否达到写入阈值。下面的图6对达到写入阈值进行了更详细的描述。在框407处,处理逻辑根据写入频率是否达到写入阈值来识别作为直接从非易失性存储器直接读取的候选者的存储对象。图5是用于确定存储对象的写入频率的方法500的一个实施例的流程图。该方法可以通过处理逻辑实施,该处理逻辑可包含硬件(例如电路、专用逻辑等)、软件(如在通用计算机系统或专用机器上运行)或两者的结合。对于一个实施例,处理逻辑存在于图1的存储器分析系统100中。在框501处,处理逻辑监视页面表的活动。在框503处,处理逻辑确定是否存在页面错误。如果处理逻辑检测到页面错误(框503),则处理逻辑识别在框505处引发页面错误的存储对象的地址。在框507处,处理逻辑记录该存储对象的地址。可选地,处理逻辑可以确定存储对象以前载入过并且因此已经记录过。在框509处,处理逻辑将存储对象以只读形式载入并且在框511处记录该存储对象已载入。如果处理逻辑没有检测到页面错误(框503),则处理逻辑确定存储对象是否在框513处被写入。如果处理逻辑检测到写入活动(框513),则处理逻辑记录对存储对象的写入活动(框515)并且确定分析时间是否在框521处过期。在框513处,如果处理没有检测到写入活动,则处理逻辑确定在框517处是否清理页面表。处理逻辑根据用户定义的时间段是否过去来确定是否清理页面表项。例如,OEM可以定义处理逻辑每10ms清理一次页面表项。如果处理逻辑确定用户定义时间段已经过去(框517),则处理逻辑在框519处将当前载入于DRAM的存储对象重新标记为未载入,从而迫使存储对象被重新载入。如果处理逻辑确定用户定义时间段没有过去(在框517处),则处理逻辑在框521处确定分析时间是否过期。在框521处,如果处理逻辑确定分析时间没有过期,则处理逻辑返回到框501继续监视页面表活动。如果处理逻辑确定分析时间已经过期(框521),则处理逻辑在框523处使用记录的数据确定存储对象被写入的次数。图6是用于确定存储对象是否达到要被存储于并且直接读取于非易失性存储器的写入阈值的方法600的一个实施例的流程图。该方法可以通过处理逻辑实施,该处理逻辑可包含硬件(例如电路、专用逻辑等)、软件(如在通用计算机系统或专用机器上运行)或两者的结合。对于一个实施例,处理逻辑存在于图1的存储器分析系统100中。在框601处,处理逻辑确定存储对象的写入频率是否小于或等于PCM阈值。PCM阈值是PCM技术的当前写入性能速率。例如,PCM当前的写入性能是10MB/s的速率。然而,随着技术的发展,PCM将来的写入性能可能是,例如,40MB/s的速率。如果处理逻辑确定存储对象的写入频率不小于或等于PCM阈值(框601),则处理逻辑识别该存储对象不是非易失性存储器的候选者(框603),方法600完成。表2A至2C示出了每种存储器存取类型的阈值的示例。存储对象写入速率存储器存取类型0MB/s只读>OMB/s至[当前NOR写入性能速率]很少读写至[当前PCM写入性能速率]读写至[当前DRAM写入性能速率]频繁读写表2A例如,表2A示出了对于包含NOR、PCM和DRAM技术的系统,NOR,PCM和DRAM的当前写入性能参数为词语"很少"和"频繁"提供了参考点。因此,如果技术的写入性能常数改变,词语"很少"和"频繁"根据该改变调整。下面的表2B示出了用作用于定义包含NOR、PCM以及DRAM技术的系统的存储器存取类型的参考的当前写入性能速率。存储对象写入速率存储器存取类型NOR的候选者?PCM的候选者?OMB/s只读是是>OMB/s至IMB/s很少读写是是>IMB/s至1OMB/s读写否是>10MB/s至lOOMB/s频繁读写否否表2B如表2B中所示,NOR的当前写入性能是IMB/s的速率,作为词语"很少"的参考点。PCM的当前写入性能是lOMB/s的速率,作为"读写"存储器存取类型的参考点。DRAM的当前写入性能是lOOMB/s的速率,作为词语"频繁"的参考点。因此,如果存储对象具有1MB/s或更低的写入频率,则该对象是"很少读写"存储器存取类型,如果存储对象具有5MB/s的写入频率,则该对象是"读写"存储器存取类型,如果存储对象具有30MB/s的写入频率,则该对象是"频繁读写"存储器存取类型。下面的表2C示出了对于PCM技术的写入性能参数变为40MB/s的速率的示例。在该示例中,如果对象的写入频率是30MB/s,则该对象现在是"读写"存储器存取类型,而不是表2B中定义的"频繁读写"存储器存取类型。11<table>tableseeoriginaldocumentpage12</column></row><table>表2C回到图6,如果处理逻辑确定存储对象的写入频率小于或等于PCM阈值(框601),则在框605处处理逻辑确定该存储对象的写入频率是否小于或等于NOR阈值。NOR阈值是NOR技术的当前写入性能速率。例如,NOR的当前写入性能速率为lMB/s。如果处理逻辑确定该存储对象的写入频率不小于或等于NOR阈值(框605),则在框607处处理逻辑识别该存储对象是要被存储于并且直接读取于PCM存储器的候选者。如果处理逻辑确定该存储对象的写入频率小于或等于NOR阈值(框605),则在框609处处理逻辑识别该存储对象是要被存储于并直接读取于PCM存储器和NOR存储器的候选者。算法在这里一般地被认为是获得所想要的结果的行为或操作的自相容的序列。这些包括物理量的物理控制。虽然不是必须的,但这些量通常采用能被存储、转移、结合、比较以及其他操作的电或磁信号的形式。将这些信号表达为比特、值、元素、符号、字符、词语、数字及其类似,时常证明是便利的,尤其是对于通用的原因。所有的这些以及类似的词语是与恰当的物理量相关联的,只是应用于这些量的便利的标记。除非以其他方式具体声明,从以下讨论中很明显的是,可以理解,在整个说明书讨论中使用例如"监视"、"存储"、"检测"、"使用"、"识别"、"标记"、"接收"、"载入"、"重新配置"、"格式化"、"确定"或其类似的词语来指代计算机、计算机系统或类似的电子计算装置的行为和/或处理,所述计算机、计算机系统或类似的电子计算装置将在计算机系统注册表和/或存储器内的表示为例如电的物理量的数据处理和/或转变为类似地表示为在计算机系统的存储器、注册表或其它这样的信息存储器、传输或显示装置中的物理量的其他数据。本发明的实施例可以包括用于实施这里的操作的设备。该设备可以根据所想要的目的特定地构造,或者该设备可以包括通用计算装置,该通用计算装置被存于该装置的程序选择性地激活或重新配置。这样的程序可以被存储于存储器媒介中,例如但不限于包括软盘、光盘、光盘只读存储器(CD-ROM)、磁光盘、只读存储器(ROM)、随机存取存储器(RAM)、电可编程只读存储器(EPROM)、电可檫可编程只读存储器(EEPROM)、磁卡或光卡的任意类型的磁盘、或者适于储存电子指令且能与计算装置的系统总线耦合的任意其他类型的媒介。各种通用系统可以使用根据这里教导的程序,或者可以为了方便构造更专用的设备来实施所期望的方法。用于各种这些系统的所期望的结构将出现在下面的描述中。另外,本发明的实施例并不是以任何特定的程序语言作为参考描述的。各种程序语言可以用于实施这里所描述的本发明的教导。另外,应当理解,这里所描述的操作、能力以及特征可以用硬件(分立电路或集成电路)和软件的任意结合实施。在前述的说明中,已经对本发明的具体实施例做了参考。然而在不偏离本发明更宽泛的精神和范围的情况下,显然可以做出种修改和改变。因此,说明书和附图被认为是示例性的而不是限制性的。权利要求一种方法,该方法包括监视对在易失性存储器中的存储对象的存储器存取以收集并创建分析数据;使用所述分析数据来确定在所述易失性存储器中的存储对象是否是将要被存储在非易失性存储器中以及从所述非易失性存储器直接读取的候选者;以及将存储对象候选者存储在所述非易失性存储器中以使得该存储对象从所述非易失性存储器中直接读取。2.根据权利要求1所述的方法,其中监视对在所述易失性存储器中的存储对象的存储器存取包括监视页面表的活动;在页面表活动中检测页面错误;以及使用所述页面错误来识别将被载入到所述易失性存储器中的存储对象。3.根据权利要求1所述的方法,其中确定在所述易失性存储器中的存储对象是否是将要被存储在所述非易失性存储器中以及从所述非易失性存储器直接读取的候选者包括确定所述存储对象的写入频率,其中所述写入频率是所述存储对象在分析期内被写入的次数;确定所述写入频率是否达到写入阈值;以及如果所述写入频率达到所述写入阈值,则识别所述存储对象是将要从所述非易失性存储器直接读取的候选者。4.根据权利要求3所述的方法,其中确定所述写入频率是否达到所述写入阈值包括确定所述写入频率是否等于或小于相变存储器阈值,其中所述相变存储器阈值是相变存储器技术的当前写入性能速率;以及如果所述写入频率等于或小于所述相变存储器阈值,则识别所述存储对象是将要从所述非易失性存储器直接读取的候选者。5.根据权利要求4所述的方法,该方法还包括确定所述写入频率是否超过或非存储器阈值,其中第一或非存储器阈值是或非存储器技术的当前写入性能速率;以及如果所述写入频率超过所述或非存储器阈值,则识别所述存储对象是将要从相变存储器直接读取的候选者。6.根据权利要求5所述的方法,该方法还包括如果所述写入频率没有超过所述或非存储器阈值,则识别所述存储对象是将要从所述或非存储器和所述相变存储器中的至少一者直接读取的候选者。7.根据权利要求3所述的方法,其中确定所述存储对象的写入频率包括将所述存储对象作为只读存储对象载入;在一时间段内监视对所述存储对象写入的尝试,其中所述时间段是用户定义的时间段;以及确定所述存储对象在所述时间段内被写入的次数。8.根据权利要求1所述的方法,其中将所述存储对象候选者存储在所述非易失性存储器中以使得所述存储对象从所述非易失性存储器中直接读取包括根据所述分析数据重新配置系统存储器,其中重新配置所述系统存储器包括解压縮在所述非易失性存储器中的存储对象并且将该存储对象作为未压縮的存储对象存储在所述非易失性存储器中。9.根据权利要求1所述的方法,其中将所述存储对象候选者存储在所述非易失性存储器中以使得所述存储对象从所述非易失性存储器中直接读取包括将所述分析数据格式化为用于重建系统存储器的格式;以及提供被格式化的数据以重建所述系统存储器。10.—种机器可存取存储介质,该机器可存取存储介质提供指令,该指令如果由机器执行将使得所述机器执行操作,该操作包括监视对在易失性存储器中的存储对象的存储器存取以收集并创建分析数据;使用所述分析数据来确定在所述易失性存储器中的存储对象是否是将要被存储在非易失性存储器中以及从所述非易失性存储器直接读取的候选者;以及将所述存储对象候选者存储在所述非易失性存储器中以使得所述存储对象从所述非易失性存储器中直接读取。11.根据权利要求io所述的机器可存取存储介质,其中监视对在所述易失性存储器中的存储对象的存储器存取包括监视页面表的活动;在页面表活动中检测页面错误;以及使用所述页面错误来识别将被载入到所述易失性存储器中的存储对象。12.根据权利要求IO所述的机器可存取存储介质,其中确定在所述易失性存储器中的存储对象是否是将要被存储在所述非易失性存储器中以及从所述非易失性存储器直接读取的候选者包括确定所述存储对象的写入频率,其中所述写入频率是所述存储对象在分析期内被写入的次数;确定所述写入频率是否达到写入阈值;以及如果所述写入频率达到所述写入阈值,则识别所述存储对象是将要从所述非易失性存储器直接读取的候选者。13.根据权利要求12所述的机器可存取存储介质,其中确定所述写入频率是否达到所述写入阈值包括确定所述写入频率是否等于或小于相变存储器阈值,其中所述相变存储器阈值是相变存储器技术的当前写入性能速率;以及如果所述写入频率等于或小于所述相变存储器阈值,则识别所述存储对象是将要从所述非易失性存储器直接读取的候选者。14.根据权利要求13所述的机器可存取存储介质,所述操作还包括确定所述写入频率是否超过或非存储器阈值,其中第一或非存储器阈值是或非存储器技术的当前写入性能速率;以及如果所述写入频率超过所述或非存储器阈值,则识别所述存储对象是将要从相变存储器直接读取的候选者。15.根据权利要求14所述的机器可存取存储介质,所述操作还包括如果所述写入频率没有超过所述或非存储器阈值,则识别所述存储对象是将要从所述或非存储器和所述相变存储器中的至少一者直接读取的候选者。16.根据权利要求12所述的机器可存取存储介质,其中确定所述存储对象的写入频率包括将所述存储对象作为只读存储对象载入;在一时间段内监视对所述存储对象写入的尝试,其中所述时间段是用户定义的时间段;以及确定所述存储对象在所述时间段内被写入的次数。17.根据权利要求12所述的机器可存取存储介质,其中将所述存储对象候选者存储在所述非易失性存储器中以使得所述存储对象从所述非易失性存储器中直接读取包括根据所述分析数据重新配置系统存储器,其中重新配置所述系统存储器包括解压縮在所述非易失性存储器中的存储对象并且将所述存储对象作为未压縮的存储对象存储在所述非易失性存储器中。18.—种系统,该系统包括处理器;与所述处理器耦合的非易失性存储器;以及与所述处理器耦合的随机存取存储器,所述处理器将存储在所述随机存取存储器中的存储对象转移至所述非易失性存储器中,其中被转移的存储对象是从所述非易失性存储器中直接存取的。19.根据权利要求18所述的系统,该系统还包括与所述处理器相关联的存储器管理单元,该存储器管理单元用于在所述存储对象在所述随机存取存储器中不可获得时产生页面错误,其中所述随机存取存储器使用所述页面错误来识别将被转移至所述非易失性存储器的一个或多个存储对象。20.根据权利要求18所述的系统,其中所述随机存取存储器还重新配置系统存储器映射来将存储在所述随机存取存储器中的存储对象转移至所述非易失性存储器。全文摘要存储器分析系统分析存储在易失性存储器中的存储对象并识别作为将要被存储在存储器管理单元中以及从存储器管理单元直接读取的候选者的存储对象。该分析系统通过页面错误监视存储器存取并且识别将要被载入易失性存储器中的存储对象。分析系统使用页面错误来确定页面错误类型以及存储对象的写入频率,并确定存储对象的存储器存取类型。分析系统确定对象的存储器存取类型是否满足非易失性存储器技术的能力。如果存储器存取类型满足非易失性存储器技术的能力,则分析系统将存储对象识别为将要被转移至非易失性存储器并且从非易失性存储器直接读取的候选者。分析系统将存储对象候选者存储在非易失性存储器中以使得该存储对象从非易失性存储器直接读取。文档编号G06F12/08GK101770430SQ20091021236公开日2010年7月7日申请日期2009年11月12日优先权日2008年12月29日发明者J·王,J·赫尔伯特,J·鲁德利克申请人:J·鲁德利克;J·赫尔伯特;J·王
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1