日本a√视频在线,久久青青亚洲国产,亚洲一区欧美二区,免费g片在线观看网站

        <style id="k3y6c"><u id="k3y6c"></u></style>
        <s id="k3y6c"></s>
        <mark id="k3y6c"></mark>
          
          

          <mark id="k3y6c"></mark>

          關 閉

          新聞中心

          EEPW首頁 > 工控自動化 > 設計應用 > 現(xiàn)場總線的開關量I/O模塊設計:操作系統(tǒng)移植與驅動開發(fā)

          現(xiàn)場總線的開關量I/O模塊設計:操作系統(tǒng)移植與驅動開發(fā)

          作者: 時間:2013-05-27 來源:網(wǎng)絡 收藏

          5. 4嵌入式根文件系統(tǒng)的構建

          Linux的一個最重要特點就是它支持許多不同的文件系統(tǒng)。這使Linux非常靈活,能夠與許多其他的共存。Linux支持的常見的文件系統(tǒng)有:JFS、ReiserFS、ext、ext2、ext3、ISO9660、XFS、Minx、MSDOS、UMSDOS、VFAT、NTFS、HPFS、NFS、SMB、SysV、PROC等。隨著時間的推移,Linux支持的文件系統(tǒng)數(shù)還會增加。

          Linux是通過把系統(tǒng)支持的各種文件系統(tǒng)鏈接到一個單獨的樹形層次結構中,來實現(xiàn)對多文件系統(tǒng)的支持的。該樹形層次結構把文件系統(tǒng)表示成一個整個的獨立實體。無論什么類型的文件系統(tǒng),都被裝配到某個目錄上,由被裝配的文件系統(tǒng)的文件覆蓋該目錄原有的內容。該個目錄被稱為裝配目錄或裝配點。在文件系統(tǒng)卸載時,裝配目錄中原有的文件才會顯露出來。

          文件系統(tǒng)都會被燒錄在與某一存儲設備上。在嵌入式設備上很少使用大容量的ID E硬盤作為自己的存儲設備,嵌入式設備往往選用ROM、閃存( flash memory )等作為它的主要存儲設備。在嵌入式設備上選用哪種文件系統(tǒng)格式與閃存的特點是相關的。

          本硬件平臺是以NAND Flash (閃存)作為主要的存儲媒介,這類存儲器與傳統(tǒng)存儲器最大的不同在于其是按扇區(qū)擦除、按位編程。Flash存儲介質的這種技術特點使得傳統(tǒng)的Linux文件系統(tǒng)已經(jīng)不再適合在其上構建,比如Ext2文件系統(tǒng),是專為像IDE那樣的塊設備的,沒有提供很好的扇區(qū)擦寫支持,不支持損耗平衡,沒有掉電保護,也沒有很好的扇區(qū)管理。這些缺點都表明,在Flash存儲介質上應用為設備的傳統(tǒng)文件系統(tǒng)不是一個很好的選擇?;谶@樣的原因,產(chǎn)生了很多專為Flash設備而的文件系統(tǒng)。

          利用BusyBox構建嵌入式根文件系統(tǒng)

          Linux下的根文件系統(tǒng)目錄結構如下:

          目錄 習慣用法

          /bin 用戶命令所在目錄

          /dev 硬件設備文件及其它特殊文件

          /etc 系統(tǒng)配置文件,包括啟動文件等

          /home 多用戶主目錄

          /lib 鏈接庫文件目錄

          /mnt 裝配點,用于裝配臨時文件系統(tǒng)或其他的文件系統(tǒng)

          /opt 附加的軟件套件目錄

          /proc 虛擬文件系統(tǒng),用來顯示內核及進程信息

          /root root用戶主目錄

          /sbin 系統(tǒng)管理員命令目錄

          /tmp 臨時文件目錄/usr用戶命令目錄

          /var 監(jiān)控程序和工具程序所存放的可變數(shù)據(jù)

          對于用途單一的嵌入式系統(tǒng),上邊的一些用于多用戶的目錄可以省略,例如/home、/opt、/root目錄等。而/bin、/dev、/etc、/lib、/proc、/sbin和/usr目錄,是幾乎每個系統(tǒng)必備的目錄,也是不可或缺的目錄。

          制作根文件系統(tǒng),就是創(chuàng)建各種目錄,并在里面創(chuàng)建各種文件。比如在/bin、/sbin目錄下存放各種可執(zhí)行程序,在/etc目錄下存放配置文件,在/lib目錄下存放庫文件。使用Busy box制作根文件系統(tǒng),就是利用Busy box來創(chuàng)建/bin、/sbin等目錄下的可執(zhí)行的文件。

          5.4.1 Buybox簡介

          Buybox被非常形象地稱為嵌入式Linux系統(tǒng)中的“瑞士軍刀”,它是一個Uinx工具集。它可提供一百多種GNU常用工具、shell腳本工具等。雖然Buybox中的這些工具相對于GNU提供的完全工具有所簡化,但是它們都很實用。

          Buybox在設計上就充分考慮了硬件資源受限的特殊工作環(huán)境。它采用化設計,使得它很容易被定制和裁剪??梢愿鶕?jù)實際的用途,裁剪出一個最精簡的工具集。

          Buybox的特色是所有命令都編譯成一個文件:Buybox,其他命令工具(如sh、cp、ls等)都是指向Buybox文件的鏈接。在使用Buybox生成的工具時,會根據(jù)工具的文件名鏈接到特定的處理程序。這樣,所有這些程序只需被加載一次,而所有的Buybox工具組件都可以共享相同的代碼段,這在很大程度上節(jié)省了系統(tǒng)的內存資源也提高了應用程序的執(zhí)行速度。

          Buybox僅需要幾百KB的空間就可以運行,這使得Buybox很適合嵌入式系統(tǒng)使用。同時,Buybox的安裝腳本也使得它很容易建立基于Buybox的根文件系統(tǒng)。通常只需要添加/dev、/etc等目錄以及相關的配置腳本,就可以實現(xiàn)一個簡單的根文件系統(tǒng)。

          5.4.2 Buybox的配置編譯

          將Buybox的源碼從網(wǎng)站上下載到本地目錄,運行命令:

          $tarzxvf Buybox-1.1.3.tar.gz

          $cd Buybox-1.1.3

          $make menuconfig

          在虛擬機上配置界面如圖5.3所示

          典型的Buybox文件大小在動態(tài)鏈接的情況下是300KB左右,靜態(tài)鏈接為800KB左右,用它實現(xiàn)的文件系統(tǒng)完全可以控制在1MB以下。

          5.4.3根文件系統(tǒng)鏡像構建

          通常情況下根文件系統(tǒng)鏡像是系統(tǒng)構建的最后一步。利用交叉編譯工具將應用程序、內核分別配置和編譯之后,把獲得的C鏈接庫、內核以及應用程序按照FHS規(guī)則放到相應位置,利用文件系統(tǒng)自帶的工具mkyaffs image來最終生成一個根文件系統(tǒng)鏡像file system.yaffs.

          linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

          linux相關文章:linux教程



          上一頁 1 2 3 下一頁

          評論


          相關推薦

          技術專區(qū)

          關閉