CN103052945A - 管理计算机存储器的方法、程序产品及数据存储设备 - Google Patents

管理计算机存储器的方法、程序产品及数据存储设备 Download PDF

Info

Publication number
CN103052945A
CN103052945A CN2011800361201A CN201180036120A CN103052945A CN 103052945 A CN103052945 A CN 103052945A CN 2011800361201 A CN2011800361201 A CN 2011800361201A CN 201180036120 A CN201180036120 A CN 201180036120A CN 103052945 A CN103052945 A CN 103052945A
Authority
CN
China
Prior art keywords
data
page table
data block
designators
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
Application number
CN2011800361201A
Other languages
English (en)
Other versions
CN103052945B (zh
Inventor
沙帕·穆兰德
詹姆斯·巴尔莫·麦凯
法比奥·帕尼斯
诺亚·爱文斯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alcatel Lucent SAS
Alcatel Optical Networks Israel Ltd
Original Assignee
Alcatel Optical Networks Israel Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Alcatel Optical Networks Israel Ltd filed Critical Alcatel Optical Networks Israel Ltd
Publication of CN103052945A publication Critical patent/CN103052945A/zh
Application granted granted Critical
Publication of CN103052945B publication Critical patent/CN103052945B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1009Address translation using page tables, e.g. page table structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • G06F12/145Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being virtual, e.g. for virtual blocks or segments before a translation mechanism
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1052Security improvement

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本发明涉及一种管理计算机存储器的方法,所述方法包括以下步骤:维持(101)用于将虚拟地址映射至物理地址的页表条目以及包括多个数据块的高速缓存;以及响应于对虚拟地址的引用,通过页表条目将虚拟地址转换(102)为物理地址,并从物理地址取出(103)数据至高速缓存中,其中,页表条目包括多个指示符,每个数据块与指示符相对应,并且,在将数据取到高速缓存中时,所述方法还包括以下步骤:响应于所设置的指示符,对对应的数据块进行归零(104)。本发明还涉及一种计算机程序产品及其设备。

Description

管理计算机存储器的方法、程序产品及数据存储设备
技术领域
本发明涉及一种管理计算机存储器的方法,包括以下步骤:维持用于将虚拟地址映射至物理地址的页表条目以及包括多个数据块的高速缓存;以及响应于对虚拟地址的引用,通过页表条目将虚拟地址转换为物理地址,并从物理地址取出数据至高速缓存中。本发明还涉及一种包括计算机可执行指令的计算机程序产品和一种被编程为或被配置为执行所述方法的设备,该计算机可执行指令用于在计算机上运行程序时执行所述方法。
背景技术
在计算时,存储器管理是管理计算机存储器的动作。在其更简单形式中,这涉及提供用于在程序请求时将存储器的部分分配给程序的方式以及在不再需要时释放其以重用。存储器的管理对任何计算机系统来说是关键的。
虚拟存储器系统将进程所使用的存储地址与物理地址分离,从而允许进程的分离并增大存储器的有效可用量。虚拟存储器管理器的质量对总体系统性能具有显著影响。
Ludmila Cherkasova和Rob Gardner在“Measuring CPU Overheadfor I/O processing in the Xen Virtual Machine Monitor”,Proceedings ofthe USENIX Annual Technical Conference2005,Anaheim,California,United States of America中概述了一种虚拟存储器系统。为了允许操作系统(OS)从辅存储器检索数据以用在主存储器中,该传统系统利用被称作页面调度的存储器管理方案,其中,在被称为存储页面的固定大小块中检索数据。这里,辅存储器(有时被称为外存储器)表示中央处理单元(CPU)不可直接访问的任何存储器,例如硬盘驱动器、光学存储器、闪存、软盘、磁带、纸带、穿孔卡或压缩驱动器。
为了允许与其他系统(通称为输入/输出或I/O)高效通信,现有技术的虚拟存储器系统实现了一种被称作页面翻转的机制。根据该技术,一个应用指定了用于接收输入数据的一个或多个存储页面,从而允许OS通过其内置页面调度机制来供给该数据。为此,OS将该应用的工作存储器中指定的存储页面(通称为其地址空间)与所请求的输入进行交换。
该已知系统的主要缺点在于以下事实:要供给的输入数据几乎不精确符合目标存储页面。由此交换的每个存储页面的其余部分需要归零,以迎合依赖于存储器初始化的应用以及防止请求应用获得对外来的可能敏感的数据的未授权访问。在软件开发中,归零表示利用固定无含义值(例如,零)来重写数据,以防止其意外披露,这种披露可能允许由请求应用导致的安全漏洞。
根据US 5 920 895 A,通过抑制对在文件的高速缓存页面中的未初始化数据的归零直到该文件被用户模式线程映射为止,来改进写入使用所映射的文件I/O高速缓存的文件的效率。在页面调度操作由虚拟存储器管理器控制并且使用所映射的文件I/O的基于存储器的高速缓存由高速缓存管理器管理的操作系统中,在写入时抑制所映射的文件的归零由用于在虚拟存储器管理器与高速缓存管理器之间的通信的内部操作系统接口集合实现。当正在高速缓存的文件尚未被用户模式线程映射时,高速缓存管理器跟踪该文件的高速缓存页面被写入的程度,使得当该文件被用户模式线程映射时,可以稍后对该高速缓存页面中的任何未初始化数据进行归零。
根据US 2008/229117 A1的用于防止计算环境中的数字盗版的方法包括:将应用加载至计算环境中,其中,该应用是使用密码密钥来加密的;将虚拟地址空间指派给该应用;将该应用的密码密钥加载至仅中央处理单元可访问的寄存器中;以及将寄存器中的密钥的索引值存储在与该应用的虚拟地址空间相对应的页表条目中,从而将虚拟地址空间与该应用的密钥相联系。
在MENON A.,ET AL.:“Optimizing Network Virtualization inXen”,PROCEEDINGS OF THE 2006 USENIX ANNUALTECHNICAL CONFERENCE,29 May 2006(2006-05-29),XP002623699中,作者提出并评估了三种用于对Xen虚拟化环境中的网络性能进行优化的技术。他们的技术保留了以下基本Xen架构:将设备驱动器定位于可访问I/O设备的特许“驱动器”域中,并通过虚拟化网络接口提供对非特许“客”域的网络访问。
发明内容
本发明的目的是提出一种针对虚拟存储器管理的改进方案,其消除或减少在页面翻转时对归零的需要。另一目的是提供一种适于有限带宽(即,CPU可以从存储器中读取数据或将数据存储入存储器中的速率)的存储的方法。更进一步的目的在于减小对存储总线(即,将主存储器与管理去往和来自该主存储器的数据的流动的存储器控制器相连接的计算机子系统)施加的负载。这里,主存储器(也被称为主存或内存储器)表示CPU可直接访问的任何存储器,例如随机存取存储器(RAM)、只读存储器(ROM)、处理器寄存器或处理器高速缓存。
该目的由一种管理计算机存储器的方法实现,所述方法包括以下步骤:维持用于将虚拟地址映射至物理地址的页表条目以及包括多个数据块的高速缓存;以及响应于对所述虚拟地址的引用,通过所述页表条目将所述虚拟地址转换为所述物理地址,并从所述物理地址取出数据至所述高速缓存中,其中,所述页表条目包括多个指示符,每个数据块与所述多个指示符之一相对应,并且,一旦已开始将所述数据取到所述高速缓存中,所述方法就包括以下另外步骤:响应于从所述多个指示符中选择的所设置的指示符,将对应的数据块进行归零。该目的还由一种包括计算机可执行指令的计算机程序产品或者一种被编程为或被配置为执行所述方法的设备实现,所述计算机可执行指令用于在计算机上运行程序时执行所述方法。
本发明的主要构思是增强页表,其为由OS的虚拟存储器系统用于存储在虚拟地址(即,应用的工作存储器中的地址的索引)与对应的物理地址之间的映射的数据结构。在虚拟存储器的上下文中,虚拟地址仅对访问进程来说是唯一的,而物理地址指代主存储器的实际存储单元。
可以从从属权利要求和以下描述获得本发明的进一步发展。
以下将参照附图来进一步说明本发明。
为了根据本发明的实施例管理计算机存储器,维持页表条目,以将虚拟地址映射至物理地址。此外,维持包括多个数据块的高速缓存。页表条目包括多个指示符,每个数据块与一指示符相对应。响应于对虚拟地址的引用,通过页表条目将虚拟地址转换为物理地址,并从该物理地址取出数据至高速缓存中。在取出数据时,响应于所设置的指示符,将对应的数据块进行归零。
附图说明
图1示出了描绘根据本发明的实施例的方法的流程图。
具体实施方式
以下,参照图1,作为示例,阐明根据本发明的方法。
图1的流程图100包括第一处理步骤101、第二处理步骤102、第三处理步骤103和第四处理步骤104。箭头的集合表示经过处理步骤101至103、与内存储器110合并、以及最终至第四处理步骤104中的控制的流程。在该流程内,始于第一符号并终于第二符号的箭头指示控制从第一符号传递至第二符号。
在当前的实施例中,该方法由专用存储器管理器单元(MMU)应用。在微处理器设计中,MMU表示负责处理由CPU请求的对存储器的访问的任何计算机硬件组件。除虚拟存储器管理(即,将虚拟地址转换为物理地址)外,MMU还可以支持诸如存储器保护、总线仲裁以及在诸如8比特系统的更简单计算机架构中的存储体切换之类的技术。
为了允许进程基于邻接工作存储器(通称为地址空间)的概念,尽管事实上该存储器可以在物理上分段并且甚至可以溢出至辅存储器上,但MMU支持页面调度,从而采用本领域中公知为页面调度MMU(PMMU)的形式。
为了减少CPU访问存储器所需的平均时间,PMMU进一步控制CPU高速缓存(即,被配置为存储来自最频繁使用的主存储器位置的数据的拷贝的更小更快存储器)。当CPU需要从主存储器中的位置读取或写入到主存储器中的位置时,其首先检验该数据的拷贝是否处于高速缓存中。如果是,则CPU立即从高速缓存读取或写入到高速缓存,这固有地比从主存储器的读取或向主存储器的写入更快。在高速缓存的上下文中,主存储器有时被称作高速缓存的后备存储器。
更具体地,由PMMU控制的CPU高速缓存包括用于加速数据取出和存储的数据高速缓存以及用于加速可执行指令和数据的虚拟存储器管理的转换旁视缓冲器(TLB)。TLB包括固定数目的槽,这些槽包含将虚拟地址映射至物理地址的页表条目(PTE)。在典型实施方式中,每个PTE包括32个和64个之间的比特。
在第一处理步骤101中,PMMU维持用于将虚拟地址映射至物理地址的PTE。此外,PMMU维持包括多个数据块(在CPU高速缓存的上下文中通称为高速缓存线路或高速缓存块)的高速缓存。典型地,每个数据块在大小上在从8个至512个字节的范围内变化。对于最大硬件加速度,当前的PMMU采用大于单个CPU指令可请求的数据量的数据块,典型地,在现有技术的32比特和64比特CPU架构中,该数据量在从1字节至16字节的范围内变化。
在第一处理步骤101中维持的PTE包括多个指示符,每个数据块与指示符相对应,指示在将对应的数据块提供给请求应用之前是否需要将对应的数据块进行归零。因此,指示符采用标记(即,具有值“真”或“假”中的任一个的布尔变量)的形式。为了最大化PTE所需的存储容量,每个指示符采用比特的形式,其二进制值中的每一个具有所指派的含义。为了进一步允许CPU在单个逐比特运算中设置多个指示符,将这些比特成组为在计算机算术中公知为比特掩码的适当大小的向量。在替换实施例中,为了以平均写入速度为代价进一步减小PTE的大小,可以将每个比特解释为与多个数据块相对应,从而有效地减少构成比特掩码的比特的数目。
在中间步骤(未示出)中,在被应用请求时,OS在计算网络上通过关联的网络接口控制器(NIC)(也被称作网络接口卡、网络适配器或局域网(LAN)适配器)来接收数据块。对于最大吞吐量,通过如IEEE802.3-2008标准定义的千兆比特以太网(GbE,1GigE)连接,即以一千兆比特每秒的速率,来传输数据块。为了通过避免采用CPU拷贝I/O数据的开销来进一步加速操作,OS采用页面翻转,以将其存储在由应用指定的存储页面中。假定组成存储页面的数据块中的仅一些被I/O操作修改,不是瞬时对其余未受影响的数据块进行归零,OS设置PTE的比特掩码中与要归零的数据块相对应的比特,同时清除与修改后的数据块相对应的那些比特。
以太网是分组交换协议,I/O数据采用数据传输单元(被称为分组,或者在该上下文中被称为以太网帧)的形式。帧可以在大小上在64字节的下界(例如,简单确认应答所需的)与9000字节或更多的上界(在计算机网络领域中通称为最大传输单元(MTU))之间变化。考虑到4至64千字节的典型存储页面大小,在这种情形下,由于需要在接收到每个分组时被清除的存储页面的显著部分,使得传统存储器管理系统将对CPU和存储器施加显著的归零开销。因此,本发明的另一优点在于其接收小至中尺寸分组数据的特定能力。
在大多数情况下,通过NIC接收到的数据量可能与如PTE定义的数据块的固定大小的倍数不相符。在这些情况下,受I/O影响的第一个和/或最后一个数据块的至少一部分保持未定义。为了避免其中包含的数据对请求应用的披露,OS需要在页面翻转之前即刻对数据块的该保持部分进行归零。
在替换实施例中,不通过NIC来接收数据,而是可以请求OS将程序加载至主存储器中以由CPU执行。在这种情况下,为了避免整个可执行文件的物理传送,程序加载器更新页表和TLB,从而有效地声明针对可执行文件而指定的虚拟地址至关联对象文件的内容的映射。由此映射的虚拟存储器的分段通称为存储器映射文件,从而具有以下优势:可以根本不需要将未使用的程序代码加载至主存储器中。
视情况而定,要加载的程序包括被称作由符号启动的块(BSS)的片段,通常被称作BSS分段,包含静态分配的期望初始,即当程序的执行开始时,填充零值数据的变量。在这种情况下,为了避免在执行前对整个BSS片段的归零,OS类似地通过以下操作来采用上述机制:设置PTE的比特掩码中与要归零的数据块相对应的比特,同时清除与程序的其他数据分段相对应的那些比特。
在第二处理步骤102中,响应于由CPU指令引用的虚拟地址,PMMU通过将虚拟地址转换为物理地址来完成虚拟存储器管理的其主要功能。为此,PMMU采用在第一处理步骤101的TLB中包含的PTE。更特别地,PMMU首先在TLB中搜索与当前的虚拟地址相对应的PTE。如果找到匹配,在虚拟存储器管理的领域中公知为TLB命中的情形,那么可以直接从匹配的PTE中检索物理地址。否则,情形通称为TLB失效,需要PMMU查阅由OS维持的页表。如果该页表包含匹配的PTE,则PMMU将其高速缓存在TLB中并重新执行有故障的CPU指令。
在第三处理步骤103中,PMMU访问在第二处理步骤102中导出的物理地址,并开始将其中包含的数据块取到CPU的数据高速缓存中。如果数据高速缓存此时已满,则所占据的高速缓存线路可能需要被重写,并且其在先内容可能需要被丢弃以容纳新取出的数据块。用于选择要驱逐哪个高速缓存线路的各种算法是本领域中公知的。
为了加速数据高速缓存上的任何写入操作,数据高速缓存采用回写高速缓存(有时被称为后写高速缓存)的形式。根据该策略,写入并不立即镜像至后备存储。取而代之,PMMU跟踪哪些高速缓存线路已被CPU重写,并相应地将这些位置标记为“脏”。在驱逐脏高速缓存线路之前,将相应数据块回写至后备存储器,以保存其被更新的内容以供未来读取访问。该方案在计算机科学中公知为“缓写”。在回写数据块时,PMMU需要清除PTE的比特掩码中的对应比特,以防止该数据块在被检索到的情况下归零。
一旦已经识别自由的高速缓存线路或者已经释放所占据的高速缓存线路,对于要取出的每个数据块,PMMU就查询在其内存储器110中找到的PTE中包含的比特掩码。如果设置了其对应比特,则PMMU不是从主存储器中检索数据块,而是在使相应高速缓存线路对请求应用来说可用之前,在第四处理步骤104中对该相应高速缓存线路进行归零。
本领域技术人员将容易地认识到,上述各个方法的步骤可以由所编程的计算机执行。这里,一些实施例意在覆盖程序存储设备(例如,数字数据存储介质),这些程序存储设备是机器或计算机可读的并对指令的机器可执行或计算机可执行程序进行编码,其中,所述指令执行这里描述的方法的一些或所有步骤。程序存储设备可以是例如数字存储器、磁存储介质(例如,磁盘或带)、硬盘驱动器或者光学可读数字数据存储介质。实施例还意在覆盖被编程为执行在此描述的方法的所述步骤的计算机。
本发明可以体现在其他具体设备和/或方法中。所描述的实施例应在所有方面被视为仅示意性而非限制性的。特别地,本发明的范围由所附权利要求而非这里的描述和附图指示。落在权利要求的等同替换的含义和范围内的所有改变应当包含在其范围内。

Claims (10)

1.一种管理计算机存储器的方法,所述方法包括以下步骤:
维持(101)用于将虚拟地址映射至物理地址的页表条目以及包括多个数据块的高速缓存;以及
响应于对所述虚拟地址的引用,通过所述页表条目将所述虚拟地址转换(102)为所述物理地址,并从所述物理地址取出(103)数据至所述高速缓存中,其特征在于,所述页表条目包括多个指示符,每个数据块与所述多个指示符之一相对应,并且,一旦已开始将所述数据取到所述高速缓存中(103),所述方法就包括以下另外步骤:
响应于从所述多个指示符中选择的所设置的指示符(110),将对应的数据块进行归零(104)。
2.根据权利要求1所述的方法,其中,所述页表条目包括比特掩码,并且该等指示符是所述比特掩码中包含的比特。
3.根据权利要求1所述的方法,其中,所述页表项目与包括所述多个数据块的存储页面相关联,并且,所述方法包括以下中间步骤:
接收数据块;
将所述数据块存储在所述存储页面中;以及
清除所述数据块与之相对应的指示符。
4.根据权利要求1所述的方法,其中,所述方法包括以下另外步骤:
设置,所述多个指示符中,所述数据块与之不相对应的其余指示符。
5.根据权利要求3或4所述的方法,其中,所述方法包括以下后续步骤:
重写另一数据块;以及
清除所述另一数据块与之相对应的指示符。
6.一种包括计算机可执行指令的计算机程序产品,所述计算机可执行指令用于在计算机上运行程序时执行根据权利要求1所述的方法。
7.根据权利要求6所述的计算机程序产品,其中,所述计算机程序产品包括操作系统。
8.一种设备,包括:
用于维持(101)用于将虚拟地址映射至物理地址的页表条目以及包括多个数据块的高速缓存的装置,以及用于执行以下操作的装置:
响应于对所述虚拟地址的引用,通过所述页表条目将所述虚拟地址转换(102)为所述物理地址,并从所述物理地址取出(103)数据至所述高速缓存中,其特征在于,所述页表条目包括多个指示符,每个数据块与所述多个指示符之一相对应,并且,所述设备包括用于当将所述数据取出(103)至所述高速缓存中时,以及响应于从所述多个指示符中选择的所设置的指示符(110),将对应的数据块进行归零(104)的另外装置。
9.根据权利要求8所述的设备,其中,所述设备包括以下至少一项:
中央处理单元;
存储器管理单元;以及
数据高速缓存。
10.根据权利要求8或9所述的设备,其中,所述设备还包括:转换旁视缓冲器,被配置为存储所述页表条目,其中,所述虚拟地址是通过所述转换旁视缓冲器来转换(102)的。
CN201180036120.1A 2010-08-06 2011-07-07 管理计算机存储器的方法及数据存储设备 Expired - Fee Related CN103052945B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP10305868.1 2010-08-06
EP10305868A EP2416251B1 (en) 2010-08-06 2010-08-06 A method of managing computer memory, corresponding computer program product, and data storage device therefor
PCT/EP2011/061513 WO2012016783A1 (en) 2010-08-06 2011-07-07 A method of managing computer memory, corresponding computer program product; and data storage device therefor

Publications (2)

Publication Number Publication Date
CN103052945A true CN103052945A (zh) 2013-04-17
CN103052945B CN103052945B (zh) 2015-09-16

Family

ID=43569401

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201180036120.1A Expired - Fee Related CN103052945B (zh) 2010-08-06 2011-07-07 管理计算机存储器的方法及数据存储设备

Country Status (6)

Country Link
US (1) US20130124821A1 (zh)
EP (1) EP2416251B1 (zh)
JP (1) JP5583274B2 (zh)
KR (1) KR101451045B1 (zh)
CN (1) CN103052945B (zh)
WO (1) WO2012016783A1 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104699633A (zh) * 2013-12-04 2015-06-10 瑞昱半导体股份有限公司 虚拟物理地址转换系统及其管理方法
WO2016106757A1 (zh) * 2014-12-31 2016-07-07 华为技术有限公司 一种存储数据的管理方法、存储管理器及存储系统
WO2016154789A1 (zh) * 2015-03-27 2016-10-06 华为技术有限公司 数据处理方法、内存管理单元及内存控制设备
CN108351839A (zh) * 2015-12-24 2018-07-31 英特尔公司 用来挂起/恢复安全飞地页面高速缓存中飞地的迁移的指令和逻辑
CN112486403A (zh) * 2019-09-12 2021-03-12 伊姆西Ip控股有限责任公司 管理存储对象的元数据的方法、装置和计算机程序产品
WO2024099448A1 (zh) * 2022-11-10 2024-05-16 杭州阿里云飞天信息技术有限公司 内存释放、内存恢复方法、装置、计算机设备及存储介质

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105359115A (zh) * 2013-07-01 2016-02-24 惠普发展公司,有限责任合伙企业 包含虚拟地址空间和物理地址空间之间的映射的数据结构的查找
US10884945B2 (en) * 2015-06-30 2021-01-05 International Business Machines Corporation Memory state indicator check operations
US10705745B2 (en) 2015-09-30 2020-07-07 Hewlett Packard Enterprise Development Lp Using a memory controller to mange access to a memory based on a memory initialization state indicator
CN112799977B (zh) * 2021-02-26 2022-07-19 中国人民解放军国防科技大学 计算机的缓存分区和缓存访问实时性保护方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5920895A (en) * 1995-04-24 1999-07-06 Microsoft Corporation Mapped file input/output with delayed zeroing
CN1506847A (zh) * 2002-12-12 2004-06-23 ض� 回收地址翻译数据结构的现有字段以扩展存储器访问控制
CN1702634A (zh) * 2004-05-27 2005-11-30 国际商业机器公司 便利无环境主机干预下的可分页模式虚拟环境存储管理
US20080229117A1 (en) * 2007-03-07 2008-09-18 Shin Kang G Apparatus for preventing digital piracy

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02176951A (ja) * 1988-12-28 1990-07-10 Nec Corp 仮想記憶装置
US5388244A (en) * 1992-09-17 1995-02-07 International Business Machines Corporation Controls for initial diversion of page-frame logical content as part of dynamic virtual-to-real translation of a virtual page address
GB2448907B (en) * 2007-05-02 2011-07-27 Advanced Risc Mach Ltd Reducng information leakage between processes sharing a cache
US7757035B2 (en) * 2007-06-26 2010-07-13 Intel Corporation Method for optimizing virtualization technology and memory protections using processor-extensions for page table and page directory striping

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5920895A (en) * 1995-04-24 1999-07-06 Microsoft Corporation Mapped file input/output with delayed zeroing
CN1506847A (zh) * 2002-12-12 2004-06-23 ض� 回收地址翻译数据结构的现有字段以扩展存储器访问控制
CN1702634A (zh) * 2004-05-27 2005-11-30 国际商业机器公司 便利无环境主机干预下的可分页模式虚拟环境存储管理
US20080229117A1 (en) * 2007-03-07 2008-09-18 Shin Kang G Apparatus for preventing digital piracy

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104699633A (zh) * 2013-12-04 2015-06-10 瑞昱半导体股份有限公司 虚拟物理地址转换系统及其管理方法
CN104699633B (zh) * 2013-12-04 2019-04-23 瑞昱半导体股份有限公司 虚拟物理地址转换系统及其管理方法
WO2016106757A1 (zh) * 2014-12-31 2016-07-07 华为技术有限公司 一种存储数据的管理方法、存储管理器及存储系统
WO2016154789A1 (zh) * 2015-03-27 2016-10-06 华为技术有限公司 数据处理方法、内存管理单元及内存控制设备
CN107209724A (zh) * 2015-03-27 2017-09-26 华为技术有限公司 数据处理方法、内存管理单元及内存控制设备
JP2018503903A (ja) * 2015-03-27 2018-02-08 ホアウェイ・テクノロジーズ・カンパニー・リミテッド データ処理方法、メモリ管理ユニット、およびメモリ制御デバイス
US10353824B2 (en) 2015-03-27 2019-07-16 Huawei Technologies Co., Ltd. Data processing method, memory management unit, and memory control device
CN107209724B (zh) * 2015-03-27 2020-02-14 华为技术有限公司 数据处理方法、内存管理单元及内存控制设备
CN108351839A (zh) * 2015-12-24 2018-07-31 英特尔公司 用来挂起/恢复安全飞地页面高速缓存中飞地的迁移的指令和逻辑
CN108351839B (zh) * 2015-12-24 2023-10-31 英特尔公司 挂起/恢复飞地页面高速缓存中飞地的迁移的设备和方法
CN112486403A (zh) * 2019-09-12 2021-03-12 伊姆西Ip控股有限责任公司 管理存储对象的元数据的方法、装置和计算机程序产品
WO2024099448A1 (zh) * 2022-11-10 2024-05-16 杭州阿里云飞天信息技术有限公司 内存释放、内存恢复方法、装置、计算机设备及存储介质

Also Published As

Publication number Publication date
CN103052945B (zh) 2015-09-16
EP2416251B1 (en) 2013-01-02
EP2416251A1 (en) 2012-02-08
JP5583274B2 (ja) 2014-09-03
KR101451045B1 (ko) 2014-10-15
WO2012016783A1 (en) 2012-02-09
US20130124821A1 (en) 2013-05-16
KR20130041303A (ko) 2013-04-24
JP2013544380A (ja) 2013-12-12

Similar Documents

Publication Publication Date Title
CN103052945B (zh) 管理计算机存储器的方法及数据存储设备
US9430402B2 (en) System and method for providing stealth memory
US11487675B1 (en) Collecting statistics for persistent memory
US10802987B2 (en) Computer processor employing cache memory storing backless cache lines
EP3433742B1 (en) Using multiple memory elements in an input-output memory management unit for performing virtual address to physical address translations
US8185692B2 (en) Unified cache structure that facilitates accessing translation table entries
US20080235477A1 (en) Coherent data mover
KR101414384B1 (ko) 연산 장치, 정보 처리 장치 및 연산 방법
JP2012532381A (ja) 凝集された小さいページを用いて拡張されたページサイズ
US20200019515A1 (en) Secure address translation services using a permission table
US20070130372A1 (en) I/O address translation apparatus and method for specifying a relaxed ordering for I/O accesses
US9720773B2 (en) Managing reuse information in caches
EP3276494B1 (en) Memory space management
US20160259732A1 (en) Managing reuse information for memory pages
US10810133B1 (en) Address translation and address translation memory for storage class memory
CN110196757A (zh) 虚拟机的tlb填写方法、装置及存储介质
US10013360B2 (en) Managing reuse information with multiple translation stages
US10762137B1 (en) Page table search engine
TWI648625B (zh) 管理位址獨立的頁面屬性
CN109901909B (zh) 用于虚拟化系统的方法及虚拟化系统
JP2023179708A (ja) 命令キャッシュにおけるプリフェッチの強制終了及び再開
CN103262052A (zh) 具有共享的输入/输出的安全分区
US10754789B1 (en) Address translation for storage class memory in a system that includes virtual machines
TW202248862A (zh) 管理記憶體系統的方法以及用於頁面遷移的裝置及系統
US7805572B2 (en) Cache pollution avoidance

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20150916

Termination date: 20170707

CF01 Termination of patent right due to non-payment of annual fee