[發(fā)明專利]國產(chǎn)眾核處理器計算核內(nèi)存壓縮方法有效
| 申請?zhí)枺?/td> | 201910910081.1 | 申請日: | 2019-09-25 |
| 公開(公告)號: | CN112559242B | 公開(公告)日: | 2022-07-12 |
| 發(fā)明(設計)人: | 鄒通;黃高陽;王星焱;林海南;劉松;鄭巖 | 申請(專利權)人: | 無錫江南計算技術研究所 |
| 主分類號: | G06F11/14 | 分類號: | G06F11/14;G06F9/4401;G06F12/02 |
| 代理公司: | 蘇州創(chuàng)元專利商標事務所有限公司 32103 | 代理人: | 王健 |
| 地址: | 214083 江蘇*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 國產(chǎn) 處理器 計算 內(nèi)存 壓縮 方法 | ||
1.一種國產(chǎn)眾核處理器計算核內(nèi)存壓縮方法,其特征在于:包括以下步驟:
S1、進行進程保留時,操作系統(tǒng)進程保留接口先調用內(nèi)核級的壓縮接口對進程當前使用的內(nèi)存映像進行壓縮,再將壓縮后的內(nèi)存映像數(shù)據(jù)寫入檢查點文件中;
S2、在進程恢復時,操作系統(tǒng)進程恢復接口先調用內(nèi)核級的解壓縮接口對檢查點文件中讀出的內(nèi)存映像數(shù)據(jù)進行解壓縮,再將解壓縮后的內(nèi)存映像數(shù)據(jù)恢復到進程的內(nèi)存空間中;
所述操作系統(tǒng)進程保留接口調用內(nèi)核級的壓縮接口和所述操作系統(tǒng)進程恢復接口在調用內(nèi)核級的解壓縮接口前,包括以下步驟:
Sa.操作系統(tǒng)內(nèi)核啟動時,通過initcall機制調用一個初始化函數(shù),所述初始化函數(shù)在國產(chǎn)超級計算機中的每個CPU上創(chuàng)建一個wait_head函數(shù)、一個Linux內(nèi)核通用隊列和一個專用內(nèi)核線程;
Sb. 啟動步驟Sa中創(chuàng)建的專用內(nèi)核線程,通過調用wait_event函數(shù)將所述專用內(nèi)核線程加入步驟Sa中當前CPU上創(chuàng)建好的等待隊列中,并讓所述專用內(nèi)核線程與kfifo相關聯(lián);如果所述專用內(nèi)核線程對應的kfifo為空,則wait_event函數(shù)使所述專用內(nèi)核線程處于睡眠狀態(tài)。
2.根據(jù)權利要求1所述的國產(chǎn)眾核處理器計算核內(nèi)存壓縮方法,其特征在于:所述操作系統(tǒng)進程保留接口在調用內(nèi)核級的壓縮接口時,包括以下步驟:
a.將進程保留時形成的內(nèi)存映像進行分塊,每個數(shù)據(jù)塊生成一個待處理數(shù)據(jù)信息頭,所述待處理數(shù)據(jù)信息頭中寫入當前數(shù)據(jù)塊需進行的處理方式、數(shù)據(jù)塊起始內(nèi)存地址、數(shù)據(jù)長度信息;
b.將步驟a中生成的待處理數(shù)據(jù)信息頭存入所述kfifo中,所述kfifo由空變?yōu)榉强?,通過調用wake_up函數(shù)將當前CPU上的處于睡眠狀態(tài)的專用內(nèi)核線程喚醒;
c.步驟b中的專用內(nèi)核線程被喚醒之后,讀出所述kfifo中的所述待處理數(shù)據(jù)信息頭,根據(jù)待處理數(shù)據(jù)信息頭可知,當前數(shù)據(jù)塊需進行壓縮操作;根據(jù)待處理數(shù)據(jù)信息頭中的數(shù)據(jù)塊起始內(nèi)存地址及數(shù)據(jù)長度信息,調用lz4算法的數(shù)據(jù)壓縮接口對數(shù)據(jù)塊進行壓縮處理;
d. 將步驟c中壓縮處理后的內(nèi)存映像數(shù)據(jù)及數(shù)據(jù)長度信息寫入檢查點文件中;
e. 判斷kfifo是否為空,如果為空,調用wait_event函數(shù)使專用內(nèi)核線程進入睡眠;如果非空,跳轉至步驟c。
3.根據(jù)權利要求1所述的國產(chǎn)眾核處理器計算核內(nèi)存壓縮方法,其特征在于:所述操作系統(tǒng)進程恢復接口在調用內(nèi)核級的解壓縮接口時,包括以下步驟:
a. 將待進程恢復時形成的內(nèi)存映像進行分塊,每個數(shù)據(jù)塊生成一個待處理數(shù)據(jù)信息頭,所述待處理數(shù)據(jù)信息頭中寫入當前數(shù)據(jù)塊需進行的處理方式、數(shù)據(jù)塊起始內(nèi)存地址、數(shù)據(jù)長度信息;
b. 從檢查點文件中將壓縮后的內(nèi)存映像數(shù)據(jù)及其數(shù)據(jù)長度信息讀出,將內(nèi)存映像數(shù)據(jù)及其數(shù)據(jù)長度信息添加到步驟a生成的待處理數(shù)據(jù)信息頭中;將生成的待處理數(shù)據(jù)信息頭存入所述kfifo中,所述kfifo由空變?yōu)榉强?,通過調用wake_up函數(shù)將當前CPU上的處于睡眠狀態(tài)的專用內(nèi)核線程喚醒;
c.步驟b中的專用內(nèi)核線程被喚醒之后,讀出kfifo中的待處理數(shù)據(jù)信息頭,根據(jù)待處理數(shù)據(jù)信息頭可知,當前數(shù)據(jù)塊需進行解壓縮操作;根據(jù)待處理數(shù)據(jù)信息頭中的數(shù)據(jù)塊起始內(nèi)存地址及數(shù)據(jù)長度信息,調用lz4算法的數(shù)據(jù)解壓縮接口對數(shù)據(jù)塊進行解壓縮處理;
d. 將步驟c中解壓縮處理后的內(nèi)存映像數(shù)據(jù)恢復到待恢復進程對應的內(nèi)存地址中;
e. 判斷kfifo是否為空,如果為空,調用wait_event函數(shù)使專用內(nèi)核線程進入睡眠;如果非空,跳轉至步驟c。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于無錫江南計算技術研究所,未經(jīng)無錫江南計算技術研究所許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910910081.1/1.html,轉載請聲明來源鉆瓜專利網(wǎng)。
- 一種刀片服務器的國產(chǎn)處理器類型的識別檢測方法
- 國產(chǎn)化涂料在燃氣輪機中溫部件防護過程中的應用
- 一種基于國產(chǎn)密碼算法的數(shù)據(jù)加密存儲的方法
- 基于國產(chǎn)64位ARM處理器的服務器及安全設計方法
- 一種電力企業(yè)信息系統(tǒng)中間件、數(shù)據(jù)庫的國產(chǎn)化遷移方法
- 國產(chǎn)化設備運維數(shù)據(jù)的智能采集方法及系統(tǒng)
- 國產(chǎn)化安全局域網(wǎng)絡設備
- 一種用于國產(chǎn)自主計算機安全管控系統(tǒng)的密碼卡
- 一種全國產(chǎn)化SSD存儲盤
- 一種國產(chǎn)平臺人工智能環(huán)境適配方法及兼容性測試方法





