[發明專利]一種缺頁異常的處理方法、裝置及系統有效
| 申請號: | 201210087940.X | 申請日: | 2012-03-29 |
| 公開(公告)號: | CN102662864A | 公開(公告)日: | 2012-09-12 |
| 發明(設計)人: | 林志南 | 申請(專利權)人: | 華為技術有限公司 |
| 主分類號: | G06F12/08 | 分類號: | G06F12/08 |
| 代理公司: | 深圳市深佳知識產權代理事務所(普通合伙) 44285 | 代理人: | 唐華明 |
| 地址: | 518129 廣東*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 異常 處理 方法 裝置 系統 | ||
1.一種缺頁異常的處理方法,其特征在于,包括:
當同一進程在同一虛擬內存區VMA中連續發生缺頁異常的次數達到預置閾值時,獲取第一數值和第二數值,所述第一數值為發生缺頁異常的次數達到預置閾值后,每次發生缺頁異常時,建立VMA中虛擬地址頁與物理頁幀關聯映射的個數,所述第二數值為所述同一進程所在的VMA中未映射物理頁幀的虛擬地址頁的個數;
比較所述獲取的第一數值和所述第二數值的大小;
當所述第二數值大于等于所述第一數值時,每次發生缺頁異常時,按照關聯映射的方向,建立連續的第一數值個虛擬地址頁與物理頁幀的關聯映射,以使所述同一進程快速讀取物理內存;
當所述第二數值小于第一數值時,每次缺頁異常時,按照關聯映射的方向,建立連續的第二數值個虛擬地址頁與物理頁幀的關聯映射,以使所述同一進程快速讀取物理內存。
2.根據權利要求1所述的方法,其特征在于,所述獲取第二數值之前,還包括:
獲取所述VMA中沒有映射物理地址的虛擬內存大小;
根據所述沒有映射物理地址的虛擬內存大小和所述虛擬地址頁的大小,計算所述第二數值。
3.根據權利要求1或2所述的方法,其特征在于,所述按照關聯映射的方向,建立連續的第一數值個或第二數值個虛擬地址頁與物理頁幀的關聯映射,具體包括:
獲取所述關聯映射的方向,所述關聯映射的方向為從發生缺頁異常的虛擬地址頁對應的物理頁幀處開始向上、向下或同時向上和向下;
從發生缺頁異常的虛擬地址頁對應的物理頁幀處開始,按照向上、向下或同時向上和向下的方向,建立連續的第一數值個或第二數值個虛擬地址頁與物理頁幀的關聯映射。
4.根據權利要求1或2所述的方法,其特征在于,所述獲取所述關聯映射的方向之前,還包括:
統計所述同一進程在所述VMA中發生第預置閾值次缺頁異常之前,發生的缺頁異常的虛擬地址連續遞增的次數和連續遞減的次數;
計算所述連續遞增次數與連續遞減次數的差值;根據所述連續遞增次數與連續遞減次數的差值,確定所述關聯映射的方向。
5.一種缺頁異常的處理方法,其特征在于,包括:
當同一進程在同一VMA中連續發生缺頁異常的次數達到預置閾值時,獲取第三數值,所述第三數值為所述VMA中未與物理頁幀關聯映射的虛擬地址頁的個數;
按照關聯映射的方向,建立連續的第三數值個虛擬地址頁與物理頁幀的關聯映射。
6.根據權利要求5所述的方法,其特征在于,所述獲取第三數值,具體包括:
獲取所述VMA中沒有映射物理地址的虛擬內存大小;
根據所述沒有映射物理地址的虛擬內存大小和所述虛擬地址頁的大小,計算所述第二數值。
7.根據權利要求5或6所述的方法,其特征在于,所述按照關聯映射的方向,建立連續的第三數值個虛擬地址頁與物理頁幀的關聯映射,具體包括:
獲取所述關聯映射的方向,所述關聯映射的方向為從發生缺頁異常的虛擬地址頁對應的物理頁幀處開始向上、向下或同時向上和向下;
從發生缺頁異常的虛擬地址頁對應的物理頁幀處開始,按照向上、向下或同時向上和向下的方向,建立連續的第三數值個虛擬地址頁與物理頁幀的關聯映射。
8.根據權利要求7所述的方法,其特征在于,所述獲取所述關聯映射的方向之前,還包括:
統計所述同一進程在所述VMA中發生第預置閾值次缺頁異常之前,發生的缺頁異常的虛擬地址連續遞增的次數和連續遞減的次數;
計算所述連續遞增次數與連續遞減次數的差值;根據所述連續遞增次數與連續遞減次數的差值,確定所述關聯映射的方向。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于華為技術有限公司,未經華為技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210087940.X/1.html,轉載請聲明來源鉆瓜專利網。





