[發(fā)明專利]用于管理安全內(nèi)存的方法及其系統(tǒng)、裝置和存儲(chǔ)介質(zhì)有效
| 申請(qǐng)?zhí)枺?/td> | 202010843623.0 | 申請(qǐng)日: | 2020-08-20 |
| 公開(公告)號(hào): | CN111984374B | 公開(公告)日: | 2021-07-23 |
| 發(fā)明(設(shè)計(jì))人: | 姜新 | 申請(qǐng)(專利權(quán))人: | 海光信息技術(shù)股份有限公司 |
| 主分類號(hào): | G06F9/455 | 分類號(hào): | G06F9/455 |
| 代理公司: | 北京市柳沈律師事務(wù)所 11105 | 代理人: | 萬里晴 |
| 地址: | 300384 天津市華苑產(chǎn)業(yè)區(qū)*** | 國(guó)省代碼: | 天津;12 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 用于 管理 安全 內(nèi)存 方法 及其 系統(tǒng) 裝置 存儲(chǔ) 介質(zhì) | ||
本發(fā)明提供了用于管理安全內(nèi)存的方法及其系統(tǒng)、裝置和存儲(chǔ)介質(zhì)。其中,所述方法由安全處理器執(zhí)行,所述安全處理器與主機(jī)所包括的CPU不同且分離,主機(jī)包括安全內(nèi)存,并且在主機(jī)上運(yùn)行虛擬機(jī),所述方法包括:從CPU接收包含缺頁故障信息的消息;根據(jù)所接收的消息中的缺頁故障信息來為第一內(nèi)存頁分配安全內(nèi)存;以及根據(jù)所接收的消息中的缺頁故障信息來為一個(gè)或多個(gè)第二內(nèi)存頁預(yù)分配安全內(nèi)存。
技術(shù)領(lǐng)域
本發(fā)明涉及虛擬機(jī),更具體地,涉及用于管理安全內(nèi)存的方法及其系統(tǒng)、裝置和存儲(chǔ)介質(zhì)。
背景技術(shù)
主機(jī)操作系統(tǒng)內(nèi)核中的內(nèi)存管理策略是盡可能的最大化內(nèi)存利用率,普通虛擬機(jī)的內(nèi)存由主機(jī)操作系統(tǒng)內(nèi)核管理,只對(duì)虛擬機(jī)發(fā)生嵌套缺頁故障的內(nèi)存頁分配實(shí)際物理內(nèi)存。主機(jī)操作系統(tǒng)內(nèi)核的內(nèi)存管理在中央處理單元(Center Processing Unit,CPU)內(nèi)部運(yùn)行,它不涉及與安全處理器之間的通信,是一種高效的內(nèi)存管理方法。
發(fā)明內(nèi)容
內(nèi)存隔離型的安全虛擬機(jī)的內(nèi)存由安全處理器來管理。具體地,對(duì)于支持內(nèi)存隔離型安全虛擬機(jī)的主機(jī),主機(jī)在啟動(dòng)過程中專門預(yù)留一塊內(nèi)存作為安全內(nèi)存區(qū)域(SecureMemory Region,SMR)以用于運(yùn)行安全虛擬機(jī)的進(jìn)程,而主機(jī)CPU本身無法訪問該預(yù)留內(nèi)存,其管理通過安全處理器來實(shí)施。安全處理器作為獨(dú)立于CPU之外的設(shè)備,其與主機(jī)CPU之間通信的時(shí)間開銷不容忽視。在這樣的系統(tǒng)架構(gòu)下,內(nèi)存訪問瓶頸在于主機(jī)CPU與安全處理器之間的通信。
內(nèi)存隔離型安全虛擬機(jī)在運(yùn)行過程中產(chǎn)生嵌套缺頁故障,由主機(jī)CPU將該缺頁故障信息轉(zhuǎn)發(fā)給安全處理器,安全處理器建立嵌套頁表并且為與該缺頁故障相關(guān)聯(lián)的虛擬機(jī)內(nèi)存頁分配安全內(nèi)存。若安全處理器為虛擬機(jī)所有內(nèi)存頁提前分配安全內(nèi)存,則虛擬機(jī)內(nèi)未被CPU訪問的內(nèi)存頁都無法被利用,浪費(fèi)寶貴的安全內(nèi)存,降低安全內(nèi)存的利用率;若安全處理器采用與主機(jī)CPU的內(nèi)存管理方案,即,僅為發(fā)生缺頁故障的虛擬機(jī)內(nèi)存頁分配安全內(nèi)存,則安全處理器很可能會(huì)頻繁地與主機(jī)CPU通信,增加與主機(jī)CPU的通信開銷,降低虛擬機(jī)訪問安全內(nèi)存的性能。
因此,需要一種管理安全內(nèi)存的方法,其能夠很好地平衡安全內(nèi)存訪問性能和利用率。
本發(fā)明的一方面公開了一種由安全處理器管理安全內(nèi)存的方法,其中,安全處理器與主機(jī)所包括的CPU不同且分離,主機(jī)包括安全內(nèi)存,并且在主機(jī)上運(yùn)行虛擬機(jī),所述方法包括:從CPU接收包含缺頁故障信息的消息;根據(jù)所接收的消息中的缺頁故障信息來為第一內(nèi)存頁分配安全內(nèi)存;以及根據(jù)所接收的消息中的缺頁故障信息來為一個(gè)或多個(gè)第二內(nèi)存頁預(yù)分配安全內(nèi)存。
此外,根據(jù)本公開的實(shí)施例的方法,其中,缺頁故障信息包括第一內(nèi)存頁的頁地址和尺寸。
此外,根據(jù)本公開的實(shí)施例的方法,其中,缺頁故障信息還包括一個(gè)或多個(gè)第二內(nèi)存頁的頁地址。
此外,根據(jù)本公開的實(shí)施例的方法,其中,第一內(nèi)存頁是發(fā)生缺頁故障的內(nèi)存頁,而第二內(nèi)存頁是未發(fā)生缺頁故障的內(nèi)存頁。
此外,根據(jù)本公開的實(shí)施例的方法,其中,為第一內(nèi)存頁分配的安全內(nèi)存的地址和為第二內(nèi)存頁分配的安全內(nèi)存的地址是一段連續(xù)的地址。
此外,根據(jù)本公開的實(shí)施例的方法,其中,為第一內(nèi)存頁分配的安全內(nèi)存的地址在一段連續(xù)的地址的起始、中間任一位置、或者末尾。
此外,根據(jù)本公開的實(shí)施例的方法,其中,第一內(nèi)存頁與一個(gè)或多個(gè)第二內(nèi)存頁相關(guān)聯(lián)。
此外,根據(jù)本公開的實(shí)施例的方法,其中,第一內(nèi)存頁與一個(gè)或多個(gè)第二內(nèi)存頁的頁地址是連續(xù)的。
此外,根據(jù)本公開的實(shí)施例的方法,其中,第一內(nèi)存頁與一個(gè)或多個(gè)第二內(nèi)存頁的內(nèi)容是相關(guān)聯(lián)的。
此外,根據(jù)本公開的實(shí)施例的方法,還包括根據(jù)安全內(nèi)存的空閑空間來回收已分配的安全內(nèi)存的部分。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于海光信息技術(shù)股份有限公司,未經(jīng)海光信息技術(shù)股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010843623.0/2.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。





