[發(fā)明專利]一種共享內(nèi)存管理方法及共享內(nèi)存管理設(shè)備有效
| 申請?zhí)枺?/td> | 201710268053.5 | 申請日: | 2017-04-22 |
| 公開(公告)號: | CN107145399B | 公開(公告)日: | 2021-03-02 |
| 發(fā)明(設(shè)計)人: | 張偉;李清清 | 申請(專利權(quán))人: | 華為技術(shù)有限公司 |
| 主分類號: | G06F9/54 | 分類號: | G06F9/54 |
| 代理公司: | 廣州三環(huán)專利商標代理有限公司 44202 | 代理人: | 郝傳鑫;熊永強 |
| 地址: | 518129 廣東*** | 國省代碼: | 廣東;44 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 共享 內(nèi)存 管理 方法 設(shè)備 | ||
本發(fā)明實施例公開了一種共享內(nèi)存管理方法及共享內(nèi)存管理設(shè)備,該方法應(yīng)用于報文零拷貝系統(tǒng)中,該報文零拷貝系統(tǒng)運行于操作系統(tǒng),該報文零拷貝系統(tǒng)包括至少兩個應(yīng)用程序APPs,APPs共享第一包緩存pbuf內(nèi)存,該方法包括:APPs中的任一應(yīng)用程序APP設(shè)置所述APP對所述第一pbuf內(nèi)存的讀寫操作保護屬性在當前時刻為只讀;若所述APP接收到所述操作系統(tǒng)發(fā)送的pbuf內(nèi)存誤操作通知消息,則獲取所述pbuf內(nèi)存誤操作通知消息中的pbuf內(nèi)存誤操作現(xiàn)場信息;基于所述pbuf內(nèi)存誤操作現(xiàn)場信息確定內(nèi)存誤操作現(xiàn)場。從而在APP對共享pbuf內(nèi)存進行誤操作時,準確定位產(chǎn)生誤操作的問題現(xiàn)場,保障系統(tǒng)可靠性。
技術(shù)領(lǐng)域
本發(fā)明涉及通信領(lǐng)域,具體涉及一種共享內(nèi)存管理方法及共享內(nèi)存管理設(shè)備。
背景技術(shù)
網(wǎng)絡(luò)功能虛擬化(英文:Network Function Virtualization,NFV)系統(tǒng)通過軟硬件解耦及功能抽象,使網(wǎng)絡(luò)設(shè)備功能不再依賴于專用硬件,資源可以充分靈活共享,實現(xiàn)新業(yè)務(wù)的快速開發(fā)和部署。NFV技術(shù)的基礎(chǔ)包含云計算技術(shù)和虛擬化技術(shù),通用的計算、存儲、網(wǎng)絡(luò)等硬件設(shè)備通過虛擬化技術(shù)可以分解為多種虛擬資源,以供上層各種應(yīng)用程序使用。
當在NFV系統(tǒng)上運行多個應(yīng)用程序(英文:Application,APP)時,為了實現(xiàn)在不同的應(yīng)用進程之間進行報文轉(zhuǎn)發(fā),可以采用共享內(nèi)存機制的零拷貝技術(shù),也即不同的應(yīng)用程序共享同一包緩存(英文:packet buffer,pbuf)內(nèi)存,從而可以避免在不同應(yīng)用程序之間進行拷貝操作,提升系統(tǒng)的性能。但同時使用共享內(nèi)存機制時,由于各應(yīng)用程序共享同一pbuf內(nèi)存,所以破壞了應(yīng)用程序間的隔離性,導(dǎo)致當出現(xiàn)pbuf內(nèi)存誤操作問題時,無法準確定位內(nèi)存問題現(xiàn)場。
發(fā)明內(nèi)容
本發(fā)明實施例提供了一種共享內(nèi)存管理方法及共享內(nèi)存管理設(shè)備,以在APP對共享pbuf內(nèi)存進行誤操作時,準確定位產(chǎn)生誤操作的問題現(xiàn)場。
第一方面,本發(fā)明實施例提供一種共享內(nèi)存管理方法,該方法應(yīng)用于報文零拷貝系統(tǒng)中,該報文零拷貝系統(tǒng)運行于操作系統(tǒng)上,該報文零拷貝系統(tǒng)包括至少兩個應(yīng)用程序APPs,該APPs的共享內(nèi)存第一pbuf內(nèi)存,該方法通過以下步驟進行共享內(nèi)存管理。首先APPs中的任一應(yīng)用程序APP設(shè)置該APP對第一pbuf內(nèi)存的讀寫操作保護屬性在當前時刻為只讀;然后在APP接收到操作系統(tǒng)發(fā)送的pbuf內(nèi)存誤操作通知消息時,獲取pbuf內(nèi)存誤操作通知消息中的pbuf內(nèi)存誤操作現(xiàn)場信息,該pbuf內(nèi)存誤操作通知消息用于提醒APP對第一pbuf內(nèi)存進行寫操作以及該寫操作的具體位置;最后APP基于pbuf內(nèi)存誤操作現(xiàn)場信息確定APP對第一pbuf內(nèi)存進行寫操作的內(nèi)存誤操作現(xiàn)場。從而實現(xiàn)在多個APP共享同一pbuf內(nèi)存的情況下,當該共享pbuf內(nèi)存出現(xiàn)內(nèi)存誤操作時,能快速并準確地定位產(chǎn)生該pbuf內(nèi)存誤操作的APP以及具體位置,即確定pbuf內(nèi)存誤操作現(xiàn)場,保障系統(tǒng)可靠性。
在一個可能的設(shè)計中,該操作系統(tǒng)包括Linux操作系統(tǒng),該Linux操作系統(tǒng)包括mprotect內(nèi)存管理接口,該mprotect內(nèi)存管理接口用于被調(diào)用以設(shè)置第一pbuf內(nèi)存的讀寫操作屬性;從而APP通過調(diào)用該mprotect內(nèi)存管理接口設(shè)置APP對第一pbuf內(nèi)存的讀寫操作屬性在當前時刻為只讀。從而通過調(diào)用Linux操作系統(tǒng)的mprotect內(nèi)存管理接口可以方便地在Linux操作系統(tǒng)下對第一pbuf內(nèi)存的讀寫操作屬性進行設(shè)置。
在一個可能的設(shè)計中,mprotect內(nèi)存管理接口用于被APP調(diào)用以基于一個或多個頁表設(shè)置APP對第一pbuf內(nèi)存的讀寫操作屬性。從而使得基于頁表管理的mprotect內(nèi)存讀寫操作管理機制可獨立對該第一pbuf內(nèi)存進行控制。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于華為技術(shù)有限公司,未經(jīng)華為技術(shù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710268053.5/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 上一篇:帶易維護結(jié)構(gòu)的配電箱
- 下一篇:一種免消毒壓舌板





