[發(fā)明專利]一種IO調(diào)度方法及調(diào)度裝置有效
| 申請?zhí)枺?/td> | 200910169610.3 | 申請日: | 2009-08-27 |
| 公開(公告)號: | CN101639763A | 公開(公告)日: | 2010-02-03 |
| 發(fā)明(設計)人: | 王佳 | 申請(專利權)人: | 中興通訊股份有限公司 |
| 主分類號: | G06F3/06 | 分類號: | G06F3/06 |
| 代理公司: | 信息產(chǎn)業(yè)部電子專利中心 | 代理人: | 梁 軍 |
| 地址: | 518057廣東省深圳市南山*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 io 調(diào)度 方法 裝置 | ||
技術領域
本發(fā)明涉及計算機存儲計算領域,尤其涉及一種IO調(diào)度方法及調(diào)度裝置。
背景技術
當前,行業(yè)應用隨著規(guī)模的擴大而對存儲設備、軟件的性能提出了更高的要求,這些要求包括存儲系統(tǒng)的速度、吞吐量、高可用性和可靠性等方面,多種傳統(tǒng)的磁盤陣列讀寫處理方法已經(jīng)顯得性能不足。
如圖1所示,圖1為傳統(tǒng)的IO調(diào)度功能的實現(xiàn)示意圖。這種方法通常依賴于操作系統(tǒng)的通用塊層,調(diào)度的對象是系統(tǒng)的通用讀寫對象。系統(tǒng)提供特定的調(diào)度框架和幾種典型的調(diào)度算法,使得實現(xiàn)IO調(diào)度能做的僅限于在這個框架下填充自己的調(diào)度策略或修改優(yōu)化原有的調(diào)度算法,不利于IO調(diào)度的個性化和擴展。對于讀寫對象是SCSI(Small?Computer?System?Interface,小型計算機系統(tǒng)專用接口)讀寫命令等非通用對象的系統(tǒng)來說,此種調(diào)度方法還需要額外的讀寫對象封裝轉(zhuǎn)化步驟,降低了系統(tǒng)的讀寫效率。
發(fā)明內(nèi)容
鑒于上述的分析,本發(fā)明旨在提供一種IO調(diào)度方法及調(diào)度裝置,用以解決現(xiàn)有技術中存在的調(diào)度方法必須依賴于操作系統(tǒng)通用塊層的問題。
本發(fā)明的目的主要是通過以下技術方案實現(xiàn)的:
本發(fā)明提供了一種IO調(diào)度方法,在塊設備層中設置有IO調(diào)度單元,所述方法包括:
步驟A:塊設備接收用戶下發(fā)的小型計算機系統(tǒng)專用接口SCSI讀寫命令,并將所述SCSI讀寫命令遞交到所述IO調(diào)度單元;
步驟B:所述IO調(diào)度單元根據(jù)所述SCSI讀寫命令在讀寫調(diào)度隊列中查找或生成相應的SCSI讀寫請求來存放所述SCSI讀寫命令;所述步驟B具體包括:
步驟B1:所述IO調(diào)度單元接收到用戶下發(fā)的所述SCSI讀寫命令,根據(jù)所述SCSI讀寫命令的特征從讀寫調(diào)度隊列中查找能與所述SCSI讀寫命令合并的SCSI讀寫請求,如果查找到,執(zhí)行步驟B2;如果未查找到,則執(zhí)行步驟B3;
步驟B2:將所述SCSI讀寫命令放置在相應的SCSI讀寫請求中進行合并,同時更新合并后的SCSI讀寫請求的屬性和讀寫調(diào)度隊列的屬性;
步驟B3:根據(jù)所述SCSI讀寫命令的特征構(gòu)造一個新的SCSI讀寫請求來存放所述SCSI讀寫命令,并將新的SCSI讀寫請求插入到讀寫調(diào)度隊列中,同時更新新的SCSI讀寫請求的屬性和讀寫調(diào)度隊列的屬性;
步驟C:當進入SCSI讀寫請求的下發(fā)執(zhí)行過程時,所述IO調(diào)度單元在讀寫調(diào)度隊列中選擇SCSI讀寫請求,并將選定的SCSI讀寫請求下發(fā)至磁盤執(zhí)行。
進一步地,所述步驟A具體包括:
塊設備接收用戶下發(fā)的SCSI讀寫命令,檢查所述SCSI讀寫命令的合法性,如果合法,則將所述SCSI讀寫命令遞交到IO調(diào)度單元;否則返回失敗響應。
進一步地,所述步驟B2具體包括:
步驟B21:將所述SCSI讀寫命令放置在相應的SCSI讀寫請求中進行合并,同時更新合并后的SCSI讀寫請求的屬性;
步驟B22:檢查合并后的SCSI讀寫請求能否與讀寫調(diào)度隊列中的其他SCSI讀寫請求進一步合并,如果是,則執(zhí)行步驟B23;否則,更新讀寫調(diào)度隊列的屬性;
步驟B23:進一步合并兩個SCSI讀寫請求,并刪除被合并的SCSI讀寫請求,更新進一步合并后的SCSI讀寫請求的屬性和讀寫調(diào)度隊列的屬性。
進一步地,所述步驟C具體包括:
當進入SCSI讀寫請求的下發(fā)執(zhí)行過程時,所述IO調(diào)度單元根據(jù)預定調(diào)度策略選擇SCSI讀寫請求,并將選定的SCSI讀寫請求經(jīng)SCSI中間層插入到通用塊層的特定位置;然后調(diào)用通用塊層特定位置上的SCSI讀寫請求,將其插入到相應磁盤的IO隊列中;或者,
所述步驟C具體包括:
在不存在通用塊層的情況下,當進入SCSI讀寫請求的下發(fā)執(zhí)行過程時,所述IO調(diào)度單元根據(jù)預定調(diào)度策略選擇SCSI讀寫請求,將選定的SCSI讀寫請求經(jīng)SCSI中間層直接插入到相應磁盤的IO隊列中。
進一步地,所述步驟C還包括:當所述IO調(diào)度單元收到用戶發(fā)來的SCSI讀寫請求的下發(fā)執(zhí)行命令時,進入SCSI讀寫請求的下發(fā)執(zhí)行過程;或者,所述IO調(diào)度單元更新讀寫調(diào)度隊列的屬性的同時,檢查讀寫調(diào)度隊列中的SCSI讀寫請求數(shù)是否達到預定閾值,并在確定達到時觸發(fā)進入SCSI讀寫請求的下發(fā)執(zhí)行過程。
本發(fā)明還提供了一種IO調(diào)度裝置,包括:讀寫命令處理單元和IO調(diào)度單元,其中,
所述讀寫命令處理單元,用于接收用戶下發(fā)的SCSI讀寫命令,并將所述SCSI讀寫命令遞交到所述IO調(diào)度單元;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中興通訊股份有限公司,未經(jīng)中興通訊股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200910169610.3/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 上一篇:一種搜索方法、裝置及系統(tǒng)
- 下一篇:鋼板冷卻控制模擬方法
- 同類專利
- 專利分類
G06F 電數(shù)字數(shù)據(jù)處理
G06F3-00 用于將所要處理的數(shù)據(jù)轉(zhuǎn)變成為計算機能夠處理的形式的輸入裝置;用于將數(shù)據(jù)從處理機傳送到輸出設備的輸出裝置,例如,接口裝置
G06F3-01 .用于用戶和計算機之間交互的輸入裝置或輸入和輸出組合裝置
G06F3-05 .在規(guī)定的時間間隔上,利用模擬量取樣的數(shù)字輸入
G06F3-06 .來自記錄載體的數(shù)字輸入,或者到記錄載體上去的數(shù)字輸出
G06F3-09 .到打字機上去的數(shù)字輸出
G06F3-12 .到打印裝置上去的數(shù)字輸出





