CN105278880A - 一种基于云计算虚拟化的内存优化装置和方法 - Google Patents
一种基于云计算虚拟化的内存优化装置和方法 Download PDFInfo
- Publication number
- CN105278880A CN105278880A CN201510677705.1A CN201510677705A CN105278880A CN 105278880 A CN105278880 A CN 105278880A CN 201510677705 A CN201510677705 A CN 201510677705A CN 105278880 A CN105278880 A CN 105278880A
- Authority
- CN
- China
- Prior art keywords
- address space
- address
- logical extension
- cloud computing
- space
- 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.)
- Pending
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种基于云计算虚拟化的内存优化装置和方法,该装置为由双层地址空间映射构成的分布式结构,包括全局扩展地址空间、逻辑扩展地址空间和地址映射组件。该方法包括步骤:获取多个不同的全局扩展地址空间地址段;将多个全局扩展地址空间地址段映射到同一段逻辑扩展地址空间上;判断***是否触发对于逻辑扩展地址空间的寻址,是,把寻址指令分别发送到多个不同的全局扩展地址空间地址段上;按照效率优先的访存协议,完成数据读写操作。该装置和方法,能够有效地提升云计算虚拟化中涉及的内存优化效率。
Description
技术领域
本发明涉及云计算虚拟化技术领域,特别涉及一种基于云计算虚拟化的内存优化装置和方法。
背景技术
云计算的兴起正在逐渐地改变整个计算机产业界和学术界。虚拟化技术和云计算平台的结合带来了全新的资源整合和使用模式。云计算的目标是将计算资源、存储资源、软件开发、***测试、***维护和各种丰富的应用服务等IT资源以服务的方式通过互联网交付给用户。虚拟化实现了IT资源的逻辑抽象和统一表示,在大规模数据中心管理和解决方案交付方面发挥着巨大的作用,是支撑云计算伟大构想的最重要的技术基石。基于虚拟化技术的资源按需分配与调度可以提高云平台资源的利用率,提升云服务的服务质量,并降低云用户的总体拥有成本。但是,物理服务器的资源边界限制了资源的全局优化能力,尤其是内存资源的大小,总是容易成为物理服务器资源的瓶颈,限制云计算的大规模发展。
而现有的基于云计算虚拟化的部分内存优化技术,只能通过修改虚拟化环境中的单个虚拟机的内核,使用气球驱动技术,半自动的实现对于虚拟机内存的调节。随着虚拟机操作***内核越来越复杂化,半自动的修改内核的方式非常耗费时间精力,效率较低。
发明内容
本发明提供一种基于云计算虚拟化的内存优化装置和方法,以解决上述问题。
本发明实施例提供了一种基于云计算虚拟化的内存优化装置,该装置为由双层地址空间映射构成的分布式结构,包括全局扩展地址空间、逻辑扩展地址空间和地址映射组件;
全局扩展地址空间,用于管理所有映射到本地扩展地址空间的多个远程空闲内存;
逻辑扩展地址空间,用于扩展本地物理地址空间;
地址映射组件,用于进行所述全局扩展地址空间和所述逻辑扩展地址空间之间的双向映射,按照效率优先的访存协议支持远程的数据存取和数据同步。
其中,全局扩展地址空间设置有如下多个操作接口:
添加接口,用于添加一段远程内存到所述全局扩展地址空间,返回该内存段在全局扩展地址空间中的起始地址;
删除接口,用于删除一段全局扩展地址空间;
映射接口,用于映射一段全局扩展地址空间到逻辑扩展地址空间,返回其在逻辑扩展地址空间中的起始地址;
释放接口,用于释放从逻辑扩展地址空间中起始地址开始的一段空间映射。
其中,逻辑扩展地址空间位于虚拟机监控器中,包括一个从零开始的独立地址空间和一个标识其空间的全局唯一标识符。
其中,虚拟机监控器用于控制逻辑扩展地址空间的申请和回收。
本发明还提供一种基于云计算虚拟化的内存优化方法,包括步骤:
步骤A,获取多个不同的全局扩展地址空间地址段;
步骤B,将所述多个全局扩展地址空间地址段映射到同一段逻辑扩展地址空间上;
步骤C,判断***是否触发对于所述逻辑扩展地址空间的寻址,是,进入步骤D;
步骤D,把寻址指令分别发送到多个不同的全局扩展地址空间地址段上;
步骤E,按照效率优先的访存协议,完成数据读写操作。
本发明实施例提供了一种基于云计算虚拟化的内存优化装置和方法,构建了从全局扩展地址空间到逻辑扩展地址空间的多对一的映射机制,全局扩展地址空间包括多个被本地虚拟机监控器所使用的远程内存空间,通过地址映射组件维护全局扩展地址空间和逻辑扩展地址空间之间的映射关系,并按照效率优先的访存协议进行数据读写,通过构建由逻辑地址空间和全局扩展地址空间构成的双层地址空间映射机制,来构建跨物理服务器资源边界的高效、可靠的内存资源抽象,达到提高整个云计算平台虚拟化内存资源使用效率的目的,这样相比于现有技术中仅能修改虚拟化环境中的单个虚拟机的内核、使用气球驱动技术半自动的实现内存调节的方式,本发明提供的技术方案在合理的映射机制和效率优先的访存协议控制下,即可实现全自动内存调节,无需修改虚拟机内核,因此内存优化效率更高,且调控的内存资源范围更丰富,使得内存的优化程度也更高。
附图说明
图1为双层地址空间构造图;
图2为本发明基于云计算虚拟化的内存优化方法一个实施例流程图;
图3为本发明映射过程及访存的路径图。
具体实施方式
本发明实施例提供了一种基于云计算虚拟化的内存优化装置和方法。
本发明的内存优化装置和方法提供了一种云计算虚拟化环境下的内存优化技术,该技术主要是构建一个由双层地址空间映射构成的分布式内存池。双层地址空间的构建兼顾了效率和可靠性,提供最大程度的内存资源抽象。
参见图1所示,图1为双层地址空间构造图。该装置为由双层地址空间映射构成的分布式结构,由两个逻辑部分和一个映射组件构成,具体包括全局扩展地址空间、逻辑扩展地址空间和地址映射组件。
其中,全局扩展地址空间用于管理所有映射到本地扩展地址空间的多个远程空闲内存,逻辑扩展地址空间则用于扩展本地物理地址空间。最终,由映射组件根据一定的规则完成从全局扩展地址空间到逻辑扩展地址空间的映射,并按照效率优先的访存协议支持远程的数据存取和数据同步。
全局扩展地址空间用来管理所有被本地虚拟机监控器所使用的远程内存空间,由【服务器ID,地址段】来标示其地址构成。每个远程内存服务器可以包含多个地址段,这样的设计可以根据空闲内存变化动态地调整可共享的地址空间。
为了支持远程空间的退出,地址映射组件实现了数据同步方法来迁移数据、保证数据的有效性。
远程服务器的空闲内存通过地址映射组件被映射到逻辑扩展空间,通过多个服务器空间映射到一个空间的方法可以实现数据的冗余存储,提高远程内存的可靠性。
该装置引入如下接口来操作全局扩展地址空间:
(1)添加接口:Gsm_addr_space_add(server_id,start_addr,size)(服务器ID,起始地址,空间大小),用于添加一段远程内存到全局扩展地址空间,返回该内存段在地址空间中的起始地址。
(2)删除接口:Gsm_addr_space_del(server_id,start_addr,size)(服务器ID,起始地址,空间大小),用于删除一段全局地址空间。
(3)映射接口:Gsm_addr_space_map(start_addr,size)(起始地址,空间大小),用于映射一段全局地址空间到逻辑扩展地址空间,返回其在逻辑扩展地址空间中的起始地址。
(4)释放接口:Gsm_addr_space_unmap(start_addr,size)(起始地址,空间大小),用于释放从逻辑扩展地址空间中start_addr开始size大小的空间映射。
逻辑扩展地址空间,位于虚拟机监控器中,由一个从零开始的独立地址空间和一个标识其空间的全局唯一标识符构成。
优选地,作为一种可实施方式,通过3地址,4对标识符来对空间进行寻址,并在地址映射组件的翻译下最终确定要访问的远程内存页面。
逻辑扩展地址空间的申请和回收都是由虚拟机监控器来控制,这样可以提供更为弹性的空间使用模式,比如既可以用作RAMDisk,也可以用作Swap(交换)设备。
地址映射组件,其核心功能是提供全局扩展地址空间和逻辑扩展地址空间之间的双向映射,通过维护相关的映射关系来提供高效可靠的远程内存存储抽象。
地址映射组件支持两类基本的数据操作:数据存取和数据同步。其中,数据存取是基本的远程内存操作,实现对于远程数据的读取和写入。数据同步操作为远程内存服务的退出提供支持,通过从退出服务器到其它备份服务器同步数据可以实现数据存储的高可靠性。
本发明还提供一种基于云计算虚拟化的内存优化方法,参见图2所示,包括步骤:
步骤S110,获取多个不同的全局扩展地址空间地址段;
步骤S111,将多个全局扩展地址空间地址段映射到同一段逻辑扩展地址空间上;
步骤S112,判断***是否触发对于逻辑扩展地址空间的寻址,是,进入步骤S113;
步骤S113,把寻址指令分别发送到多个不同的全局扩展地址空间地址段上;
步骤S114,按照效率优先的访存协议,完成数据读写操作。
例如,参见图3所示,使用两个内存服务器和本地磁盘一起构成了三个不同的全局扩展地址空间地址段,它们被映射到同一段逻辑扩展地址空间上。当***触发对于逻辑扩展地址空间的寻址时,地址映射组件会把寻址分别发送到三段地址段上,并最终驱动相关的服务器完成数据读写操作。
现有技术中,通过气球驱动技术进行内存优化的缺点是:虚拟机操作***内核越来越复杂化,修改内核非常耗费时间精力;气球驱动技术内存优化程度有限,通常只能优化10%~15%;修改过内核的操作***的虚拟机,不再是原本***,使用过程容易产生其它无法预料的问题。
本发明提供的该装置和方法,主要针对服务器虚拟化中的内存优化,通过全局扩展地址空间到逻辑扩展地址空间的多对一映射机制和效率优先的访存协议来达到高效可靠的目的,使虚拟机被分配到的内存更加灵活高效,节约了服务器本身硬件内存资源的目的。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (5)
1.一种基于云计算虚拟化的内存优化装置,其特征在于,该装置为由双层地址空间映射构成的分布式结构,包括全局扩展地址空间、逻辑扩展地址空间和地址映射组件;
所述全局扩展地址空间,用于管理所有映射到本地扩展地址空间的多个远程空闲内存;
所述逻辑扩展地址空间,用于扩展本地物理地址空间;
所述地址映射组件,用于进行所述全局扩展地址空间和所述逻辑扩展地址空间之间的双向映射,按照效率优先的访存协议支持远程的数据存取和数据同步。
2.根据权利要求1所述的基于云计算虚拟化的内存优化装置,其特征在于,所述全局扩展地址空间设置有如下多个操作接口:
添加接口,用于添加一段远程内存到所述全局扩展地址空间,返回该内存段在所述全局扩展地址空间中的起始地址;
删除接口,用于删除一段所述全局扩展地址空间;
映射接口,用于映射一段所述全局扩展地址空间到所述逻辑扩展地址空间,返回其在所述逻辑扩展地址空间中的起始地址;
释放接口,用于释放从逻辑扩展地址空间中起始地址开始的一段空间映射。
3.根据权利要求1所述的基于云计算虚拟化的内存优化装置,其特征在于,所述逻辑扩展地址空间位于虚拟机监控器中,包括一个从零开始的独立地址空间和一个标识其空间的全局唯一标识符。
4.根据权利要求3所述的基于云计算虚拟化的内存优化装置,其特征在于,所述虚拟机监控器用于控制所述逻辑扩展地址空间的申请和回收。
5.一种基于云计算虚拟化的内存优化方法,其特征在于,包括步骤:
步骤A,获取多个不同的全局扩展地址空间地址段;
步骤B,将所述多个全局扩展地址空间地址段映射到同一段逻辑扩展地址空间上;
步骤C,判断***是否触发对于所述逻辑扩展地址空间的寻址,是,进入步骤D;
步骤D,把寻址指令分别发送到多个不同的全局扩展地址空间地址段上;
步骤E,按照效率优先的访存协议,完成数据读写操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510677705.1A CN105278880A (zh) | 2015-10-19 | 2015-10-19 | 一种基于云计算虚拟化的内存优化装置和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510677705.1A CN105278880A (zh) | 2015-10-19 | 2015-10-19 | 一种基于云计算虚拟化的内存优化装置和方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105278880A true CN105278880A (zh) | 2016-01-27 |
Family
ID=55147967
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510677705.1A Pending CN105278880A (zh) | 2015-10-19 | 2015-10-19 | 一种基于云计算虚拟化的内存优化装置和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105278880A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106445691A (zh) * | 2016-11-25 | 2017-02-22 | 郑州云海信息技术有限公司 | 一种面向虚拟化云计算平台的内存优化的方法 |
CN106502762A (zh) * | 2016-10-20 | 2017-03-15 | 浪潮电子信息产业股份有限公司 | 一种基于虚拟化技术的内存自动优化方法 |
CN109002347A (zh) * | 2018-07-26 | 2018-12-14 | 郑州云海信息技术有限公司 | 一种虚拟机内存分配方法、装置及*** |
CN112035056A (zh) * | 2020-07-09 | 2020-12-04 | 苏州浪潮智能科技有限公司 | 一种基于多计算单元的并行ram访问架构及访问方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6684300B1 (en) * | 2000-12-22 | 2004-01-27 | Nortel Networks Limited | Extended double word accesses |
CN101794263A (zh) * | 2010-02-03 | 2010-08-04 | 深圳市海思半导体有限公司 | 存储器的访问方法和访问控制器 |
CN102622304A (zh) * | 2012-02-07 | 2012-08-01 | 中山爱科数字科技股份有限公司 | 一种双层地址空间映射的内存优化方法 |
CN104102460A (zh) * | 2014-07-23 | 2014-10-15 | 浪潮(北京)电子信息产业有限公司 | 一种基于云计算的内存管理方法及装置 |
-
2015
- 2015-10-19 CN CN201510677705.1A patent/CN105278880A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6684300B1 (en) * | 2000-12-22 | 2004-01-27 | Nortel Networks Limited | Extended double word accesses |
CN101794263A (zh) * | 2010-02-03 | 2010-08-04 | 深圳市海思半导体有限公司 | 存储器的访问方法和访问控制器 |
CN102622304A (zh) * | 2012-02-07 | 2012-08-01 | 中山爱科数字科技股份有限公司 | 一种双层地址空间映射的内存优化方法 |
CN104102460A (zh) * | 2014-07-23 | 2014-10-15 | 浪潮(北京)电子信息产业有限公司 | 一种基于云计算的内存管理方法及装置 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106502762A (zh) * | 2016-10-20 | 2017-03-15 | 浪潮电子信息产业股份有限公司 | 一种基于虚拟化技术的内存自动优化方法 |
CN106445691A (zh) * | 2016-11-25 | 2017-02-22 | 郑州云海信息技术有限公司 | 一种面向虚拟化云计算平台的内存优化的方法 |
CN109002347A (zh) * | 2018-07-26 | 2018-12-14 | 郑州云海信息技术有限公司 | 一种虚拟机内存分配方法、装置及*** |
CN109002347B (zh) * | 2018-07-26 | 2022-02-18 | 郑州云海信息技术有限公司 | 一种虚拟机内存分配方法、装置及*** |
CN112035056A (zh) * | 2020-07-09 | 2020-12-04 | 苏州浪潮智能科技有限公司 | 一种基于多计算单元的并行ram访问架构及访问方法 |
CN112035056B (zh) * | 2020-07-09 | 2022-11-29 | 苏州浪潮智能科技有限公司 | 一种基于多计算单元的并行ram访问设备及访问方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10877793B2 (en) | Extending the base address register by modifying the number of read-only bits associated with a device to be presented to a guest operating system | |
US9851994B2 (en) | Dynamically deployed virtual machine | |
JP4768083B2 (ja) | ゲスト構成の1つ又は複数のゲスト・プロセッサのトポロジを発見するための方法 | |
CN102473139B (zh) | 包括用于i/o和计算卸载的多层次地址转换的i/o存储器管理单元 | |
CN103064632B (zh) | 固态硬盘及其虚拟化方法、*** | |
TW201841118A (zh) | 採用映射記憶體提供多重命名空間的方法及設備 | |
KR20130070501A (ko) | 가상 시스템에서 메모리 중복 제거를 위한 기술 | |
US10268595B1 (en) | Emulating page modification logging for a nested hypervisor | |
CN105278880A (zh) | 一种基于云计算虚拟化的内存优化装置和方法 | |
CN104951239B (zh) | 高速缓存驱动器、主机总线适配器及其使用的方法 | |
US20190266000A1 (en) | Guest intermediate address tagging for guest applications | |
CN103065084A (zh) | 在虚拟机外部机进行的windows隐藏进程检测方法 | |
CN104102460A (zh) | 一种基于云计算的内存管理方法及装置 | |
US11734430B2 (en) | Configuration of a memory controller for copy-on-write with a resource controller | |
CN105556473A (zh) | 一种i/o任务处理的方法、设备和*** | |
WO2019106491A1 (en) | Dynamic address translation for a virtual machine | |
US20180157605A1 (en) | Configuration of a memory controller for copy-on-write | |
CN106445691A (zh) | 一种面向虚拟化云计算平台的内存优化的方法 | |
CN101808141B (zh) | 一种基于虚拟化平台的宿主客户机协同换页的方法 | |
CN108228333A (zh) | 一种多核***的核间资源隔离方法 | |
US10789174B2 (en) | Guest intermediate address translation for virtual machines | |
US11900142B2 (en) | Improving memory access handling for nested virtual machines | |
US11243801B2 (en) | Transparent huge pages support for encrypted virtual machines | |
CN107861795A (zh) | 模拟物理tcm芯片的方法、***、装置及可读存储介质 | |
US20160026567A1 (en) | Direct memory access method, system and host module for virtual machine |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160127 |