[發(fā)明專利]一種分布式文件系統(tǒng)客戶端的文件系統(tǒng)有效
| 申請(qǐng)?zhí)枺?/td> | 201110326447.4 | 申請(qǐng)日: | 2011-10-25 |
| 公開(kāi)(公告)號(hào): | CN102541984A | 公開(kāi)(公告)日: | 2012-07-04 |
| 發(fā)明(設(shè)計(jì))人: | 楊浩;馬照云;馬振杰;張東陽(yáng);邵宗有;劉新春;苗艷超;王勇 | 申請(qǐng)(專利權(quán))人: | 曙光信息產(chǎn)業(yè)(北京)有限公司 |
| 主分類號(hào): | G06F17/30 | 分類號(hào): | G06F17/30;G06F12/08 |
| 代理公司: | 北京安博達(dá)知識(shí)產(chǎn)權(quán)代理有限公司 11271 | 代理人: | 徐國(guó)文 |
| 地址: | 100084 *** | 國(guó)省代碼: | 北京;11 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 分布式 文件系統(tǒng) 客戶端 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及分布式文件系統(tǒng)中高效的元數(shù)據(jù)緩存管理機(jī)制,具體來(lái)說(shuō),涉及一種分布式文件系統(tǒng)客戶端的文件系統(tǒng)。?
背景技術(shù)
在目前的主流分布式文件系統(tǒng),如NFS、Lustre、GPFS等,所有的模塊均處于Linux內(nèi)核態(tài),由于內(nèi)核態(tài)開(kāi)發(fā)的難點(diǎn)比較多,因而相比較而言,這些文件系統(tǒng)的開(kāi)發(fā)和維護(hù)的成本相對(duì)比較高。近幾年,一些新興的分布式文件系統(tǒng),如Google?FS、HDFS、MooseFS等,均將各個(gè)部分放在用戶態(tài),以降低開(kāi)發(fā)難度。?
對(duì)于基于用戶態(tài)的分布式文件系統(tǒng),如果需要支持系統(tǒng)標(biāo)準(zhǔn)的文件系統(tǒng)操作,則無(wú)法完全避開(kāi)內(nèi)核態(tài),因?yàn)橄到y(tǒng)調(diào)用必須要先進(jìn)入內(nèi)核態(tài)。為了解決這一問(wèn)題,HDFS、MooseFS等采用了目前Linux內(nèi)核自帶的用戶空間文件系統(tǒng)FUSE的架構(gòu)進(jìn)行客戶端的開(kāi)發(fā)。?
FUSE通過(guò)建立一個(gè)輔助設(shè)備和用戶態(tài)進(jìn)行通信,通過(guò)將內(nèi)核態(tài)系統(tǒng)調(diào)用的請(qǐng)求傳遞給用戶態(tài),由用戶態(tài)的守護(hù)進(jìn)程完成請(qǐng)求處理后,再通過(guò)輔助設(shè)備通知內(nèi)核態(tài)。FUSE的不足之處在于,其和用戶態(tài)通信中有太多的內(nèi)存拷貝,尤其是文件讀寫(xiě)時(shí),也需要通過(guò)數(shù)據(jù)拷貝,在內(nèi)核態(tài)模塊和用戶態(tài)守護(hù)進(jìn)程之間進(jìn)行傳遞數(shù)據(jù)。過(guò)多的內(nèi)存拷貝導(dǎo)致基于FUSE的客戶端效率低下,實(shí)驗(yàn)結(jié)果表明,采用?FUSE的客戶端,其性能損失在10%以上,因此在性能要求比較高的應(yīng)用中,基于FUSE的分布式客戶端是難以被接受的。?
發(fā)明內(nèi)容
本發(fā)明旨在公開(kāi)一種高效的用戶態(tài)分布式文件系統(tǒng)客戶端方案,該方案能夠很好地解決目前Linux內(nèi)核態(tài)自帶的用戶態(tài)文件系統(tǒng)FUSE性能低下的問(wèn)題。?
一種分布式文件系統(tǒng)客戶端的文件系統(tǒng),?
內(nèi)核態(tài)模塊注冊(cè)一個(gè)字符設(shè)備,用戶態(tài)守護(hù)進(jìn)程通過(guò)系統(tǒng)讀寫(xiě)調(diào)用來(lái)訪問(wèn)該字符設(shè)備,來(lái)讀取請(qǐng)求以及返回請(qǐng)求執(zhí)行的結(jié)果;?
所述內(nèi)核態(tài)模塊采用頁(yè)面的方式管理文件系統(tǒng)請(qǐng)求,當(dāng)收到文件系統(tǒng)相關(guān)請(qǐng)求時(shí),先將文件系統(tǒng)的請(qǐng)求加入到自定義的請(qǐng)求緩存管理區(qū);?
所述用戶態(tài)的守護(hù)進(jìn)程會(huì)有線程采用阻塞時(shí)讀取的方式,一直嘗試讀取請(qǐng)求,如果請(qǐng)求緩存區(qū)中沒(méi)有有效的請(qǐng)求,則守護(hù)進(jìn)程的讀線程會(huì)一直阻塞;當(dāng)內(nèi)核態(tài)模塊接收到文件系統(tǒng)請(qǐng)求后,會(huì)將守護(hù)進(jìn)程的讀線程喚醒。?
優(yōu)選的,所述讀線程被喚醒后,會(huì)在內(nèi)核態(tài)將文件系統(tǒng)請(qǐng)求緩存區(qū)的相關(guān)頁(yè)面映射到該進(jìn)程用戶態(tài)可以訪問(wèn)的虛擬地址,為其分配管理結(jié)構(gòu),將地址填到該管理結(jié)構(gòu)中,并通過(guò)讀系統(tǒng)調(diào)用傳遞給用戶態(tài)守護(hù)進(jìn)程,用戶態(tài)守護(hù)進(jìn)程讀取到管理結(jié)構(gòu)后,會(huì)從中取出相應(yīng)的文件系統(tǒng)請(qǐng)求,進(jìn)行處理。?
優(yōu)選的,所述管理結(jié)構(gòu)分為兩種,一種是文件系統(tǒng)請(qǐng)求,該類請(qǐng)求是變長(zhǎng)的,來(lái)自分布式文件系統(tǒng)客戶端的應(yīng)用程序;另一種是管理請(qǐng)求,該類請(qǐng)求是文件系統(tǒng)請(qǐng)求的管理結(jié)構(gòu),用于在內(nèi)核態(tài)模塊和用戶態(tài)守護(hù)進(jìn)程之間傳遞消息。?
優(yōu)選的,所述用戶態(tài)處理完請(qǐng)求后,會(huì)將處理結(jié)果填充到由內(nèi)核態(tài)模塊傳遞過(guò)來(lái)的虛擬地址當(dāng)中,通過(guò)字符設(shè)備的寫(xiě)系統(tǒng)調(diào)用通知內(nèi)核態(tài)目錄,內(nèi)核態(tài)模塊收到該寫(xiě)請(qǐng)求后,會(huì)取出管理結(jié)構(gòu),并從中取出文件系統(tǒng)請(qǐng)求,直接拷貝給應(yīng)用程序。?
優(yōu)選的,所述文件系統(tǒng)對(duì)于文件的讀寫(xiě),還需要將文件頁(yè)面緩存中相關(guān)的頁(yè)面映射到進(jìn)程的虛存空間,并通過(guò)請(qǐng)求結(jié)構(gòu)傳遞給用戶態(tài)守護(hù)進(jìn)程,用戶態(tài)進(jìn)程收到請(qǐng)求后,會(huì)直接操作文件的頁(yè)面緩存,將文件緩存頁(yè)面直接映射。?
本發(fā)明中,客戶端由內(nèi)核態(tài)模塊和用戶態(tài)守護(hù)進(jìn)程兩部分組成。這兩個(gè)模塊通過(guò)字符設(shè)備進(jìn)行通信,但是和FUSE的不同點(diǎn)在于,內(nèi)核態(tài)在與用戶態(tài)通信之前,會(huì)將需要的內(nèi)存頁(yè)面準(zhǔn)備好,并映射為用戶態(tài)可以訪問(wèn)的虛擬地址,將虛擬地址作為通信的一部分,傳遞給用戶態(tài)守護(hù)進(jìn)程。這樣以來(lái),用戶態(tài)進(jìn)程就可以直接操作內(nèi)核態(tài)事先準(zhǔn)備好的內(nèi)存區(qū)域,而不需要再進(jìn)行內(nèi)存分配,同時(shí)避免了用戶態(tài)和內(nèi)核態(tài)之間的內(nèi)存拷貝。?
具體實(shí)施方式
發(fā)明中的技術(shù)方案具體描述如下:?
(1)內(nèi)核態(tài)模塊注冊(cè)一個(gè)字符設(shè)備,用戶態(tài)進(jìn)程通過(guò)系統(tǒng)讀寫(xiě)調(diào)用來(lái)訪問(wèn)該字符設(shè)備,來(lái)讀取請(qǐng)求以及返回請(qǐng)求執(zhí)行的結(jié)果。?
(2)本發(fā)明中請(qǐng)求的管理結(jié)構(gòu)分為兩種,一種是文件系統(tǒng)請(qǐng)求,該類請(qǐng)求是變長(zhǎng)的,來(lái)自分布式文件系統(tǒng)客戶端的應(yīng)用程序;另一種是管理請(qǐng)求,該類請(qǐng)求是文件系統(tǒng)請(qǐng)求的管理結(jié)構(gòu),用于在內(nèi)核態(tài)模塊和用戶態(tài)守護(hù)進(jìn)程之間傳遞消息。?
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于曙光信息產(chǎn)業(yè)(北京)有限公司,未經(jīng)曙光信息產(chǎn)業(yè)(北京)有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110326447.4/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F17-00 特別適用于特定功能的數(shù)字計(jì)算設(shè)備或數(shù)據(jù)處理設(shè)備或數(shù)據(jù)處理方法
G06F17-10 .復(fù)雜數(shù)學(xué)運(yùn)算的
G06F17-20 .處理自然語(yǔ)言數(shù)據(jù)的
G06F17-30 .信息檢索;及其數(shù)據(jù)庫(kù)結(jié)構(gòu)
G06F17-40 .數(shù)據(jù)的獲取和記錄
G06F17-50 .計(jì)算機(jī)輔助設(shè)計(jì)





