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

運(yùn)行多個(gè)文件系統(tǒng)的文件服務(wù)器的內(nèi)部寫方法和服務(wù)器的制造方法

文檔序號(hào):6636023閱讀:238來源:國知局
運(yùn)行多個(gè)文件系統(tǒng)的文件服務(wù)器的內(nèi)部寫方法和服務(wù)器的制造方法
【專利摘要】本發(fā)明公開了一種運(yùn)行多個(gè)文件系統(tǒng)的文件服務(wù)器的內(nèi)部寫方法和服務(wù)器,該方法為:當(dāng)所述文件服務(wù)器的內(nèi)存的剩余空間不能夠滿足所有文件系統(tǒng)的需求時(shí),停止所述所有文件系統(tǒng)的內(nèi)部寫;啟動(dòng)第一文件系統(tǒng)的內(nèi)部寫;其中,所述第一文件系統(tǒng)為所有文件系統(tǒng)中臟數(shù)據(jù)量最小的文件系統(tǒng),所述第一文件系統(tǒng)的內(nèi)部寫為將所述緩存中第一文件系統(tǒng)的臟數(shù)據(jù)寫入硬盤的操作。該方法避免了因文件服務(wù)器的內(nèi)存不足導(dǎo)致文件系統(tǒng)被設(shè)置為寫保護(hù)狀態(tài),引起文件系統(tǒng)的如創(chuàng)建、刪除、修改等業(yè)務(wù)中斷的問題。
【專利說明】運(yùn)行多個(gè)文件系統(tǒng)的文件服務(wù)器的內(nèi)部寫方法和服務(wù)器

【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)領(lǐng)域,尤其涉及一種運(yùn)行多個(gè)文件系統(tǒng)的文件服務(wù)器的內(nèi)部寫方法和服務(wù)器。

【背景技術(shù)】
[0002]同一文件服務(wù)器通常支持同時(shí)運(yùn)行多個(gè)文件系統(tǒng),由于文件服務(wù)器的內(nèi)存有限,不可避免的會(huì)存在多個(gè)文件系統(tǒng)同時(shí)搶占文件服務(wù)器的內(nèi)存的情況。如圖1所示,為現(xiàn)有技術(shù)下多個(gè)文件系統(tǒng)的內(nèi)部寫示意圖,文件系統(tǒng)1、文件系統(tǒng)2和文件系統(tǒng)3同時(shí)進(jìn)行內(nèi)部寫,即各文件系統(tǒng)同時(shí)進(jìn)行內(nèi)部寫且各文件系統(tǒng)按照檢查點(diǎn)(Checkpoint)的順序進(jìn)行內(nèi)部寫。其中,一個(gè)事務(wù)對(duì)應(yīng)文件系統(tǒng)的一個(gè)檢查點(diǎn)上的元數(shù)據(jù)和數(shù)據(jù),每個(gè)檢查點(diǎn)上文件系統(tǒng)的元數(shù)據(jù)和數(shù)據(jù)均是一致的;內(nèi)部寫是指文件系統(tǒng)在高速緩沖存儲(chǔ)器(Cache)的分區(qū)中的臟數(shù)據(jù)寫入硬盤,臟數(shù)據(jù)是指緩存到cache中的數(shù)據(jù)塊已經(jīng)修改了,但是還沒寫入到硬盤中的數(shù)據(jù)。
[0003]為了提升主機(jī)的響應(yīng)速度,文件系統(tǒng)通常先將數(shù)據(jù)存儲(chǔ)到為該文件系統(tǒng)分配的Cache的分區(qū)中,然后利用后臺(tái)程序,進(jìn)行內(nèi)部寫。文件系統(tǒng)內(nèi)部需要按照檢查點(diǎn)的先后順序進(jìn)行內(nèi)部寫,如果前一個(gè)檢查點(diǎn)的內(nèi)部寫還未完成,那么下一個(gè)檢查點(diǎn)的內(nèi)部寫將被迫等待。文件系統(tǒng)在進(jìn)行內(nèi)部寫的過程中,可能還需要另外申請(qǐng)文件服務(wù)器的內(nèi)存,用于緩存進(jìn)行內(nèi)部寫的過程中產(chǎn)生的中間數(shù)據(jù)以及寫時(shí)拷貝(Copy on Write)的間接塊信息等。如果在某個(gè)檢查點(diǎn)進(jìn)行內(nèi)部寫,由于文件服務(wù)器的內(nèi)存不足導(dǎo)致申請(qǐng)占用內(nèi)存失敗時(shí),將導(dǎo)致該檢查點(diǎn)的內(nèi)部寫無法完成。由于各個(gè)文件系統(tǒng)同時(shí)進(jìn)行內(nèi)部寫,文件服務(wù)器的內(nèi)存不足,將導(dǎo)致各個(gè)文件系統(tǒng)的內(nèi)部寫均無法完成,各文件系統(tǒng)會(huì)直接將文件系統(tǒng)狀態(tài)設(shè)置為寫保護(hù)狀態(tài),拒絕主機(jī)寫10,各文件系統(tǒng)的如創(chuàng)建、刪除、修改等業(yè)務(wù)均將中斷。


【發(fā)明內(nèi)容】

[0004]本發(fā)明實(shí)施例提供一種運(yùn)行多個(gè)文件系統(tǒng)的文件服務(wù)器的內(nèi)部寫方法和服務(wù)器,用以解決現(xiàn)有技術(shù)中因文件服務(wù)器的內(nèi)存不足導(dǎo)致文件系統(tǒng)狀態(tài)被設(shè)置為寫保護(hù)狀態(tài),弓丨起文件系統(tǒng)的如創(chuàng)建、刪除、修改等業(yè)務(wù)中斷的問題。
[0005]第一方面,本發(fā)明實(shí)施例提供了一種運(yùn)行多個(gè)文件系統(tǒng)的文件服務(wù)器的內(nèi)部寫方法,該方法包括:
[0006]當(dāng)所述文件服務(wù)器的內(nèi)存的剩余空間不能夠滿足所有文件系統(tǒng)的需求時(shí),停止所述所有文件系統(tǒng)的內(nèi)部寫;
[0007]啟動(dòng)第一文件系統(tǒng)的內(nèi)部寫;其中,所述第一文件系統(tǒng)為所有文件系統(tǒng)中臟數(shù)據(jù)量最小的文件系統(tǒng),所述第一文件系統(tǒng)的內(nèi)部寫為將所述Cache中第一文件系統(tǒng)的臟數(shù)據(jù)寫入硬盤的操作。
[0008]結(jié)合第一方面,在第一方面的第一種可能的實(shí)現(xiàn)方式中,所述方法還包括:
[0009]當(dāng)所述第一文件系統(tǒng)的內(nèi)部寫成功,并且所述文件服務(wù)器的內(nèi)存的剩余空間大于預(yù)設(shè)閾值時(shí),啟動(dòng)除所述第一文件系統(tǒng)外的其他文件系統(tǒng)的內(nèi)部寫。
[0010]結(jié)合第一方面,在第一方面的第二種可能的實(shí)現(xiàn)方式中,所述方法還包括:
[0011]當(dāng)所述第一文件系統(tǒng)的內(nèi)部寫成功,并且所述文件服務(wù)器的內(nèi)存的剩余空間小于預(yù)設(shè)閾值時(shí),從除所述第一文件系統(tǒng)外的其他文件系統(tǒng)中選擇第二文件系統(tǒng),啟動(dòng)所述第二文件系統(tǒng)的內(nèi)部寫;其中,所述第二文件系統(tǒng)為除所述第一文件系統(tǒng)外的其他文件系統(tǒng)中臟數(shù)據(jù)量最小的文件系統(tǒng)。
[0012]結(jié)合第一方面,在第一方面的第三種可能的實(shí)現(xiàn)方式中,所述方法還包括:
[0013]當(dāng)所述第一文件系統(tǒng)的內(nèi)部寫失敗,則將所述第一文件系統(tǒng)的臟數(shù)據(jù)以單個(gè)文件或單個(gè)目錄為單位進(jìn)行內(nèi)部寫。
[0014]結(jié)合第一方面的第三種可能的實(shí)現(xiàn)方式,在第一方面的第四種可能的實(shí)現(xiàn)方式中,還包括:
[0015]將所述第一文件系統(tǒng)的臟數(shù)據(jù)以單個(gè)文件或單個(gè)目錄為單位進(jìn)行內(nèi)部寫,在所述第一文件系統(tǒng)的任意一個(gè)檢查點(diǎn)的內(nèi)部寫完成后,將所述第一文件系統(tǒng)的與所述任意一個(gè)檢查點(diǎn)對(duì)應(yīng)的的根節(jié)點(diǎn)寫入硬盤。
[0016]第二方面,本發(fā)明實(shí)施例提供了一種運(yùn)行多個(gè)文件系統(tǒng)的文件服務(wù)器,該文件服務(wù)器包括:
[0017]停止單元,用于當(dāng)所述文件服務(wù)器的內(nèi)存的剩余空間不能夠滿足所有文件系統(tǒng)的需求時(shí),停止所述所有文件系統(tǒng)的內(nèi)部寫;
[0018]啟動(dòng)單元,用于啟動(dòng)第一文件系統(tǒng)的內(nèi)部寫;其中,所述第一文件系統(tǒng)為所有文件系統(tǒng)中臟數(shù)據(jù)量最小的文件系統(tǒng),所述第一文件系統(tǒng)的內(nèi)部寫為將所述Cache中第一文件系統(tǒng)的臟數(shù)據(jù)寫入硬盤的操作。
[0019]結(jié)合第二方面,在第二方面的第一種可能的實(shí)現(xiàn)方式中,所述啟動(dòng)單元還用于:
[0020]當(dāng)所述第一文件系統(tǒng)的內(nèi)部寫成功,并且所述文件服務(wù)器的內(nèi)存的剩余空間大于預(yù)設(shè)閾值時(shí),啟動(dòng)除所述第一文件系統(tǒng)外的其他文件系統(tǒng)的內(nèi)部寫。
[0021]結(jié)合第二方面,在第二方面的第二種可能的實(shí)現(xiàn)方式中,所述啟動(dòng)單元還用于:
[0022]當(dāng)所述第一文件系統(tǒng)的內(nèi)部寫成功,并且所述文件服務(wù)器的內(nèi)存的剩余空間小于預(yù)設(shè)閾值時(shí),從除所述第一文件系統(tǒng)外的其他文件系統(tǒng)中選擇第二文件系統(tǒng),啟動(dòng)所述第二文件系統(tǒng)的內(nèi)部寫;其中,所述第二文件系統(tǒng)為除所述第一文件系統(tǒng)外的其他文件系統(tǒng)中臟數(shù)據(jù)量最小的文件系統(tǒng)。
[0023]結(jié)合第二方面,在第二方面的第三種可能的實(shí)現(xiàn)方式中,所述啟動(dòng)單元還用于:
[0024]當(dāng)所述第一文件系統(tǒng)的內(nèi)部寫失敗,則將所述第一文件系統(tǒng)的臟數(shù)據(jù)以單個(gè)文件或單個(gè)目錄為單位進(jìn)行內(nèi)部寫。
[0025]結(jié)合第二方面的第三種可能的實(shí)現(xiàn)方式,在第二方面的第四種可能的實(shí)現(xiàn)方式中,所述啟動(dòng)單元還用于:
[0026]將所述第一文件系統(tǒng)的臟數(shù)據(jù)以單個(gè)文件或單個(gè)目錄為單位進(jìn)行內(nèi)部寫,在所述第一文件系統(tǒng)的任意一個(gè)檢查點(diǎn)的內(nèi)部寫完成后,將所述第一文件系統(tǒng)的與所述任意一個(gè)檢查點(diǎn)對(duì)應(yīng)的的根節(jié)點(diǎn)寫入硬盤。
[0027]第三方面,本發(fā)明實(shí)施例提供了一種運(yùn)行多個(gè)文件系統(tǒng)的文件服務(wù)器,包括中央處理單元和內(nèi)存,所述內(nèi)存存儲(chǔ)計(jì)算機(jī)指令,所述中央處理單元執(zhí)行所述計(jì)算機(jī)指令用于執(zhí)行本發(fā)明實(shí)施例第一方面或第一方面的第一至四任一可能的實(shí)施方式。
[0028]利用本發(fā)明實(shí)施例提供的方案,當(dāng)多個(gè)文件系統(tǒng)在內(nèi)部寫的過程中遇到文件服務(wù)器的內(nèi)存不足的情況時(shí),通過停止所有文件系統(tǒng)的內(nèi)部寫然后依次開啟文件系統(tǒng)的內(nèi)部寫,以及在單文件系統(tǒng)內(nèi)以單個(gè)文件或目錄為單位進(jìn)行內(nèi)部寫的方法,避免了因內(nèi)存不足導(dǎo)致文件系統(tǒng)被設(shè)置為寫保護(hù)狀態(tài),引起文件系統(tǒng)的如創(chuàng)建、刪除、修改等業(yè)務(wù)中斷的問題。

【專利附圖】

【附圖說明】
[0029]圖1為現(xiàn)有技術(shù)下多個(gè)文件系統(tǒng)的內(nèi)部寫示意圖;
[0030]圖2為本發(fā)明實(shí)施例提供的一種運(yùn)行多個(gè)文件系統(tǒng)的文件服務(wù)器的內(nèi)部寫方法的流程圖;
[0031]圖3為本發(fā)明實(shí)施例多個(gè)文件系統(tǒng)的內(nèi)部寫示意圖;
[0032]圖4為本發(fā)明實(shí)施例單個(gè)文件系統(tǒng)內(nèi)部的內(nèi)部寫示意圖;
[0033]圖5為本發(fā)明實(shí)施例提供的一種文件服務(wù)器的結(jié)構(gòu)圖。

【具體實(shí)施方式】
[0034]本發(fā)明實(shí)施例提供了一種運(yùn)行多個(gè)文件系統(tǒng)的文件服務(wù)器的內(nèi)部寫方法和服務(wù)器,當(dāng)多個(gè)文件系統(tǒng)在內(nèi)部寫的過程中遇到文件服務(wù)器的內(nèi)存不足的情況時(shí),通過停止所有文件系統(tǒng)的內(nèi)部寫然后依次開啟文件系統(tǒng)的內(nèi)部寫的方法,避免了因文件服務(wù)器的內(nèi)存不足導(dǎo)致文件系統(tǒng)被設(shè)置為寫保護(hù)狀態(tài),引起文件系統(tǒng)的如創(chuàng)建、刪除、修改等業(yè)務(wù)中斷的冋題。
[0035]下面結(jié)合說明書附圖和各實(shí)施例對(duì)本發(fā)明技術(shù)方案進(jìn)行說明。
[0036]參閱圖2所示,本發(fā)明實(shí)施例提供了一種運(yùn)行多個(gè)文件系統(tǒng)的文件服務(wù)器的內(nèi)部寫方法,該方法的實(shí)施流程如下:
[0037]步驟201:當(dāng)文件服務(wù)器的內(nèi)存的剩余空間不能夠滿足所有文件系統(tǒng)的需求時(shí),停止所有文件系統(tǒng)的內(nèi)部寫。
[0038]任意一個(gè)文件系統(tǒng)在內(nèi)部寫的過程中發(fā)現(xiàn)文件服務(wù)器的內(nèi)存不足時(shí),即刻上報(bào)到文件服務(wù)器,文件服務(wù)器根據(jù)上報(bào)的內(nèi)存不足的消息,遍歷各個(gè)文件系統(tǒng),調(diào)用文件系統(tǒng)暫停內(nèi)部寫的接口,以停止所有文件系統(tǒng)的內(nèi)部寫。
[0039]但是,在停止所有文件系統(tǒng)的內(nèi)部寫的過程中,文件服務(wù)器不會(huì)中斷所有文件系統(tǒng)的外部寫,外部寫為將接收的用戶數(shù)據(jù)寫入Cache的操作。因?yàn)槲募到y(tǒng)的外部寫不中斷,即表示主機(jī)寫1不中斷,從而文件系統(tǒng)對(duì)外的業(yè)務(wù)不會(huì)中斷。
[0040]步驟202:啟動(dòng)第一文件系統(tǒng)的內(nèi)部寫;其中,第一文件系統(tǒng)為所有文件系統(tǒng)中臟數(shù)據(jù)量最小的文件系統(tǒng),第一文件系統(tǒng)的內(nèi)部寫為將Cache中第一文件系統(tǒng)的臟數(shù)據(jù)寫入硬盤的操作。
[0041 ] 其中,臟數(shù)據(jù)包含了文件系統(tǒng)的數(shù)據(jù)以及元數(shù)據(jù)。
[0042]具體地,文件服務(wù)器分別獲取Cache中緩存的各個(gè)文件系統(tǒng)對(duì)應(yīng)的臟數(shù)據(jù)量,從中篩選出臟數(shù)據(jù)量最小的文件系統(tǒng),并僅啟動(dòng)該臟數(shù)據(jù)量最小的文件系統(tǒng)的內(nèi)部寫。
[0043]例如,如圖3所示,若文件系統(tǒng)I為被選中的臟數(shù)據(jù)量最小的文件系統(tǒng),那么文件系統(tǒng)I將重新啟動(dòng)內(nèi)部寫,按照檢查點(diǎn)的順序依次將檢查點(diǎn)1、檢查點(diǎn)2、檢查點(diǎn)3的臟數(shù)據(jù)寫入硬盤,而文件系統(tǒng)2和文件系統(tǒng)3仍處于內(nèi)部寫停止的狀態(tài)。如此,文件服務(wù)器將其內(nèi)部多個(gè)文件系統(tǒng)同時(shí)進(jìn)行內(nèi)部寫的方式,轉(zhuǎn)換為順序進(jìn)行內(nèi)部寫的方式。
[0044]上述第一文件系統(tǒng)被選中開啟內(nèi)部寫后,無論能否成功將Cache中的臟數(shù)據(jù)寫入硬盤,均將內(nèi)部寫的結(jié)果上報(bào)給文件服務(wù)器。
[0045]當(dāng)?shù)谝晃募到y(tǒng)的內(nèi)部寫成功,并且文件服務(wù)器的內(nèi)存的剩余空間大于預(yù)設(shè)閾值時(shí),文件服務(wù)器便啟動(dòng)除第一文件系統(tǒng)外的其他文件系統(tǒng)的內(nèi)部寫。
[0046]當(dāng)?shù)谝晃募到y(tǒng)的內(nèi)部寫成功,并且文件服務(wù)器的內(nèi)存的剩余空間小于預(yù)設(shè)閾值時(shí),文件服務(wù)器便從除第一文件系統(tǒng)外的其他文件系統(tǒng)中選擇第二文件系統(tǒng),啟動(dòng)第二文件系統(tǒng)的內(nèi)部寫;其中,第二文件系統(tǒng)為除第一文件系統(tǒng)外的其他文件系統(tǒng)中臟數(shù)據(jù)量最小的文件系統(tǒng)。
[0047]當(dāng)?shù)谝晃募到y(tǒng)的內(nèi)部寫失敗,文件服務(wù)器則將第一文件系統(tǒng)的臟數(shù)據(jù)以單個(gè)文件或單個(gè)目錄為單位進(jìn)行內(nèi)部寫。
[0048]例如,如圖4所示,文件系統(tǒng)I在內(nèi)部寫檢查點(diǎn)I的臟數(shù)據(jù)時(shí),將文件1、文件2、文件3、目錄4分別作為一組,首先將組成文件I的塊(Chunk)O和塊I同時(shí)寫入硬盤,完成后再將文件2的塊0、塊1、塊2寫入硬盤,依次類推,直至將組成目錄4的塊O寫入硬盤,從而完成將檢查點(diǎn)I的臟數(shù)據(jù)全部寫入硬盤。如此,文件服務(wù)器將同一文件系統(tǒng)內(nèi)部同一檢查點(diǎn)的多個(gè)文件和目錄同時(shí)寫入硬盤的方式,轉(zhuǎn)換為以單個(gè)文件或目錄為一組、分組寫入硬盤的方式。
[0049]現(xiàn)有技術(shù)中,文件系統(tǒng)內(nèi)部同一檢查點(diǎn)的文件和目錄是同時(shí)寫入硬盤的,在所有檢查點(diǎn)的文件、目錄和元數(shù)據(jù)寫入硬盤之后,文件系統(tǒng)再將該文件系統(tǒng)的根節(jié)點(diǎn)寫入硬盤。這里,文件系統(tǒng)的根節(jié)點(diǎn)可以理解為一種指針,其指向了該文件系統(tǒng)的所有文件、目錄和元數(shù)據(jù)在硬盤上的存儲(chǔ)地址。當(dāng)遭遇非正常斷電等特殊情況時(shí),文件服務(wù)器正常開機(jī)后硬盤中的文件、目錄和元數(shù)據(jù)都將處在同一個(gè)檢查點(diǎn),即同一檢查點(diǎn)的所有文件和目錄要么全部有效,要么全部無效,這是文件系統(tǒng)的一致性。
[0050]而本發(fā)明實(shí)施例在文件系統(tǒng)內(nèi)部采用了將同一檢查點(diǎn)的文件和目錄按照單個(gè)文件或目錄分組進(jìn)行內(nèi)部寫的方式,為了維持文件系統(tǒng)的一致性,防止出現(xiàn)當(dāng)遭遇非正常斷電等特殊情況文件服務(wù)器正常開機(jī)后,硬盤中同一檢查點(diǎn)對(duì)應(yīng)的文件、目錄和元數(shù)據(jù)部分有效、部分無效的情況,文件服務(wù)器將第一文件系統(tǒng)的臟數(shù)據(jù)以單個(gè)文件或單個(gè)目錄為單位進(jìn)行內(nèi)部寫,在第一文件系統(tǒng)的一個(gè)檢查點(diǎn)A的內(nèi)部寫完成后,將第一文件系統(tǒng)的與檢查點(diǎn)A對(duì)應(yīng)的的根節(jié)點(diǎn)寫入硬盤,該根節(jié)點(diǎn)指向了該檢查點(diǎn)A的文件、目錄及元數(shù)據(jù)在硬盤上的存儲(chǔ)地址。如此,只要該檢查點(diǎn)A的根節(jié)點(diǎn)沒有被寫入硬盤,已寫入硬盤的文件和目錄對(duì)于文件服務(wù)器而言都是不可見的,并且元數(shù)據(jù)也不會(huì)生效,從而保證了文件系統(tǒng)的一致性;其中,檢查點(diǎn)A表示文件系統(tǒng)的一個(gè)檢查點(diǎn)。
[0051]參閱圖5所示,本發(fā)明實(shí)施例提供了一種文件服務(wù)器50,用于實(shí)現(xiàn)本發(fā)明圖2所示的運(yùn)行多個(gè)文件系統(tǒng)的文件服務(wù)器的內(nèi)部寫方法,該文件服務(wù)器50包括:
[0052]停止單元501,用于當(dāng)文件服務(wù)器50的內(nèi)存的剩余空間不能夠滿足所有文件系統(tǒng)的需求時(shí),停止所有文件系統(tǒng)的內(nèi)部寫。
[0053]啟動(dòng)單元502,用于啟動(dòng)第一文件系統(tǒng)的內(nèi)部寫;其中,第一文件系統(tǒng)為所有文件系統(tǒng)中臟數(shù)據(jù)量最小的文件系統(tǒng),第一文件系統(tǒng)的內(nèi)部寫為將Cache中第一文件系統(tǒng)的臟數(shù)據(jù)寫入硬盤的操作。
[0054]進(jìn)一步地,在所有文件系統(tǒng)的內(nèi)部寫停止的過程中,所有文件系統(tǒng)的外部寫并不中斷,外部寫為將接收的用戶數(shù)據(jù)寫入Cache的操作。
[0055]進(jìn)一步地,當(dāng)?shù)谝晃募到y(tǒng)的內(nèi)部寫成功,并且文件服務(wù)器50的內(nèi)存的剩余空間大于預(yù)設(shè)閾值時(shí),啟動(dòng)單元502將啟動(dòng)除第一文件系統(tǒng)外的其他文件系統(tǒng)的內(nèi)部寫。
[0056]當(dāng)?shù)谝晃募到y(tǒng)的內(nèi)部寫成功,并且文件服務(wù)器50的內(nèi)存的剩余空間小于預(yù)設(shè)閾值時(shí),啟動(dòng)單元502將從除第一文件系統(tǒng)外的其他文件系統(tǒng)中選擇第二文件系統(tǒng),啟動(dòng)第二文件系統(tǒng)的內(nèi)部寫;其中,第二文件系統(tǒng)為除第一文件系統(tǒng)外的其他文件系統(tǒng)中臟數(shù)據(jù)量最小的文件系統(tǒng)。
[0057]當(dāng)?shù)谝晃募到y(tǒng)的內(nèi)部寫失敗,則啟動(dòng)單元502將第一文件系統(tǒng)的臟數(shù)據(jù)以單個(gè)文件或單個(gè)目錄為單位進(jìn)行內(nèi)部寫。
[0058]進(jìn)一步地,啟動(dòng)單元502將第一文件系統(tǒng)的臟數(shù)據(jù)以單個(gè)文件或單個(gè)目錄為單位進(jìn)行內(nèi)部寫時(shí),在第一文件系統(tǒng)的任意一個(gè)檢查點(diǎn)的內(nèi)部寫完成后,啟動(dòng)單元502將第一文件系統(tǒng)的與該任意一個(gè)檢查點(diǎn)對(duì)應(yīng)的的根節(jié)點(diǎn)寫入硬盤。
[0059]本發(fā)明實(shí)施例提供了一種運(yùn)行多個(gè)文件系統(tǒng)的文件服務(wù)器,包括中央處理單元和內(nèi)存,所述內(nèi)存存儲(chǔ)計(jì)算機(jī)指令,所述中央處理單元執(zhí)行所述計(jì)算機(jī)指令用于執(zhí)行本發(fā)明實(shí)施例描述的任一方法。
[0060]綜上所述,本發(fā)明實(shí)施例提供的技術(shù)方案,當(dāng)多個(gè)文件系統(tǒng)在內(nèi)部寫的過程中遇到文件服務(wù)器的內(nèi)存不足的情況時(shí),通過停止所有文件系統(tǒng)的內(nèi)部寫然后依次開啟文件系統(tǒng)的內(nèi)部寫,以及在單文件系統(tǒng)內(nèi)部將同一檢查點(diǎn)的數(shù)據(jù)以單個(gè)文件或目錄為單位進(jìn)行內(nèi)部寫的方式,并且在這個(gè)過程中不中斷文件系統(tǒng)的外部寫,從而避免了因文件服務(wù)器的內(nèi)存不足導(dǎo)致文件系統(tǒng)被設(shè)置為寫保護(hù)狀態(tài),引起文件系統(tǒng)的如創(chuàng)建、刪除、修改等業(yè)務(wù)中斷的問題。
[0061]本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本發(fā)明的實(shí)施例可提供為方法、系統(tǒng)、或計(jì)算機(jī)程序產(chǎn)品。因此,本發(fā)明可采用完全硬件實(shí)施例、完全軟件實(shí)施例、或結(jié)合軟件和硬件方面的實(shí)施例的形式。而且,本發(fā)明可采用在一個(gè)或多個(gè)其中包含有計(jì)算機(jī)可用程序代碼的計(jì)算機(jī)非易失性存儲(chǔ)介質(zhì)(包括但不限于磁盤存儲(chǔ)器、CD-ROM、光學(xué)存儲(chǔ)器等)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品的形式。
[0062]本發(fā)明是參照根據(jù)本發(fā)明實(shí)施例的方法、設(shè)備(系統(tǒng))、和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或方框圖來描述的。應(yīng)理解可由計(jì)算機(jī)程序指令實(shí)現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計(jì)算機(jī)程序指令到通用計(jì)算機(jī)、專用計(jì)算機(jī)、嵌入式處理機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個(gè)機(jī)器,使得通過計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的裝置。
[0063]這些計(jì)算機(jī)程序指令也可存儲(chǔ)在能引導(dǎo)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計(jì)算機(jī)可讀存儲(chǔ)器中,使得存儲(chǔ)在該計(jì)算機(jī)可讀存儲(chǔ)器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能。
[0064]這些計(jì)算機(jī)程序指令也可裝載到計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的處理,從而在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行的指令提供用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的步驟。
[0065]盡管已描述了本發(fā)明的優(yōu)選實(shí)施例,但本領(lǐng)域內(nèi)的技術(shù)人員一旦得知了基本創(chuàng)造性概念,則可對(duì)這些實(shí)施例作出另外的變更和修改。所以,所附權(quán)利要求意欲解釋為包括優(yōu)選實(shí)施例以及落入本發(fā)明范圍的所有變更和修改。
[0066]顯然,本領(lǐng)域的技術(shù)人員可以對(duì)本發(fā)明實(shí)施例進(jìn)行各種改動(dòng)和變型而不脫離本發(fā)明實(shí)施例的范圍。這樣,倘若本發(fā)明實(shí)施例的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動(dòng)和變型在內(nèi)。
【權(quán)利要求】
1.一種運(yùn)行多個(gè)文件系統(tǒng)的文件服務(wù)器的內(nèi)部寫方法,其特征在于,包括: 當(dāng)所述文件服務(wù)器的內(nèi)存的剩余空間不能夠滿足所有文件系統(tǒng)的需求時(shí),停止所述所有文件系統(tǒng)的內(nèi)部寫; 啟動(dòng)第一文件系統(tǒng)的內(nèi)部寫;其中,所述第一文件系統(tǒng)為所有文件系統(tǒng)中臟數(shù)據(jù)量最小的文件系統(tǒng),所述第一文件系統(tǒng)的內(nèi)部寫為將所述緩存中第一文件系統(tǒng)的臟數(shù)據(jù)寫入硬盤的操作。
2.如權(quán)利要求1所述的方法,其特征在于,所述方法還包括: 當(dāng)所述第一文件系統(tǒng)的內(nèi)部寫成功,并且所述文件服務(wù)器的內(nèi)存的剩余空間大于預(yù)設(shè)閾值時(shí),啟動(dòng)除所述第一文件系統(tǒng)外的其他文件系統(tǒng)的內(nèi)部寫。
3.如權(quán)利要求1所述的方法,其特征在于,所述方法還包括: 當(dāng)所述第一文件系統(tǒng)的內(nèi)部寫成功,并且所述文件服務(wù)器的內(nèi)存的剩余空間小于預(yù)設(shè)閾值時(shí),從除所述第一文件系統(tǒng)外的其他文件系統(tǒng)中選擇第二文件系統(tǒng),啟動(dòng)所述第二文件系統(tǒng)的內(nèi)部寫;其中,所述第二文件系統(tǒng)為除所述第一文件系統(tǒng)外的其他文件系統(tǒng)中臟數(shù)據(jù)量最小的文件系統(tǒng)。
4.如權(quán)利要求1所述的方法,其特征在于,所述方法還包括: 當(dāng)所述第一文件系統(tǒng)的內(nèi)部寫失敗,則將所述第一文件系統(tǒng)的臟數(shù)據(jù)以單個(gè)文件或單個(gè)目錄為單位進(jìn)行內(nèi)部寫。
5.如權(quán)利要求4所述的方法,其特征在于,還包括: 將所述第一文件系統(tǒng)的臟數(shù)據(jù)以單個(gè)文件或單個(gè)目錄為單位進(jìn)行內(nèi)部寫,在所述第一文件系統(tǒng)的任意一個(gè)檢查點(diǎn)的內(nèi)部寫完成后,將所述第一文件系統(tǒng)的與所述任意一個(gè)檢查點(diǎn)對(duì)應(yīng)的的根節(jié)點(diǎn)寫入硬盤。
6.一種運(yùn)行多個(gè)文件系統(tǒng)的文件服務(wù)器,其特征在于,包括: 停止單元,用于當(dāng)所述文件服務(wù)器的內(nèi)存的剩余空間不能夠滿足所有文件系統(tǒng)的需求時(shí),停止所述所有文件系統(tǒng)的內(nèi)部寫; 啟動(dòng)單元,用于啟動(dòng)第一文件系統(tǒng)的內(nèi)部寫;其中,所述第一文件系統(tǒng)為所有文件系統(tǒng)中臟數(shù)據(jù)量最小的文件系統(tǒng),所述第一文件系統(tǒng)的內(nèi)部寫為將所述緩存中第一文件系統(tǒng)的臟數(shù)據(jù)寫入硬盤的操作。
7.如權(quán)利要求6所述的文件服務(wù)器,其特征在于,所述啟動(dòng)單元還用于: 當(dāng)所述第一文件系統(tǒng)的內(nèi)部寫成功,并且所述文件服務(wù)器的內(nèi)存的剩余空間大于預(yù)設(shè)閾值時(shí),啟動(dòng)除所述第一文件系統(tǒng)外的其他文件系統(tǒng)的內(nèi)部寫。
8.如權(quán)利要求6所述的文件服務(wù)器,其特征在于,所述啟動(dòng)單元還用于: 當(dāng)所述第一文件系統(tǒng)的內(nèi)部寫成功,并且所述文件服務(wù)器的內(nèi)存的剩余空間小于預(yù)設(shè)閾值時(shí),從除所述第一文件系統(tǒng)外的其他文件系統(tǒng)中選擇第二文件系統(tǒng),啟動(dòng)所述第二文件系統(tǒng)的內(nèi)部寫;其中,所述第二文件系統(tǒng)為除所述第一文件系統(tǒng)外的其他文件系統(tǒng)中臟數(shù)據(jù)量最小的文件系統(tǒng)。
9.如權(quán)利要求6所述的文件服務(wù)器,其特征在于,所述啟動(dòng)單元還用于: 當(dāng)所述第一文件系統(tǒng)的內(nèi)部寫失敗,則將所述第一文件系統(tǒng)的臟數(shù)據(jù)以單個(gè)文件或單個(gè)目錄為單位進(jìn)行內(nèi)部寫。
10.如權(quán)利要求9所述的文件服務(wù)器,其特征在于,所述啟動(dòng)單元還用于: 將所述第一文件系統(tǒng)的臟數(shù)據(jù)以單個(gè)文件或單個(gè)目錄為單位進(jìn)行內(nèi)部寫,在所述第一文件系統(tǒng)的任意一個(gè)檢查點(diǎn)的內(nèi)部寫完成后,將所述第一文件系統(tǒng)的與所述任意一個(gè)檢查點(diǎn)對(duì)應(yīng)的的根節(jié)點(diǎn)寫入硬盤。
11.一種運(yùn)行多個(gè)文件系統(tǒng)的文件服務(wù)器,其特征在于,所述文件服務(wù)器包括中央處理單元和內(nèi)存,所述內(nèi)存存儲(chǔ)計(jì)算機(jī)指令,所述中央處理單元執(zhí)行所述計(jì)算機(jī)指令用于執(zhí)行權(quán)利要求1至5任一所述的方法。
【文檔編號(hào)】G06F3/06GK104461382SQ201410696796
【公開日】2015年3月25日 申請(qǐng)日期:2014年11月26日 優(yōu)先權(quán)日:2014年11月26日
【發(fā)明者】陳華, 陳虎 申請(qǐng)人:華為技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
新津县| 贵港市| 青州市| 濉溪县| 南阳市| 老河口市| 饶阳县| 布拖县| 金华市| 漯河市| 黑龙江省| 北川| 横峰县| 四平市| 宝山区| 高邮市| 宝丰县| 尤溪县| 通江县| 冷水江市| 高碑店市| 镇赉县| 云林县| 海门市| 逊克县| 常熟市| 兴国县| 桑日县| 沂源县| 汝阳县| 麻城市| 新巴尔虎左旗| 延川县| 凯里市| 辽宁省| 方山县| 吉安县| 平阳县| 囊谦县| 台北市| 民勤县|