[發明專利]用于降低硬盤功耗的數據緩沖區實現方法無效
| 申請號: | 200810019343.7 | 申請日: | 2008-01-04 |
| 公開(公告)號: | CN101221465A | 公開(公告)日: | 2008-07-16 |
| 發明(設計)人: | 黃少珉;戚隆寧;胡晨 | 申請(專利權)人: | 東南大學 |
| 主分類號: | G06F1/32 | 分類號: | G06F1/32;G06F12/08 |
| 代理公司: | 南京經緯專利商標代理有限公司 | 代理人: | 葉連生 |
| 地址: | 21110*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 用于 降低 硬盤 功耗 數據 緩沖區 實現 方法 | ||
1.一種用于降低硬盤功耗的緩沖區實現方法,其特征在于該緩沖區包括分塊的數據緩沖區、緩沖區管理模塊,分塊的數據緩沖區將數據傳送給緩沖區管理模塊,緩沖區管理模塊通過硬件設備驅動模塊將狀態控制與數據訪問命令傳送給硬盤,硬盤再將數據傳送給分塊的數據緩沖區,實現用于降低硬盤功耗的緩沖區。
2.根據權利要求1所述的用于降低硬盤功耗的緩沖區實現方法,其特征為所述的分塊的數據緩沖區為:在存儲器內開辟固定大小的區域作為數據緩沖區,大小為D字節;將數據緩沖區分為固定的塊數N,每塊的大小相等,為S字節,D=S×N;初始時各塊中無數據,通過鏈表L1相連,鏈表L1的每個結構體中具有兩個成員,第一個存放緩沖區塊編號1~N,第二個存放下一個緩沖區塊在內存中的首地址。
3.根據權利要求1所述的用于降低硬盤功耗的緩沖區實現方法,其特征為所述的緩沖區管理模塊為:設有M個任務,任務通過調用硬盤驅動提供的接口函數FD獲取所需數據;緩沖區管理模塊給出與硬盤驅動接口函數FD具有同名、同參數與同返回值的函數FM,在任務代碼中將硬盤接口函數FD替換為緩沖區管理模塊提供的函數FM;函數FM實現如下:從任務對硬盤數據訪問的請求首地址開始,從硬盤預讀出長度為S×N/M字節數據,并通過替換算法R從所有緩沖區塊中選擇用于存放該數據的緩沖區塊;將這些緩沖區塊通過鏈表L2進行連接,連接后的緩沖區塊稱為分組,即將屬于不同任務的緩沖區塊各自通過鏈表L2進行連接;任務調用函數FM對硬盤進行數據讀取時,若數據已存在于緩沖區塊中,緩沖區管理模塊通過鏈表L2在各緩沖區塊中查找數據并送達發起請求的任務;當每次預讀完畢后緩沖區管理模塊向硬盤發出命令使其進入低功耗模式。
4.根據權利要求1所述的用于降低硬盤功耗的緩沖區實現方法,其特征為所述的替換算法R為:
為緩沖區塊1~N確定不同的狀態,這些狀態包括:緩沖區塊空閑,緩沖區塊在用,緩沖區塊已用,緩沖區塊未用;緩沖區塊空閑表示緩沖區塊中尚未讀入任何數據;緩沖區塊在用表示緩沖區塊中的數據正在被讀取;緩沖區塊已用表示緩沖區塊中最后一個字節的數據已被讀取;緩沖區塊未用表示緩沖區塊已存在于分組中但尚未被讀取;替換算法通過鏈表L2順序查詢各分組中緩沖區塊的狀態,若存在狀態為緩沖區塊空閑的緩沖區塊,則將數據讀入該塊;若不存在狀態為緩沖區塊空閑的緩沖區塊,則查詢是否存在狀態為緩沖區塊已用的緩沖區塊,如存在則將數據讀入該緩沖區塊;若狀態為緩沖區塊已用的緩沖區塊也不存在,則查詢是否存在狀態為緩沖區塊未用的緩沖區塊,如存在則將數據讀入該緩沖區塊;若緩沖區塊空閑,緩沖區塊已用,緩沖區塊未用三種狀態的緩沖區塊都不存在,則將數據讀入緩沖區塊在用的緩沖區塊。若在查詢過程中發現具有狀態一樣的多個緩沖區塊,則選擇第一個查詢到的。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于東南大學,未經東南大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200810019343.7/1.html,轉載請聲明來源鉆瓜專利網。





