一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

与存储器类型相关的页表的制作方法

2022-04-27 08:34:34 来源:中国专利 TAG:
与存储器类型相关的页表1.相关申请案2.本技术案要求2019年9月17日申请的且题为“与存储器类型相关的页表(pagetablehookstomemorytypes)”的美国专利申请案第16/573,527号的优先权,所述申请案的整个公开内容特此以引用的方式并入本文中。
技术领域
:3.本文中所公开的至少一些实施例一般来说涉及存储器系统,且更特定地说,但不限于将虚拟页的虚拟地址映射到不同存储器类型的存储器装置中的物理地址的页表项。
背景技术
::4.各种类型的存储器装置可用于将数据存储于计算机系统的主存储器中。一种类型的易失性存储器装置为动态随机存取存储器(dram)装置。各种类型的非易失性存储器装置可包含nand快闪存储器装置或非易失性随机存取存储器(nvram)装置。5.在操作系统中,存储器管理负责管理计算机系统的主存储器。存储器管理跟踪主存储器中的存储器位置的状态(例如分配或空闲的存储器状态)。存储器管理进一步确定在操作系统上运行的各种进程当中的存储器的分配。当将存储器分配给进程时,操作系统确定将指派给进程的存储器位置。6.在一种作法中,操作系统使用分页分配将主存储器划分成称为页框的固定大小的单元。将软件程序的虚拟地址空间划分成具有相同大小的页。硬件存储器管理单元将页映射到物理存储器中的框。在分页存储器管理作法中,每一进程通常在其自身地址空间中运行。7.在一些情况下,存储器管理单元(mmu)称为分页存储器管理单元(pmmu)。mmu管理由操作系统使用的所有存储器参考且进行虚拟存储器地址到物理地址的转换。mmu通常将虚拟地址空间(其为由处理器使用的地址的范围)划分成页。8.在一些作法中,mmu使用含有页表项的页表将虚拟页号映射到主存储器中的物理页号。在一些情况下,使用称为翻译旁视缓冲器(translationlookasidebuffer;tlb)的页表项的高速缓存以避免在映射虚拟地址时存取存储于主存储器中的页表的需要。当使用虚拟存储器时,可将虚拟地址的相连范围映射到物理存储器的若干非相连块。9.在一些情况下,页表项可包含关于页使用的信息。各种实例包含关于数据是否已写入到页、最后使用页的时间、可读取及写入页的进程的类型(例如用户模式或监督员模式)及是否应对页进行高速缓存的信息。10.在一种作法中,tlb实施为内容可寻址存储器(cam)。搜索密钥为虚拟地址,且搜索结果为物理地址。如果所请求地址在tlb中,那么使用从搜索检索的物理地址存取物理存储器装置。如果所请求地址不在tlb中,那么在主存储器中存取页表。11.在一些情况下,虚拟存储器管理系统使用进程标识符使每一页与进程相关联。进程标识符与虚拟页的关联可有助于选择用以页出的页。举例来说,如果进程的主码页已页出,那么立即需要属于彼进程的其它页的似然降低。12.更一般来说,计算机系统可具有一或多个存储器子系统。存储器子系统可为存储器模块,例如双行存储器模块(dimm)、小外形dimm(so-dimm),或非易失性双行存储器模块(nvdimm)。存储器子系统可包含存储数据的一或多个存储器组件。存储器组件可为例如非易失性存储器组件及易失性存储器组件。存储器组件的实例包含存储器集成电路。一些存储器集成电路为易失性的且需要电力来维持存储的数据。一些存储器集成电路为非易失性的,且即使在未供电时也可保留存储的数据。非易失性存储器的实例包含快闪存储器、只读存储器(rom)、可编程只读存储器(prom)、可擦除可编程只读存储器(eprom)及电可擦除可编程只读存储器(eeprom)存储器等。易失性存储器的实例包含动态随机存取存储器(dram)及静态随机存取存储器(sram)。一般来说,计算机系统可利用存储器子系统在存储器组件处存储数据且从存储器组件检索数据。13.举例来说,计算机系统可包含附接到所述计算机系统的一或多个存储器子系统。计算机系统可具有与一或多个存储器子系统通信以存储及/或检索数据及指令的中央处理单元(cpu)。用于计算机的指令可包含操作系统、装置驱动器及应用程序。操作系统管理计算机中的资源且为应用程序提供公用服务,例如资源的存储器分配及时间共享。装置驱动器操作或控制计算机中的特定类型的装置;且操作系统使用装置驱动器来提供由所述类型的装置提供的资源及/或服务。计算机系统的中央处理单元(cpu)可运行操作系统及装置驱动器以将服务及/或资源提供到应用程序。中央处理单元(cpu)可运行使用服务及/或资源的应用程序。举例来说,实施一类型的应用程序的应用程序可指示中央处理单元(cpu)将数据存储于存储器子系统的存储器组件中及从存储器组件检索数据。14.计算机系统的操作系统可允许应用程序使用存储器的虚拟地址将数据存储于计算机系统的一或多个存储器子系统的存储器组件中,或从所述存储器组件检索数据。操作系统将虚拟地址映射到连接到计算机系统的中央处理单元(cpu)的一或多个存储器子系统的物理地址。操作系统将在虚拟地址处规定的存储器存取转换为存储器子系统的物理地址。15.可将虚拟地址空间划分成页。可将虚拟存储器的页映射到存储器子系统中的物理存储器的页。操作系统可使用分页技术经由存储器模块中的存储器的页存取存储装置中的存储器的页。在不同时间情况处,可将存储器模块中的存储器的相同虚拟页用作代理以存取计算机系统中的存储装置或另一存储装置中的存储器的不同物理页。16.计算机系统可包含超管理器(或虚拟机监视器)以创建或提供虚拟机。虚拟机为使用可用于计算机系统中的资源及服务来虚拟地实施的计算装置。超管理器将虚拟机呈现给操作系统,如同虚拟机的组件为专用物理组件一般。客席操作系统以类似于在计算机系统中运行的主机操作系统的方式在虚拟机中运行以管理可用于虚拟机中的资源及服务。超管理器允许多个虚拟机共享计算机系统的资源,且允许虚拟机在计算机上大体上彼此独立地作业。附图说明17.在随附图式的图中借助于实例(且非限制)来绘示实施例,在所述图中,类似编号指示类似元件。18.图1绘示根据一些实施例的具有存储器子系统的实例计算机系统。19.图2展示根据一些实施例的使用存储器总线存取存储器模块中的不同类型的存储器的移动装置。20.图3绘示根据一些实施例的存储用以存取存储器子系统中的存储器装置的元数据的实例计算机系统。21.图4展示根据一些实施例的经配置用于由主机计算机系统对存储器模块的易失性及非易失性存储器进行的存储器总线存取的存储器模块。22.图5展示根据至少一些实施例的使用存储器总线存取来存取存储器模块的主机操作系统。23.图6展示根据一些实施例的用于基于存储的元数据来管理计算机系统的地址空间中用于进程的存储器的方法,所述存储的元数据使地址空间中用于进程的虚拟地址范围与用于计算机系统中的存储器装置的物理地址相关联。24.图7为可操作本发明的实施例的实例计算机系统的框图。25.图8绘示根据一些实施例的使用一或多个页表来存取存储器总线上的存储器装置的实例计算机系统。26.图9绘示根据一些实施例的具有页表项的实例页表。27.图10展示根据一些实施例的用于生成页表项以将虚拟页的虚拟地址映射到不同存储器类型的存储器装置中的物理地址的方法。具体实施方式28.本文的至少一些实施例涉及存取存储的元数据以识别存储器系统的存储数据的存储器装置。在如本文中所论述的各种实施例中,元数据可由各种类型的计算机系统存储及存取。在一个实例中,计算机系统为片上系统(soc)装置,其存储用于管理在soc装置上运行的一或多个进程的存储器使用的元数据。在一个实例中,移动装置使用soc装置来管理向在移动装置上运行的一或多个应用程序分配主存储器。29.其它实施例涉及将虚拟页的虚拟地址映射到不同存储器类型的存储器装置中的物理地址的页表项。这些实施例描述于以下标题为“与存储器类型相关的页表”的章节中。30.先前计算机系统常常使用不同类型的存储器装置来存储数据。通常使用的一种类型的存储器装置为dram,其通常视为提供快速读取及写入存取。dram通常用于将数据存储于计算机系统的主存储器中。31.其它存储器装置(例如快闪存储器)通常视为慢于dram。举例来说,dram的读取或写入存取等待时间通常明显小于快闪存储器的读取或写入存取等待时间。作为特定实例,一些存储器装置的写入存取等待时间可比dram装置大数十或甚至数百倍。32.在使用不同类型的物理存储器装置以将数据存储于主存储器中的先前计算机系统中,存在处理器不具有对用于各种进程的存储器如何实际上映射到存储器装置的察觉的技术问题。举例来说,处理器可将虚拟地址范围分配给进程。然而,处理器未察觉如何将虚拟地址范围映射到不同存储器装置。33.在一个实例中,如果将用于一进程的虚拟地址范围映射到明显慢于其它存储器装置(例如dram)的物理存储器装置(例如快闪存储器),那么所述进程可因不能从主存储器快速存取继续执行所述进程所需的数据而被迫缓慢运行。举例来说,所述进程可能需要来自主存储器的响应以便继续数据计算或其它处理(例如包含用于由处理器向主存储器作出的读取存取请求的数据以获得在由所述进程执行期间所需的数据的响应)。如果来自主存储器的所需数据实际上存储于缓慢物理存储器装置中,那么处理在等待响应时明显延迟。34.本发明的各种实施例提供对以上技术问题中的一或多者的技术解决方案。在一些实施例中,计算机系统存储关于由计算机系统使用的存储器装置(例如用以提供主存储器的存储器装置)的等待时间的数据。在一个实例中,已知对计算机系统的处理器可见的各种存储器区的等待时间(例如,如由在存储的元数据中收集及/或聚合的信息表示,如下文所论述)。35.在一些实施例中,处理器、操作系统及/或应用程序(如由软件设计者编程)可由计算机系统启动及/或进行动作以避免归因于缓慢存储器存取的明显进程延迟。举例来说,需要快速存储器响应的高优先级进程可经配置以在dram中运行。36.在另一实例中,可监视在移动装置上执行的应用程序的优先级。当应用程序的优先级增加(例如从低变高)时,处理器及/或操作系统可将应用程序自动传送出主存储器的对应于缓慢存储器装置的地址范围,且将所述应用程序移动到对应于快速存储器装置的新的地址范围。37.在一个实例中,存储器装置类型包含dram、nvram及nand快闪。进程的优先级由处理器(例如基于所述进程的数据使用模式)确定。基于关于映射到这些存储器装置类型的地址范围的存储的元数据,处理器将进程分配给具有适当存储器等待时间的地址范围。举例来说,处理器可确定进程具有低、中抑或高优先级。基于确定进程具有中优先级,将与所述进程相关联的软件及/或数据存储于对应于nvram存储器装置类型中的物理存储的地址范围中,其具有中等待时间。38.在一个实例中,nvram装置类型为3dxpoint存储器。在一个实例中,nvram装置类型可为电阻式随机存取存储器、磁阻式ram、相变ram及/或铁电ram。在一个实例中,将nvram芯片用作计算机系统的主存储器(例如nvdimm-p)。在一个实例中,使用dimm封装中的非易失性3dxpoint存储器来实施nvram装置。39.在另一实例中,如果处理器及/或操作系统未经配置以响应于优先级改变而将应用程序自动传送到不同地址范围,那么应用程序的软件代码自身可经配置以从存储的元数据读取一或多个值。基于读取值,应用程序自身可管理数据存储,使得将数据优先存储于对应于更快存储器装置的地址范围中。在一个实例中,应用程序可基于读取或以其它方式经提供对存储的元数据的存取来确定计算机系统中的可用存储器装置的相对等待时间。在一个实例中,存储的元数据规定哪一数据在具有不同等待时间的各种不同存储器装置中的哪一存储器装置上。通过以此方式规定存储器装置,应用程序可取决于正用以存储数据的存储器装置确定对特定数据的存取的等待时间。40.在一个实例中,移动装置上的应用程序在由(例如在片上系统装置上执行的)操作系统请求主存储器的分配时读取存储的元数据。在一个实例中,应用程序作出对主存储器中的对应于特定类型的存储器装置及/或与存储器读取或写入存取相关联的特定等待时间的地址范围的请求。41.在一个实例中,应用程序读取或以其它方式存取存储的元数据以确定哪一存储器为快速的,及哪一存储器为缓慢的。在移动装置的第一上下文中,应用程序作出对快速存储器的分配的请求。在移动装置的第二上下文中,应用程序作出对缓慢存储器的分配的请求。在一个实例中,响应于预定上下文的检测,应用程序启动或作出对存储器的分配的改变的请求。在一个实例中,应用程序基于(例如由处理器)对存储的元数据作出的经更新查询及/或由计算机系统的处理器提供到应用程序的数据(例如移动装置的操作特性)确定上下文的改变。42.在一个实施例中,计算机系统包含第一存储器装置(例如dram)及第二存储器装置(例如nvram或nand快闪),及一或多个处理装置(例如cpu或片上系统(soc))。计算机系统进一步包含含有指令的存储器,所述指令经配置以指示一或多个处理装置:存取由操作系统维护的地址空间中的存储器,所述存取包含使用所述地址空间中的地址来存取所述第一存储器装置及所述第二存储器装置;存储使所述地址空间的第一地址范围与所述第一存储器装置相关联且使所述地址空间的第二地址范围与所述第二存储器装置相关联的元数据;及由所述操作系统基于存储的元数据管理包含第一进程及第二进程的进程,其中将用于所述第一进程的数据存储于所述第一存储器装置中,且将用于所述第二进程的数据存储于所述第二存储器装置中。43.在一个实施例中,计算机系统使用包含dram、nvram及nand快闪的存储器装置类型。在一个实例中,dram快于nvram,nvram快于nand快闪。计算机系统经配置以使得可由计算机系统的处理器使用虚拟存储器地址直接存取所有三种不同类型的存储器。在一个实例中,处理器与存储器管理单元通信以实施虚拟到物理地址映射系统。44.在一个实施例中,应用程序未经预编程或未以其它方式经配置以基于不同类型的存储器装置管理或处置存储器分配的优化。举例来说,此可针对旧有软件程序发生。在此类型的情况下,操作系统可经配置以管理针对应用程序的存储器分配的优化。45.在一个实例中,操作系统检测或以其它方式确定应用程序的一或多个特性。基于特性,操作系统使用存储的元数据将主存储器中的一或多个地址范围指派给应用程序。在一个实例中,基于由应用程序自身(例如当应用程序在移动装置上启动时)提供的信息来确定特性。在另一实例中,除在其上执行应用程序的计算机系统以外,由计算装置提供特性。在一个实例中,使用中央存储库来存储及更新应用程序的特性的数据库或表。在一个实例中,中央服务器将关于待使用的一类型的物理存储器的指示提供到操作系统。46.在一个实施例中,操作系统确定与计算机系统及/或应用程序的执行相关联的上下文。基于此上下文,操作系统使用存储的元数据将主存储器中的一或多个地址范围指派给应用程序。47.在一个实施例中,存储的元数据用于识别存储数据的装置。存储器子系统具有可由存储器地址空间中的处理器(例如soc)寻址的多个物理存储器装置(例如dram、nvram及nand快闪)。元数据用以规定将哪些存储器地址区映射到哪些物理存储器装置。元数据可载入到dram及/或处理器中(例如载入到处理器的高速缓存中)以确定哪一数据在哪一装置上,及/或用以估计对各别数据的存取的等待时间。48.在一个实施例中,应用程序在具有使用主存储器的处理器的移动装置上执行。应用程序请求移动装置的操作系统分配主存储器的一部分以供由应用程序使用。所分配存储器在逻辑/虚拟存储器空间中(例如如由程序设计员及由处理器的执行单元所见的存储器地址为虚拟的)。在一个实施例中,通过页表将虚拟存储器地址映射到真实/物理存储器。将页表中的映射数据的一部分高速缓存于处理器的缓冲器中。在一个实例中,缓冲器为翻译旁视缓冲器(tlb)。49.在一个实施例中,计算机系统包含dram、nvram及nand快闪存储器装置。计算机系统的处理器按地址随机存取主存储器。主存储器内的地址对应于这些三种类型的存储器装置上的数据存储的物理位置。在一个实例中,装置中的每一者由处理器使用同步存储器总线存取。在一个实例中,dram为同步动态随机存取存储器(sdram),其具有与在cpu与存储器控制器集线器之间承载数据的系统总线同步的接口。50.图1绘示根据一些实施例的具有存储器子系统110的实例计算环境100。存储器子系统110可包含媒体,例如存储器组件109a到109n。存储器组件109a到109n可为易失性存储器组件、非易失性存储器组件,或此类的组合。在一些实施例中,存储器子系统110为存储器模块。存储器模块的实例包含dimm及nvdimm。在一些实施例中,存储器子系统110为混合式存储器/存储子系统。一般来说,计算环境100可包含使用存储器子系统110的计算机系统120。举例来说,计算机系统120可将数据写入到存储器子系统110且从存储器子系统110读取数据。51.计算机系统120可为计算装置,例如移动装置、iot装置、台式计算机、膝上型计算机、网络服务器,或包含存储器及处理装置的此计算装置。计算机系统120可包含或耦合到存储器子系统110,使得计算机系统120可从存储器子系统110读取数据或将数据写入到存储器子系统110。计算机系统120可经由物理主机接口耦合到存储器子系统110。如本文中所使用,“耦合到”通常是指组件之间的连接,其可为间接通信连接或直接通信连接(例如无中介组件)、有线或无线、包含例如电、光学、磁性的连接等。物理主机接口的实例包含但不限于串列高级附接技术(sata)接口、快捷周边组件互连(pcie)接口、通用串行总线(usb)接口、光纤通道、串列附接scsi(sas)、双数据速率(ddr)存储器总线等。物理主机接口可用于在计算机系统120与存储器子系统110之间发射数据。当存储器子系统110通过pcie接口与计算机系统120耦合时,计算机系统120可进一步利用nvm快捷(nvme)接口存取存储器组件109a到109n。物理主机接口可提供用于在存储器子系统110与计算机系统120之间传递控制、地址、数据及其它信号的接口。52.图1绘示存储器子系统110作为实例。一般来说,计算机系统120可经由共享通信连接、多个单独通信连接及/或通信连接的组合存取多个存储器子系统。在一个实例中,每一存储器子系统110可为由处理装置118经由存储器总线随机存取的不同类型的存储器装置。53.计算机系统120包含处理装置118及控制器116。处理装置118可为例如微处理器、中央处理单元(cpu)、处理器的处理核心、执行单元等。在一些情况下,控制器116可称为存储器控制器、存储器管理单元及/或启动器。在一个实例中,控制器116控制经由耦合于计算机系统120与一或多个存储器子系统110之间的总线的通信。54.一般来说,控制器116可将命令或请求发送到存储器子系统110以用于对存储器组件109a到109n的所要存取。控制器116可进一步包含接口电路系统以与存储器子系统110通信。接口电路系统可将从存储器子系统110接收到的响应转换成用于计算机系统120的信息。55.计算机系统120的控制器116可与存储器子系统110的控制器115通信以进行操作,例如在存储器组件109a到109n处读取数据、写入数据或擦除数据,及其它此类操作。在一些情况下,控制器116集成于处理装置118的同一封装内。在其它情况下,控制器116与处理装置118的封装分开。控制器116及/或处理装置118可包含硬件,例如一或多个集成电路及/或离散组件、缓冲器存储器、高速缓存存储器或其组合。控制器116及/或处理装置118可为微控制器、专用逻辑电路系统(例如现场可编程门阵列(fpga)、专用集成电路(asic)等),或另一合适的处理器。56.存储器组件109a到109n可包含各种不同类型的非易失性存储器组件及/或易失性存储器组件的任何组合。非易失性存储器组件的实例包含与非(nand)类型快闪存储器。在一个实例中,存储器组件109a到109n中的每一者可包含一或多个存储单元阵列,例如单阶单元(slc)或多阶单元(mlc)(例如三阶单元(tlc)或四阶单元(qlc))。在一些实施例中,特定存储器组件可包含存储单元的slc部分及mlc部分两者。存储单元中的每一者可存储由计算机系统120使用的一或多个数据位(例如数据块)。57.尽管例如nand类型快闪存储器的非易失性存储器组件为一个实例,但存储器组件109a到109n可是基于任何其它类型的存储器,例如易失性存储器。在一些实施例中,存储器组件109a到109n可为(但不限于)随机存取存储器(ram)、只读存储器(rom)、动态随机存取存储器(dram)、同步动态随机存取存储器(sdram)、相变存储器(pcm)、磁随机存取存储器(mram)、自旋转移力矩(stt)-mram、铁电晶体管随机存取存储器(fetram)、铁电ram(feram)、导电桥接ram(cbram)、电阻式随机存取存储器(rram)、氧化物类rram(oxram)、与非(nor)快闪存储器、电可擦除可编程只读存储器(eeprom)、纳米线类非易失性存储器、并有忆阻器技术的存储器,及非易失性存储单元的3dxpoint阵列。非易失性存储器的交叉点阵列可基于体电阻的改变结合可堆叠交叉网格数据存取阵列进行位存储。另外,与许多基于快闪的存储器相比,交叉点非易失性存储器可进行原地写入操作,其中可在先前未擦除非易失性存储单元的情况下对所述非易失性存储单元进行编程。另外,存储器组件109a到109n的存储单元可分组为可指用以存储数据的存储器组件的单元的存储器页或数据块。58.存储器子系统110的控制器115可与存储器组件109a到109n通信以进行操作,例如在存储器组件109a到109n处读取数据、写入数据或擦除数据,及其它此类操作(例如响应于由控制器116在命令总线上调度的命令)。控制器115可包含硬件,例如一或多个集成电路及/或离散组件、缓冲器存储器或其组合。控制器115可为微控制器、专用逻辑电路系统(例如现场可编程门阵列(fpga)、专用集成电路(asic)等),或另一合适的处理器。控制器115可包含经配置以执行存储于局部存储器119中的指令的处理装置117(处理器)。在所绘示实例中,控制器115的局部存储器119包含嵌入式存储器,其经配置以存储用于进行控制存储器子系统110的操作(包含处置存储器子系统110与计算机系统120之间的通信)的各种进程、操作、逻辑流程及例程的指令。在一些实施例中,局部存储器119可包含存储存储器指标、所提取数据等的存储器寄存器。局部存储器119还可包含用于存储微码的只读存储器(rom)。尽管图1中的实例存储器子系统110已绘示为包含控制器115,但在本发明的另一实施例中,存储器子系统110可不包含控制器115,且可改为依赖于外部控制(例如由外部主机或由与存储器子系统分开的处理器或控制器提供)。59.一般来说,控制器115可从计算机系统120接收命令或操作,且可将所述命令或操作转换成指令或适当的命令以达成对存储器组件109a到109n的所要存取。控制器115可负责其它操作,例如耗损均衡操作、废料收集操作、错误检测及错误校正代码(ecc)操作、加密操作、高速缓存操作,及与存储器组件109a到109n相关联的逻辑块地址与物理块地址之间的地址转换。控制器115可进一步包含主机接口电路系统以经由物理主机接口与计算机系统120通信。主机接口电路系统可将从计算机系统接收到的命令转换成用以存取存储器组件109a到109n的命令指令,以及将与存储器组件109a到109n相关联的响应转换成用于计算机系统120的信息。60.存储器子系统110还可包含未绘示的额外电路系统或组件。在一些实施例中,存储器子系统110可包含高速缓存或缓冲器121(例如dram或sram),及可从控制器115接收地址且解码地址以存取存储器组件109a到109n的地址电路系统(例如行解码器及列解码器)。61.计算环境100包含计算机系统120中的元数据组件113,其存储用以识别存储数据的存储器装置的元数据(例如如上文的各种实施例中所论述)。元数据组件113的一部分可驻留于计算机系统120及/或存储器子系统110上。在一个实例中,将元数据的一部分存储于局部存储器119及/或缓冲器121中。在一个实例中,将元数据的一部分替代地及/或另外存储于控制器116的高速缓存中(例如存储于翻译旁视缓冲器中)。62.在一个实例中,存储器子系统110可经由ddr或其它类型的同步存储器总线为计算机系统120提供对不同类型的存储器装置中的数据的存取。在一个实施例中,将存取提供到dimm上的nvram中的数据及dram中的数据。在一个实例中,使数据在计算机系统120的随机存取存储器地址空间中可存取,以用于在经由ddr存储器总线作出的主机读取/写入请求期间进行存取。63.在一个实例中,计算机系统120将页入请求(用于对一页的存取)发送到控制器115。响应于接收到页入请求,控制器115将一页从缓慢媒体(例如非易失性存储器装置)移动到易失性存储器装置(例如存储器子系统110上的dram)。64.在一个实例中,计算机系统120将页出请求发送到控制器115。响应于接收到页出请求,控制器115经由缓冲器121将数据从易失性存储器(例如存储器子系统110上的dram)移出到非易失性存储器。65.在一些实施例中,计算机系统120中的控制器116及/或处理装置118包含元数据组件113的至少一部分。举例来说,控制器116及/或处理装置118可包含实施元数据组件113的逻辑电路系统。举例来说,计算机系统120的处理装置118(处理器)可经配置以执行存储于存储器中的指令,以用于进行识别用于元数据组件113的数据存储于哪些装置中的操作,如本文中所描述。在一些实施例中,元数据组件113为计算机系统120的操作系统的部分、装置驱动器或应用程序(例如在计算机系统120上执行的应用程序)。66.在一些实施例中,存储器子系统110中的控制器115及/或处理装置117包含元数据组件113的至少一部分。举例来说,控制器115及/或处理装置117可包含实施元数据组件113的逻辑电路系统。67.在一个实例中,中央处理单元(cpu)可存取连接到cpu的存储器系统中的存储器。举例来说,中央处理单元(cpu)可经配置以基于对元数据组件113的存储的元数据的查询来存取存储器。68.图2展示根据一些实施例的使用存储器总线203存取存储器模块205中的不同类型的存储器的移动装置200。图2展示具有不同类型的存储器的计算机系统。图2的计算机系统包含移动装置200,及经由存储器总线203连接到移动装置200的存储器模块205。存储器模块205为图1中所绘示的存储器子系统110的实例。69.移动装置200包含处理装置118,其可为中央处理单元或具有一或多个处理核心的微处理器。移动装置200可具有高速缓存存储器211。高速缓存存储器211的至少一部分可任选地集成于处理装置118的同一集成电路封装内。70.图2中所绘示的存储器模块205具有多种类型的存储器(例如221及223)。举例来说,a型存储器221(例如dram)快于b型存储器223(例如nvram)。举例来说,存储器总线203可为双数据速率总线。一般来说,若干存储器模块(例如205)可耦合到存储器总线203。71.处理装置118经由指令(例如操作系统及/或一或多个装置驱动器)经配置以使用元数据组件113存取计算机系统中的存储器的一部分。举例来说,可存取存储器模块205的b型存储器223(例如nvram)或可存取存储器模块205的a型存储器221(例如dram)。在一个实施例中,存储器模块205的b型存储器223仅可经由对存储器模块205的a型存储器221进行寻址来存取。72.控制器227可设置于存储器模块205中以管理对a型存储器221及b型存储器223的数据存取。在一个实施例中,当将数据传送到缓冲器121或从缓冲器121传送数据时,控制器227多路复用由移动装置200及存储器模块205对dram或nvram的存取。在一个实例中,存储器总线203提供主机ddr通道作为移动装置200与存储器模块205之间的ddr接口。在一个实例中,一旦将一页从nvram存储器检索到缓冲器121中,即可经由常规ddr4槽(例如主机ddr通道)载入所述页以供由移动装置存取。73.一般来说,存储器子系统(例如205)可包含媒体,例如存储器(例如221……223)。存储器(例如221……223)可包含易失性存储器、非易失性存储器(nvm)及/或此类的组合。处理装置118可直接或间接地将数据写入到存储器子系统(例如存储器模块205)中的每一者且从存储器子系统(例如存储器模块205)读取数据。74.在一个实施例中,存储器模块205通过使用缓冲器121提供对非易失性存储器或易失性存储器的存储器总线存取。在一个实例中,存储器模块205为经由ddr总线耦合到移动装置200的dimm。存储媒体为例如交叉点存储器。75.在一个实施例中,移动装置经由用于读取/写入操作的通信通道(例如使用ddr4总线)与存储器模块通信。移动装置可具有可经由互连与例如存储器模块的计算机外围装置附接的一或多个中央处理单元(cpu),所述互连例如计算机总线(例如串行at附接件(sata)、外围组件互连(pci)、pci延伸(pci-x)、pci快捷(pcie))、通信部分及/或计算机网络。76.在一个实施例中,存储器模块可用于存储用于非易失性或易失性存储媒体中的处理器的数据。存储器模块具有使用通信通道实施与移动装置的通信的主机接口。在一个实施例中,存储器模块205具有响应于来自处理装置118的通信而运行例如固件以进行操作的控制器227。在一个实例中,存储器模块包含易失性动态随机存取存储器(dram)及nvram。dram及nvram将可由处理装置118存取的数据存储于存储器地址空间中。77.如所绘示,图2的计算机系统用以实施移动装置。处理装置118可从存储器子系统(例如205)读取数据或将数据写入到所述存储器子系统。78.物理主机接口可用于在处理装置118与存储器子系统(例如205)之间发射数据。物理主机接口可提供用于在存储器子系统(例如205)与处理装置118之间传递控制、地址、数据及其它信号的接口。79.一般来说,存储器子系统(例如存储器模块205)包含连接提供存储器(例如221……223)的存储器装置集合(例如存储器集成电路)的印刷电路板。存储器子系统(例如205)上的存储器(例如221……223)可包含不同类型的非易失性存储器装置及/或易失性存储器装置的任何组合。80.在一些实施中,存储器(例如221……223)可包含但不限于随机存取存储器(ram)、只读存储器(rom)、动态随机存取存储器(dram)、静态随机存取存储器(sram)、同步动态随机存取存储器(sdram)、相变存储器(pcm)、磁随机存取存储器(mram)、与非(nor)快闪存储器、电可擦除可编程只读存储器(eeprom),及/或非易失性存储单元的交叉点阵列。81.存储器子系统(例如存储器模块205)可具有响应于来自处理装置118的请求、命令或指令而与存储器(例如221……223)通信以进行操作的控制器(例如227),所述操作例如读取数据、写入数据或擦除存储器(例如221……223)中的数据,及其它此类操作。控制器(例如227)可包含硬件,例如一或多个集成电路及/或离散组件、缓冲器存储器或其组合。控制器(例如227)可为微控制器、专用逻辑电路系统(例如现场可编程门阵列(fpga)、专用集成电路(asic)等),或另一合适的处理器。控制器(例如227)可包含经配置以执行存储于局部存储器中的指令的一或多个处理器(处理装置)。82.控制器(例如227)的局部存储器可包含嵌入式存储器,其经配置以存储用于进行控制存储器子系统(例如205)的操作的各种进程、操作、逻辑流程及例程的指令,包含处置存储器子系统(例如205)与处理装置118之间的通信,及在下文更详细地描述的其它功能。控制器(例如227)的局部存储器可包含用于存储微码的只读存储器(rom)及/或存储例如存储器指标、所提取数据等的存储器寄存器。83.尽管图2中的实例存储器子系统205已绘示为包含控制器227,但在本发明的另一实施例中,存储器子系统(例如205)可不包含控制器(例如227),且可改为依赖于外部控制(例如由与存储器子系统(例如205)分开的处理器或控制器提供)。84.一般来说,控制器(例如227)可根据用于通信通道(例如203)的标准通信协议从处理装置118接收命令、请求或指令,且可将遵从标准协议的命令、请求或指令转换成存储器子系统(例如205)内的详细指令或适当的命令,以达成对存储器(例如221……223)的所要存取。举例来说,控制器(例如227)可负责操作,例如与存储器(例如221……223)相关联的逻辑地址与物理地址之间的地址转换。控制器(例如227)可进一步包含主机接口电路系统以经由物理主机接口与处理装置118通信。主机接口电路系统可将从处理装置118接收到的命令转换成命令指令以存取存储器装置(例如221……223),以及将与存储器装置(例如221……223)相关联的响应转换成用于处理装置118的信息。85.存储器子系统(例如205)还可包含未绘示的额外电路系统或组件。在一些实施中,存储器子系统(例如205)可包含高速缓存或缓冲器(例如dram),及可从控制器(例如227)接收地址且解码地址以存取存储器(例如221……223)的地址电路系统(例如行解码器及列解码器)。86.在一个实例中,存储器总线203具有一或多个连接器以向存储器子系统(例如205)提供功率及/或经由预定协议与存储器子系统(例如205)通信;且存储器子系统(例如205)具有一或多个连接器以从处理装置118接收功率、数据及命令。在一个实例中,处理装置118可执行一或多个操作系统以提供服务,包含存储器存取,其中使用同步存储器存取来存取计算机系统中的存储器的一部分(例如存储于nvram中的一页)。87.图3绘示根据一些实施例的存储用以存取存储器子系统302中的存储器装置的元数据320的实例计算机系统300。在存储器子系统302中存取的存储器装置包含dram304、nvram306及nand快闪308。在一个实施例中,计算机系统300替代地及/或另外将元数据322存储于用以存取存储器装置的dram304中。88.在一个实施例中,计算机系统300的处理装置310存取地址空间中的存储器。在一个实例中,当执行一或多个应用程序时,存储器为由处理装置310使用的主存储器。处理装置310使用地址空间中的地址存取不同存储器装置。89.在一个实施例中,元数据320、322使地址空间的第一地址范围与存储器装置(例如dram304)相关联,且使地址空间的第二地址范围与不同存储器装置(例如nvram306或nand快闪308)相关联。在一个实例中,dram304的等待时间小于nvram306及nand快闪308的等待时间。90.在处理装置310上执行的应用程序包含应用程序312,其经配置以包含存储器类型314。当应用程序312初始地启动时,应用程序312将存储器类型314连同对计算机系统300的主存储器中的存储器的分配的请求一起提供到处理装置310。91.响应于对存储器的分配的请求,处理装置310对元数据320作出查询及/或将查询发送到元数据322。基于来自这些查询中的一或两者的结果,处理装置310将地址空间中的地址范围分配给应用程序312。92.在一个实施例中,应用程序312向处理装置310作出对与存储器装置相关联的等待时间的指示的请求。处理装置310存取元数据320、322以获得结果,且基于此结果将等待时间的指示提供到应用程序312。响应于接收到等待时间的指示,应用程序312作出对对应于存储器装置中的特定一者(对应于存储器类型314的存储器装置)的存储器的分配的请求,或对具有符合至少一或多个预定阈值及/或要求的性能特性的存储器的分配的请求。93.在一个实施例中,元数据322存储使虚拟地址空间中的地址范围与存储器子系统302的存储器装置中的物理地址相关联的数据。在一个实例中,元数据322存储用于nvram的地址范围324,及用于nand快闪的地址范围326。在一个实例中,地址范围324将处理装置310的虚拟或逻辑地址映射到nvram306的物理地址。在一个实例中,地址范围326将处理装置310的虚拟或逻辑地址映射到nand快闪308的物理地址。在一个实施例中,元数据320或322存储映射用于存储于dram304中的数据的处理装置310的地址的一或多个地址范围。94.在一个实施例中,将元数据322存储为页表328的部分,所述页表328为计算机系统300的存储器管理单元316提供虚拟地址到物理地址的映射。处理装置310将虚拟地址提供到存储器管理单元316,其存取翻译旁视缓冲器318以获得存储器子系统302的存储器装置中的一者中的物理地址。95.在一个实施例中,元数据322及其成分不必为dram304的子块。其可替代地及/或另外存在于rom(未展示)及/或存储器子系统302内的其它存储器(参见dramspdrom)中,这是由于地址范围到媒体类型的映射对于存储器子系统302可为静态的。在一个实施例中,对于运行时间咨询,元数据322可遮蔽于dram中,但其将在通电时动态地生成,或存储于存储器子系统302内的非易失性组件中且从所述非易失性组件检索。96.在一个实施例中,翻译旁视缓冲器318为存储来自页表328的数据的一部分的高速缓存。在一个实例中,缓冲器318存储元数据322的一部分。在一个实施例中,当存取存储器子系统302中的存储器装置时,将存储于计算机系统300上的元数据320的一部分复制到翻译旁视缓冲器318以供由存储器管理单元316存取。97.在一个实施例中,处理装置310将不同存储器装置的存储器特性提供到应用程序312。应用程序312基于所提供存储器特性作出对存储器的分配的请求。98.在一个实施例中,处理装置310从应用程序312接收所请求等待时间。基于所请求等待时间将地址范围分配给应用程序312。99.在一个实施例中,处理装置310确定与应用程序312相关联的优先级。基于经确定优先级将地址范围分配给应用程序312。在一个实例中,选择更快存储器装置类型以与经确定优先级一起使用。处理装置310使用元数据320、322来选择将数据物理地存储于选定更快存储器装置类型的存储器装置中的地址范围。100.在一个实施例中,处理装置310确定应用程序312的优先级的改变。在一个实例中,基于应用程序312的优先级的增加,处理装置310改变用于地址空间中的应用程序312的存储器分配。在一个实例中,响应于优先级的增加,处理装置310存取元数据320、322以确定对应于更快物理存储器装置的地址范围。101.在一个实施例中,处理装置310基于与地址空间中的应用程序312的数据存取相关联的观察特性来确定应用程序312的优先级。观察到的特性可用于为应用程序312分配存储器使用。在一个实施例中,处理装置310确定与物理存储器装置相关联的一或多个等待时间。元数据320、322存储关于经确定一或多个等待时间的数据,其可在初始地分配主存储器及/或改变主存储器的分配时由处理装置310使用。102.图4展示根据一些实施例的经配置用于主机计算机系统(未展示)对易失性存储器402及非易失性存储器404的存储器总线存取的存储器模块401。存储器模块401为存储器子系统302或存储器模块205的实例。在一个实例中,存储器模块401为混合式dimm。易失性存储器402为例如dram。103.存储器模块401使用多路复用器408来提供存储器控制器416对易失性存储器402及非易失性存储器404的存取。存储器控制器416耦合到主机接口406以供由主机系统处置读取/写入存取。在一个实施例中,响应于经由主机接口406从主机系统接收到读取或写入命令而基于从存储器控制器416接收到的信号来控制多路复用器408。104.在一个实例中,主机系统存取存储器模块401(例如dimm)上的存储器空间(例如dram存储器地址空间)。dimm将自身暴露于主机作为dram的通道。在一个实施例中,主机系统的超管理器控制dimm上的数据移动。举例来说,作出对将存储器块移入及移出dram地址空间且将dram页暴露于在主机上运行的软件的请求。软件例如在虚拟机(vm)中执行。105.在一个实例中,为驱动器提供页入/页出控制路径以请求当前在dram中或nvram中的页。在一个实例中,nvram具有比dram大得多的容量。106.在一个实例中,存储器模块401实施为dimm。非易失性存储器404由3dxpoint存储器封装提供。在一个实例中,将从3dxpoint存储器获得的数据的页复制入及复制出缓冲器(页入/页出)。107.在一个实例中,主机系统可使用正常ddr4定时对任何dram或nvram地址进行读取/写入存取。举例来说,主机可在那些时间期间根据ddr4规则生成任意业务。108.在一个实例中,非易失性存储器404的完整ddr地址空间暴露于主机系统。根据各种实施例,计算机系统120的控制器(例如控制器116)可以与其存取常规dram相同的方式(例如相同读取/写入及再新定时循环)操作。109.图5展示根据至少一些实施例的使用存储器总线存取来存取存储器模块502的主机操作系统241。存储器模块502包含缓冲器410。缓冲器410为缓冲器121的实例。在一个实例中,缓冲器410存储元数据322及/或页表328的至少一部分。经由主机接口406从主机操作系统241接收到命令及数据。在一个实例中,主机操作系统241在计算机系统120或300上执行。110.在一个实施例中,装置驱动器247(例如后端驱动器)经配置以用于经由超管理器245的存储器存取。在一个实例中,图5的系统实施于图1到3的计算机系统中。111.在一个实例中,主机操作系统241在图1或2的计算机系统的处理装置118或图3的处理装置310上运行。主机操作系统241包含使用存储器子系统(例如存储器模块205或存储器子系统302)的存储器(例如221……223)提供存储器服务的一或多个装置驱动器(例如247)。112.在一个实施例中,后端驱动器247维护映射表246。举例来说,驱动器247维护映射表246以包含存储于dram304、nvram306及nand快闪308中的数据的页的映射。113.在一个实施例中,主机操作系统241包含布建虚拟机249的超管理器245。虚拟机249具有经由由主机操作系统241使用图1到3的计算系统的硬件提供的资源及服务实施的虚拟硬件。举例来说,超管理器245可使用存储器子系统(例如存储器模块205)的存储器(例如221……223)的一部分布建虚拟存储器作为虚拟机249的部分。114.虚拟机249允许客席操作系统243以如在物理计算机器上运行的操作系统243的方式将资源及/或服务提供到在客席操作系统243中运行的应用程序(例如251……253),所述物理计算机器具有与虚拟机中的布建相同或类似的硬件集合。超管理器245管理布建于虚拟机中的虚拟硬件与由主机操作系统241管理的计算系统中的硬件的服务之间的映射。115.装置驱动器248(例如前端驱动器)与后端驱动器247通信。当额外ddr容量(例如dram或nvram中的容量)可用时,驱动器247及驱动器248可通信以用于闲置存储器回收(memoryballooning)。116.图5绘示由超管理器245布建虚拟机249的情况。一般来说,超管理器245可布建可运行相同客席操作系统243或不同客席操作系统的若干虚拟机(例如249)。可指派不同用户及/或应用程序集合以使用不同虚拟机。117.在一些情况下,主机操作系统241专用于为虚拟机的布建提供服务且未运行其它应用程序。替代地,主机操作系统241可提供额外服务以支持其它应用程序,例如应用程序(例如251……253)。118.在一个实施例中,装置驱动器247可经配置以请求一页从较慢存储器(例如nvram)到较快存储器(例如dram)的页入以供由虚拟机249使用。此请求可以是响应于来自应用程序(例如图3的应用程序312)的请求而作出。在请求所述页之后,通过载入数据的页及/或将其从较慢存储器传送到较快存储器使所述页在较快存储器中可用。在一个实例中,处理装置310基于存储为元数据320、322的地址范围信息将页从较慢存储器移动到较快存储器。在一个实例中,较慢存储器可为存储器模块401中的非易失性存储器404,且较快存储器为同一存储器模块401中的易失性存储器402。119.在一个实施例中,数据的传送(例如响应于主机操作系统241的页入请求而进行)是在同一存储器子系统内(例如同一存储器模块401内)进行,以避免或减少连接到处理装置118的通信通道(例如存储器总线203)中的拥塞。举例来说,在存储器模块205中的控制器227的控制下,可响应于来自装置驱动器247的一或多个命令、请求及/或指令,将数据从存储器模块205中的较慢存储器223(例如nvram或nand快闪)复制到存储器模块205中的较快存储器221(例如dram)。120.在一个实施例中,超管理器245不仅请求装置驱动器247存取存储器子系统(例如存储器模块205)中的存储器(例如221……223),且还向装置驱动器247提供可用于管理待使用的存储器(例如221……223……或225)中的页的信息。在一个实例中,所提供信息包含存储的元数据320或322。121.在一个实例中,驱动器247为用以存取存储器模块502(例如dimm)中的存储器地址空间的存储器模式驱动器。驱动器247控制在任何时间哪些页在dimm的易失性存储器中。在一种作法中,例如,存储器地址空间暴露于客席操作系统243。在此超管理器环境中,客席操作系统243看到dimm中的非易失性存储器(例如nvram及dram)的完整存储容量。122.在一个实例中,经由主机操作系统241主动地对ddrdram中的仅数个页进行页入。如果存在对不存在的页的客户机(guest)存取,那么主机系统的存储器管理单元(mmu)中的寻页错失路径触发驱动器247以引起页的载入(页入)。在一个实例中,所述页经由控制寄存器载入。一旦所述页实际上存在于ddrdram中,那么驱动器247可设置mmu映射(经由映射表246),使得客席应用程序可直接读取及写入所述数据。123.在一个实例中,客户机的前端驱动器及主机的后端驱动器关于对存储器地址空间的存取而通信。在一个实例中,当确定页陈旧(例如基于预定阈值未频繁使用)时,作出将当前映射于ddr存储器地址空间中的数据的一部分(例如经由sram缓冲器)推出到nvram存储器以使dram存储器中的空间可用于待页入的其它页的请求。后端驱动器247传达页出请求以将数据从ddrdram移动到nvram存储器。124.在一个实施例中,后端驱动器247作为存储器模式驱动器操作。直到驱动器247载入,否则不存在对存储器模块502的nvram存储器容量的存取。在作为存储器模式驱动器的此操作期间,客席操作系统243将存储器视为正常,且驱动器247保留存储器模块上的dram页以用于页入及页出操作。125.驱动器247将nvram存储器暴露于客席操作系统243且维护页映射(例如在映射表246中)。举例来说,驱动器247维护当前在dram中的页与在nvram存储器上的页之间的映射。126.在一个实例中,驱动器247在主机系统处设置存储器管理单元映射表以映射当前存储于dram中的任何页。如果在映射页外部存在存取以触发页入请求,那么可使用来自客户机的寻页错失路径。可进行页出请求以维护dram中的一些存储器空间。127.在一个实施例中,操作不受限于存储器模式。驱动器247还可作为框模式驱动器操作,针对所述框模式驱动器,nvram存储器暴露作为框模式存储。128.在一个实施例中,存储器模块502维护其自身的映射表,包含在sram缓冲器(未展示)中的页的列表。一旦页已移动到sram缓冲器,那么存储器模块502可将页入完成信号返回给主机系统。这些准许减少主机系统存取那些特定页的等待时间。驱动器247确保直到设置其映射,否则主机将不存取所述页,直到页入请求完成。129.在一个实施例中,驱动器247实施页出操作。在一个实例中,触发此操作作为线程。此操作将空闲页交换出dram存储器且改变有效页的映射。130.图6展示根据一些实施例的用于基于存储的元数据来管理计算机系统的地址空间中用于进程的存储器的方法,所述存储的元数据使地址空间中用于进程的虚拟地址范围与用于计算机系统中的存储器装置的物理地址相关联。举例来说,图6的方法可实施于图1到3的系统中。131.图6的方法可由处理逻辑进行,所述处理逻辑可包含硬件(例如处理装置、电路系统、专用逻辑、可编程逻辑、微码、装置的硬件、集成电路等)、软件(例如在处理装置上运行或执行的指令),或其组合。在一些实施例中,图6的方法至少部分地由一或多个处理装置(例如图3的处理装置310)进行。132.尽管以特定顺序或次序展示,但除非另有规定,否则可修改所述进程的次序。因此,所绘示实施例应仅理解为实例,且所绘示进程可以不同次序进行,且一些进程可并行进行。另外,可在各种实施例中省略一或多个进程。因此,在每一实施例中并非所有进程是必需的。其它处理流程是能的。133.在方块601处,操作系统维护地址空间中的存储器。存取存储器包含使用地址空间中的地址存取第一存储器装置及第二存储器装置。在一个实例中,操作系统在图3的处理装置310上执行。在一个实例中,第一存储器装置为dram304,且第二存储器装置为nvram306。在一个实例中,第一存储器装置为nvram306,且第二存储器装置为nand快闪308。134.在方块603处,存储使地址空间的第一地址范围与第一存储器装置相关联的元数据。元数据还使地址空间的第二地址范围与第二存储器装置相关联。在一个实例中,存储的元数据为图3的元数据320及/或322。在一个实例中,第一地址范围为地址范围324,且第二地址范围为地址范围326。135.在方块605处,基于存储的元数据来管理在计算机系统中运行的进程。进程包含第一进程及第二进程。将用于第一进程的数据存储于第一存储器装置中,且将用于第二进程的数据存储于第二存储器装置中。在一个实例中,将用于第一进程的数据存储于地址范围324中,且将用于第二进程的数据存储于地址范围326中。在一个实例中,将用于第一进程的数据存储于对应于dram304中的物理存储器存储的元数据320、322的地址范围中。在一个实例中,计算机系统为计算机系统120或300。136.在一个实施例中,第一及第二进程不必分别完全受限于第一及第二存储器装置。进程的地址空间可包含具有相异存取特性的多个范围(例如低等待时间范围1,及非易失性范围2)。因此,在一些情况下,进程可视需要请求元数据跟踪的存储器装置中的每一者内的分配。137.在一个实施例中,一种方法包括:由计算机系统的处理装置(例如图3的处理装置310)存取地址空间中存储器,其中所述计算机系统的存储器装置由所述处理装置使用所述地址空间中的地址存取;存储使所述地址空间的第一地址范围与第一存储器装置(例如dram304)相关联且使所述地址空间的第二地址范围与第二存储器装置(例如nvram306)相关联的元数据(例如元数据320及/或322),其中所述第一存储器装置的第一等待时间不同于所述第二存储器装置的第二等待时间;及基于存储的元数据将所述第一地址范围分配给在所述计算机系统上执行的应用程序(例如应用程序312)。138.在一个实施例中,将所述第一地址范围分配给所述应用程序是响应于所述应用程序的请求而进行。139.在一个实施例中,所述方法进一步包括:响应于所述应用程序的第一请求,提供所述第一等待时间大于所述第二等待时间的指示;基于所述指示接收由所述应用程序作出的第二请求;及响应于接收到所述第二请求,将所述第二地址范围分配给所述应用程序。140.在一个实施例中,所述第一等待时间小于所述第二等待时间,且将所述元数据存储于所述第一存储器装置中。141.在一个实施例中,所述计算机系统使用存储器总线来存取所述第一存储器装置及所述第二存储器装置,且其中将所述元数据存储于所述第二存储器装置中。142.在一个实施例中,将所述元数据存储于所述第一存储器装置中,且所述方法进一步包括将所述元数据的至少一部分载入到缓冲器(例如翻译旁视缓冲器318)中,其中所述处理装置查询所述缓冲器以确定对应于所述第一地址范围中的虚拟地址的物理地址。143.在一个实施例中,所述计算机系统为片上系统,且所述缓冲器为翻译旁视缓冲器。144.在一个实施例中,所述方法进一步包括:将所述第一存储器装置及所述第二存储器装置的存储器特性提供到所述应用程序;其中将所述第一地址范围分配给所述应用程序是响应于由所述应用程序基于所提供存储器特性作出的请求。145.在一个实施例中,所述方法进一步包括从所述应用程序接收所请求等待时间,其中将所述第一地址范围分配给所述应用程序是进一步基于所述所请求等待时间。146.在一个实施例中,所述方法进一步包括确定与所述应用程序相关联的优先级,其中将所述第一地址范围分配给所述应用程序是进一步基于所述优先级。147.在一个实施例中,所述第一等待时间小于所述第二等待时间;在将所述第一地址范围分配给所述应用程序之前,将所述应用程序分配给所述第二地址范围;且将所述第一地址范围分配给所述应用程序是响应于确定与所述应用程序相关联的优先级的增加而进行。148.在一个实施例中,确定与所述应用程序相关联的所述优先级的所述增加是基于关于所述地址空间中的所述应用程序的数据存取的一或多个观察。149.在一个实施例中,所述方法进一步包括由所述处理装置确定与所述存储器装置相关联的等待时间,其中存储所述元数据进一步包括存储经确定等待时间。150.在一个实施例中,一种系统包括:第一存储器装置;第二存储器装置;至少一个处理装置;及存储器,其含有指令,所述指令经配置以指示所述至少一个处理装置:存取由操作系统维护的地址空间中的存储器,所述存取包含使用所述地址空间中的地址来存取所述第一存储器装置及所述第二存储器装置;存储使所述地址空间的第一地址范围与所述第一存储器装置相关联且使所述地址空间的第二地址范围与所述第二存储器装置相关联的元数据;及由所述操作系统基于存储的元数据管理包含第一进程及第二进程的进程,其中将用于所述第一进程的数据存储于所述第一存储器装置中,且将用于所述第二进程的数据存储于所述第二存储器装置中。151.在一个实施例中,所述第一进程具有第一优先级,所述第二进程具有第二优先级,且响应于确定所述第一优先级高于所述第二优先级而选择所述第一存储器装置以存储用于所述第一进程的所述数据。152.在一个实施例中,所述第一进程对应于第一应用程序;所述指令经进一步配置以指示所述至少一个处理装置从所述第一应用程序接收指示待用于存储数据的一类型的存储器的请求;且基于所指示类型的存储器选择所述第一存储器装置以存储用于所述第一进程的所述数据。153.在一个实施例中,所述系统进一步包括缓冲器以存储所述元数据,其中所述操作系统从所述第一进程接收所述第一地址范围中的虚拟地址,且存取所述缓冲器以确定所述第一存储器装置的对应于所述虚拟地址的物理地址。154.在一个实施例中,所述第一存储器装置的读取等待时间小于所述第二存储器装置的读取等待时间,且所述指令经进一步配置以指示所述至少一个处理装置将所述元数据存储于所述第一存储器装置中。155.在一个实施例中,所述系统进一步包括存储器管理单元(例如存储器管理单元316),其经配置以在存取用于所述第一进程的存储的数据时将所述第一地址范围中的虚拟地址映射到所述第一存储器装置中的物理地址。156.在一个实施例中,一种非暂时性机器可读存储媒体存储指令,所述指令在至少一个处理装置上执行时使得所述至少一个处理装置至少:存取地址空间中的存储器,其中由所述至少一个处理装置使用所述地址空间中的地址来存取计算机系统的存储器装置;存储使所述地址空间的第一地址范围与第一存储器装置相关联且使所述地址空间的第二地址范围与第二存储器装置相关联的元数据;将第一数据提供到在所述计算机系统上执行的应用程序,所述第一数据指示所述第一存储器装置的第一等待时间小于所述第二存储器装置的第二等待时间;响应于将所述第一数据提供到所述应用程序,从所述应用程序接收将与所述应用程序相关联的第二数据存储于所述第一存储器装置中的请求;响应于所述应用程序的存储所述第二数据的请求,查询存储的元数据以提供结果;及基于所述结果将所述第二数据存储于所述第一存储器装置中。157.图7为可操作本发明的实施例的实例计算机系统的框图。图7绘示计算机系统600的实例机器,其内可执行用于使得机器进行本文中所论述的方法中的任何一或多者的指令集。在一些实施例中,计算机系统600可对应于主机系统(例如图1的计算机系统120),所述主机系统包含、耦合到或利用存储器子系统(例如图1的存储器子系统110),或可用于进行元数据组件113的操作(例如执行指令以进行对应于参考图1到6所描述的元数据组件113的操作)。在替代性实施例中,机器可连接(例如网络连接)到lan、企业内部网络、企业间网络及/或网络因特网中的其它机器。机器可操作于主从式网络环境中的服务器或客户端机器的容量中、操作为同级间(或分布式)网络环境中的同级机器,或操作为云端计算基础设施或环境中的服务器或客户端机器。158.机器可为个人计算机(pc)、平板pc、机顶盒(stb)、个人数字助理(pda)、蜂窝式电话、网页器具、服务器、网络路由器、开关或桥、物联网(iot)装置,或能够执行规定待由机器采取的动作的指令集(依序或以其它方式)的任何机器。另外,尽管绘示单一机器,但术语“机器”还视为包含个别地或联合地执行指令集(或多个集)以进行本文中所论述的方法中的任何一或多者的机器的任何集合。159.实例计算机系统600包含处理装置602、主存储器604(例如只读存储器(rom)、快闪存储器、动态随机存取存储器(dram)(例如同步dram(sdram)或rambusdram(rdram))、静态随机存取存储器(sram)等)及数据存储系统618,其经由总线630(其可包含多个总线)彼此通信。160.处理装置602表示一或多个通用处理装置,例如微处理器、中央处理单元等等。特定地说,处理装置可为复杂指令集计算(cisc)微处理器、精简指令集计算(risc)微处理器、超长指令字(vliw)微处理器,或实施其它指令集的处理器,或实施指令集的组合的处理器。处理装置602还可为一或多个专用处理装置,例如专用集成电路(asic)、现场可编程门阵列(fpga)、数字信号处理器(dsp)、网络处理器等等。处理装置602经配置以执行用于进行本文中所论述的操作及步骤的指令626。计算机系统600可进一步包含网络接口装置608以经由网络620通信。161.数据存储系统618可包含机器可读存储媒体624(还称为计算机可读媒体),其上存储有体现本文中所描述的方法或功能中的任何一或多者的一或多个指令626集或软件。在其由计算机系统600执行期间,指令626也可完全或至少部分地驻留于主存储器604内及/或处理装置602内,主存储器604及处理装置602也构成机器可读存储媒体。机器可读存储媒体624、数据存储系统618及/或主存储器604可对应于图1的存储器子系统110。162.在一个实施例中,指令626包含实施对应于元数据组件113(例如参考图1到6所描述的元数据组件113)的功能性的指令。尽管在实例实施例中将机器可读存储媒体624展示为单一媒体,但术语“机器可读存储媒体”应视为包含存储一或多个指令集的单一媒体或多个媒体。163.与存储器类型相关的页表164.现在下文描述与将虚拟页的虚拟地址映射到不同存储器类型的存储器装置中的物理地址的页表项相关的各种实施例。以下描述的一般性不受上文所描述的各种实施例限制。165.在使用不同类型的物理存储器装置以用于存储数据的计算机系统的先前存储器管理单元中,存在mmu未察觉如何将用于各种虚拟页的存储器物理地映射到不同类型的存储器装置(例如将虚拟页映射到dram对nvram抑或快闪存储器中的物理地址)的技术问题。举例来说,mmu未存储关于如何将每一虚拟页映射到不同类型的存储器装置的数据。此外,存储器类型不了解仅为一个限制。即使在均匀存储器系统中(例如在numa架构中),不同物理地址还可具有存取特性的差异(mmu未察觉所述差异)。166.在一个实例中,如果用于一进程的虚拟页比其它存储器装置(例如dram)明显更慢地映射到物理存储器装置(例如快闪存储器),那么所述进程可能因不能快速存取数据而被迫缓慢运行。举例来说,所述进程可能需要来自主存储器的虚拟页以便继续处理。如果所需虚拟页实际上存储于缓慢物理存储器装置中,那么进程在等待对虚拟页进行存取时明显延迟。167.下文所描述的各种实施例提供对以上技术问题中的一或多者的技术解决方案。在一个实施例中,一种方法包含:由至少一个处理装置(例如cpu及/或mmu)使虚拟页与第一存储器类型相关联;生成页表项以将所述虚拟页的虚拟地址映射到所述第一存储器类型的第一存储器装置中的物理地址;及使用所述页表项将所述虚拟页存储于所述第一存储器装置中的所述物理地址处。在一个实例中,已将页表项复制到存储器管理单元及/或微处理器的高速缓存。在一个实例中,已将页表项复制到由存储器管理单元在将虚拟页存储于中央处理单元的主存储器中时使用的翻译旁视缓冲器(tlb)。168.在一个实施例中,移动装置的操作系统管理与存储器类型相关联的虚拟页的位置。举例来说,存储器类型可为dram、nvram或nand快闪。当虚拟页与特定存储器类型相关联时,操作系统生成页表项以将虚拟页的逻辑地址映射到对应存储器类型。处理器可请求通过改变其存储器类型将存储器页传送到不同类型的存储器。169.在一个实例中,在计算装置上执行的应用程序或其它软件已将识别应用程序或其它软件需要用于处理的存储器类型的信息提供到操作系统。作为响应,操作系统使应用程序或软件的一或多个虚拟页与对应于由所述应用程序或软件所请求的所识别存储器类型的物理存储器装置相关联。举例来说,响应于由应用程序作出的对nvram存储器类型的请求,将虚拟页分配给应用程序。对应于所分配虚拟页的物理地址用于将数据存储于nvram装置(例如交叉点存储器装置)中。170.图8绘示根据一些实施例的使用一或多个页表804、806来存取存储器总线812上的存储器装置的实例计算机系统800。存储器装置可包含存储器子系统802的dram304、nvram306及nand快闪308。171.计算机系统800为图3的计算机系统300的实例。存储器子系统802为图3的存储器子系统302的实例。存储器总线812为图2的存储器总线203的实例。172.操作系统808在处理装置310上运行。操作系统808将处理装置310的主存储器分配给各种应用程序。这些应用程序包含应用程序312,其具有存储器类型314。在一个实例中,存储器类型314嵌入于应用程序312的代码中。在一个实例中,由不同计算装置(未展示)将存储器类型314提供到处理装置310。在一个实例中,不同计算装置为提供与由应用程序312作出的对存储器分配的请求相关联的存储器类型314的服务器。173.操作系统808使用存储器管理单元(mmu)316管理计算机系统800的存储器。在一个实施例中,与包含应用程序312的应用程序相关联的虚拟页映射到常驻于存储器子系统802中的物理存储器。mmu316存取页表项以确定存储器中的对应于应用程序需要存取的虚拟页的物理地址。174.可将页表项存储于页表804及/或页表806中。在一个实例中,mmu316通过提供对应于虚拟页的虚拟地址来查询页表804、806。来自查询的结果为存储器装置(例如dram304)的物理地址。175.在一个实施例中,将页表804存储于dram304中。在一个实施例中,将页表806存储于计算机系统800的存储器中。在一个实例中,当页表项未存在于计算机系统800中时,mmu316存取页表804。在一个实例中,页表项分裂存储在页表804与页表806之间。在一个实例中,页表806中的页表项对应于具有较高优先级的进程。在一个实例中,处理装置310基于由处理装置310接收到的对应于应用程序的存储器类型为对应于应用程序的进程指定优先级。176.在一个实施例中,mmu316使用页表804及元数据322两者以用于存储器管理。在一个实例中,mmu316使用元数据322来选择用于存储对应于虚拟页的数据的存储器装置。选定存储器装置可对应于所请求存储器类型(例如存储器类型314)。在另一实施例中,mmu316使用页表806及元数据320两者以用于存储器管理。177.在一个实施例中,将来自页表804、806的页表项中的一些复制到翻译旁视缓冲器(tlb)810。当将虚拟地址映射到物理地址时,mmu316首先检查用于对应于虚拟地址的页表项的tlb810。tlb810中的页表项还可包含从元数据320、322复制的数据。178.在一个实施例中,应用程序312请求由处理装置310进行存储器的分配。作为响应,操作系统808使用mmu316来生成将应用程序312的虚拟页的虚拟地址映射到存储器装置中的物理地址的页表项。存储器装置经选择具有存储器类型314。在一个实施例中,使用元数据322来选择存储器装置。在一个实施例中,在生成页表项之后,将页表项的拷贝存储于tlb810中及/或更新元数据320、322。179.在一个实施例中,处理装置310确定与应用程序312相关联的改变。在一个实例中,所述改变为由应用程序312进行的一或多个功能的优先级的改变。在一个实例中,所述改变为与应用程序312相关联的上下文(例如安全性上下文等)的改变。180.响应于确定改变,操作系统808使应用程序312的一或多个虚拟页与新的存储器类型相关联。举例来说,应用程序312的存储器类型可响应于确定应用程序312的较高优先级而从nvram改变为dram。响应于对新的存储器类型的改变,更新页表项以将虚拟页的虚拟地址映射到新的存储器类型的新的存储器装置中的物理地址。接着,mmu316使用经更新页表项将虚拟页从当前使用的存储器装置传送到新的存储器装置。181.在一个实施例中,计算机系统800及/或处理装置310为片上系统(soc)。在一个实例中,soc可为或包含集成计算装置的任何两个或更多个组件的集成电路或芯片。两个或更多个组件可包含中央处理单元(cpu)、图形处理单元(gpu)、存储器、输入/输出端口及辅助存储中的至少一或多者。举例来说,soc可包含单一电路裸片上的cpu、gpu、图形及存储器接口、硬盘、usb连接性、随机存取存储器、只读存储器、辅助存储或其任何组合。此外,在处理器芯片为soc的情况下,soc可至少包含cpu及/或gpu。182.在soc的一个实例中,两个或更多个组件可嵌入于单一衬底或微芯片(芯片)上。一般来说,soc不同于常规基于母板的架构,不同之处在于soc将所有其组件集成到单一集成电路中;而母板容纳及连接可拆卸或可更换组件。由于将两个或更多个组件集成于单一衬底或芯片上,故soc比具有等效功能性的多芯片设计消耗更少功率且占据小得多的面积。在一些实施例中,本文中所描述的存储器系统或子系统可与移动计算装置中(例如智能型电话中)、嵌入式系统中及物联网(iot)装置中的soc连接或为所述soc的一部分。在一个实施例中,存储器子系统802可为soc或包含于soc中。此外,在存储器子系统802为soc的情况下,soc可至少包含数据处理单元。183.图9绘示根据一些实施例的具有页表项902、904的实例页表900。每一页表项902、904包含虚拟地址、对应物理地址及存储器类型。在一个实例中,存储器类型为存储器类型314。在一个实例中,存储器类型314用以响应于对进程的主存储器的新的分配或分配的改变而更新页表项。在各种实施例中,每一项902、904可进一步包含进程标识符、使用数据及/或存储器装置标识符。页表900为页表804或806的实例。184.在一个实施例中,对于每一页表项,虚拟地址对应于例如应用程序312的应用程序的虚拟页。物理地址对应于存储器子系统802的存储器装置中的位置。存储器类型对应于物理地址处的存储器装置的类型。185.在一个实施例中,每一页表项的进程标识符用以识别在正使用虚拟地址处的虚拟页的处理装置310上执行的进程。举例来说,进程标识符为在计算机系统800中运行的每一进程的独特标识符。186.在一个实施例中,每一页表项的使用数据可对应于关于与存储于页表项的虚拟地址处的虚拟页中的数据相关联的存取或其它使用的数据。在一个实例中,使用数据涉及虚拟页的使用模式。在一个实例中,使用模式为存取虚拟页中的数据的频率。在一个实例中,存取的频率可用于读取及/或写入存取。在一个实例中,使用数据涉及虚拟页中的数据的最后使用时间。187.在一个实施例中,每一页表项可包含存储器装置标识符。在一个实例中,存储器装置标识符独特地识别存储对应于虚拟地址的数据的物理存储器装置。在一个实例中,存储器装置标识符独特地对应于dram304或nvram306。188.在一个实施例中,每一页表项可进一步包含元数据320及/或322的至少一部分。在一个实例中,所包含元数据可为物理存储器装置的地址范围。189.图10展示根据一些实施例的用于生成页表项以将虚拟页的虚拟地址映射到不同存储器类型的存储器装置中的物理地址的方法。举例来说,图10的方法可实施于图8的系统或图7的计算机系统600中。190.图10的方法可由处理逻辑进行,所述处理逻辑可包含硬件(例如处理装置、电路系统、专用逻辑、可编程逻辑、微码、装置的硬件、集成电路等)、软件(例如在处理装置上运行或执行的指令),或其组合。在一些实施例中,图10的方法至少部分地由一或多个处理装置(例如图8的处理装置310)进行。191.尽管以特定顺序或次序展示,但除非另有规定,否则可修改所述进程的次序。因此,所绘示实施例应仅理解为实例,且所绘示进程可以不同次序进行,且一些进程可并行进行。另外,可在各种实施例中省略一或多个进程。因此,在每一实施例中并非所有进程是必需的。其它处理流程是可能的。192.在框1001处,使虚拟页与第一存储器类型相关联。在一个实例中,第一存储器类型为dram、nvram或快闪存储器。在一个实例中,虚拟页对应于应用程序312。在一个实例中,虚拟页对应于响应于对由处理装置310使用的主存储器的分配的请求而分配给应用程序312的存储器。193.在框1003处,生成页表项。页表项将虚拟页的虚拟地址映射到第一存储器类型的存储器装置中的物理地址。在一个实例中,页表项驻留于页表804或806中。在一个实例中,存储器装置为dram304、nvram306或nand快闪308。194.在框1005处,使用页表项,将虚拟页存储于存储器装置中的物理地址处。在一个实例中,存储器管理单元316使用在翻译旁视缓冲器810中高速缓存的页表项存储虚拟页。195.在一个实施例中,一种方法包括:由至少一个处理装置(例如处理装置310及/或存储器管理单元316)使虚拟页与第一存储器类型相关联;生成页表项(例如页表项902)以将所述虚拟页的虚拟地址映射到所述第一存储器类型的第一存储器装置(例如dram304)中的物理地址;及使用所述页表项将所述虚拟页存储于所述第一存储器装置中的所述物理地址处。196.在一个实施例中,所述方法进一步包括:由至少一个处理装置使所述虚拟页与第二存储器类型相关联;更新所述页表项以将所述虚拟页的所述虚拟地址映射到所述第二存储器类型的第二存储器装置(例如nvram306)中的物理地址;及使用经更新页表项将所述虚拟页从所述第一存储器装置传送到所述第二存储器装置。197.在一个实施例中,操作系统(例如操作系统808)在所述至少一个处理装置上运行,且生成所述页表项是由所述操作系统响应于使所述虚拟页与所述第一存储器类型相关联而进行。198.在一个实施例中,使所述虚拟页与所述第一存储器类型相关联是响应于由操作系统从应用程序(例如应用程序312)接收到的请求而进行。199.在一个实施例中,向所述第一存储器类型(例如存储器类型314)提供来自所述应用程序的所述请求。200.在一个实施例中,所述方法进一步包括由计算装置的操作系统管理存储于存储器装置中的虚拟页的物理位置,其中所述存储器装置包含所述第一存储器装置及第二存储器类型的一第二存储器装置,且其中所述第一存储器装置的等待时间小于所述第二存储器装置的等待时间。201.在一个实施例中,除等待时间以外及/或除等待时间之外的差异可存在于第一存储器装置与第二存储器装置之间。在一个实例中,第一存储器装置的功率及/或性能特性不同于第二存储器装置,所述第二存储器装置具有低功率存储器及/或更持久存储器。不同存储器装置或类型或存储器之间的存储器特性的差异的实例可包含性能、功率、耐久性、错误率及/或其组合。在一些情况下,例如,这些差异可存在于相同存储器类型的装置之间(例如错误率针对用于存储进程的数据的相同存储器类型的不同芯片而改变)。202.在一个实施例中,所述第一存储器类型为动态随机存取存储器,且所述第二存储器类型为非易失性随机存取存储器或快闪存储器。203.在一个实施例中,所述方法进一步包括:由操作系统监视在所述至少一个处理装置上运行的应用程序;及基于所述监视更新所述页表项以将所述虚拟页的所述虚拟地址映射到第二存储器类型的第二存储器装置中的物理地址。204.在一个实施例中,所述方法进一步包括:确定与所述至少一个处理装置相关联的操作的上下文;基于经确定上下文选择第二存储器类型;及响应于选择所述第二存储器类型,更新所述页表项以将所述虚拟页的所述虚拟地址映射到所述第二存储器类型的第二存储器装置中的物理地址。205.在一个实施例中,所述方法进一步包括:由所述至少一个处理装置使所述虚拟页与第二存储器类型相关联;响应于使所述虚拟页与所述第二存储器类型相关联,更新翻译旁视缓冲器(例如tlb810)中的映射数据;及由存储器管理单元基于存取所述翻译旁视缓冲器中的经更新映射数据将所述虚拟页从所述第一存储器装置传送到第二存储器装置。206.在一个实施例中,进程正在所述至少一个处理装置上执行,且所述页表项包括使用所述虚拟页的第一进程的进程标识符。207.在一个实施例中,所述页表项包括关于在所述至少一个处理装置上运行的一或多个应用程序的使用模式的数据。208.在一个实施例中,关于所述使用模式的所述数据为使用频率或最后使用时间中的至少一者。209.在一个实施例中,一种系统包括:第一存储器装置;页表,其存储将虚拟地址映射到不同存储器类型的存储器装置中的物理地址的页表项,所述存储器装置包含所述第一存储器装置;至少一个处理装置;及存储器,其含有指令,所述指令经配置以指示所述至少一个处理装置:确定虚拟页与第一存储器类型的关联;确定所述第一存储器装置对应于所述第一存储器类型;及生成页表项以将所述虚拟页的虚拟地址映射到所述第一存储器装置的第一物理地址。210.在一个实施例中,所述至少一个处理装置使用具有存储于所述存储器装置上的数据的主存储器,且其中确定所述虚拟页与所述第一存储器类型的所述关联是响应于由应用程序作出的对所述主存储器的分配的请求而进行。211.在一个实施例中,所述指令经进一步配置以指示所述至少一个处理装置:存储使主存储器中的地址范围与所述存储器装置中的物理地址相关联的元数据(例如元数据320、322);其中确定所述第一存储器装置对应于所述第一存储器类型是基于存储的元数据。212.在一个实施例中,所述指令经进一步配置以指示所述至少一个处理装置使用所述页表项将所述虚拟页存储于所述第一存储器装置中的所述第一物理地址处。213.在一个实施例中,所述系统进一步包括存储器管理单元(例如存储器管理单元316)及翻译旁视缓冲器,其中所述指令经进一步配置以指示所述至少一个处理装置:基于与所述虚拟页相关联的存储器类型从所述第一存储器类型到第二存储器类型的改变来更新所述翻译旁视缓冲器中的映射数据;及由所述存储器管理单元基于经更新映射数据将所述虚拟页从所述第一存储器装置传送到所述第二存储器类型的第二存储器装置。214.在一个实施例中,存储器类型的所述改变是响应于由在所述至少一个处理装置上执行的应用程序作出的请求而进行,或响应于由所述至少一个处理装置作出的进程或应用程序的优先级已改变的确定而进行。215.在一个实施例中,一种非暂时性机器可读存储媒体存储指令,所述指令在至少一个处理装置上执行时使得所述至少一个处理装置至少:使虚拟页与第一存储器类型相关联;生成页表项以将所述虚拟页的虚拟地址映射到所述第一存储器类型的第一存储器装置中的物理地址;及使用所述页表项将所述虚拟页存储于所述第一存储器装置中的所述物理地址处。216.结语217.本发明包含进行上文所描述的方法及实施上文所描述的系统的各种装置,包含进行这些方法的数据处理系统,及含有在数据处理系统上执行时使得系统进行这些方法的指令的计算机可读媒体。218.描述及图式为说明性的且不应视为限制性的。描述众多特定细节以提供透彻理解。然而,在某些情况下,并不描述熟知或常规细节以便避免混淆描述。对本发明中的一个或一实施例的参考未必为对同一实施例的参考;且这类参考意谓至少一者。219.在本说明书中,对“一个实施例”或“一实施例”的参考意谓结合实施例所描述的特定特征、结构或特性包含于本发明的至少一个实施例中。在说明书中的各种地方中的短语“在一个实施例中”的表达形式未必均是指同一实施例,也不均是指其它实施例的彼此排他性的单独或替代性实施例。此外,描述各种特征,所述特征可通过一些实施例而不通过其它实施例来呈现。类似地,描述各种要求,所述要求可为对于一些实施例的要求但并非对于其它实施例的要求。220.在本说明书中,各种功能及操作可描述为由软件代码进行或由软件代码引起以简化描述。然而,所属领域的技术人员将认识到这类表述意谓功能由一或多个处理器对代码的执行产生,所述一或多个处理器例如微处理器、专用集成电路(asic)、图形处理器及/或现场可编程门阵列(fpga)。替代地,或组合地,可在具有或不具有软件指令的情况下使用专用电路系统(例如逻辑电路系统)实施功能及操作。实施例可使用硬连线电路系统在不具有软件指令的情况下实施,或结合软件指令实施。因此,技术不限于硬件电路系统与软件的任何特定组合,也不限于由计算装置执行的指令的任何特定来源。221.尽管一些实施例可实施于完全起作用的计算机及计算机系统中,但各种实施例能够以各种形式作为计算产品分发,且能够经应用,无论用以实际上影响分发的机器或计算机可读媒体的特定类型如何。222.所公开的至少一些方面可至少部分地体现于软件中。也就是说,技术可响应于其处理器(例如微处理器)执行含于存储器(例如rom、易失性ram、非易失性存储器、高速缓存或远程存储装置)中的指令序列而在计算装置或其它系统中进行。223.执行以实施实施例的例程可实施为操作系统、中间软件、服务递送平台、软件开发套件(sdk)组件、网页服务或称为“计算机程序”的其它特定应用程序、组件、程序、对象、模块或指令序列的部分。对这些例程的调用接口可暴露于软件开发社群作为应用程序编程接口(api)。计算机程序通常包括在各种时间在计算机中的各种存储器及存储装置中设置的一或多个指令,且当由计算机中的一或多个处理器读取及执行时,使得计算机进行执行涉及各种方面的元件所必需的操作。224.机器可读媒体可用于存储在由计算装置执行时使得所述装置进行各种方法的软件及数据。可执行软件及数据可存储于各种场所中,包含例如rom、易失性ram、非易失性存储器及/或高速缓存。此软件及/或数据的部分可存储于这些存储装置中的任一者中。另外,数据及指令可从集中式服务器或同级间网络获得。数据及指令的不同部分可在不同时间且在不同通信对话或相同通信对话中从不同集中式服务器及/或同级间网络获得。可在应用程序的执行之前获得全部数据及指令。替代地,可在需要执行时动态地(实时)获得数据及指令的部分。因此,并不需要数据及指令在特定时刻全部处于机器可读媒体上。225.计算机可读媒体的实例包含但不限于可记录及不可记录类型媒体,例如易失性及非易失性存储器装置、只读存储器(rom)、随机存取存储器(ram)、快闪存储器装置、固态驱动机存储媒体、抽取式磁碟、磁碟存储媒体、光学存储媒体(例如光盘只读存储器(cdrom)、数字多功能光盘(dvd)等),以及其它。计算机可读媒体可存储指令。226.一般来说,有形或非暂时性机器可读媒体包含提供(例如存储)信息的任何机构,所述信息呈可由机器(例如计算机、移动装置、网络装置、个人数字助理、制造工具、具有一或多个处理器集合的任何装置等)存取的形式。227.在各种实施例中,硬连线电路系统可与软件及固件指令组合使用以实施技术。因此,技术既不限于硬件电路系统与软件的任何特定组合,也不限于由计算装置执行的指令的任何特定来源。228.尽管图式中的一些以特定次序绘示数个操作,但不依赖次序的操作可经重排序且其它操作可经组合或分解。尽管具体地提及一些重排序或其它分组,但其它者将对所属领域的一般技术人员显而易见,且因此并不存在替代例的穷尽性列表。此外,应认识到,阶段可实施于硬件、固件、软件或其任何组合中。229.在前述说明书中,已参考本发明的特定示范性实施例描述本发明。显而易见的是,在不脱离如以下权利要求书中所阐述的较宽广的精神及范围的情况下,可对其进行各种修改。因此,应在说明性意义上而非限制性意义上看待说明书及图式。230.本文中所阐述的各种实施例可使用广泛多种不同类型的计算装置实施。如本文中所使用,“计算装置”的实例包含但不限于服务器、集中式计算平台、多个计算处理器及/或组件的系统、移动装置、用户终端机、载具、个人通信装置、穿戴式数字装置、电子信息站、通用计算机、电子文件阅读器、平板、膝上型计算机、智能型手机、数字摄影机、住宅家用器具、电视或数字音乐播放器。计算装置的额外实例包含为称为“物联网”(iot)的部分的装置。这类“物联”可与其所有者或管理员(其可监视所述物联或修改这些物联的设置)具有偶然交互。在一些情况下,这类所有者或管理员相对于“物联”装置扮演用户的角色。在一些实例中,用户的主移动装置(例如苹果iphone)可为相对于由用户穿戴的“物联”装置(例如苹果手表)的管理员服务器。231.在一些实施例中,计算装置可为计算机或主机系统,其实施为例如台式计算机、膝上型计算机、网络服务器、移动装置或包含存储器及处理装置的另一计算装置。主机系统可包含或耦合到存储器子系统,使得主机系统可从存储器子系统读取数据或将数据写入到存储器子系统。主机系统可经由物理主机接口耦合到存储器子系统。一般来说,主机系统可经由同一通信连接、多个单独通信连接及/或通信连接的组合存取多个存储器子系统。当前第1页12当前第1页12
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献