[發明專利]采用混合目錄的雙控存儲服務器的緩存一致性實現方法有效
| 申請號: | 201410367779.0 | 申請日: | 2014-07-30 |
| 公開(公告)號: | CN104133785B | 公開(公告)日: | 2017-03-08 |
| 發明(設計)人: | 戴鴻君;于治樓 | 申請(專利權)人: | 浪潮集團有限公司 |
| 主分類號: | G06F12/0895 | 分類號: | G06F12/0895 |
| 代理公司: | 濟南信達專利事務所有限公司37100 | 代理人: | 張靖 |
| 地址: | 250101 山東*** | 國省代碼: | 山東;37 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 采用 混合 目錄 存儲 服務器 緩存 一致性 實現 方法 | ||
技術領域
本發明涉及一種采用混合目錄的雙控存儲服務器的緩存一致性實現方法,屬于計算機存儲服務器設計領域。
背景技術
Cache一致性協議決定系統為維護一致性所做的具體動作,直接影響系統性能。
基于目錄的協議的特點是:內存塊中保存有高速緩存目錄,記錄了高速緩存塊駐留在哪里的信息,從而維護高速緩存的一致性。
基于目錄的協議又可以分為三類:全映射目錄、有限目錄和鏈式目錄。
基于目錄的協議的工作方式是:在內存塊的高速緩存目錄中記錄著每個存儲塊當前的狀態和當前的信息。
當前的信息指明哪些高速緩存中有該存儲器的拷貝。
當高速緩存需要讀一個塊的信息時,它向內存發送申請,內存接到申請后,將其當前的內容發送給高速緩存,并在目錄中記錄該高速緩存的地址;當高速緩存需要將某個塊置為無效時,除了在高速緩存中將其置為無效外,還應該發消息通知內存修改其目錄;當存儲器的信息被修改時,內存需要根據目錄中的信息對具有其拷貝的高速緩存塊發廣播,通知其信息已經更改,將這個拷貝設置成無效。
在全映射目錄中,存放與全局存儲器的每個塊有關的數據,系統中的每個高速緩存可以同時存儲任何數據塊的拷貝。
而在有限目錄中,目錄的個數是有限的,最多只允許有限個數的高速緩存同時存儲合格數據塊的內容。當有超過限制個數的高速緩存申請讀這個內存塊時,需要進行驅逐,選擇一個高速緩存,將其置為無效。
發明內容
本發明要解決的技術問題是:提供一種采用混合目錄的雙控存儲服務器的緩存一致性實現方法。
本發明所采用的技術方案為:
一種采用混合目錄的雙控存儲服務器的緩存一致性實現方法,針對雙控存儲服務器的緩存一致性實現,將有限目錄和鏈式目錄結合在一起,構成一種新的目錄方式;在某一時刻,有限目錄的限制是最多m塊,存儲某個內存塊的高速緩存的數量為k,那么當k<m時,采用有限目錄的方式;當k>m時,超過有限目錄容量的部分采用鏈式目錄。這樣既可以保證系統的可擴展性,又提高了系統的效率,同時兼顧了有限目錄的效率和鏈式目錄的容量。?
當k小于m時,采用有限目錄的方式,具體操作如下:
有控制器要讀取數據時,向內存塊發送請求,內存塊檢查其內容的有效性;如果重寫位為O,直接將內存的數據發送給高速緩存,并添加在有限目錄第k+1個位置上,k=k+1;如果重寫位為1,命令重寫的高速緩存將最新的數據分別發送給申請數據的高速緩存和內存,并將重寫位置O,將申請數據的高速緩存添加進目錄;
有控制器將高速緩存置為無效時,向內存塊發送通知,內存塊將這個處理機的序號從目錄中刪除,刪除時直接將當前的最后一項移動到空缺的位置上。
有控制器對內存進行寫操作時,將當前在讀的其它高速緩存全部置為無效,對當前的目錄項進行一次掃描,逐個向相應的高速緩存發送無效消息,確認所有塊都無效后將重寫位置1。
當k大于m時,超過的部分采用鏈式目錄結構,具體操作如下:
有控制器要讀取數據時,內存向高速緩存發送數據,將這個控制器添加到鏈表的首部。
有控制器需要將高速緩存置為無效時,對有限目錄和鏈表均進行掃描,如果記錄在有限目錄中,將其從目錄中刪除,再將鏈表的首記錄信息移動到有限目錄中,刪掉隊首的記錄;如果是在鏈表中,直接刪除鏈表的這個元素即可。
若有控制器對內存進行寫操作時,將當前在讀的其它高速緩存全部置為無效,對當前的目錄項以及鏈表元素進行一次掃描,逐個向相應的高速緩存發送無效消息、確認所有塊都無效,將重寫位置1。
所述鏈式目錄通過一個目錄指針鏈表來跟蹤共享數據拷貝,內存塊中只保存這個鏈表的首指針,各個高速緩存中保存鏈表的元素,申請讀數據塊和置數據塊為無效表現為對鏈表的維護。在有限目錄中,目錄的個數是有限的,最多只允許有限個數的高速緩存同時存儲合格數據塊的內容。當有超過限制個數的高速緩存申請讀這個內存塊時,需要選擇一個高速緩存,將其置為無效。
?本發明的有益效果為:采用本發明所提供的技術,既可以保證系統的可擴展性,又提高了系統的效率,同時兼顧了有限目錄的效率和鏈式目錄的容量。
具體實施方式
?????下面通過具體實施方式對本發明進一步說明:
實施例1:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于浪潮集團有限公司,未經浪潮集團有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410367779.0/2.html,轉載請聲明來源鉆瓜專利網。





