[發明專利]虛擬機的內存分配方法、裝置和系統在審
| 申請號: | 202010162471.8 | 申請日: | 2020-03-10 |
| 公開(公告)號: | CN113377490A | 公開(公告)日: | 2021-09-10 |
| 發明(設計)人: | 鄭豪;傅俊康;沈益斌 | 申請(專利權)人: | 阿里巴巴集團控股有限公司 |
| 主分類號: | G06F9/455 | 分類號: | G06F9/455 |
| 代理公司: | 北京博浩百睿知識產權代理有限責任公司 11134 | 代理人: | 謝湘寧;張文華 |
| 地址: | 英屬開曼群島大開*** | 國省代碼: | 暫無信息 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 虛擬機 內存 分配 方法 裝置 系統 | ||
1.一種虛擬機的內存分配方法,包括:
從宿主機的內存中劃分出預留內存,其中,運行在所述宿主機的虛擬機上的第一進程允許使用所述預留內存,運行在所述宿主機上的第二進程允許使用除所述預留內存之外的其他內存;
當在所述宿主機上創建至少一個虛擬機的情況下,從所述預留內存中劃分出預設大小的內存分配給創建的所述虛擬機。
2.根據權利要求1所述的方法,其中,在從宿主機的內存中劃分出預留內存之后,所述方法還包括:
加載內存管理器,其中,所述內存管理器用于對所述預留內存進行分配。
3.根據權利要求2所述的方法,其中,在加載內存管理器之后,所述方法還包括:
加載基于內核的虛擬機模塊,其中,所述基于內核的虛擬機模塊允許解析直接映射而不存在元數據的內存。
4.根據權利要求1所述的方法,其中,從所述預留內存中劃分出預設大小的內存分配給創建的所述虛擬機,包括:
將所述預留內存按照預設的粒度進行切片,得到多個內存片段;
將至少一個內存片段分配給所述虛擬機。
5.根據權利要求4所述的方法,其中,將至少一個內存片段分配給所述虛擬機,包括:
通過調用映射函數獲取內存分配請求,其中,所述內存分配請求包括所述虛擬機請求的內存大小;
將與所述內存分配請求中的內存大小對應的內存分配至所述虛擬機。
6.根據權利要求5所述的方法,其中,將與所述內存分配請求中的內存大小對應的內存分配至所述虛擬機,包括:
判斷是否包含連續的多個內存片段滿足所述內存大小;
如果存在連續的多個內存片段滿足所述內存大小,則將所述連續的多個內存片段分配至所述虛擬機;
如果不存在連續的多個內存片段滿足所述內存大小,則查找滿足所述內存大小的不連續的多個內存片段,并將所述不連續的多個內存片段分配至所述虛擬機,其中,所述不連續的多個內存片段的組合滿足所述內存大小。
7.根據權利要求6所述的方法,其中,將與所述內存分配請求中的內存大小對應的內存分配至所述虛擬機的步驟還包括:
如果所述預留內存中未分配的內存片段的組合仍不滿足所述內存大小,則返回報錯信息。
8.根據權利要求6所述的方法,其中,在將與所述內存分配請求中的內存大小對應的內存分配至所述虛擬機之后,所述方法還包括:
在內存中記錄所述連續的多個內存片段的第一內存分段信息,其中,所述第一內存分段信息至少包括所述連續的多個內存片段的起始內存片段標識和截止內存片段標識;或
在內存中記錄所述不連續的多個內存片段的第二內存分段信息,其中,所述第二內存分段信息至少包括所述不連續的多個內存片段中每個內存片段的標識。
9.根據權利要求1所述的方法,其中,在從所述預留內存中劃分出預設大小的內存分配給創建的所述虛擬機之后,所述方法還包括:
為分配給所述虛擬機的所述預留內存創建頁表映射。
10.根據權利要求1所述的方法,其特征在于,所述預留內存與除所述預留內存之外的其他內存之間相互隔離。
11.一種虛擬機的內存分配方法,包括:
在接收到虛擬機創建指令的情況下,判斷宿主機的內存中是否包括預留內存,其中,運行在所述宿主機的虛擬機上的第一進程允許使用所述預留內存,運行在所述宿主機上的第二進程允許使用除所述預留內存之外的其他內存;
如果所述宿主機的內存中不包括所述預留內存,則對所述宿主機的內存進行劃分得到預留內存。
12.根據權利要求11所述的方法,其中,如果所述宿主機的內存中存在預先劃分出的所述預留內存,從所述預留內存中劃分出預設大小的內存分配給創建的所述虛擬機。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于阿里巴巴集團控股有限公司,未經阿里巴巴集團控股有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010162471.8/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:覆膜支架及其制備方法
- 下一篇:一種伊伐布雷定中間體化合物IV





