[發明專利]虛擬機內存管理方法和裝置、虛擬機管理器有效
| 申請號: | 201610130620.6 | 申請日: | 2016-03-08 |
| 公開(公告)號: | CN107168766B | 公開(公告)日: | 2020-02-28 |
| 發明(設計)人: | 李凡 | 申請(專利權)人: | 深信服科技股份有限公司 |
| 主分類號: | G06F9/455 | 分類號: | G06F9/455;G06F12/0882 |
| 代理公司: | 深圳市世紀恒程知識產權代理事務所 44287 | 代理人: | 胡海國 |
| 地址: | 518000 廣東省深圳市南*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 虛擬機 內存 管理 方法 裝置 管理器 | ||
本發明涉及一種虛擬機內存管理方法和裝置、虛擬機管理器,該方法包括:發送內存氣球膨脹指令至虛擬機,內存氣球膨脹指令中攜帶需回收內存量,使虛擬機根據需回收內存量增大內存氣球體積;接收內存占據通知,獲取內存占據通知中攜帶的內存氣球體積增大時占據的虛擬內存頁標識,回收占據的虛擬內存頁標識對應的第一物理內存頁;發送內存氣球收縮指令,使虛擬機將增大后內存氣球體積縮小為零,以使被回收的第一物理內存頁對應的內存空間形成內存空洞;接收對內存空洞中虛擬內存頁的訪問請求,根據訪問請求為被請求訪問虛擬內存頁分配第二物理內存頁。避免因內存回收影響系統性能,保證內存及時歸還,提高了適用性。
技術領域
本發明涉及虛擬化技術領域,特別是涉及一種虛擬機內存管理方法和裝置、虛擬機管理器。
背景技術
在虛擬化技術領域中,通常是通過內存超配技術(內存超配,指當前物理主機上運行的若干個虛擬機的配置內存總和大于物理主機的物理內存)來實現虛擬機內存資源的按需分配。這樣一來,虛擬機部分內存不能直接訪問,而是由Hypervisor(虛擬機管理器,運行于物理主機上的實現虛擬化功能的裝置)根據虛擬機對內存的需求,為虛擬機分配和回收物理內存,以實現物理內存的按需分配。
ballooning(內存氣球)技術是虛擬化技術領域較流行的一種虛擬機內存超配技術。然而,傳統的內存氣球技術中,虛擬機操作系統會認為內存氣球中的內存空間對應的這部分物理內存是被占用了,就會判定可用內存不足而進行一些特殊操作,比如會開始使用交換分區,進而給系統性能帶來負面影響。
此外,由于傳統方法中內存的回收和歸還都是由Hypervisor來控制的,Hypervisor要動態平衡所有的虛擬機內存的回收與歸還,虛擬機數量越多,Hypervisor的控制策略就越復雜,因此無法適用于大規模部署的場景。且這種根據Hypervisor監控虛擬機內存使用情況來進行內存的歸還的情況下,由于監控具有滯后性,且內存歸還速度有限,很容易造成因虛擬機操作系統突發使用較大內存,而內存歸還不及時,而造成系統因內存不足出現卡頓或死機的情況。
發明內容
基于此,有必要針對上述問題,提供一種能夠不因內存回收而影響虛擬機操作系統的運行性能,能夠及時歸還內存、且適用性高的虛擬機內存管理方法和裝置、虛擬機管理器。
一種虛擬機內存管理方法,該方法應用于虛擬機管理器中,該方法包括:
發送內存氣球膨脹指令至虛擬機,所述內存氣球膨脹指令中攜帶需回收的內存量,使所述虛擬機根據所述需回收的內存量增大所述內存氣球的體積以占據虛擬內存頁;
接收虛擬機發送的內存占據通知,獲取內存占據通知中攜帶的內存氣球體積增大時所占據的虛擬內存頁標識,回收占據的虛擬內存頁標識對應的第一物理內存頁;
發送內存氣球收縮指令至虛擬機,使虛擬機將增大后的內存氣球的體積縮小為零,以使虛擬機中被回收的第一物理內存頁對應的內存空間形成內存空洞;
接收虛擬機發送的對內存空洞中的虛擬內存頁的訪問請求,根據所述訪問請求為被請求訪問的虛擬內存頁分配第二物理內存頁。
在其中一個實施例中,回收占據的虛擬內存頁標識對應的第一物理內存頁的步驟,包括:
將占據的虛擬內存頁標識通過位圖進行對應標記;
接收虛擬機發送的內存占據停止通知,將標記的虛擬內存頁標識對應的地址連續的第一物理內存頁進行一次性回收。
一種虛擬機內存管理方法,該方法應用于虛擬機中,該方法包括:
接收虛擬機管理器發送的內存氣球膨脹指令,內存氣球膨脹指令中攜帶需回收的內存量,根據需回收的內存量增大內存氣球的體積;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于深信服科技股份有限公司,未經深信服科技股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201610130620.6/2.html,轉載請聲明來源鉆瓜專利網。





