[發(fā)明專利]一種緩存分配方法及裝置有效
| 申請(qǐng)?zhí)枺?/td> | 201310710756.0 | 申請(qǐng)日: | 2013-12-19 |
| 公開(公告)號(hào): | CN103699497B | 公開(公告)日: | 2017-01-04 |
| 發(fā)明(設(shè)計(jì))人: | 趙劍川;賈克明;劉福元 | 申請(qǐng)(專利權(quán))人: | 京信通信系統(tǒng)(中國(guó))有限公司 |
| 主分類號(hào): | G06F12/0802 | 分類號(hào): | G06F12/0802 |
| 代理公司: | 北京同達(dá)信恒知識(shí)產(chǎn)權(quán)代理有限公司11291 | 代理人: | 黃志華 |
| 地址: | 510663 廣*** | 國(guó)省代碼: | 廣東;44 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 緩存 分配 方法 裝置 | ||
1.一種緩存分配方法,其特征在于,包括:
從不同預(yù)設(shè)長(zhǎng)度中,確定長(zhǎng)度不小于需要分配的緩存長(zhǎng)度的預(yù)設(shè)長(zhǎng)度,并從確定的預(yù)設(shè)長(zhǎng)度中,確定長(zhǎng)度最小的預(yù)設(shè)長(zhǎng)度;
從配置的各子緩存塊中,確定所述最小的預(yù)設(shè)長(zhǎng)度對(duì)應(yīng)的且使用狀態(tài)為空閑的子緩存塊,并將確定的空閑子緩存塊進(jìn)行分配,其中,所述各子緩存塊為基于所述不同預(yù)設(shè)長(zhǎng)度,分別將同一緩存塊劃分為多個(gè)長(zhǎng)度相等的子緩存塊。
2.如權(quán)利要求1所述的方法,其特征在于,從配置的各子緩存塊中,確定所述最小的預(yù)設(shè)長(zhǎng)度對(duì)應(yīng)的且使用狀態(tài)為空閑的子緩存塊,具體包括:
根據(jù)基于所述最小的預(yù)設(shè)長(zhǎng)度劃分的各子緩存塊所對(duì)應(yīng)的二維比特圖中表征各子緩存塊使用狀態(tài)的比特值,確定一個(gè)使用狀態(tài)為空閑的子緩存塊;
其中,二維比特圖為分別為基于所述不同預(yù)設(shè)長(zhǎng)度劃分的各子緩存塊建立的對(duì)應(yīng)的二維比特圖,并且,二維比特圖中的各比特位與該二維比特圖所對(duì)應(yīng)的各子緩存塊一一對(duì)應(yīng),二維比特圖中的比特位的比特值表征與該比特位對(duì)應(yīng)的子緩存塊的使用狀態(tài),且該比特位在二維比特圖中的行號(hào)和列號(hào)之間的數(shù)值關(guān)系,用于表征與該比特位對(duì)應(yīng)的子緩存塊的相對(duì)地址;
將確定的空閑子緩存塊進(jìn)行分配,具體包括:
根據(jù)確定的空閑子緩存塊對(duì)應(yīng)的比特位在二維比特圖中的行號(hào)和列號(hào),確定所述空閑子緩存塊的地址,并將所述空閑子緩存塊進(jìn)行分配。
3.如權(quán)利要求2所述的方法,其特征在于,針對(duì)每個(gè)二維比特圖,設(shè)該二維比特圖的起始行為第0行,起始列為第0列,則位于第i行第j列的比特位對(duì)應(yīng)的子緩存塊的相對(duì)地址addij由下式確定:
addij=(i×X+j)×z;
其中,i、j均為非負(fù)整數(shù),X表征該二維比特圖的總列數(shù),z表征與該二維比特圖對(duì)應(yīng)的各子緩存塊的長(zhǎng)度。
4.如權(quán)利要求2所述的方法,其特征在于,針對(duì)每個(gè)二維比特圖,設(shè)該二維比特圖的總行數(shù)、總列數(shù)、以及與該二維比特圖對(duì)應(yīng)的各子緩存塊的長(zhǎng)度均表示為2n,n為非負(fù)整數(shù),且該二維比特圖的起始行為第0行,起始列為第0列,則位于第i行第j列的比特位對(duì)應(yīng)的子緩存塊的相對(duì)地址addij由下式確定:
addij=(i<<log2X+j)<<log2z;
其中,i、j均為非負(fù)整數(shù),X表征該二維比特圖的總列數(shù),z表征與該二維比特圖對(duì)應(yīng)的各子緩存塊的長(zhǎng)度,<<為向左移位運(yùn)算符。
5.如權(quán)利要求1-4任一項(xiàng)所述的方法,其特征在于,將所述空閑子緩存塊進(jìn)行分配之后,還包括:
將分配的子緩存塊的使用狀態(tài)更新為被占用;
從基于各第一預(yù)設(shè)長(zhǎng)度劃分的各子緩存塊中,確定與所述分配的子緩存塊具有如下位置關(guān)系之一的第一子緩存塊,其中,所述第一預(yù)設(shè)長(zhǎng)度為所有預(yù)設(shè)長(zhǎng)度中除所述最小的預(yù)設(shè)長(zhǎng)度之外的各預(yù)設(shè)長(zhǎng)度:
該第一子緩存塊的全部與所述分配的子緩存塊的部分具有重疊位置關(guān)系、該第一子緩存塊的部分與所述分配的子緩存塊的全部具有重疊位置關(guān)系、該第一子緩存塊的部分與所述分配的子緩存塊的部分具有重疊位置關(guān)系;
當(dāng)確定的第一子緩存塊的當(dāng)前使用狀態(tài)為空閑時(shí),將該確定的第一子緩存塊的使用狀態(tài)更新為被占用。
6.如權(quán)利要求5所述的方法,其特征在于,還包括:
將用于為該確定的第一子緩存塊進(jìn)行占用計(jì)數(shù)的計(jì)數(shù)器的數(shù)值增加一個(gè)計(jì)數(shù)單位;
當(dāng)任一子緩存塊被釋放時(shí),還包括:
將該釋放子緩存塊的使用狀態(tài)更新為空閑;
從基于各第二預(yù)設(shè)長(zhǎng)度劃分的各子緩存塊中,確定與該釋放子緩存塊具有如下位置關(guān)系之一的第二子緩存塊,其中,所述第二預(yù)設(shè)長(zhǎng)度為所有預(yù)設(shè)長(zhǎng)度中除該釋放子緩存塊的長(zhǎng)度之外的各預(yù)設(shè)長(zhǎng)度:
該第二子緩存塊的全部與該釋放子緩存塊的部分具有重疊位置關(guān)系、該第二子緩存塊的部分與該釋放子緩存塊的全部具有重疊位置關(guān)系、該第二子緩存塊的部分與該釋放子緩存塊的部分具有重疊位置關(guān)系;
將用于為該第二子緩存塊進(jìn)行占用計(jì)數(shù)的計(jì)數(shù)器的數(shù)值減小一個(gè)計(jì)數(shù)單位;
當(dāng)用于為該第二子緩存塊進(jìn)行占用計(jì)數(shù)的計(jì)數(shù)器的數(shù)值為零時(shí),將該第二子緩存塊的使用狀態(tài)更新為空閑。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于京信通信系統(tǒng)(中國(guó))有限公司,未經(jīng)京信通信系統(tǒng)(中國(guó))有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310710756.0/1.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
- 逐出高速緩存的行的電路布置、數(shù)據(jù)處理系統(tǒng)和方法
- 共享緩存管理系統(tǒng)及方法
- 分布式緩存系統(tǒng)、數(shù)據(jù)的緩存方法及緩存數(shù)據(jù)的查詢方法
- 一種緩存替換方法;裝置和系統(tǒng)
- 加速引擎及處理器
- 一種日志緩存方法、系統(tǒng)、設(shè)備及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)
- 緩存控制方法、裝置和計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)
- 至少具有三個(gè)緩存級(jí)別的緩存層級(jí)的混合低級(jí)緩存包含策略
- 基于雙緩存區(qū)的緩存方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)
- 緩存預(yù)載方法、裝置、處理器芯片及服務(wù)器
- 一種數(shù)據(jù)庫(kù)讀寫分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測(cè)試終端的測(cè)試方法
- 一種服裝用人體測(cè)量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測(cè)程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)





