[發明專利]處理器訪問共享數據的方法、裝置及系統有效
| 申請號: | 200910147175.4 | 申請日: | 2009-06-08 |
| 公開(公告)號: | CN101566977A | 公開(公告)日: | 2009-10-28 |
| 發明(設計)人: | 高秋明 | 申請(專利權)人: | 華為技術有限公司 |
| 主分類號: | G06F13/16 | 分類號: | G06F13/16;G06F15/167 |
| 代理公司: | 北京中博世達專利商標代理有限公司 | 代理人: | 申 健 |
| 地址: | 518129廣東省深*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 處理器 訪問 共享 數據 方法 裝置 系統 | ||
技術領域
本發明涉及計算機領域,尤其涉及處理器訪問共享數據的方法、裝置及系統。
背景技術
當前,多處理器系統蓬勃發展,其中多處理器通過共享存儲器來處理數據,是多處理器處理數據的主要方式之一。所謂多處理器共享存儲器是多個處理器共享單個集中式的存儲器。目前多處理器共享存儲器的結構主要是三級的存儲結構,即多個處理器中的每個處理器有自己私有的容量比較小的一級高速緩沖存儲器(Cache),所述多個處理器共享的容量比較大的二級高速緩沖存儲器,最后所述多個處理器共享海量的單一物理存儲器。具有該種存儲器結構的多處理系統結構比較簡單,性價比合算,得到了廣泛應用。
但是,當所述多個處理器訪問共享數據時,如果所述多處理器中的各個處理器的讀寫順序沒有合理的處理,導致多個處理器同時并發的讀寫共享存儲器中的同一塊存儲區所包含的共享數據,使各處理器的讀寫互相交織,從而導致任何一個處理器都無法正確的訪問所述共享存儲器中的共享數據。
為了使多個處理器在訪問共享數據時,能夠排他性的訪問共享存儲器中的共享數據,現有技術中有以下兩種處理方法,該兩種多處理器訪問共享數據的方法具體為:
第一種,采用總線鎖技術,實現多處理器排他性的訪問共享數據。該方法具體為:在處理器訪問共享數據之前,查詢總線是否處于非鎖定狀態,在總線處于非鎖定狀態時,通過命令將整個總線或者整個存儲系統鎖住,使除了所述處理器以外,其他處理器或者總線設備都不得訪問存儲系統中的共享數據,保證所述處理器對共享數據的獨占訪問。
該方法雖然可以實現多處理器在并發的讀寫共享數據時排他性的訪問共享數據,但是,由于該方法是將整個通信總線或者整個存儲系統鎖定,只允許所述一個處理器使用所述總線和存儲系統,使其他不訪問共享數據的操作也無法進行,從而導致整個系統的利用率比較低。
第二種,采用軟件鎖技術,實現多處理器排他性的訪問共享數據。所述軟件鎖,就是一個共享的變量,各處理器通過系統提供的原子操作指令,爭奪這個變量的某個固定值(比如該固定值為0),哪個處理器獲得了這個值,就代表哪個處理器獲得了排他性訪問共享數據的權利,便可以排他性的訪問所述共享數據。
該方法在實現多處理器排他性的訪問共享數據時,由各處理器之間競爭軟件鎖來實現排他性的訪問共享數據,不用將整個通信總線或者整個存儲系統鎖定,即不用將整個通信總線或者整個存儲系統獨占,使其他非訪問共享數據的操作可以正常進行,在一定程度上提高了系統的利用率;但是該種通過軟件鎖技術實現多處理器排他性的訪問共享數據的方法,需要各處理器不停的向存儲器發出存儲器訪問命令,直到獲取軟件鎖成功為止,使所述處理器無謂的增加很多無效訪問,而所述存儲系統要不斷的處理所述無效訪問,使存儲系統效率較低。
發明內容
本發明的實施例提供一種處理器訪問共享數據的方法、裝置及系統,提高了存儲系統的效率。
為達到上述目的,本發明的實施例采用如下技術方案:
一種處理器訪問共享數據的方法,包括:
通過硬件線程向存儲系統發送存儲塊鎖定命令,以指示存儲系統將所述存儲塊鎖定;
在預設的時鐘周期內,判斷是否接收到所述存儲系統發送的所述存儲塊鎖定完成信息;
若在預設的時鐘周期內,接收到所述存儲系統發送的所述存儲塊鎖定完成信息,則調度所述硬件線程訪問所述存儲塊中的共享數據;
若在預設的時鐘周期內,沒有接收到所述存儲系統發送的所述存儲塊鎖定完成信息,則所述硬件線程繼續等待所述存儲系統發送的存儲塊鎖定完成信息。
一種處理器,包括:
發送單元,用于通過硬件線程向存儲系統發送存儲塊鎖定命令,以指示所述存儲系統將所述存儲塊鎖定;
判斷單元,用于在預設的時鐘周期內,判斷是否接收到所述存儲系統發送的所述存儲塊鎖定完成信息;
執行單元,用于當在預設的時鐘周期內,所述判斷單元判定接收到所述存儲系統發送的所述存儲塊鎖定完成信息時,調度所述硬件線程訪問所述存儲塊中的共享數據;
所述執行單元,還用于在預設的時鐘周期內,所述判斷單元判定沒有接收到所述存儲系統發送的所述存儲塊鎖定完成信息,所述硬件線程繼續等待所述存儲系統發送的存儲塊鎖定完成信息。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于華為技術有限公司,未經華為技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200910147175.4/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種快速音頻檢索的方法
- 下一篇:一種基于靜態存儲器的FIFO存儲單元
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





