[發明專利]一種操作系統及其文件緩存定位方法有效
| 申請號: | 201210575723.5 | 申請日: | 2012-12-26 |
| 公開(公告)號: | CN103077198A | 公開(公告)日: | 2013-05-01 |
| 發明(設計)人: | 趙羽 | 申請(專利權)人: | 中標軟件有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 北京聿宏知識產權代理有限公司 11372 | 代理人: | 鐘日紅;張宇峰 |
| 地址: | 200030 上海*** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 操作系統 及其 文件 緩存 定位 方法 | ||
技術領域
本發明涉及虛擬文件系統領域,尤其涉及一種操作系統及其文件緩存定位方法。
背景技術
在對各個操作系統進行操作時,經常需要對文件緩存進行定位,而對文件緩存定位方法的設計直接影響著操作系統在文件訪問方面的性能表現,是加速文件訪問,減少磁盤I/O操作的關鍵設計。
在現有技術中,Linux等其它開源操作系統在各自虛擬文件系統的緩存設計中采用了其它有效的文件緩存定位方法。例如Linux操作系統中針對文件節點設計了哈希表,并利用哈希算法定位具體的節點緩存。
經過發明人反復仔細的研究,提出了一種新的文件緩存定位方法,該方法實現了對文件緩存的定位,并且具有加速文件訪問,減少磁盤I/O操作等優點。
發明內容
本發明所要解決的技術問題之一是需要提供一種加速文件訪問的新的文件緩存定位方法。
為了解決上述技術問題,本發明提供了一種文件緩存定位方法,該方法包括:在訪問文件時,獲取該文件的文件索引,其中,所述文件索引是利用二進制序列來表示的該文件中當前所要訪問的位置;將所述文件索引轉換為轉換表訪問標識;判斷該文件的轉換表中是否存在與所述轉換表訪問標識對應的表項,若存在,則基于所述表項來獲取緩存塊訪問地址;其中,所述轉換表用于存儲與轉換表訪問標識對應的表項,所述表項用于指向與該文件的不同訪問位置相對應的緩存塊訪問地址。
根據本發明另一方面的文件緩存定位方法,將所述文件索引的二進制序列劃分為三個以上字段,并將所述三個以上字段作為轉換表訪問標識,其中,至少包括緩存塊偏移字段、緩存塊索引字段和緩存表索引字段。
根據本發明另一方面的文件緩存定位方法,根據緩存塊的大小來確定所述緩存塊偏移字段所占的比特位數。
根據本發明另一方面的文件緩存定位方法,根據文件的緩存塊個數來確定所述緩存塊索引字段所占的比特位數。
根據本發明另一方面的文件緩存定位方法,在該文件的轉換表中不存在與所述轉換表訪問標識對應的表項時,則進一步包括:根據所述轉換表訪問標識,在所述轉換表中創建與各個字段對應的各級表,其中,各級表被定義為結構體,且各級表指向下一級表;從空閑緩存區內選取一緩存塊,將該緩存塊與所述轉換表訪問標識相關聯,其中所述空閑緩存區是一個存放可用空閑緩存的棧結構;將該緩存塊的地址存入相應的表的表項中。
根據本發明另一方面的文件緩存定位方法,在將所述文件索引的二進制序列劃分為三個字段,并將所述三個字段作為轉換表訪問標識時,將在所述轉換表中創建的各級表,按照由高到低的級別依次設定為與緩存表索引字段對應的二級表、與緩存塊索引字段對應的一級表和與緩存塊偏移字段對應的零級表,其中,在所述二級表的各個表項中存放一級表的起始地址,在所述一級表的各個表項中存放緩存塊的地址,與所述零級表所對應的緩存塊偏移字段表示緩存塊內偏移地址;進一步將緩存塊的地址存入一級表的表項中。
根據本發明另一方面的文件緩存定位方法,若沒有空閑緩存區,則利用內核中的回收線程來回收緩存塊,再從回收后的緩存塊中選取一緩存區,將該緩存塊與所述轉換表訪問標識相關聯。
根據本發明另一方面,還提供了一種操作系統,執行以下步驟來對文件緩存進行定位:
在訪問文件時,獲取該文件的文件索引,其中,所述文件索引是利用二進制序列來表示的該文件中當前所要訪問的位置;
將所述文件索引轉換為轉換表訪問標識;
判斷該文件的轉換表中是否存在與所述轉換表訪問標識對應的表項,若存在,則基于所述表項來獲取緩存塊訪問地址;
其中,所述轉換表用于存儲與轉換表訪問標識對應的表項,所述表項用于指向與該文件的不同訪問位置相對應的緩存塊訪問地址。
根據本發明另一方面的操作系統,在該文件的轉換表中不存在與所述轉換表訪問標識對應的表項時,則進一步包括:
根據所述轉換表訪問標識,在所述轉換表中創建與各個字段對應的各級表,其中,各級表被定義為結構體,且各級表指向下一級表;
從空閑緩存區內選取一緩存塊,將該緩存塊與所述轉換表訪問標識相關聯,其中所述空閑緩存區是一個存放可用空閑緩存的棧結構;
將該緩存塊的地址存入相應的表的表項中。
根據本發明另一方面的操作系統,在將所述文件索引的二進制序列劃分為三個字段,并將所述三個字段作為轉換表訪問標識時,
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中標軟件有限公司,未經中標軟件有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210575723.5/2.html,轉載請聲明來源鉆瓜專利網。





