什么是嵌入式的根文件呢?嵌入式跟文件系統(tǒng)就是一種特殊的文件系統(tǒng),那么根文件系統(tǒng)和普通的文件系統(tǒng)有什么區(qū)別呢?由于根文件系統(tǒng)是內(nèi)核啟動(dòng)時(shí)掛在的個(gè)文件系統(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)。
嵌入式的根文件系統(tǒng)有哪些呢?
一、基于FLASH的文件系統(tǒng)
Flash(閃存)作為嵌入式系統(tǒng)的主要存儲(chǔ)媒介,有其自身的特性。Flash的寫入操作只能把對應(yīng)位置的1修改為0,而不能把0修改為1(擦除Flash就是把對應(yīng)存儲(chǔ)塊的內(nèi)容恢復(fù)為1),因此,一般情況下,向Flash寫入內(nèi)容時(shí),需要先擦除對應(yīng)的存儲(chǔ)區(qū)間,這種擦除是以塊(block)為單位進(jìn)行的。
二、基于RAM的文件系統(tǒng)
(1)Ramdisk
Ramdisk是將一部分固定大小的內(nèi)存當(dāng)作分區(qū)來使用。它并非一個(gè)實(shí)際的文件系統(tǒng),而是一種將實(shí)際的文件系統(tǒng)裝入內(nèi)存的機(jī)制,并且可以作為根文件系統(tǒng)。將一些經(jīng)常被訪問而又不會(huì)更改的文件(如只讀的根文件系統(tǒng))通過Ramdisk放在內(nèi)存中,可以明顯地提高系統(tǒng)的性能。
在Linux的啟動(dòng)階段,initrd提供了一套機(jī)制,可以將內(nèi)核映像和根文件系統(tǒng)一起載入內(nèi)存。
(2)Initramfs
基于RAM的文件系統(tǒng)-Initramfs出現(xiàn)在2.6內(nèi)核中,它類似于tmpfs,是一種基于內(nèi)存的文件系統(tǒng),它的使用不需要?jiǎng)?chuàng)建內(nèi)存塊設(shè)備。增加文件到ramfs(或增大原有的文件)會(huì)自動(dòng)配置更多的內(nèi)存,并刪除或截去文件以釋放內(nèi)存。(若ramdisk沒有滿,已被占用的額外的內(nèi)存也不能用來做其它事,若ramdisk滿了,但其它仍有閑置的內(nèi)存,也必須重新格式化后才能擴(kuò)展使用)
(3)ramfs/tmpfs
Ramfs是LinusTorvalds開發(fā)的一種基于內(nèi)存的文件系統(tǒng),工作于虛擬文件系統(tǒng)(VFS)層,不能格式化,可以創(chuàng)建多個(gè),在創(chuàng)建時(shí)可以指定其能使用的內(nèi)存大小。(實(shí)際上,VFS本質(zhì)上可看成一種內(nèi)存文件系統(tǒng),它統(tǒng)一了文件在內(nèi)核中的表示方式,并對磁盤文件系統(tǒng)進(jìn)行緩沖。)
三、其它文件系統(tǒng)
(1)網(wǎng)絡(luò)文件系統(tǒng)NFS(NetworkFileSystem)
NFS是由Sun開發(fā)并發(fā)展起來的一項(xiàng)在不同機(jī)器、不同操作系統(tǒng)之間通過網(wǎng)絡(luò)共享文件的技術(shù)。在嵌入式Linux系統(tǒng)的開發(fā)調(diào)試階段,可以利用該技術(shù)在主機(jī)上建立基于NFS的根文件系統(tǒng),掛載到嵌入式設(shè)備,可以很方便地修改根文件系統(tǒng)的內(nèi)容。
(2)UBIFS
在linux-2.6.27以前,談到Flash文件系統(tǒng),大家很多時(shí)候多會(huì)想到cramfs、jffs2、yaffs2等文件系統(tǒng)。它們也都是基于文件系統(tǒng)+mtd+flash設(shè)備的架構(gòu)。linux-2.6.27后,內(nèi)核加入了一種新型的flash文件系統(tǒng)UBI(UnsortedBlockImages)。產(chǎn)生的背景。
以上就是什么是嵌入式的根文件?嵌入式的根文件系統(tǒng)有哪些的內(nèi)容了,如果說你對于嵌入式感興趣并且想要學(xué)習(xí)的話,那么可以來我們達(dá)內(nèi)科技的嵌入式培訓(xùn)班進(jìn)行學(xué)習(xí),也可以先點(diǎn)擊我們文章下面的獲取試聽資格按鈕來獲取我們的嵌入式課程免費(fèi)試聽資格,在試聽中可以更加深入的了解我們達(dá)內(nèi)科技。