[發(fā)明專利]數(shù)據(jù)零拷貝文件的移動方法有效
| 申請?zhí)枺?/td> | 200610130982.1 | 申請日: | 2006-12-28 |
| 公開(公告)號: | CN101063963A | 公開(公告)日: | 2007-10-31 |
| 發(fā)明(設(shè)計)人: | 姜東宰;金暎鎬;車圭一;金樹永;鄭盛仁;金明俊 | 申請(專利權(quán))人: | 韓國電子通信研究院 |
| 主分類號: | G06F13/28 | 分類號: | G06F13/28;G06F12/08 |
| 代理公司: | 北京市柳沈律師事務(wù)所 | 代理人: | 邵亞麗;李曉舒 |
| 地址: | 韓國*** | 國省代碼: | 韓國;KR |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 數(shù)據(jù) 拷貝 文件 移動 方法 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及一種數(shù)據(jù)零拷貝文件的移動方法,具體涉及一種為了防止由 CPU進(jìn)行的、在用戶區(qū)域和內(nèi)核區(qū)域間的數(shù)據(jù)拷貝,通過共享內(nèi)核區(qū)域內(nèi)存 在的緩存頁面、進(jìn)行資源設(shè)備/目標(biāo)設(shè)備(例如,磁盤,網(wǎng)卡)間的文件移 動,降低由于將數(shù)據(jù)拷貝到用戶區(qū)域的CPU負(fù)荷及由此產(chǎn)生的費(fèi)用,使得提 高其整體性能的數(shù)據(jù)零拷貝文件的移動方法。
背景技術(shù)
在如多媒體流服務(wù)器這樣接收大容量的文件的移動請求的系統(tǒng)中,伴隨 著文件的大容量化,存在數(shù)據(jù)的處理費(fèi)用增加的問題,由此,CPU的可用性 成為重要的問題。
也就是說,隨著文件的移動而進(jìn)行的數(shù)據(jù)處理量增多,在用戶區(qū)域和內(nèi) 核區(qū)域間數(shù)據(jù)拷貝以及呼叫系統(tǒng)的呼出費(fèi)用增加,每單位運(yùn)算的CPU的使用 率減少,但現(xiàn)在提出了解決其的各種方法。
更詳細(xì)地說,一般為了移動文件,不得不反復(fù)對呼叫系統(tǒng)進(jìn)行呼出,但 每次呼出時,就會產(chǎn)生兩次由CPU進(jìn)行的用戶區(qū)域/內(nèi)核區(qū)域間數(shù)據(jù)拷貝和 處理(process)的環(huán)境切換(context?switching)。這是,使CPU資源的費(fèi)用 增加的演算,并且,在處理多數(shù)的大容量數(shù)據(jù)移動請求的系統(tǒng)的立場上來看, 使其負(fù)荷加重。
為了解決這樣的情況,分別以硬件性方式和軟件性方式開發(fā)了通過數(shù)據(jù) 零拷貝方式的文件的移動技術(shù)。
其中,硬件性方式主要在網(wǎng)卡領(lǐng)域的研究比較多,是通過將存在于網(wǎng)卡 中的存儲器連接到存在于用戶區(qū)域的一定區(qū)域的地址空間,由此,發(fā)送到網(wǎng) 絡(luò)的數(shù)據(jù)不會被拷貝到內(nèi)核區(qū)域內(nèi),而是從用戶區(qū)域直接向網(wǎng)絡(luò)設(shè)備拷貝和 發(fā)送的方式。此時,所述數(shù)據(jù)拷貝不以CPU而是以DMA(Direct?Memory Access)的方式被拷貝。
而且,軟件性方式主要通過將用戶區(qū)域的一定地址空間和分配給內(nèi)核區(qū) 域的一定存儲區(qū)域相互連接,將被指定的存儲區(qū)域內(nèi)的數(shù)據(jù)不在用戶區(qū)域或 內(nèi)核區(qū)域內(nèi)拷貝,可以直接接觸的方式。
這些方式都是通過所指定的存儲區(qū)域間重映射(re-mapping)而進(jìn)行, 因此,為了使用這些方式,在存儲區(qū)域中要求追加的管理的問題,如對被指 定的存儲區(qū)域的生成過程、請求進(jìn)行處理的存儲器的分配和解除。
以下,對以往的技術(shù)的、用于進(jìn)行用戶區(qū)域和內(nèi)核區(qū)域間的文件移動的 方法進(jìn)行說明。
圖1是用于說明使用了有關(guān)以往技術(shù)的用戶區(qū)域和內(nèi)核區(qū)域間數(shù)據(jù)拷貝 的文件移動方式的一個實(shí)施方式的圖。
內(nèi)核在進(jìn)行一般的文件移動運(yùn)算時,位于用戶區(qū)域的應(yīng)用程序103請求 讀出文件,并從內(nèi)核分配用于讀出在資源設(shè)備101中所存儲的數(shù)據(jù)的頁面 105。此時,在資源(source)設(shè)備101為網(wǎng)卡的情況下,分配套接緩存器107。 接著,通過DMA方式從資源設(shè)備101向所述被分配的頁面105或套接緩存 器107上拷貝一次數(shù)據(jù)后,通過CPU,所述頁面105或套接緩存器107內(nèi)的 數(shù)據(jù)被二次拷貝110、114到用戶緩存器104上。
之后,在用戶區(qū)域中,對存儲在所述用戶緩存器104中的數(shù)據(jù)請求移動 到目標(biāo)(target)設(shè)備100,因此,從內(nèi)核分配出頁面106或套接緩存器108。 接著,通過CPU,存儲在用戶緩存器104的數(shù)據(jù)一次拷貝到所述被分配的頁 面106或套接緩存器108后,通過DMA方式,二次拷貝112,116到目標(biāo)設(shè) 備100上。
在所述拷貝過程中,移動對象文件中所包含的全部的數(shù)據(jù),在用戶區(qū)域 內(nèi)以所分配的存儲區(qū)域反復(fù)進(jìn)行移動,但是,每次文件從內(nèi)核區(qū)域到用戶區(qū) 域或者以相反的情況進(jìn)行移動時,就會產(chǎn)生該處理的環(huán)境切換。接著,所述 用戶區(qū)域的請求是表示呼叫系統(tǒng)的呼出,為了將一定單位的文件內(nèi)的數(shù)據(jù)在 設(shè)備(磁盤、網(wǎng)卡等)間移動,需要兩次CPU的拷貝和兩次呼叫系統(tǒng)的呼出。
以下,對于有關(guān)文件移動的現(xiàn)有技術(shù),舉出具體例進(jìn)行說明。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于韓國電子通信研究院,未經(jīng)韓國電子通信研究院許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200610130982.1/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 上一篇:圖像處理裝置
- 下一篇:一種新型故障車電子警告牌
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法、數(shù)據(jù)系統(tǒng)、接收設(shè)備和數(shù)據(jù)讀取方法
- 數(shù)據(jù)記錄方法、數(shù)據(jù)記錄裝置、數(shù)據(jù)記錄媒體、數(shù)據(jù)重播方法和數(shù)據(jù)重播裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)發(fā)送系統(tǒng)、數(shù)據(jù)發(fā)送裝置以及數(shù)據(jù)結(jié)構(gòu)
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法及數(shù)據(jù)系統(tǒng)
- 數(shù)據(jù)嵌入裝置、數(shù)據(jù)嵌入方法、數(shù)據(jù)提取裝置及數(shù)據(jù)提取方法
- 數(shù)據(jù)管理裝置、數(shù)據(jù)編輯裝置、數(shù)據(jù)閱覽裝置、數(shù)據(jù)管理方法、數(shù)據(jù)編輯方法以及數(shù)據(jù)閱覽方法
- 數(shù)據(jù)發(fā)送和數(shù)據(jù)接收設(shè)備、數(shù)據(jù)發(fā)送和數(shù)據(jù)接收方法
- 數(shù)據(jù)發(fā)送裝置、數(shù)據(jù)接收裝置、數(shù)據(jù)收發(fā)系統(tǒng)、數(shù)據(jù)發(fā)送方法、數(shù)據(jù)接收方法和數(shù)據(jù)收發(fā)方法
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置





