前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >计算虚拟化剖析2-内存复用技术

计算虚拟化剖析2-内存复用技术

作者头像
ICT售前新说
发布2019-08-12 15:11:38
2.4K0
发布2019-08-12 15:11:38
举报
文章被收录于专栏:ICT售前新说

在计算虚拟化大致可分为CPU虚拟化、内存虚拟化、I/O虚拟化,本期我们来聊聊内存虚拟化技术。在物理服务器中可以根据不同的计算需求配置不同容量的内存,如最常见的是配置256G以及512G。在虚拟化环境中这些内存会分配给不同的虚机使用。

说到内存有3个术语:主机物理内存、虚机物理内存、虚机虚拟内存在正式讲解内存复用技术之前我们先来看看以上3类内存的区别与联系。

1)主机物理内存:说白了是实实在在存放数据的,不管有多少虚机其数据都是要落地在主机物理内存空间之上,如一台服务器配置512G内存容量就是指的是主机物理内存。

2)虚机物理内存:在创建虚机的时候给虚机分配的内存,以后这台虚机所产生的内存数据会落地到给其分配的虚机物理内存空间之上,最终虚机物理内存还是要落地主机物理内存上,主机物理内存可以按需划分多个虚机物理内存。

3)虚机虚拟内存:虚机上的guest os上有很多应用程序,每个应用程序都会有一个应用程序的内存空间,站在应用程序中不管虚机的物理内存有多大,应用程序会默认有无穷大的应用程序的内存空间该空间叫虚机虚拟内存。把应用程序放到虚机虚拟内存上去写,而正在应用数据存的时候会把数据扔给guest os,guest os再把应用程序上的空间映射到虚机的物理内存上,最终也会落地到预好的主机物理内存中。

如给虚机1分配40G物理内存、给虚机2分配80G物理内存、给虚机3分配60G物理内存,这些虚机的物理内存都是要映射到同一主机的物理内存之上的,同时这些虚机在主机物理内存上拿走的物理内存空间并不连续。有了以上基础铺垫我们再来看看内存复用技术。

常见的内存复用技术有 3类:内存气泡、内存置换、以及内存共享和写时复制。3中内存复用技术灵活搭配,运用好了可以把物理内存空间提升到150%。

(1)内存置换:是指当物理内存不够的情况下,把存储资源的一部分拿来当内存资源使用,即把物理磁盘拿出来使用,这样乍一看内存可以变得很大,但是同时还要保证虚机对内存数据的访问无差别和无感知。内存中有访问比较低的冷内存数据,把冷数据内存空间暂时移到存储磁盘上去,当虚机使用该部分冷数据的时候再从存储磁盘上调配回来,这样通过把访问频率比较高的数据保留在物理内存中,访问频率比较低的数据移动到磁盘上去,可以节约出一部分内存空间,节约出的这部分内存可以分配给更多的虚机使用,通过这种内存置换的方式提高间接内存容量

(2)内存气泡:在主机物理内存中有不同的区域分配给不同的虚机,但是这些虚机不会把管理员分配的虚机物理内存全部用掉,虚拟化OS把闲置的内存拿出来形成一个大块的内存,给更多的虚机使用,从而提升了内存的利用率,如果虚机需要既定的内存了,此时在别的内存空间里(找气泡)再挤,若实在找不到,可采用内存置换技术可解决虚机存储空间的问题。

(3)内存共享、写时复制:纵使把物理内存中的某些区域分别映射给了不同的虚机,但是分配给虚机的内存都没有用满,此时虚机的内存可以指向同一个未用的内存空间,这样多个虚机都可以把数据指到未用的内存空间中去。现实中有可能多个虚机的内容是相同的,那读出来的结果也相同,可以把内容一样的数据用同一块内存空间来存取,虚拟化OS可以让虚机无感知即3个虚机在公有一个物理内存,通过该方式可节约主机部分物理内存。若突然有一个虚机要对内容进行改写,就要为该改写的VM的重新开辟一个内存空间-即写时复制。故虚机内容一样的情况下可以共享内存空间,若不一样就要单独开辟出来一个空间写到别的地方,并修改映射。

以上3种内存复用技术均可被虚拟化OS灵活使用,大多数情况下内存气泡和内存共享更容易共存,因为均在用主机物理内存,而内存置换会增加成本(存在搬移开销)。3中内存复用技术用好了可以提升50%的物理内存空间。

以上是我对内存复用技术的一些理解,希望可以给各位兄弟带来帮助,温馨提示:如果您觉得本文对您有用,请在右下角点击“在看”,并欢迎关注我的微信公众号:“ICT售前新说”并欢迎大家转发。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-08-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 ICT售前新说 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档