專利名稱:嵌入式設(shè)備根文件系統(tǒng)的處理系統(tǒng)和處理方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算機(jī)嵌入式系統(tǒng)處理技術(shù)領(lǐng)域,特別是涉及一種嵌入式設(shè)備根文件 系統(tǒng)的處理系統(tǒng)和處理方法。
背景技術(shù):
嵌入式設(shè)備需要Nand Flash (Nand型閃存)或Nor Flash (Nor閃存),來存儲(chǔ)啟動(dòng) 加載程序(Boot Loader)、嵌入式操作系統(tǒng)和根文件系統(tǒng)。
根文件系統(tǒng)包括YAFFSl,YAFFS2根文件系統(tǒng)或者ROMFS,JFFS2,NFS, CRAMFS根文 件系統(tǒng)等。
但是,現(xiàn)有的對(duì)根文件系統(tǒng)的處理的方法各種各樣的缺點(diǎn)和局限性。
以 YAFF2 根文件系統(tǒng)為例,YAFFS2 (Yet Another Flash Filing System Versi0n2,閃存文件系統(tǒng)2)是專門為嵌入式系統(tǒng)所使用的Nand Flash設(shè)計(jì)的根文件系 統(tǒng)?,F(xiàn)有技術(shù)中,構(gòu)建和更新YAFFS2根文件系統(tǒng)的處理的方法有1)使用NFS (Network Fi IeSystem,網(wǎng)絡(luò)文件系統(tǒng))掛載YAFFS2根文件系統(tǒng)⑵使用啟動(dòng)加載程序(Boot Loader)和網(wǎng)絡(luò)接口構(gòu)建或者燒錄等方式實(shí)現(xiàn)YAFFS2根文件系統(tǒng)的構(gòu)建、更新等處理。
A)圖1是現(xiàn)有技術(shù)中,利用運(yùn)行在Linux(—種開源計(jì)算機(jī)操作系統(tǒng))的 PC (Personal Computer,個(gè)人計(jì)算機(jī))上的 NFS (Network File System,網(wǎng)絡(luò)文件系統(tǒng))服 務(wù)器下載和構(gòu)建YAFFS2根文件的處理流程圖。從圖1中可以看出,首先,此處理方法需要有 NFS服務(wù)器的支持;其次,要搭建網(wǎng)絡(luò)環(huán)境;再次,要配置NFS服務(wù)器;最后才能將NFS服務(wù) 器中的根文件系統(tǒng)下載到Nand Flash的第五分區(qū),構(gòu)建得到Y(jié)AFFS2根文件系統(tǒng)??梢?,用 NFS服務(wù)器掛載YAFFS2根文件系統(tǒng)的處理方法的缺點(diǎn)和局限性從NFS服務(wù)器掛載YAFFS2 根文件系統(tǒng)操作復(fù)雜,并且需要一臺(tái)外設(shè)PC作為NFS服務(wù)器才能實(shí)現(xiàn)。
中國發(fā)明專利申請(qǐng)(申請(qǐng)?zhí)?00510008394. 6)公開了采用Boot Loader、TCP/IP 協(xié)議和網(wǎng)絡(luò)接口進(jìn)行下載和構(gòu)建(燒錄)的方式更新根文件系統(tǒng)的處理方法,這類方法的 缺點(diǎn)和局限性在于,在沒有網(wǎng)絡(luò)接口的嵌入式設(shè)備中無法完成根文件系統(tǒng)的下載、更新和 構(gòu)建(燒錄),其增加了成本,并且限制了實(shí)際應(yīng)用的范圍。發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種嵌入式設(shè)備根文件系統(tǒng)的處理系統(tǒng)和處理方法,其簡(jiǎn) 化了根文件系統(tǒng)的處理過程,具有很好的易操作性。
為實(shí)現(xiàn)本發(fā)明目的而提供的一種嵌入式設(shè)備根文件系統(tǒng)的處理系統(tǒng),包括至少一 帶有標(biāo)準(zhǔn)接口的嵌入式設(shè)備,以及可通過標(biāo)準(zhǔn)接口接入到嵌入式設(shè)備的一便攜式裝置;嵌 入式設(shè)備包括根文件系統(tǒng);
所述嵌入式設(shè)備,包括第一檢測(cè)更新模塊,用于在便攜式裝置連接到所述嵌入式 設(shè)備后,檢測(cè)便攜式裝置中的更新標(biāo)志位,并對(duì)便攜式裝置中的根文件系統(tǒng)的鏡像文件與 嵌入式設(shè)備中的根文件系統(tǒng)進(jìn)行判斷比較,并根據(jù)判斷結(jié)果從便攜式裝置中讀取根文件系統(tǒng)的鏡像文件和相應(yīng)根文件系統(tǒng)信息,更新替換嵌入式設(shè)備中的根文件系統(tǒng)的文件和根文 件系統(tǒng)信息;
所述便攜式裝置,包括標(biāo)志位模塊和第一更新處理模塊;
其中
所述標(biāo)志位模塊,用于通過標(biāo)志位標(biāo)志所述便攜式裝置接入到嵌入式設(shè)備時(shí),是 否需要利用便攜式裝置中的根文件系統(tǒng)的鏡像文件更新嵌入式設(shè)備中的根文件系統(tǒng)的文 件;
所述第一更新處理模塊,用于在便攜式裝置接入到嵌入式設(shè)備后,根據(jù)嵌入式設(shè) 備的讀取請(qǐng)求,發(fā)送根文件系統(tǒng)信息及其鏡像文件到嵌入式設(shè)備。
較優(yōu)地,所述第一檢測(cè)更新模塊,包括第一接口檢測(cè)模塊,標(biāo)志位檢測(cè)模塊,第一 更新判斷模塊,第一鏡像文件覆蓋寫入模塊,第一讀取判斷模塊,第一更新版本號(hào)模塊;
其中
所述第一接口檢測(cè)模塊,用于檢測(cè)是否有便攜式裝置從標(biāo)準(zhǔn)接口接入到嵌入式設(shè) 備,并在檢測(cè)到便攜式裝置接入時(shí),啟動(dòng)便攜式裝置,向便攜式裝置發(fā)出初始化指令;
所述標(biāo)志位檢測(cè)模塊,用于檢測(cè)便攜式裝置的標(biāo)志位;
第一更新判斷模塊,用于便攜式裝置初始化完成后,在檢測(cè)便攜式裝置中的更新 標(biāo)志位為1時(shí),向便攜式裝置發(fā)出版本號(hào)讀取請(qǐng)求,得到便攜式裝置中根文件系統(tǒng)的鏡像 文件的版本號(hào)后,將所述鏡像文件版本號(hào)與嵌入式設(shè)備根文件系統(tǒng)的版本號(hào)進(jìn)行比較,判 斷是否需要更新嵌入式設(shè)備根文件系統(tǒng);
所述第一鏡像文件覆蓋寫入模塊,用于在第一更新判斷模塊判斷需要更新根文件 系統(tǒng)時(shí),向便攜式裝置發(fā)出鏡像文件讀取請(qǐng)求,并在接收到所述便攜式裝置發(fā)送來的鏡像 文件時(shí),依次將鏡像文件寫入并覆蓋更新嵌入式設(shè)備的根文件系統(tǒng);
所述第一讀取判斷模塊,用于在第一鏡像文件覆蓋寫入模塊依次讀取鏡像文件的 過程中,判斷是否已更新根文件系統(tǒng)完成;所述第一更新版本號(hào)模塊,用于在第一讀取判斷 模塊判斷已更新根文件系統(tǒng)完成后,將鏡像文件對(duì)應(yīng)的根文件系統(tǒng)的版本號(hào)寫入嵌入式設(shè) 備中。
較優(yōu)地,所述第一更新處理模塊,包括第一鏡像文件存儲(chǔ)模塊,初始化模塊,第一 版本號(hào)發(fā)送模塊,第一鏡像文件發(fā)送模塊;
其中
所述第一鏡像文件存儲(chǔ)模塊,用于存儲(chǔ)用于更新所述嵌入式設(shè)備的根文件系統(tǒng)的 新版本的根文件系統(tǒng)的鏡像文件;
所述初始化模塊,用于在所述便攜式裝置通過標(biāo)準(zhǔn)接口接入到設(shè)備并上電后,根 據(jù)設(shè)備發(fā)送來的初始化指令,對(duì)便攜式裝置進(jìn)行初始化;
所述第一版本號(hào)發(fā)送模塊,用于根據(jù)接收到的嵌入式設(shè)備的版本號(hào)讀取請(qǐng)求,將 鏡像文件對(duì)應(yīng)的根文件系統(tǒng)的版本號(hào)發(fā)送給所述嵌入式設(shè)備;
所述第一鏡像文件發(fā)送模塊,用于根據(jù)嵌入式設(shè)備的鏡像文件讀取請(qǐng)求,從第一 鏡像文件存儲(chǔ)模塊中依次讀取根文件系統(tǒng)的鏡像文件,發(fā)送給嵌入式設(shè)備。
較優(yōu)地,所述嵌入式設(shè)備根文件系統(tǒng)的處理系統(tǒng),還包括至少一鏡像設(shè)備,所述鏡 像設(shè)備包括標(biāo)準(zhǔn)接口,所述便攜式設(shè)備可通過標(biāo)準(zhǔn)接口接入到所述鏡像設(shè)備;
所述鏡像設(shè)備包括第二檢測(cè)更新模塊和標(biāo)志位改寫模塊;
其中
所述第二檢測(cè)更新模塊,用于在便攜式裝置連接到所述鏡像設(shè)備后,對(duì)便攜式裝 置中的根文件系統(tǒng)的鏡像文件與鏡像設(shè)備中的根文件系統(tǒng)進(jìn)行判斷比較,并根據(jù)判斷結(jié)果 從鏡像設(shè)備中讀取根文件系統(tǒng)的鏡像文件和相應(yīng)根文件系統(tǒng)信息,更新替換便攜式裝置中 的根文件系統(tǒng)的文件和根文件系統(tǒng)信息;
所述標(biāo)志位改寫模塊,用于在第二檢測(cè)更新模塊更新替換完成根文件系統(tǒng)的文件 和根文件系統(tǒng)信息后,向便攜式裝置發(fā)出標(biāo)志位改寫請(qǐng)求,將標(biāo)志位模塊中的更新標(biāo)志位 改寫;
所述便攜式裝置還包括第二更新處理模塊,用于在便攜式裝置接入到鏡像設(shè)備 后,根據(jù)鏡像設(shè)備的讀取請(qǐng)求,發(fā)送根文件系統(tǒng)信息及其鏡像文件到鏡像設(shè)備。
較優(yōu)地,第二檢測(cè)更新模塊,包括第二接口檢測(cè)模塊,第二鏡像文件存儲(chǔ)模塊,第 二更新判斷模塊,第二鏡像文件覆蓋寫入模塊,第二讀取判斷模塊,第二更新版本號(hào)模塊;
其中
所述第二接口檢測(cè)模塊,用于檢測(cè)是否有便攜式裝置從標(biāo)準(zhǔn)接口接入到鏡像設(shè) 備,并在檢測(cè)以便攜式裝置接入時(shí),啟動(dòng)便攜式裝置,向便攜式裝置發(fā)出初始化指令;
所述第二鏡像文件存儲(chǔ)模塊,用于存儲(chǔ)用于更新所述便攜式裝置的根文件系統(tǒng)的 新版本的根文件系統(tǒng)的鏡像文件;
第二更新判斷模塊,用于便攜式裝置初始化完成后,向便攜式裝置發(fā)出版本號(hào)讀 取請(qǐng)求,得到便攜式裝置中根文件系統(tǒng)的鏡像文件的版本號(hào)后,將所述鏡像文件版本號(hào)與 鏡像設(shè)備根文件系統(tǒng)的版本號(hào)進(jìn)行比較,判斷是否需要更新便攜式裝置的根文件系統(tǒng)的鏡 像文件;
第二鏡像文件覆蓋寫入模塊,用于在第二更新判斷模塊判斷需要更新根文件系統(tǒng) 時(shí),讀取所述第二鏡像文件存儲(chǔ)模塊中的新版本的根文件系統(tǒng)的鏡像文件,并依次將鏡像 文件寫入并覆蓋更新便攜式裝置中的根文件系統(tǒng);
第二讀取判斷模塊,用于在第二鏡像文件覆蓋寫入模塊依次讀取鏡像文件的過程 中,判斷是否已更新根文件系統(tǒng)完成;
第二更新版本號(hào)模塊,用于在第二讀取判斷模塊判斷已更新根文件系統(tǒng)完成后, 將所述新版本的鏡像文件對(duì)應(yīng)的根文件系統(tǒng)的版本號(hào)寫入便攜式裝置中。
為實(shí)現(xiàn)本發(fā)明目的還提供一種嵌入式設(shè)備根文件系統(tǒng)的處理方法,包括如下步 驟
步驟A,便攜式裝置的更新標(biāo)志位標(biāo)志所述便攜式裝置接入到嵌入式設(shè)備時(shí),是 否需要利用便攜式裝置中的根文件系統(tǒng)的鏡像文件更新嵌入式設(shè)備中的根文件系統(tǒng)的文 件;
步驟B,在便攜式裝置連接到所述嵌入式設(shè)備后,檢測(cè)便攜式裝置中的更新標(biāo)志 位,并對(duì)便攜式裝置中的根文件系統(tǒng)的鏡像文件與嵌入式設(shè)備中的根文件系統(tǒng)進(jìn)行判斷比 較,并根據(jù)判斷結(jié)果從便攜式裝置中讀取根文件系統(tǒng)的鏡像文件和相應(yīng)根文件系統(tǒng)信息, 更新替換嵌入式設(shè)備中的根文件系統(tǒng)的文件和根文件系統(tǒng)信息。
較優(yōu)地,所述嵌入式設(shè)備根文件系統(tǒng)的處理方法,還包括如下步驟
步驟A’,鏡像設(shè)備在便攜式裝置連接到所述鏡像設(shè)備后,對(duì)便攜式裝置中的根文 件系統(tǒng)的鏡像文件與鏡像設(shè)備中的根文件系統(tǒng)進(jìn)行判斷比較,并根據(jù)判斷結(jié)果從鏡像設(shè)備 中讀取根文件系統(tǒng)的鏡像文件和相應(yīng)根文件系統(tǒng)信息,更新替換便攜式裝置中的根文件系 統(tǒng)的文件和根文件系統(tǒng)信息;
步驟B’,鏡像設(shè)備更新替換完成根文件系統(tǒng)的文件和根文件系統(tǒng)信息后,向便攜 式裝置發(fā)出標(biāo)志位改寫請(qǐng)求,將更新標(biāo)志位改寫。
本發(fā)明的有益效果是本發(fā)明的嵌入式設(shè)備根文件系統(tǒng)的處理系統(tǒng)和處理方法, 其簡(jiǎn)化了根文件系統(tǒng)的處理過程,具有很好的易操作性,能夠快速構(gòu)建和更新根文件系統(tǒng), 節(jié)省網(wǎng)絡(luò)接口設(shè)備的資源和費(fèi)用,擴(kuò)大了嵌入式設(shè)備的應(yīng)用范圍。
圖1是一種現(xiàn)有技術(shù)的嵌入式設(shè)備根文件系統(tǒng)更新處理流程圖2是本發(fā)明實(shí)施例嵌入式設(shè)備根文件系統(tǒng)的處理系統(tǒng)結(jié)構(gòu)示意圖3是圖2中嵌入式設(shè)備模塊結(jié)構(gòu)示意圖4是圖2中便攜式裝置模塊結(jié)構(gòu)示意圖5是圖2中鏡像設(shè)備模塊結(jié)構(gòu)示意圖6是本發(fā)明實(shí)施例的嵌入式設(shè)備根文件系統(tǒng)的處理方法流程圖7是圖6中處理方法的較佳處理方法流程圖8是圖3中嵌入式設(shè)備一實(shí)施例結(jié)構(gòu)示意圖9是圖6中處理方法一實(shí)施例流程圖10是圖2中嵌入式設(shè)備中便攜式裝置接入檢測(cè)實(shí)現(xiàn)電路圖。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì) 本發(fā)明的嵌入式設(shè)備根文件系統(tǒng)的處理系統(tǒng)和處理方法進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解, 此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
根文件系統(tǒng)是Linux操作系統(tǒng)中一種特殊的文件系統(tǒng),是Linux操作系統(tǒng)引導(dǎo)啟 動(dòng)時(shí),默認(rèn)使用的文件系統(tǒng)。
一般而言,根文件系統(tǒng)就是Linux系統(tǒng)第一個(gè)mount (即指示操作系統(tǒng)使文件系統(tǒng) 在指定位置(安裝點(diǎn))可用,可以用mount命令構(gòu)建由目錄和安裝文件(file mounts)組 成的其他文件樹)的文件系統(tǒng)。
根文件系統(tǒng)包括Linux啟動(dòng)時(shí)所必須的目錄和關(guān)鍵性的文件,例如Linux啟動(dòng)時(shí) 都需要有init目錄下的相關(guān)文件,在Linux掛載分區(qū)時(shí)Linux —定會(huì)找/etc/fstab這個(gè) 掛載文件等,根文件系統(tǒng)中還包括了許多的應(yīng)用程序bin目錄等,任何包括這些Linux系統(tǒng) 啟動(dòng)所必須的文件都可以成為根文件系統(tǒng)。
其中一般都包括這樣一些子目錄
/etc/, /dev/, /usr/, /usr/bin/, /bin/, /var/ 等。
/etc/目錄主要含有一些系統(tǒng)配置文件;
/dev/含有設(shè)備特殊文件,用于使用文件操作語句操作設(shè)備;
/usr/存放庫函數(shù)、手冊(cè)和其它一些文件;
/bin/存放執(zhí)行程序;
/var/用于存放系統(tǒng)運(yùn)行時(shí)可變的數(shù)據(jù)或者是日志等信息。
本發(fā)明實(shí)施例的嵌入式設(shè)備根文件系統(tǒng)的處理系統(tǒng),如圖2所示,包括至少一帶 有標(biāo)準(zhǔn)接口的嵌入式設(shè)備1,以及可通過所述標(biāo)準(zhǔn)接口接入到嵌入式設(shè)備1的一便攜式裝 置2 ;
所述嵌入式設(shè)備1包括根文件系統(tǒng),根文件系統(tǒng)作為一種文件系統(tǒng),啟動(dòng)嵌入式 設(shè)備工作。
所述嵌入式設(shè)備1,如圖3所示,包括第一檢測(cè)更新模塊11,用于在便攜式裝置連 接到所述嵌入式設(shè)備后,檢測(cè)便攜式裝置中的更新標(biāo)志位,并對(duì)便攜式裝置中的根文件系 統(tǒng)的鏡像文件與嵌入式設(shè)備中的根文件系統(tǒng)進(jìn)行判斷比較,并根據(jù)判斷結(jié)果從便攜式裝置 中讀取根文件系統(tǒng)的鏡像文件和相應(yīng)根文件系統(tǒng)信息,更新替換嵌入式設(shè)備中的根文件系 統(tǒng)的文件和根文件系統(tǒng)信息。
所述根文件系統(tǒng)信息,在本發(fā)明實(shí)施例中,為根文件系統(tǒng)的版本號(hào),但其也可以是 文件系統(tǒng)大小等各種文件信息。
較佳地,第一檢測(cè)更新模塊11包括第一接口檢測(cè)模塊111,標(biāo)志位檢測(cè)模塊112, 第一更新判斷模塊113,第一鏡像文件覆蓋寫入模塊114,第一讀取判斷模塊115,第一更新 版本號(hào)模塊116 ;
其中
所述第一接口檢測(cè)模塊111,用于檢測(cè)是否有便攜式裝置從標(biāo)準(zhǔn)接口接入到嵌入 式設(shè)備,并在檢測(cè)到便攜式裝置接入時(shí),啟動(dòng)便攜式裝置,向便攜式裝置發(fā)出初始化指令;
所述標(biāo)志位檢測(cè)模塊112,用于檢測(cè)便攜式裝置的標(biāo)志位;
第一更新判斷模塊113,用于便攜式裝置初始化完成后,在檢測(cè)便攜式裝置中的更 新標(biāo)志位為1時(shí),向便攜式裝置發(fā)出版本號(hào)讀取請(qǐng)求,得到便攜式裝置中根文件系統(tǒng)的鏡 像文件的版本號(hào)后,將所述鏡像文件版本號(hào)與嵌入式設(shè)備根文件系統(tǒng)的版本號(hào)進(jìn)行比較, 判斷是否需要更新嵌入式設(shè)備根文件系統(tǒng);
所述第一鏡像文件覆蓋寫入模塊114,用于在第一更新判斷模塊113判斷需要更 新根文件系統(tǒng)時(shí),向便攜式裝置發(fā)出鏡像文件讀取請(qǐng)求,并在接收到所述便攜式裝置發(fā)送 來的鏡像文件時(shí),依次將鏡像文件寫入并覆蓋更新嵌入式設(shè)備的根文件系統(tǒng);
所述第一讀取判斷模塊115,用于在第一鏡像文件覆蓋寫入模塊114依次讀取鏡 像文件的過程中,判斷是否已更新根文件系統(tǒng)完成;
所述第一更新版本號(hào)模塊116,用于在第一讀取判斷模塊115判斷已更新根文件 系統(tǒng)完成后,將鏡像文件對(duì)應(yīng)的根文件系統(tǒng)的版本號(hào)寫入嵌入式設(shè)備中。
所述便攜式裝置2,如圖4所示,包括標(biāo)志位模塊21和第一更新處理模塊22 ;
其中
所述標(biāo)志位模塊21,用于通過標(biāo)志位標(biāo)志所述便攜式裝置接入到嵌入式設(shè)備時(shí), 是否需要利用便攜式裝置中的根文件系統(tǒng)的鏡像文件更新嵌入式設(shè)備中的根文件系統(tǒng)的 文件。
所述標(biāo)志位的值為0或1,表示FALSE或TRUE。當(dāng)標(biāo)志位為1時(shí),需要利用便攜式裝置中的根文件系統(tǒng)的鏡像文件更新嵌入式設(shè)備中的根文件系統(tǒng)的文件;當(dāng)標(biāo)志為0時(shí), 則不需要。
所述第一更新處理模塊22,用于在便攜式裝置接入到嵌入式設(shè)備后,根據(jù)嵌入式 設(shè)備的讀取請(qǐng)求,發(fā)送根文件系統(tǒng)信息及其鏡像文件到嵌入式設(shè)備。
較佳地,所述第一更新處理模塊22,包括第一鏡像文件存儲(chǔ)模塊221,初始化模塊 222,第一版本號(hào)發(fā)送模塊223,第一鏡像文件發(fā)送模塊224 ;
其中
所述第一鏡像文件存儲(chǔ)模塊221,用于存儲(chǔ)用于更新所述嵌入式設(shè)備的根文件系 統(tǒng)的新版本的根文件系統(tǒng)的鏡像文件;
所述初始化模塊222,用于在所述便攜式裝置通過標(biāo)準(zhǔn)接口接入到設(shè)備并上電后, 根據(jù)設(shè)備發(fā)送來的初始化指令,對(duì)便攜式裝置進(jìn)行初始化;
所述第一版本號(hào)發(fā)送模塊223,用于根據(jù)接收到的嵌入式設(shè)備的版本號(hào)讀取請(qǐng)求, 將鏡像文件對(duì)應(yīng)的根文件系統(tǒng)的版本號(hào)發(fā)送給所述嵌入式設(shè)備;
所述第一鏡像文件發(fā)送模塊224,用于根據(jù)嵌入式設(shè)備的鏡像文件讀取請(qǐng)求,從第 一鏡像文件存儲(chǔ)模塊中依次讀取根文件系統(tǒng)的鏡像文件,發(fā)送給嵌入式設(shè)備。
本發(fā)明實(shí)施例的標(biāo)準(zhǔn)接口,可以是SD卡的標(biāo)準(zhǔn)接口,對(duì)應(yīng)的便攜式裝置2 為SD卡(Security Digital Card);也可以是USB接口,對(duì)應(yīng)的便攜式裝置2為U盤 (UniversalSerial Bus Flash Disk,通用串行總線閃存盤);也可以是CF卡標(biāo)準(zhǔn)接口,對(duì) 應(yīng)的便攜式裝置2為CF(Compact Flash Card)等。
較佳地,本發(fā)明實(shí)施例的嵌入式設(shè)備根文件系統(tǒng)的處理系統(tǒng),如圖5所示,還包括 至少一鏡像設(shè)備3,所述鏡像設(shè)備3包括至少一標(biāo)準(zhǔn)接口,所述便攜式設(shè)備可通過標(biāo)準(zhǔn)接口 接入到所述鏡像設(shè)備3。
所述鏡像設(shè)備3包括第二檢測(cè)更新模塊31和標(biāo)志位改寫模塊32 ;
其中
所述第二檢測(cè)更新模塊31,用于在便攜式裝置連接到所述鏡像設(shè)備后,對(duì)便攜式 裝置中的根文件系統(tǒng)的鏡像文件與鏡像設(shè)備中的根文件系統(tǒng)進(jìn)行判斷比較,并根據(jù)判斷結(jié) 果從鏡像設(shè)備中讀取根文件系統(tǒng)的鏡像文件和相應(yīng)根文件系統(tǒng)信息,更新替換便攜式裝置 中的根文件系統(tǒng)的文件和根文件系統(tǒng)信息;
所述標(biāo)志位改寫模塊32,用于在第二檢測(cè)更新模塊31更新替換完成根文件系統(tǒng) 的文件和根文件系統(tǒng)信息后,向便攜式裝置發(fā)出標(biāo)志位改寫請(qǐng)求,將標(biāo)志位模塊中的更新 標(biāo)志位改寫。
較佳地,所述第二檢測(cè)更新模塊31,包括第二接口檢測(cè)模塊311,第二鏡像文件存 儲(chǔ)模塊312,第二更新判斷模塊313,第二鏡像文件覆蓋寫入模塊314,第二讀取判斷模塊 315,第二更新版本號(hào)模塊316 ;
其中
所述第二接口檢測(cè)模塊311,用于檢測(cè)是否有便攜式裝置從標(biāo)準(zhǔn)接口接入到鏡像 設(shè)備,并在檢測(cè)以便攜式裝置接入時(shí),啟動(dòng)便攜式裝置;
所述第二鏡像文件存儲(chǔ)模塊312,用于存儲(chǔ)用于更新所述便攜式裝置的根文件系 統(tǒng)的新版本的根文件系統(tǒng)的鏡像文件;
第二更新判斷模塊313,用于便攜式裝置初始化完成后,向便攜式裝置發(fā)出版本號(hào) 讀取請(qǐng)求,得到便攜式裝置中根文件系統(tǒng)的鏡像文件的版本號(hào)后,將所述鏡像文件版本號(hào) 與鏡像設(shè)備根文件系統(tǒng)的版本號(hào)進(jìn)行比較,判斷是否需要更新便攜式裝置的根文件系統(tǒng)的 鏡像文件;
第二鏡像文件覆蓋寫入模塊314,用于在第二更新判斷模塊313判斷需要更新根 文件系統(tǒng)時(shí),讀取所述第二鏡像文件存儲(chǔ)模塊312中的新版本的根文件系統(tǒng)的鏡像文件, 并依次將鏡像文件寫入并覆蓋更新便攜式裝置中的根文件系統(tǒng);
第二讀取判斷模塊315,用于在第二鏡像文件覆蓋寫入模塊314依次讀取鏡像文 件的過程中,判斷是否已更新根文件系統(tǒng)完成;
第二更新版本號(hào)模塊316,用于在第二讀取判斷模塊313判斷已更新根文件系統(tǒng) 完成后,將所述新版本的鏡像文件對(duì)應(yīng)的根文件系統(tǒng)的版本號(hào)寫入便攜式裝置中。
如圖4所示,所述便攜式裝置2還包括第二更新處理模塊23,用于在便攜式裝置接 入到鏡像設(shè)備后,根據(jù)鏡像設(shè)備的讀取請(qǐng)求,發(fā)送根文件系統(tǒng)信息到鏡像設(shè)備。
所述鏡像設(shè)備3可以是PC機(jī)、服務(wù)器、小型計(jì)算機(jī)、大型計(jì)算機(jī)或者其他能夠存儲(chǔ) 根文件系統(tǒng)并接入便攜式裝置2 (如SD卡或者U盤)的計(jì)算機(jī)設(shè)備。
相應(yīng)地,本發(fā)明還提供一種嵌入式設(shè)備根文件系統(tǒng)的處理方法,如圖6所示,包括 如下步驟
步驟A,便攜式裝置2的更新標(biāo)志位標(biāo)志所述便攜式裝置2接入到嵌入式設(shè)備1 時(shí),是否需要利用便攜式裝置2中的根文件系統(tǒng)的鏡像文件更新嵌入式設(shè)備1中的根文件 系統(tǒng)的文件;
步驟B,在便攜式裝置2連接到所述嵌入式設(shè)備1后,檢測(cè)便攜式裝置2中的更新 標(biāo)志位,并對(duì)便攜式裝置中的根文件系統(tǒng)的鏡像文件與嵌入式設(shè)備1中的根文件系統(tǒng)進(jìn)行 判斷比較,并根據(jù)判斷結(jié)果從便攜式裝置2中讀取根文件系統(tǒng)的鏡像文件和相應(yīng)根文件系 統(tǒng)信息,更新替換嵌入式設(shè)備1中的根文件系統(tǒng)的文件和根文件系統(tǒng)信息。
較佳地,所述步驟B包括下列步驟
步驟Sl,在便攜式裝置2從標(biāo)準(zhǔn)接口接入到嵌入式設(shè)備1后,嵌入式設(shè)備1檢測(cè)到 便攜式裝置2接入,向便攜式裝置發(fā)出初始化指令,啟動(dòng)便攜式裝置2初始化過程;
步驟S2,便攜式裝置2根據(jù)設(shè)備發(fā)送來的初始化指令,進(jìn)行初始化;
步驟S3,在初始化完成后,嵌入式設(shè)備1檢測(cè)便攜式裝置2中的更新標(biāo)志位為1 時(shí),向便攜式裝置2發(fā)出版本號(hào)讀取請(qǐng)求;
步驟S4,便攜式裝置2讀取根文件系統(tǒng)的版本號(hào)并發(fā)送給嵌入式設(shè)備1 ;
步驟S5,嵌入式設(shè)備1得到便攜式裝置2的根文件系統(tǒng)的版本號(hào)后,將所述版本號(hào) 與嵌入式設(shè)備1中存儲(chǔ)的鏡像文件的版本號(hào)進(jìn)行比較,判斷是否需要更新根文件系統(tǒng);如 果嵌入式設(shè)備1中根文件系統(tǒng)的版本號(hào)高于便攜式裝置2中存儲(chǔ)的鏡像文件的版本號(hào),則 結(jié)束返回;否則,進(jìn)入下一步驟;
步驟S6,當(dāng)嵌入式設(shè)備1中根文件系統(tǒng)的版本號(hào)低于便攜式裝置2中存儲(chǔ)的鏡像 文件的版本號(hào),判斷需要更新嵌入式設(shè)備1中的根文件系統(tǒng)后,嵌入式設(shè)備1向便攜式裝置 2發(fā)出鏡像文件讀取請(qǐng)求,從便攜式裝置2中存儲(chǔ)的新版本的根文件系統(tǒng)的鏡像文件中依 次讀取鏡像文件,發(fā)送給嵌入式設(shè)備1 ;
步驟S7,嵌入式設(shè)備1在接收到所述便攜式裝置2發(fā)送來的鏡像文件時(shí),依次將鏡 像文件寫入并覆蓋更新嵌入式設(shè)備1的根文件系統(tǒng);
步驟S8,嵌入式設(shè)備1判斷是否已經(jīng)讀取完成全部鏡像文件;如果否,則還沒有讀 取完成,返回步驟S7 ;否則,已經(jīng)讀取完成,進(jìn)入下一步驟;
步驟S9,嵌入式設(shè)備1在判斷已經(jīng)讀取完成全部鏡像文件后,將便攜式裝置2的鏡 像文件的版本號(hào)寫入嵌入式設(shè)備1。
較佳地,所述嵌入式設(shè)備根文件系統(tǒng)的處理方法,如圖7所示,還包括如下步驟
步驟A’,鏡像設(shè)備3在便攜式裝置2連接到所述鏡像設(shè)備3后,對(duì)便攜式裝置2中 的根文件系統(tǒng)的鏡像文件與鏡像設(shè)備3中的根文件系統(tǒng)進(jìn)行判斷比較,并根據(jù)判斷結(jié)果從 鏡像設(shè)備3中讀取根文件系統(tǒng)的鏡像文件和相應(yīng)根文件系統(tǒng)信息,更新替換便攜式裝置2 中的根文件系統(tǒng)的文件和根文件系統(tǒng)信息;
步驟B’,鏡像設(shè)備3更新替換完成根文件系統(tǒng)的文件和根文件系統(tǒng)信息后,向便 攜式裝置2發(fā)出標(biāo)志位改寫請(qǐng)求,將更新標(biāo)志位改寫。
較佳地,所述步驟A’包括下列步驟
步驟Si’,在便攜式裝置2從標(biāo)準(zhǔn)接口接入到鏡像設(shè)備3后,鏡像設(shè)備3檢測(cè)到便 攜式裝置2接入,向便攜式裝置發(fā)出初始化指令,啟動(dòng)便攜式裝置2初始化過程;
步驟S2’,便攜式裝置2根據(jù)設(shè)備發(fā)來的初始化指令,進(jìn)行初始化;
步驟S3’,在初始化完成后,鏡像設(shè)備3發(fā)出版本號(hào)讀取請(qǐng)求,得到便攜式裝置2中 根文件系統(tǒng)的鏡像文件的版本號(hào);
步驟S4’,鏡像設(shè)備3得到便攜式裝置2的根文件系統(tǒng)的版本號(hào)后,將所述版本號(hào) 與鏡像設(shè)備3中存儲(chǔ)的鏡像文件的版本號(hào)進(jìn)行比較,判斷是否需要更新根文件系統(tǒng);如果 鏡像設(shè)備3中根文件系統(tǒng)的版本號(hào)低于便攜式裝置2中存儲(chǔ)的鏡像文件的版本號(hào),則結(jié)束 返回;否則,進(jìn)入下一步驟;
步驟S5’,當(dāng)鏡像設(shè)備3中根文件系統(tǒng)的版本號(hào)高于便攜式裝置2中存儲(chǔ)的鏡像文 件的版本號(hào),判斷需要更新便攜式裝置2中的根文件系統(tǒng)后,從鏡像設(shè)備3中存儲(chǔ)的新版本 的根文件系統(tǒng)的鏡像文件中依次讀取鏡像文件,依次將鏡像文件寫入并覆蓋更新便攜式裝 置2中的根文件系統(tǒng);
步驟S6’,鏡像設(shè)備3判斷是否已經(jīng)讀取完成全部鏡像文件;如果否,則還沒有讀 取完成,返回步驟S5’ ;否則,已經(jīng)讀取完成,進(jìn)入下一步驟;
步驟S7’,鏡像設(shè)備3在判斷已經(jīng)讀取完成全部鏡像文件后,將鏡像設(shè)備3的鏡像 文件對(duì)應(yīng)的根文件系統(tǒng)的版本號(hào)寫入便攜式裝置2中。
如圖8所示,下面以一種嵌入式設(shè)備1為例,進(jìn)一步詳細(xì)說明本發(fā)明的嵌入式設(shè)備 根文件系統(tǒng)的處理系統(tǒng)和辦法。其中,所述嵌入式設(shè)備包括NAND Flash, NAND Flash被劃 分為五個(gè)分區(qū)分區(qū)1、分區(qū)2、分區(qū)3、分區(qū)4、分區(qū)5。
分區(qū)1存放啟動(dòng)加載程序(Boot Loader)模塊,該模塊是系統(tǒng)加電后由微處 理器加載與運(yùn)行的模塊,其功能是初始化硬件資源并加載和啟動(dòng)Linux操作系統(tǒng)內(nèi)核 (LinuxKernel);啟動(dòng)加載程序模塊的實(shí)現(xiàn)依賴于具體所使用的硬件體系結(jié)構(gòu)。
分區(qū)2用于存放Linux操作系統(tǒng)內(nèi)核(Linux Kernel)模塊,該模塊管理嵌入式系 統(tǒng)內(nèi)各種硬件和軟件資源,為應(yīng)用程序提供運(yùn)行環(huán)境。
分區(qū)3用于存儲(chǔ)YAFFS2根文件系統(tǒng)。
所述YAFFS2根文件系統(tǒng),可以是利用JFFS2構(gòu)建YAFFS2根文件系統(tǒng);
JFFS2 (Journalling Flash File System Version 2,閃存日志型文件系統(tǒng) 2)是 一種根據(jù)Nor Flash而設(shè)置的根文件系統(tǒng),本發(fā)明實(shí)施例中,使用它是因?yàn)樵跊]有YAFFS2 根文件系統(tǒng)鏡像前啟動(dòng)Linux Kernel時(shí)有一個(gè)可以使用的根文件系統(tǒng),然后構(gòu)建YAFFS2 根文件系統(tǒng)。
YAFFS2是根據(jù)NAND Flash的特點(diǎn)所設(shè)計(jì)的日志型根文件系統(tǒng)。如圖3所示, YAFFS2根文件系統(tǒng)區(qū)別于其他根文件系統(tǒng)之處在于每一頁數(shù)據(jù)后會(huì)有標(biāo)示信息和錯(cuò)誤檢 查和糾正(Error Correcting Code,ECC)校驗(yàn)信息。2048字節(jié)將產(chǎn)生M個(gè)字節(jié)的ECC校驗(yàn)碼。
分區(qū)4為備用空間。
分區(qū)5為第一檢測(cè)更新模塊。
如圖9所示,下面以SD卡更新嵌入式設(shè)備的更新YAFFS2根文件系統(tǒng)為例,進(jìn)一步 詳細(xì)說明本發(fā)明的嵌入式設(shè)備根文件系統(tǒng)的處理方法,包括如下步驟
步驟S100,系統(tǒng)上電后,嵌入式設(shè)備1加載啟動(dòng)程序(Boot Loader)并運(yùn)行,檢測(cè) 是否有SD卡接入;
在系統(tǒng)上電后,系統(tǒng)進(jìn)行復(fù)位操作,CPU將NAND FLASH中前2KB代碼拷貝到SDRAM 中執(zhí)行,初始化系統(tǒng)時(shí)鐘CPU、BUS時(shí)鐘等,配置SDRAM和FLASH控制器,設(shè)置堆棧寄存器,并 跳轉(zhuǎn)將BOOT LOADER代碼從NAND FLASH中拷貝到SDRAM中,再初始化UART ;其后檢測(cè)是否 有SD卡接入到嵌入式設(shè)備1中。
步驟S200,如果檢測(cè)不到SD卡接入到嵌入式設(shè)備1中,則加載Linux Kernel到 SDRAM中,跳轉(zhuǎn)到Linux Kernel起始地址執(zhí)行,進(jìn)入正常啟動(dòng)模式;否則,執(zhí)行步驟S300 ;
步驟S300,根據(jù)嵌入式設(shè)備發(fā)送來的初始化指令,對(duì)SD卡進(jìn)行初始化;
在檢測(cè)到有SD卡接入到系統(tǒng)后,根據(jù)嵌入式設(shè)備發(fā)送來的初始化指令,對(duì)SD卡進(jìn) 行初始化并對(duì)FAT文件系統(tǒng)進(jìn)行初始化。
步驟S400,在初始化成功后,則查找是否存在更新的鏡像文件,即檢測(cè)SD卡的更 新標(biāo)志位;
步驟S500,如果查找不到更新的鏡像文件,即更新標(biāo)志位=0,則結(jié)束返回;否則, 更新標(biāo)志位=1,從SD卡中讀取鏡像文件到SDRAM并進(jìn)行CRC校驗(yàn);
步驟S600,如果校驗(yàn)不正確,則結(jié)束返回;否則,比較鏡像文件版本號(hào)大小,確定 版本是否更新;
如果根文件系統(tǒng)鏡像文件版本號(hào)大于嵌入式設(shè)備中的根文件系統(tǒng)文件版本號(hào),則 版本需要更新;否則,嵌入式設(shè)備中的根文件系統(tǒng)不需要更新,結(jié)束返回;
步驟S700,如果需要更新根文件系統(tǒng),則關(guān)閉嵌入式設(shè)備1中的NAND FLASH控制 器自身ECC校驗(yàn)功能,然后讀取鏡像文件并寫入到嵌入式設(shè)備的根文件系統(tǒng)中,覆蓋原來 的根文件系統(tǒng)。
關(guān)閉Nand Flash控制器的硬件ECC校驗(yàn)功能,因?yàn)閅AFFS2使用自身的ECC校驗(yàn) 算法對(duì)每一頁的數(shù)據(jù)進(jìn)行校驗(yàn)。
將Nand Flash控制器中控制該功能的寄存器的值寫入關(guān)閉的值即可,不同的NandFlash控制器其值可能會(huì)不同。
讀取存儲(chǔ)在SD卡中的鏡像文件到內(nèi)存,這樣做避免了多次讀取操作,加快了更新 速度。
讀取鏡像文件的步驟,具體地,包括如下步驟
步驟S710,讀取FAT根目錄第一個(gè)扇區(qū)的內(nèi)容(目錄項(xiàng))。
步驟S720,遍歷目錄項(xiàng)中的文件擴(kuò)展名,如果找到所需的擴(kuò)展名的目錄項(xiàng)并且該 文件有效,則執(zhí)行步驟S740,否則執(zhí)行步驟S730。
步驟S730,如果已經(jīng)到達(dá)FAT根目錄結(jié)束扇區(qū),則結(jié)束返回;否則繼續(xù)讀取下一扇 區(qū),重復(fù)步驟S720。
步驟S740,判斷文件名是否為所需,如果是,則讀取該文件的首簇號(hào)和文件長(zhǎng)度; 否則執(zhí)行步驟S720。
步驟S750,依據(jù)首簇號(hào)和文件長(zhǎng)度讀取文件。
步驟S760,對(duì)鏡像文件的數(shù)據(jù)重新計(jì)算CRC-32校驗(yàn)碼。
步驟S770,讀取SD卡的4個(gè)字節(jié)的校驗(yàn)碼,并與重新計(jì)算得到的CRC校驗(yàn)碼進(jìn)行 對(duì)比檢測(cè);
如果該校驗(yàn)碼與頭部的4個(gè)字節(jié)的校驗(yàn)碼相同則說明鏡像文件沒有遭到破壞,去 除該校驗(yàn)碼,轉(zhuǎn)至步驟S790;
否則鏡像文件數(shù)據(jù)遭到破壞轉(zhuǎn)至步驟S780。
步驟S780,鏡像文件數(shù)據(jù)遭到破壞,必須重新構(gòu)建,結(jié)束返回。
步驟S790,從內(nèi)存中依次讀入一頁的數(shù)據(jù)(根文件系統(tǒng)自身的數(shù)據(jù)+標(biāo)示信息和 校驗(yàn)碼),將讀到的數(shù)據(jù)依次寫入到嵌入式設(shè)備1的Nand Flash中,并做出校驗(yàn)。
步驟S7100,判斷是否將所有的數(shù)據(jù)寫入到嵌入式設(shè)備IWNand Flash中,如果沒 有則跳轉(zhuǎn)到步驟S790 ;否則進(jìn)入步驟S780。
步驟S800,在全部鏡像文件成功寫入到嵌入式設(shè)備1后,將新的鏡像文件版本號(hào) 寫入到嵌入式設(shè)備1的指定位置。
步驟S900,根文件系統(tǒng)更新完成,嵌入式設(shè)備1成功的完成了一次根文件系統(tǒng)更 新;然后加載Linux Kernel到SDRAM中,跳轉(zhuǎn)到Linux Kernel起始地址執(zhí)行,進(jìn)入正常啟 動(dòng)模式。
圖10為本發(fā)明實(shí)施例SD卡接入檢測(cè)電路實(shí)現(xiàn)示意圖,其采用SD_DET引腳作為SD 卡接入檢測(cè),其程序示例代碼如下
BOOL sd_detect(void)
{
gpio_configure_input(SD_DET);
If (gpio_read_input (SD_DET) = = LOW)
{
return TRUE ;//SD 卡已經(jīng)插入
}
else
{
return FALSE ;//SD 卡未插入
}
}
本發(fā)明提供一種方便、快捷的更新根文件系統(tǒng)的有效處理方法,本發(fā)明不必運(yùn)行 TCP/IP協(xié)議,不必配備網(wǎng)絡(luò)接口,少了網(wǎng)絡(luò)下載的過程,同時(shí)也不需要啟動(dòng)Linux Kernel 后再進(jìn)行升級(jí)(與傳統(tǒng)網(wǎng)絡(luò)下載方式相比),因此更新速度更快、使用更簡(jiǎn)單,本發(fā)明達(dá)到 了簡(jiǎn)化操作、節(jié)約成本,擴(kuò)大嵌入式系統(tǒng)應(yīng)用范圍的目的。
最后應(yīng)當(dāng)說明的是,很顯然,本領(lǐng)域的技術(shù)人員可以對(duì)本發(fā)明進(jìn)行各種改動(dòng)和變 型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要 求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動(dòng)和變型。
權(quán)利要求
1.一種嵌入式設(shè)備根文件系統(tǒng)的處理系統(tǒng),包括至少一帶有標(biāo)準(zhǔn)接口的嵌入式設(shè)備, 以及可通過標(biāo)準(zhǔn)接口接入到嵌入式設(shè)備的一便攜式裝置;嵌入式設(shè)備包括根文件系統(tǒng); 其特征在于所述嵌入式設(shè)備,包括第一檢測(cè)更新模塊,用于在便攜式裝置連接到所述嵌入式設(shè)備 后,檢測(cè)便攜式裝置中的更新標(biāo)志位,并對(duì)便攜式裝置中的根文件系統(tǒng)的鏡像文件與嵌入 式設(shè)備中的根文件系統(tǒng)進(jìn)行判斷比較,并根據(jù)判斷結(jié)果從便攜式裝置中讀取根文件系統(tǒng)的 鏡像文件和相應(yīng)根文件系統(tǒng)信息,更新替換嵌入式設(shè)備中的根文件系統(tǒng)的文件和根文件系 統(tǒng)信息;所述便攜式裝置,包括標(biāo)志位模塊和第一更新處理模塊; 其中所述標(biāo)志位模塊,用于通過標(biāo)志位標(biāo)志所述便攜式裝置接入到嵌入式設(shè)備時(shí),是否需 要利用便攜式裝置中的根文件系統(tǒng)的鏡像文件更新嵌入式設(shè)備中的根文件系統(tǒng)的文件;所述第一更新處理模塊,用于在便攜式裝置接入到嵌入式設(shè)備后,根據(jù)嵌入式設(shè)備的 讀取請(qǐng)求,發(fā)送根文件系統(tǒng)信息及其鏡像文件到嵌入式設(shè)備。
2.根據(jù)權(quán)利要求1所述的嵌入式設(shè)備根文件系統(tǒng)的處理系統(tǒng),其特征在于,所述第一 檢測(cè)更新模塊,包括第一接口檢測(cè)模塊,標(biāo)志位檢測(cè)模塊,第一更新判斷模塊,第一鏡像文 件覆蓋寫入模塊,第一讀取判斷模塊,第一更新版本號(hào)模塊;其中所述第一接口檢測(cè)模塊,用于檢測(cè)是否有便攜式裝置從標(biāo)準(zhǔn)接口接入到嵌入式設(shè)備, 并在檢測(cè)到便攜式裝置接入時(shí),啟動(dòng)便攜式裝置,并向便攜式裝置發(fā)出初始化指令; 所述標(biāo)志位檢測(cè)模塊,用于檢測(cè)便攜式裝置的標(biāo)志位;第一更新判斷模塊,用于便攜式裝置初始化完成后,在檢測(cè)便攜式裝置中的更新標(biāo)志 位為1時(shí),向便攜式裝置發(fā)出版本號(hào)讀取請(qǐng)求,得到便攜式裝置中根文件系統(tǒng)的鏡像文件 的版本號(hào)后,將所述鏡像文件版本號(hào)與嵌入式設(shè)備根文件系統(tǒng)的版本號(hào)進(jìn)行比較,判斷是 否需要更新嵌入式設(shè)備根文件系統(tǒng);所述第一鏡像文件覆蓋寫入模塊,用于在第一更新判斷模塊判斷需要更新根文件系統(tǒng) 時(shí),向便攜式裝置發(fā)出鏡像文件讀取請(qǐng)求,并在接收到所述便攜式裝置發(fā)送來的鏡像文件 時(shí),依次將鏡像文件寫入并覆蓋更新嵌入式設(shè)備的根文件系統(tǒng);所述第一讀取判斷模塊,用于在第一鏡像文件覆蓋寫入模塊依次讀取鏡像文件的過程 中,判斷是否已更新根文件系統(tǒng)完成;所述第一更新版本號(hào)模塊,用于在第一讀取判斷模塊判斷已更新根文件系統(tǒng)完成后, 將鏡像文件對(duì)應(yīng)的根文件系統(tǒng)的版本號(hào)寫入嵌入式設(shè)備中。
3.根據(jù)權(quán)利要求1所述的嵌入式設(shè)備根文件系統(tǒng)的處理系統(tǒng),其特征在于,所述第一 更新處理模塊,包括第一鏡像文件存儲(chǔ)模塊,初始化模塊,第一版本號(hào)發(fā)送模塊,第一鏡像 文件發(fā)送模塊;其中所述第一鏡像文件存儲(chǔ)模塊,用于存儲(chǔ)用于更新所述嵌入式設(shè)備的根文件系統(tǒng)的新版 本的根文件系統(tǒng)的鏡像文件;所述初始化模塊,用于在所述便攜式裝置通過標(biāo)準(zhǔn)接口接入到設(shè)備并上電后,根據(jù)設(shè)備端發(fā)送來的初始化指令,對(duì)便攜式裝置進(jìn)行初始化;所述第一版本號(hào)發(fā)送模塊,用于根據(jù)接收到的嵌入式設(shè)備的版本號(hào)讀取請(qǐng)求,將鏡像 文件對(duì)應(yīng)的根文件系統(tǒng)的版本號(hào)發(fā)送給所述嵌入式設(shè)備;所述第一鏡像文件發(fā)送模塊,用于根據(jù)嵌入式設(shè)備的鏡像文件讀取請(qǐng)求,從第一鏡像 文件存儲(chǔ)模塊中依次讀取根文件系統(tǒng)的鏡像文件,發(fā)送給嵌入式設(shè)備。
4.根據(jù)權(quán)利要求1至3任一項(xiàng)所述的嵌入式設(shè)備根文件系統(tǒng)的處理系統(tǒng),其特征在于, 還包括至少一鏡像設(shè)備,所述鏡像設(shè)備包括標(biāo)準(zhǔn)接口,所述便攜式設(shè)備可通過標(biāo)準(zhǔn)接口接 入到所述鏡像設(shè)備;所述鏡像設(shè)備包括第二檢測(cè)更新模塊和標(biāo)志位改寫模塊; 其中所述第二檢測(cè)更新模塊,用于在便攜式裝置連接到所述鏡像設(shè)備后,對(duì)便攜式裝置中 的根文件系統(tǒng)的鏡像文件與鏡像設(shè)備中的根文件系統(tǒng)進(jìn)行判斷比較,并根據(jù)判斷結(jié)果從鏡 像設(shè)備中讀取根文件系統(tǒng)的鏡像文件和相應(yīng)根文件系統(tǒng)信息,更新替換便攜式裝置中的根 文件系統(tǒng)的文件和根文件系統(tǒng)信息;所述標(biāo)志位改寫模塊,用于在第二檢測(cè)更新模塊更新替換完成根文件系統(tǒng)的文件和 根文件系統(tǒng)信息后,向便攜式裝置發(fā)出標(biāo)志位改寫請(qǐng)求,將標(biāo)志位模塊中的更新標(biāo)志位改 寫;所述便攜式裝置還包括第二更新處理模塊,用于在便攜式裝置接入到鏡像設(shè)備后,根 據(jù)鏡像設(shè)備的讀取請(qǐng)求,發(fā)送根文件系統(tǒng)信息及其鏡像文件到鏡像設(shè)備。
5.根據(jù)權(quán)利要求4所述的嵌入式設(shè)備根文件系統(tǒng)的處理系統(tǒng),其特征在于,所述第二 檢測(cè)更新模塊,包括第二接口檢測(cè)模塊,第二鏡像文件存儲(chǔ)模塊,第二更新判斷模塊,第二 鏡像文件覆蓋寫入模塊,第二讀取判斷模塊,第二更新版本號(hào)模塊;其中所述第二接口檢測(cè)模塊,用于檢測(cè)是否有便攜式裝置從標(biāo)準(zhǔn)接口接入到鏡像設(shè)備,并 在檢測(cè)以便攜式裝置接入時(shí),啟動(dòng)便攜式裝置,向便攜式裝置發(fā)出初始化指令;所述第二鏡像文件存儲(chǔ)模塊,用于存儲(chǔ)用于更新所述便攜式裝置的根文件系統(tǒng)的新版 本的根文件系統(tǒng)的鏡像文件;第二更新判斷模塊,用于便攜式裝置初始化完成后,向便攜式裝置發(fā)出版本號(hào)讀取請(qǐng) 求,得到便攜式裝置中根文件系統(tǒng)的鏡像文件的版本號(hào)后,將所述鏡像文件版本號(hào)與鏡像 設(shè)備根文件系統(tǒng)的版本號(hào)進(jìn)行比較,判斷是否需要更新便攜式裝置的根文件系統(tǒng)的鏡像文 件;第二鏡像文件覆蓋寫入模塊,用于在第二更新判斷模塊判斷需要更新根文件系統(tǒng)時(shí), 讀取所述第二鏡像文件存儲(chǔ)模塊中的新版本的根文件系統(tǒng)的鏡像文件,并依次將鏡像文件 寫入并覆蓋更新便攜式裝置中的根文件系統(tǒng);第二讀取判斷模塊,用于在第二鏡像文件覆蓋寫入模塊依次讀取鏡像文件的過程中, 判斷是否已更新根文件系統(tǒng)完成;第二更新版本號(hào)模塊,用于在第二讀取判斷模塊判斷已更新根文件系統(tǒng)完成后,將所 述新版本的鏡像文件對(duì)應(yīng)的根文件系統(tǒng)的版本號(hào)寫入便攜式裝置中。
6.根據(jù)權(quán)利要求4所述的嵌入式設(shè)備根文件系統(tǒng)的處理系統(tǒng),其特征在于,所述標(biāo)準(zhǔn) 接口,或者是SD卡的標(biāo)準(zhǔn)接口,對(duì)應(yīng)的便攜式裝置為SD卡;或者是USB接口,對(duì)應(yīng)的便攜式裝置為U盤;或者是CF卡標(biāo)準(zhǔn)接口,對(duì)應(yīng)的便攜式裝置為CF卡等;所述鏡像設(shè)備是PC機(jī)、服務(wù)器、小型計(jì)算機(jī)、大型計(jì)算機(jī)或者其他能夠存儲(chǔ)根文件系 統(tǒng)并接入便攜式裝置的計(jì)算機(jī)設(shè)備。
7.一種嵌入式設(shè)備根文件系統(tǒng)的處理方法,其特征在于,包括如下步驟步驟A,便攜式裝置的更新標(biāo)志位標(biāo)志所述便攜式裝置接入到嵌入式設(shè)備時(shí),是否需要 利用便攜式裝置中的根文件系統(tǒng)的鏡像文件更新嵌入式設(shè)備中的根文件系統(tǒng)的文件;步驟B,在便攜式裝置連接到所述嵌入式設(shè)備后,檢測(cè)便攜式裝置中的更新標(biāo)志位,并 對(duì)便攜式裝置中的根文件系統(tǒng)的鏡像文件與嵌入式設(shè)備中的根文件系統(tǒng)進(jìn)行判斷比較,并 根據(jù)判斷結(jié)果從便攜式裝置中讀取根文件系統(tǒng)的鏡像文件和相應(yīng)根文件系統(tǒng)信息,更新替 換嵌入式設(shè)備中的根文件系統(tǒng)的文件和根文件系統(tǒng)信息。
8.根據(jù)權(quán)利要求7所述的嵌入式設(shè)備根文件系統(tǒng)的處理方法,其特征在于,所述步驟B 包括下列步驟步驟Si,在便攜式裝置從標(biāo)準(zhǔn)接口接入到嵌入式設(shè)備后,嵌入式設(shè)備檢測(cè)到便攜式裝 置接入,發(fā)出初始化指令,啟動(dòng)便攜式裝置初始化過程;步驟S2,便攜式裝置根據(jù)設(shè)備發(fā)送來的初始化指令,進(jìn)行初始化; 步驟S3,在初始化完成后,嵌入式設(shè)備檢測(cè)便攜式裝置中的更新標(biāo)志位為1時(shí),向便攜 式裝置發(fā)出版本號(hào)讀取請(qǐng)求;步驟S4,便攜式裝置讀取根文件系統(tǒng)的版本號(hào)并發(fā)送給嵌入式設(shè)備; 步驟S5,嵌入式設(shè)備得到便攜式裝置的根文件系統(tǒng)的版本號(hào)后,將所述版本號(hào)與嵌入 式設(shè)備中存儲(chǔ)的鏡像文件的版本號(hào)進(jìn)行比較,判斷是否需要更新根文件系統(tǒng);如果嵌入式 設(shè)備中根文件系統(tǒng)的版本號(hào)高于便攜式裝置中存儲(chǔ)的鏡像文件的版本號(hào),則結(jié)束返回;否 則,進(jìn)入下一步驟;步驟S6,當(dāng)嵌入式設(shè)備中根文件系統(tǒng)的版本號(hào)低于便攜式裝置中存儲(chǔ)的鏡像文件的 版本號(hào),判斷需要更新嵌入式設(shè)備中的根文件系統(tǒng)后,嵌入式設(shè)備向便攜式裝置發(fā)出鏡像 文件讀取請(qǐng)求,從便攜式裝置中存儲(chǔ)的新版本的根文件系統(tǒng)的鏡像文件中依次讀取鏡像文 件;步驟S7,嵌入式設(shè)備在接收到所述便攜式裝置發(fā)送來的鏡像文件時(shí),依次將鏡像文件 寫入并覆蓋更新嵌入式設(shè)備的根文件系統(tǒng);步驟S8,嵌入式設(shè)備判斷是否已經(jīng)讀取完成全部鏡像文件;如果否,則還沒有讀取完 成,返回步驟S7 ;否則,已經(jīng)讀取完成,進(jìn)入下一步驟;步驟S9,嵌入式設(shè)備在判斷已經(jīng)讀取完成全部鏡像文件后,將便攜式裝置的鏡像文件 的版本號(hào)寫入嵌入式設(shè)備。
9.根據(jù)權(quán)利要求7或8所述的嵌入式設(shè)備根文件系統(tǒng)的處理方法,其特征在于,還包括 如下步驟步驟A’,鏡像設(shè)備在便攜式裝置連接到所述鏡像設(shè)備后,對(duì)便攜式裝置中的根文件系 統(tǒng)的鏡像文件與鏡像設(shè)備中的根文件系統(tǒng)進(jìn)行判斷比較,并根據(jù)判斷結(jié)果從鏡像設(shè)備中讀 取根文件系統(tǒng)的鏡像文件和相應(yīng)根文件系統(tǒng)信息,更新替換便攜式裝置中的根文件系統(tǒng)的 文件和根文件系統(tǒng)信息;步驟B’,鏡像設(shè)備更新替換完成根文件系統(tǒng)的文件和根文件系統(tǒng)信息后,向便攜式裝置發(fā)出標(biāo)志位改寫請(qǐng)求,將更新標(biāo)志位改寫。
10.根據(jù)權(quán)利要求9所述的嵌入式設(shè)備根文件系統(tǒng)的處理方法,其特征在于,所述步驟 A’包括下列步驟步驟Si’,在便攜式裝置從標(biāo)準(zhǔn)接口接入到鏡像設(shè)備后,鏡像設(shè)備檢測(cè)到便攜式裝置接 入,發(fā)出初始化指令,啟動(dòng)便攜式裝置初始化過程;步驟S2’,便攜式裝置根據(jù)設(shè)備發(fā)送來的初始化指令,進(jìn)行初始化; 步驟S3’,在初始化完成后,鏡像設(shè)備發(fā)出版本號(hào)讀取請(qǐng)求,得到便攜式裝置中根文件 系統(tǒng)的鏡像文件的版本號(hào);步驟S4’,鏡像設(shè)備得到便攜式裝置的根文件系統(tǒng)的版本號(hào)后,將所述版本號(hào)與鏡像設(shè) 備中存儲(chǔ)的鏡像文件的版本號(hào)進(jìn)行比較,判斷是否需要更新根文件系統(tǒng);如果鏡像設(shè)備中 根文件系統(tǒng)的版本號(hào)低于便攜式裝置中存儲(chǔ)的鏡像文件的版本號(hào),則結(jié)束返回;否則,進(jìn)入 下一步驟;步驟S5’,當(dāng)鏡像設(shè)備中根文件系統(tǒng)的版本號(hào)高于便攜式裝置中存儲(chǔ)的鏡像文件的版 本號(hào),判斷需要更新便攜式裝置中的根文件系統(tǒng)后,從鏡像設(shè)備中存儲(chǔ)的新版本的根文件 系統(tǒng)的鏡像文件中依次讀取鏡像文件,依次將鏡像文件寫入并覆蓋更新便攜式裝置中的根 文件系統(tǒng);步驟S6’,鏡像設(shè)備判斷是否已經(jīng)讀取完成全部鏡像文件;如果否,則還沒有讀取完 成,返回步驟S5’ ;否則,已經(jīng)讀取完成,進(jìn)入下一步驟;步驟S7’,鏡像設(shè)備在判斷已經(jīng)讀取完成全部鏡像文件后,將鏡像設(shè)備的鏡像文件對(duì)應(yīng) 的根文件系統(tǒng)的版本號(hào)寫入便攜式裝置中。
全文摘要
本發(fā)明公開一種嵌入式設(shè)備根文件系統(tǒng)的處理系統(tǒng)和處理方法。該系統(tǒng)包括嵌入式設(shè)備以及便攜式裝置;嵌入式設(shè)備包括第一檢測(cè)更新模塊,用于在便攜式裝置連接到所述嵌入式設(shè)備后,檢測(cè)便攜式裝置中的更新標(biāo)志位,并對(duì)便攜式裝置中的根文件系統(tǒng)的鏡像文件與嵌入式設(shè)備中的根文件系統(tǒng)進(jìn)行判斷比較,并根據(jù)判斷結(jié)果從便攜式裝置中讀取根文件系統(tǒng)的鏡像文件和相應(yīng)根文件系統(tǒng)信息,更新替換嵌入式設(shè)備中的根文件系統(tǒng)的文件和根文件系統(tǒng)信息;所述便攜式裝置,包括第一更新處理模塊,用于在便攜式裝置接入到嵌入式設(shè)備后,根據(jù)嵌入式設(shè)備的讀取請(qǐng)求,發(fā)送根文件系統(tǒng)信息及其鏡像文件到嵌入式設(shè)備。其簡(jiǎn)化了根文件系統(tǒng)的處理過程,具有很好的易操作性。
文檔編號(hào)G06F9/445GK102043652SQ201010578460
公開日2011年5月4日 申請(qǐng)日期2010年12月8日 優(yōu)先權(quán)日2010年12月8日
發(fā)明者王猛, 袁仁東 申請(qǐng)人:蘇州捷泰科信息技術(shù)有限公司