发明名称 | 程序共享内存的地址转换方法和装置 | ||
摘要 | 本发明提供了一种程序共享内存的地址转换方法和系统,用于将为程序分配的物理内存空间映射到虚拟地址空间,为程序分配的物理内存空间包括所述程序在物理内存空间中所占用的物理内存块和物理内存块之间的间隔块,该方法包括:根据物理内存空间确定其起始地址和其中所占用的物理内存块以及所述间隔块的顺序和大小;根据物理内存空间的起始地址确定虚拟地址空间的起始地址;将物理内存空间按序映射到虚拟地址空间的连续空间中;根据所述不同的虚拟地址空间对应所述物理内存空间的差进行地址转换。通过本发明,不论申请到的物理内存是否连续,都能在共享内存时保持地址空间转换时间复杂度为O(1),从而保证转换效率。 | ||
申请公布号 | CN103077120A | 申请公布日期 | 2013.05.01 |
申请号 | CN201210590326.5 | 申请日期 | 2012.12.31 |
申请人 | 东软集团股份有限公司 | 发明人 | 万青 |
分类号 | G06F12/02(2006.01)I | 主分类号 | G06F12/02(2006.01)I |
代理机构 | 北京鸿元知识产权代理有限公司 11327 | 代理人 | 陈英俊 |
主权项 | 一种程序共享内存的地址转换方法,用于将为程序分配的物理内存空间映射到虚拟地址空间,所述为程序分配的物理内存空间包括所述程序在所述物理内存空间中所占用的物理内存块和所述物理内存块之间的间隔块,所述方法包括:1)根据所述物理内存空间确定所述物理内存空间的起始地址和其中所占用的物理内存块以及所述间隔块的顺序和大小;2)根据所述物理内存空间的起始地址确定相应虚拟地址空间的起始地址,其中,所述虚拟地址空间具有不小于所述物理内存空间的连续空间;3)将所述物理内存空间从所述虚拟地址空间的起始地址起按序映射到所述虚拟地址空间的连续空间中,其中包括所占用的物理内存块以及所占用的物理内存块之间的间隔块的顺序和大小;其中,4)根据所述不同的虚拟地址空间对应所述物理内存空间的差进行地址转换,其中,所述物理内存空间映射到不同的虚拟地址空间的起始地址的差即为所述不同的虚拟地址空间对应所述物理内存空间的差。 | ||
地址 | 110179 辽宁省沈阳市浑南新区新秀街2号 |