欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

提高對小型計算機接口存儲設(shè)備的存取效率的方法

文檔序號:6615886閱讀:212來源:國知局
專利名稱:提高對小型計算機接口存儲設(shè)備的存取效率的方法
技術(shù)領(lǐng)域
本發(fā)明公開了一種儲存設(shè)備的存取方法,尤其涉及一種提高對小型計算 機接口存儲設(shè)備的存取效率的方法。
背景技術(shù)
隨著網(wǎng)絡(luò)速度的快速成長,儲存設(shè)備也開始由單機儲存方式,演進至由網(wǎng)
絡(luò)設(shè)備來儲存。在網(wǎng)絡(luò)儲存系統(tǒng)中,有一種將小型計算機接口 (Small Co卿uter Small Interface,以下簡稱SCSI)的與網(wǎng)絡(luò)傳輸相結(jié)合的網(wǎng)絡(luò)儲存接口 ,其 稱為iSCSI (Internet SCSI)。
iSCSI協(xié)議定義了在TCP/IP網(wǎng)絡(luò)發(fā)送、接收數(shù)據(jù)塊的儲存數(shù)據(jù)的相應(yīng)規(guī) 則和方法。發(fā)送端(Initiator)將SCSI命令和數(shù)據(jù)封裝到封包中再通過網(wǎng)絡(luò)轉(zhuǎn) 發(fā)。接著,由接收端(target)收到封包之后,再將其還原為SCSI命令和數(shù)據(jù) 并執(zhí)行。待接收端完成此一命令后,再將返回的SCSI命令和數(shù)據(jù)再封裝成封 包,將封包再傳送回發(fā)送端。
在iSCSI中將儲存設(shè)備分別的給予相應(yīng)的邏輯單元號碼(logical unit
number,以下簡稱LUN)。 一般而言,在SCSI總線上可掛載的儲存設(shè)備數(shù)量是 有其限制的。通常儲存設(shè)備的數(shù)量大都為6個或者15個。為了能辨識這些儲 存設(shè)備,所以采用了一種目標識別(target ID),其用以代表相應(yīng)的儲存設(shè)備。
當儲存設(shè)備只要被加入服務(wù)端時,服務(wù)端就會給予一個相應(yīng)的代號。
在現(xiàn)有iSCSI的架構(gòu)中,提供了 SCSI虛擬磁盤的實現(xiàn)層,其用以做為接 口轉(zhuǎn)換。為了保證數(shù)據(jù)在傳輸過程的完整性,所以提出了下列實現(xiàn)方式來進行 SCSI任務(wù)同步串行。 第一種方式
在服務(wù)端中提供一個隊列(queue),其用以對所有的虛擬磁盤設(shè)備存放欲 執(zhí)行的任務(wù)(task)。服務(wù)端在由多個線程輪流去讀取該隊列中的任務(wù),再將所 讀取到的任務(wù)發(fā)送至iSCSI相應(yīng)的層級(layers)去執(zhí)行。例如,對儲存設(shè)備存
4放、讀取數(shù)據(jù)塊等任務(wù)。每一個線程而言,對儲存設(shè)備的讀寫過程是完全同步 的。由于每個任務(wù)是利用串行方式來依序處理。由于采用多線程處理方法,同 一設(shè)備上任務(wù)的執(zhí)行順序就有可能被顛倒,如果被顛倒執(zhí)行的任務(wù)正好讀寫同 一區(qū)域,就會導(dǎo)致數(shù)據(jù)不完整的問題。而且多個內(nèi)核線程間頻繁的上下文切換, 會抵消部分多線程帶來的效能提升。而且,當多個邏輯單元號碼單隊列在網(wǎng)絡(luò) 傳輸頻繁的情況下,會導(dǎo)致某些邏輯單元號碼上的命令不能得到實時的執(zhí)行。 第二種方式
在每一個虛擬磁盤設(shè)備中設(shè)置了一個隊列(queue)。當虛擬磁盤設(shè)備接收 到磁盤讀寫任務(wù)時,則會將任務(wù)先放入隊列等待。直至隊列中排在其前面的任 務(wù)都被處理完成為止。換句話說,在一個虛擬磁盤設(shè)備中一次僅能執(zhí)行一個任 務(wù)。其優(yōu)點保證了每一個任務(wù)會按照順序的被執(zhí)行,進而保證寫入數(shù)據(jù)的完整 性。但由于只能串行的依序?qū)懭?,所以實體儲存設(shè)備寫入速度會被大幅的降低。 使得寫入的精神與SCSI的使用原意相違背。

發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題在于提供一種提高對小型計算機接口 (small computer small interface,簡稱SCSI)存儲設(shè)備的存取效率的方法,用以處 理來自請求端的多個對實體儲存設(shè)備的存取請求。
為實現(xiàn)上述目的,本發(fā)明所揭露的提高對小型計算機接口存儲設(shè)備的存取 效率的方法,其包括下列步驟首先由請求端發(fā)送多個存取請求至服務(wù)端;服 務(wù)端根據(jù)這些存取請求分派相應(yīng)的磁盤存取任務(wù)至每一個虛擬磁盤中;設(shè)置任 務(wù)隊列于每一個虛擬磁盤中,用以接收自服務(wù)端所發(fā)送的多個磁盤存取任務(wù); 將磁盤存取任務(wù)用以寫入虛擬磁盤中的儲存地址;執(zhí)行儲存地址記錄手段,記 錄具有相同的儲存地址的磁盤存取任務(wù),并將其余的磁盤存取任務(wù)依序的發(fā)送 至該實體儲存設(shè)備;存放磁盤存取任務(wù)至實體儲存設(shè)備的請求隊列中;對請求 隊列中的磁盤存取任務(wù)執(zhí)行程序順序優(yōu)化手段,用以重新調(diào)配磁盤存取任務(wù)的 執(zhí)行順序;將已處理完成的該些磁盤存取任務(wù)回傳至該虛擬磁盤。
本發(fā)明提供了一種提高對小型計算機接口存儲設(shè)備的存取效率的方法,借 以來解決存取任務(wù)地址重迭導(dǎo)致數(shù)據(jù)不完整的的問題及任務(wù)隊列化的數(shù)據(jù)寫 入速度的問題。本發(fā)明實現(xiàn)對小型計算機接口的實體儲存設(shè)備的存取任務(wù)加速方法,使得對實體儲存設(shè)備可以進行異步處理。
以下結(jié)合附圖和具體實施例對本發(fā)明進行詳細描述,但不作為對本發(fā)明的 限定。


圖1為本發(fā)明的系統(tǒng)架構(gòu)示意圖; 圖2為本發(fā)明的運作流程示意圖3為本發(fā)明的磁盤存取任務(wù)與虛擬磁盤傳輸示意圖。 其中,附圖標記 100:請求端 200:服務(wù)端 210:虛擬磁盤 211:任務(wù)隊列 310:實體儲存設(shè)備
具體實施例方式
本發(fā)明提供一種提高對小型計算機接口存儲設(shè)備的存取效率的方法。請參 考圖l所示,其為本發(fā)明的系統(tǒng)架構(gòu)示意圖。在實現(xiàn)小型計算機接口中虛擬磁
盤的任務(wù)異步處理方法包括有下列裝置請求端100、服務(wù)端200與實體儲存 設(shè)備310。服務(wù)端200運行一虛擬磁盤管理程序。虛擬磁盤管理程序?qū)⒍鄠€實 體儲存設(shè)備310整合成一個虛擬磁盤210,借以提供請求端100存取使用。使 得請求端100不需自行的將數(shù)據(jù)分派到各個不同的實體儲存設(shè)備310。
應(yīng)用于小型計算機接口的虛擬磁盤的多個存取任務(wù)執(zhí)行順序。請參考圖2 所示,其為本發(fā)明的運作流程示意圖。在小型計算機接口存儲設(shè)備的存取效率 的方法包括以下步驟首先,由請求端100發(fā)送多個存取請求至服務(wù)端200。 在服務(wù)端中初始虛擬磁盤(步驟S210),虛擬磁盤210用以調(diào)派存取請求至相 應(yīng)的實體儲存設(shè)備310。服務(wù)端根據(jù)這些存取請求分派相應(yīng)的磁盤存取任務(wù)至 每一個虛擬磁盤中(步驟S220)。
設(shè)置任務(wù)隊列于每一個虛擬磁盤中(步驟S230),任務(wù)隊列211用以接收 自服務(wù)端200所發(fā)送的磁盤存取任務(wù)。在本發(fā)明中,磁盤存取任務(wù)指的是對實體儲存設(shè)備310進行讀寫動作的存取指令。對于不需要磁盤讀寫操作的管理指 令而言,服務(wù)端200會根據(jù)所儲存的信息將其回傳給請求端100。請另外參考 圖3所示,其為本發(fā)明的磁盤存取任務(wù)與虛擬磁盤傳輸示意圖。
根據(jù)磁盤存取任務(wù)存取相應(yīng)的實體儲存設(shè)備(步驟S240)。執(zhí)行儲存地址 記錄手段,記錄具有相同的儲存地址的磁盤存取任務(wù),并將其余的磁盤存取任 務(wù)依序的發(fā)送至該實體儲存設(shè)備(步驟S250)。當虛擬磁盤210收到與實體儲 存設(shè)備310相同儲存地址的磁盤存取任務(wù)時,服務(wù)端200會將磁盤存取任務(wù)放 入等待隊列中并將磁盤存取任務(wù)設(shè)置為等待狀態(tài)。直到實體儲存設(shè)備310中執(zhí) 行的磁盤存取任務(wù)被執(zhí)行完且通知服務(wù)端200后,服務(wù)端200才會將磁盤存取 磁盤傳送至實體儲存設(shè)備310中。
為了便于統(tǒng)計和査找具有相同的儲存地址的磁盤存取任務(wù),在實際的程序 中可以在磁盤存取任務(wù)的數(shù)據(jù)結(jié)構(gòu)中增加了 wait—list、 wait—queue和 wait—count三個數(shù)據(jù)成員。其數(shù)據(jù)結(jié)構(gòu)請參考下列所示
struct wait一task一adress
struct list—head wait—list; struct ist—task—t *wait—task;
struct ist—task—t
struct list—head list;
struct list_head wait_queue; u32 wait_count;
當?shù)谝淮疟P存取任務(wù)被接收到后,首先檢查請求隊列中有沒有跟第一磁盤 存取任務(wù)存在地址重迭的磁盤存取任務(wù)。如果在請求隊列中有與第一存取任務(wù) 具有相同儲存地址的第二存取任務(wù)的話,就將第一存取任務(wù)的地址放到 wait_task—adress結(jié)構(gòu)中,并將第二存取任務(wù)的wait_queue中設(shè)定 wait—list。同時,將第一存取任務(wù)的結(jié)構(gòu)中的wait—count加1。當?shù)谝淮嫒∪蝿?wù)執(zhí)行完,再從第一存取任務(wù)的wait—queue上的wait_task—adress找到第 二存取任務(wù)的wait—list。將第二存取任務(wù)的wait—list從第一任務(wù)的 wait—queue上移除,并將第一存取任務(wù)的wait_count減1。
存放磁盤存取任務(wù)至實體儲存設(shè)備的請求隊列中(步驟S260)。對請求隊 列中的磁盤存取任務(wù)執(zhí)行程序順序優(yōu)化手段,用以重新調(diào)配磁盤存取任務(wù)的執(zhí) 行順序(步驟S270)。對于在請求隊列中的磁盤存取任務(wù),實體儲存設(shè)備310 可以根據(jù)交換排序法(exchange sort)、選擇排序法(selection sort)、 插入排序法(insertion sort)、合并排序法(merge sort)與快速排序法(Quick sort)。將相同或相近類型磁盤存取任務(wù)依序,借以加速實體儲存設(shè)備310 的存取速率。將已處理完成的磁盤存取任務(wù)回傳至虛擬磁盤(步驟S280)。實 體儲存設(shè)備310調(diào)用已注冊的回調(diào)函數(shù)(callback function),將執(zhí)行結(jié)果和 磁盤存取任務(wù)上下文回傳至虛擬磁盤210中。最后,虛擬磁盤將所接收到的已 處理數(shù)據(jù)回傳至請求端(步驟S290)。
此外,若是請求隊列中還有磁盤存取任務(wù)的話。根據(jù)請求隊列中的磁盤存 取任務(wù)的儲存地址,査找實體儲存設(shè)備310中是否還有相應(yīng)的磁盤存取任務(wù)在 被執(zhí)行中。若實體儲存設(shè)備310中還有相同儲存位置的磁盤存取任務(wù)在執(zhí)行中 的話,則仍然將請求隊列中的磁盤存取任務(wù)維持在請求隊列中。若實體儲存設(shè) 備310中己經(jīng)沒有相同儲存位置的磁盤存取任務(wù)在執(zhí)行中的話,則將請求隊列 中的磁盤存取任務(wù)發(fā)送至實體儲存設(shè)備310中執(zhí)行。
本發(fā)明提供了一種提高對小型計算機接口存儲設(shè)備的存取效率的方法,借 以來解決存取任務(wù)地址重迭導(dǎo)致數(shù)據(jù)不完整的的問題及任務(wù)隊列211化的數(shù) 據(jù)寫入速度的問題。本發(fā)明實現(xiàn)對小型計算機接口的實體儲存設(shè)備310的存取 任務(wù)加速方法,使得對實體儲存設(shè)備310可以進行異步處理。
當然,本發(fā)明還可有其它多種實施例,在不背離本發(fā)明精神及其實質(zhì)的 情況下,熟悉本領(lǐng)域的技術(shù)人員當可根據(jù)本發(fā)明作出各種相應(yīng)的改變和變形, 但這些相應(yīng)的改變和變形都應(yīng)屬于本發(fā)明所附的權(quán)利要求的保護范圍。
8
權(quán)利要求
1. 一種提高對小型計算機接口存儲設(shè)備的存取效率的方法,用以處理來自請求端的多個對實體儲存設(shè)備的存取請求,其特征在于,該存取方法包括下列步驟初始一虛擬磁盤,用以調(diào)派存取請求至相應(yīng)的實體儲存設(shè)備;設(shè)置一任務(wù)隊列于每一個虛擬磁盤中,用以接收自一服務(wù)端所發(fā)送的多個磁盤存取任務(wù);根據(jù)該些磁盤存取任務(wù)存取相應(yīng)的一實體儲存設(shè)備;執(zhí)行一儲存地址記錄手段,用以記錄具有相同的一儲存地址的該磁盤存取任務(wù),并將其余的該些磁盤存取任務(wù)依序的發(fā)送至該實體儲存設(shè)備;存放該些磁盤存取任務(wù)至該實體儲存設(shè)備的一請求隊列中;對該請求隊列中的該些磁盤存取任務(wù)執(zhí)行一程序順序優(yōu)化手段,用以重新調(diào)配該些磁盤存取任務(wù)的執(zhí)行順序;將已處理完成的該些磁盤存取任務(wù)回傳至該虛擬磁盤;以及回傳相應(yīng)存取請求的數(shù)據(jù)至請求端。
2. 根據(jù)權(quán)利要求1所述的提高對小型計算機接口存儲設(shè)備的存取效率的 方法,其特征在于,執(zhí)行該儲存地址記錄手段中還包括下列步驟將具有相同的該儲存地址的該些磁盤存取任務(wù)存放等待隊列中; 等待該實體儲存設(shè)備具有相同的該儲存地址的該些磁盤存取任務(wù)執(zhí)行完 成;以及將該些磁盤存取任務(wù)依序的發(fā)送至該實體儲存設(shè)備。
3. 根據(jù)權(quán)利要求1所述的提高對小型計算機接口存儲設(shè)備的存取效率的 方法,其特征在于,該小型計算機接口包括一因特網(wǎng)小型計算機接口。
4. 根據(jù)權(quán)利要求1所述的提高對小型計算機接口存儲設(shè)備的存取效率的 方法,其特征在于,將已處理完成的該些磁盤存取任務(wù)回傳至該虛擬磁盤,還 包括下列步驟調(diào)用已注冊的回調(diào)函數(shù),將執(zhí)行結(jié)果和該磁盤存取任務(wù)上下文回傳至該虛 擬磁盤中。
5. 根據(jù)權(quán)利要求1所述的提高對小型計算機接口存儲設(shè)備的存取效率的方法,其特征在于,該程序執(zhí)行優(yōu)化手段為一交換排序法、 一選擇排序法、 插入排序法、 一合并排序法與一快速排序法。
全文摘要
本發(fā)明公開了一種提高對小型計算機接口存儲設(shè)備的存取效率的方法,用以處理來自請求端的多個對實體儲存設(shè)備的存取請求,任務(wù)處理方法包括下列步驟設(shè)置任務(wù)隊列于每一個虛擬磁盤中,用以接收自服務(wù)端所發(fā)送的多個磁盤存取任務(wù);將磁盤存取任務(wù)用以寫入虛擬磁盤中的儲存地址;執(zhí)行儲存地址記錄手段,記錄具有相同儲存地址的磁盤存取任務(wù),并將其余的磁盤存取任務(wù)依序的發(fā)送至實體儲存設(shè)備;存放磁盤存取任務(wù)至實體儲存設(shè)備的請求隊列中;對請求隊列中的磁盤存取任務(wù)執(zhí)行程序順序優(yōu)化手段;將經(jīng)過程序優(yōu)化處理的磁盤存取任務(wù)回傳至虛擬磁盤。
文檔編號G06F3/06GK101470585SQ20071030610
公開日2009年7月1日 申請日期2007年12月28日 優(yōu)先權(quán)日2007年12月28日
發(fā)明者劉文涵, 陳永海, 陳玄同 申請人:英業(yè)達股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
广西| 湖南省| 西吉县| 尉氏县| 松原市| 宜宾市| 沙田区| 镇巴县| 当涂县| 庆阳市| 九寨沟县| 元阳县| 祁东县| 浪卡子县| 新昌县| 沾化县| 萍乡市| 富蕴县| 富顺县| 宁国市| 措美县| 龙南县| 昌宁县| 望江县| 甘洛县| 衡山县| 临海市| 兴海县| 洪湖市| 新民市| 册亨县| 凌云县| 龙里县| 常德市| 河津市| 南川市| 连云港市| 嵊州市| 太仓市| 峨山| 乌鲁木齐市|