嵌入式Linux下NANDflash上根文件系統(tǒng)的構建_第1頁
嵌入式Linux下NANDflash上根文件系統(tǒng)的構建_第2頁
嵌入式Linux下NANDflash上根文件系統(tǒng)的構建_第3頁
嵌入式Linux下NANDflash上根文件系統(tǒng)的構建_第4頁
嵌入式Linux下NANDflash上根文件系統(tǒng)的構建_第5頁
已閱讀5頁,還剩1頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、嵌入式Linux下NANDflash上根文件系統(tǒng)的構建TheConstructionofRootFileSystemfortheEmbeddedLinux&NANDflashChengJian(SchoolofComputerScience&Technology,AnhuiUniversityofScienceandTechnology,Huainan232001,China):TheembeddedLinuxselectingaNandFlashtosaverootfilesystemgenerally,thispaperexplainssomecommonfilesyste

2、mesandthefeatureoftheNANDFlashfirstly.SecondlyitdeatilystatestheprincipleoftheMTDlayerandtheconfigurationsprocedureofarootfilesystemthroughtheexampleofconstuctingtheYAFFSandCramfsfilesystemesintheplatformofSumsangsARM92410s.Keywords:TheemdeddedLinux;Rootfilesystem;MTD;NANDflash近些年嵌入式系統(tǒng)的發(fā)展非???。隨著硬件技術的

3、進步,越來越多的嵌入式設備使用Linux作為操作系統(tǒng),可以實現(xiàn)功能更強的應用。Linux的內核在啟動過程中會安裝文件系統(tǒng),是不可或缺的重要組成部分。本文以三星的ARM92410s為例,采用了Linux2.6.24版本說明了如何在NANDflash存儲器上構建文件系統(tǒng)。一、嵌入式Linux及文件系統(tǒng)文件系統(tǒng)有兩個含義。一個是磁盤和磁盤機制的文件系統(tǒng)即物理文件系統(tǒng),另一個含義是用戶能操作的邏輯文件系統(tǒng)。Linux的一個特點是它支持很多不同的文件系統(tǒng)如JFS、ext、ext2、NTFS、Cramfs等等。文件系統(tǒng)都會被燒錄在某一個存儲設備上。嵌入式設備往往選用ROM閃存(flashmemory)等作

4、為主要的存儲設備。在嵌入式設備上選用哪種文件系統(tǒng)格式與閃存的特點是相關的。目前在嵌入式設備上應用最廣泛的flash是NORF口NANDflash。NOR勺特點是可在芯片內執(zhí)行,應用程序可直接在flash內運行,不必再把代碼讀到系統(tǒng)RAW。NOR勺傳輸效率很高,但寫入和擦除的速度較低。而NAND吉構能提供極高的單元密度,并且寫入和擦除的速度也快,是高數(shù)據(jù)存儲密度的最佳選擇,但應用較復雜。不過很多操作系統(tǒng)包括Linux都支持NANDflash。在實際應用中,很多嵌入式設備廠家選用低容量但價格昂股的NORflash存儲啟動引導程序和內核,而把文件系統(tǒng)放在NANDflash中。二、MTD!動層要使用C

5、ramfs或YAFF成件系統(tǒng),離不開MTD1動層的支持。MTD(MemoryTechnologyDevice)是Liunx中的一個存儲設備統(tǒng)一接口層,是專為基于Flash的設備而設計的。MT而含很多特定類型Flash芯片的驅動程序。在使用MTD寸首先要選擇合適的Flash芯片驅動。Flash芯片驅動向上層提供讀、寫、擦除等基本的Flash操作方法。MTD寸這些進行封裝后向用戶提供MTDchar和MTDblock類型的設備。MTDchar類型的設備包括/dev/mtd0,/dev/ted1。它們提供對Flash的原始字符訪問。MTDblock類型的設備包括/dev/mtdblock0,/dev/

6、mtdblock1等。MTDblock將Flash模擬成快設備,這樣就可以在Flash上創(chuàng)建Cramfs等格式的文件系統(tǒng)了。另外,MTDi持CFI(CommonFlashIngerface)接口。利用它可以在一塊Flash上創(chuàng)建多個Flash分區(qū)。每一個分區(qū)作為一個MTDblock設備,這樣可以把系統(tǒng)軟件和數(shù)據(jù)等分配到不同的分區(qū)上,也可以在不同的分區(qū)上采用不同的文件系統(tǒng)。在源代碼arch/arm/mach-s3c2410/common-smdk.c文件下的函數(shù)“mtd_partitionsmdk_default_nand_part=”中,可以看到默認的MT陰區(qū),也可以根據(jù)需要進行個、修改。三、

7、MT吸文件系統(tǒng)的配置(一)配置MTD要使用Cramfs和YAFF成件系統(tǒng),首先要配置MTD在MemoryTechnologyDevices(MTD)-選項選中如下選項:MemoryTechnoloyDevice(MTD)support/*MTD支持字符設備的*MTDTechnologysuppory/*MTD分區(qū)支持DirectchardeviceaccesstoMTDdevices/*塊設備支CachingblockdeviceaccesstoMTDdevices/*NANDFlashDeviceDrivers-對NANDFlash的支持SMC

8、Devicesupport/*SimpleBlockDeviceforNandFlash(BONFS)SMCdeviceonS3C2410SMDK*UseMTDFromSMC(二)配置文件系統(tǒng)Kernelautomounterversion4support(alsosupportsv3)/*文件系統(tǒng)自動掛載支持DOSFATfssupport/*對DOS/FATC件系統(tǒng)的支持YaffsfilesystemonNAND/*對YAFF敏件系統(tǒng)的支持CompressedROMfilesystemsupport/*對Cramfs文件系統(tǒng)的支持*Virtualmemoryfilesystemsupport

9、(formershmfs)/*對temfs文件系統(tǒng)的支持SimpleRAM-basedfilesystemsupport*/procfilesystemsupport/*對/proc和/dev設備文件系統(tǒng)的支持*/devfilesystemsupport(EXPERIMENTAL)/*對/dev*Automatiocallymountatboot/*啟動時自動掛載的支持*/dev/ptsfilesystemforUnix98PTYsNetworkFileSystems-/*對NFS網絡文件系統(tǒng)的支持NFSfilessystemsupport*ProvidNFSv3clientsupport四、總結一個使用Linux內核的嵌入式系統(tǒng)中root文件系統(tǒng)必修包含支持完整Linux系統(tǒng)的全部東西,因此至少包含:基本文件系統(tǒng)結構如目錄/dev、/proc、/bin、/etc、/lib、/usr;最基本的應用

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論