[发明专利]虚拟存储器系统中段处理的方法和装置有效
申请号: | 200680018972.7 | 申请日: | 2006-04-06 |
公开(公告)号: | CN101203837A | 公开(公告)日: | 2008-06-18 |
发明(设计)人: | W·F·克鲁格;R·A·德宾;W·K·史密斯 | 申请(专利权)人: | ATI技术公司 |
主分类号: | G06F12/10 | 分类号: | G06F12/10 |
代理公司: | 永新专利商标代理有限公司 | 代理人: | 王英 |
地址: | 加拿大*** | 国省代码: | 加拿大;CA |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 虚拟 存储器 系统 中段 处理 方法 装置 | ||
技术领域
所公开的实施例涉及计算机系统中的虚拟存储系统。
背景技术
计算机系统性能的不断增长推动了加大存储器大小和速度的需求。然而,由于包括成本和结构因素的多重限制,存储器的物理大小不能是无限的。为了通过给定大小的存储器来获取可能的最佳性能,开发了多种用于管理可用存储器的系统和方法。这样的系统或者方法的一个例子为虚拟寻址,所述虚拟寻址允许计算机程序如同计算机的存储器远大于实际可用的物理随机存取存储器(RAM)那样运行。多余的数据被存储在硬盘上并且在需要时被复制到RAM中。
虚拟存储器通常远远大于物理存储器,这样可以运行整体代码加上数据大小后大于可用RAM的大小的应用程序。该虚拟存储器被称为“按需分页虚拟存储器”。当做出访问页面的请求并且该页面并非已经存在于RAM时,该页面被从硬盘复制到RAM中(“分页取入”)。该分页通常通过中央处理器(CPU)、存储器管理单元(MMU)以及操作系统(OS)内核之间的协作而自动执行。所述应用程序并不会注意到虚拟存储器,它所见到的仅仅是巨大的地址空间,在某一时刻仅有部分地址对应到物理存储器。
所述虚拟地址空间被划分为页面。CPU输出的各个虚拟地址被划分为(虚拟)页面号(多位最高位)和页面内的偏移(N位最低位)。因此各个页面包括2N字节。所述偏移不变,而所述MMU将所述虚拟页面号映射到物理页面号。该物理页面号与偏移进行重组以得到物理地址,该物理地址表示物理存储器(RAM)中的位置。
应用程序的性能在很大程度上依赖于该程序的存储器访问模式如何结合分页机制。如果访问展现出了很多的引用的局部性,即,各个访问趋向于接近前一次的访问,则该性能会优于如果访问被随机分布在程序的地址空间并且因此需要更多的分页的情况。在多任务系统中,物理存储器可以包含属于多个程序的页面。如果没有按需分页,OS可能需要为每个活动的程序及其数据的整体分配物理存储空间,该方式效率很低。
当前的计算机系统,即使是相对较小规模的个人计算机系统,均包括多个子系统和/或协处理器,其与CPU和OS共同工作以执行特定的功能。例如,图形协处理器(或者图形处理单元(GPU))、浮点协处理器、网络处理器以及其他类型的协处理器均被要求用来以尽可能快的速度处理大量数据并且需要大量的存储空间。一致的规则组有必要对访问需要这样访问的所有系统元件或者子系统的物理存储器进行管理。例如,所述OS可以指定各个子系统必须面对的页面(page)大小和页表(page table)格式以进行虚拟存储器访问。
通常的,虚拟存储器/页表转换系统的整体性能由转换后备缓冲器(TLB)中的命中率所决定。TLB是列有与各个虚拟地址页面号相关联的物理地址页面号的表格。TLB通常被用作一级(L1)高速缓存,其标记基于虚拟地址。所述虚拟地址被同时提供给TLB和高速缓存以使高速缓存访问和虚拟地址到物理地址的转换可以并行进行(“同时”完成所述转换)。如果所请求的地址没有被缓冲存储,则所述物理地址被用来对在所述高速缓存外部的存储器中的数据进行定位。这被称为高速缓存“未命中”。如果所述地址被缓冲存储,则被称为高速缓存“命中”。
虚拟存储系统中的页表为数组,该数组包括用于各个当前虚拟地址到物理地址转换的项。
页表中的页表项(PTE)通常包括物理页面号和标志位。页面的大小相同,且所述页面越小,在对特定页面的引用中高速缓存命中的可能性越小。页面还可以被结合为存储器中的连续部分,所述连续部分被称为段(fragment)。段为连续的一系列物理页面。存储器的100%分段意味着每段一个页面。随着段的平均大小的增大,或者分段的减少,所述命中率会显著提高。
访问物理存储器的虚拟存储系统需要使用增大命中率的技术。在设计这样的虚拟存储系统所面临的挑战包括虚拟存储器必须面对的存储器结构所施加的限制,所述限制包括固定的页面大小和指定的页表项格式。还需要一种能够使所增加开销(例如在大小和速度方面)最小化的技术。还需要一种技术,该技术可以在给定存储器结构所提出的所有限制中工作并且使存储器客户端可以通过虚拟存储系统透明访问物理存储器。
发明内容
根据本发明的第一方面,提供一种用于创建存储器地址分配的数据结构的方法,该方法包括:
确定段,所述段包括逻辑地址空间和物理地址空间中的一个或者多个页面,其中,物理地址空间以固定大小页面的形式而被分配;以及
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于ATI技术公司,未经ATI技术公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200680018972.7/2.html,转载请声明来源钻瓜专利网。