![通信原理大綜合課件高頻全_第1頁](http://file4.renrendoc.com/view14/M00/2B/1A/wKhkGWcOsm-AFMLXAAH88As_wB8418.jpg)
![通信原理大綜合課件高頻全_第2頁](http://file4.renrendoc.com/view14/M00/2B/1A/wKhkGWcOsm-AFMLXAAH88As_wB84182.jpg)
![通信原理大綜合課件高頻全_第3頁](http://file4.renrendoc.com/view14/M00/2B/1A/wKhkGWcOsm-AFMLXAAH88As_wB84183.jpg)
![通信原理大綜合課件高頻全_第4頁](http://file4.renrendoc.com/view14/M00/2B/1A/wKhkGWcOsm-AFMLXAAH88As_wB84184.jpg)
![通信原理大綜合課件高頻全_第5頁](http://file4.renrendoc.com/view14/M00/2B/1A/wKhkGWcOsm-AFMLXAAH88As_wB84185.jpg)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第7章嵌入式文件系統(tǒng)
文件系統(tǒng)是Linux操作系統(tǒng)非常重要的一部分,文件系統(tǒng)是管理信息資源的一種軟件,管理文件的存儲、檢索、更新,提供安全可靠的共享和保護(hù)手段,并且方便用戶使用。它包含兩個(gè)內(nèi)容,一是存儲信息在邏輯上的信息組織結(jié)構(gòu),二是存儲信息在物理介質(zhì)上的存儲結(jié)構(gòu)。邏輯結(jié)構(gòu)最常見的表現(xiàn)形式是樹型結(jié)構(gòu)幾乎所有的操作系統(tǒng)都采用這種形式。物理存儲介質(zhì)有磁盤、Flash、存儲卡、光盤等。文件系統(tǒng)可以有不同的格式,它決定信息如何被存儲為文件和目錄。文件系統(tǒng)的功能統(tǒng)一管理文件的存儲空間,實(shí)施存儲空間的分配與回收。實(shí)現(xiàn)文件的按名存取。名字空間映射存儲空間。實(shí)現(xiàn)文件信息的共享,并提供文件的保護(hù)和保密措施。向用戶提供一個(gè)方便使用的接口(提供對文件系統(tǒng)操作命令,以及提供對文件的操作命令:信息存取、加工等)。支持不同類型的文件系統(tǒng)通過文件系統(tǒng)類型注冊鏈表來描述的。向系統(tǒng)注冊文件系統(tǒng)類型有兩種途徑,一是在編譯操作系統(tǒng)內(nèi)核時(shí)確定,并在系統(tǒng)初始化時(shí)通過函數(shù)調(diào)用向注冊表登記;另一種是把文件系統(tǒng)當(dāng)作一個(gè)模塊,通過kerneld或insmod命令在裝入該文件系統(tǒng)模塊時(shí)向注冊表登記它的類型。Linux操作系統(tǒng)不通過設(shè)備標(biāo)識訪問某個(gè)具體文件系統(tǒng),而是通過mount命令把它安裝到整個(gè)文件系統(tǒng)樹的某一個(gè)目錄節(jié)點(diǎn),該文件系統(tǒng)的所有文件和子目錄就是該目錄的文件和子目錄,直到用umount命令顯式的撤卸該文件系統(tǒng)。當(dāng)Linux自舉時(shí),首先裝入根文件系統(tǒng),然后根據(jù)/etc/fstab中的登記項(xiàng)使用mount命令自動逐個(gè)安裝文件系統(tǒng)。此外用戶也可以顯式地通過mount和umount命令安裝和卸裝文件系統(tǒng)。虛擬文件系統(tǒng)VFS
它的主要功能包括:記錄可用的文件系統(tǒng)的類型。把設(shè)備與對應(yīng)的文件系統(tǒng)聯(lián)系起來。處理一些面向文件的通用操作。
虛擬文件系統(tǒng)VFS是物理文件系統(tǒng)與服務(wù)之間的一個(gè)接口層,它對每一個(gè)具體的文件系統(tǒng)的所有細(xì)節(jié)進(jìn)行抽象,使得不同的文件系統(tǒng)在Linux核心以及系統(tǒng)中運(yùn)行的其它進(jìn)程看來都是相同的。
VFS只是一種存在于內(nèi)存的文件系統(tǒng),在操作系統(tǒng)自舉時(shí)建立,在系統(tǒng)關(guān)閉時(shí)消亡。VFS描述文件時(shí)使用超級塊和inode的方式。在系統(tǒng)啟動時(shí),所有被初始化的文件系統(tǒng)(file_system_type)都要向VFS(file_systems)登記.
超級塊的數(shù)據(jù)結(jié)構(gòu)如下:structsuper_block{kdev_ts_dev; /*該文件系統(tǒng)的主次設(shè)備號*/unsignedlongs_blocksize; /*塊大小*/unsignedchars_blocksize_bits; /*以2的冪次表示塊大小*/unsignedchars_lock; /*鎖定標(biāo)志,置位表示拒絕其他進(jìn)程訪問*/unsignedchars_rd_only; /*只讀標(biāo)志*/unsignedchars_dirt; /*已修改標(biāo)志*/structfile_system_type*s_type; /*指向文件系統(tǒng)類型注冊表相應(yīng)項(xiàng)*/structsuper_operations*s_op; /*指向一組操作該文件系統(tǒng)的函數(shù)*/structdquot_operations*dq_op;unsignedlongs_flags;unsignedlongs_magic;unsignedlongs_time;structinode*s_covered; /*指向安裝點(diǎn)目錄的inode*/structinode*s_mounted; /*指向被安裝文件系統(tǒng)的第一個(gè)inode*/structwait_queue*s_wait; /*在該超級塊上的等待隊(duì)列*/union{各個(gè)物理文件系統(tǒng)超級塊的結(jié)構(gòu)類型
}u;};
文件系統(tǒng)中的每一個(gè)子目錄和文件都對應(yīng)于一個(gè)唯一的inode,它是Linux管理文件系統(tǒng)的最基本單位。inode的數(shù)據(jù)結(jié)構(gòu)如下:structinode{kdev_ti_dev; /*該文件系統(tǒng)的主次設(shè)備號*/umode_ti_mode; /*文件類型以及存取權(quán)限*/ulink_ti_nlink; /*連接到該文件的link數(shù)*/uid_ti_uid; gid_ti_gid; off_ti_size; /*文件長度*/time_ti_atime,
i_mtime,
i_ctime;unsignedlongi_blocksize,
i_blocks; /*字節(jié)/塊為單位的文件長度*/unsignedlongi_version;unsignedlongi_nrpages; /*文件所占的內(nèi)存頁數(shù)*/structsemaphorei_sem;structinode_operations*i_op;/*指向一組針對該文件的操作函數(shù)*/structsuper_block*i_sb; /*指向內(nèi)存中的VFS超級塊*/structwait_queue*i_wait; /*在該文件上的等待隊(duì)列*/structfile_lock*i_flock; /*操作該文件的文件鎖鏈表的首地址*/structvm_area_struct*i_mmap;structpage*i_pages; /*文件所占頁面構(gòu)成的單向鏈*/structdquot*i_dquot[MAXQUOTAS];structinode*i_next,*i_prev,*i_hash_next,*i_hash_prev,*i_bound_to,*i_bound_by;structinode*i_mount; /*指向下掛文件系統(tǒng)的inode的根目錄*/unsignedlongi_count; /*引用計(jì)數(shù),0表示空閑*/unsignedshorti_flags;unsignedshorti_writecount;unsignedchari_lock; /*inode的鎖定標(biāo)志*/unsignedchari_dirt; /*已修改標(biāo)志*/unsignedchari_pipe,
i_sock,
i_seek,
i_update,
i_condemned;union{各個(gè)物理文件系統(tǒng)inode的結(jié)構(gòu)類型
}u;};同超級塊一樣,inode.u用于存儲每一個(gè)特定文件系統(tǒng)的特定inode。系統(tǒng)所有的inode通過i_prev,i_next連接成雙向鏈表,頭指針是first_inode。每個(gè)inode通過i_dev和i_ino唯一地對應(yīng)到某一個(gè)設(shè)備上的某一個(gè)文件或子目錄。i_count為0時(shí)表明該inode空閑,空閑的inode總是放在first_inode鏈表的前面,當(dāng)沒有空閑的inode時(shí),VFS會調(diào)用函數(shù)grow_inodes從系統(tǒng)內(nèi)核空間申請一個(gè)頁面,并將該頁面分割成若干個(gè)空閑inode,加入first_inode鏈表。文件管理的緩沖機(jī)制
Linux既支持多種類型的文件系統(tǒng),又保持了很高的性能。探究其原因,除了VFS以外,多種復(fù)雜的cache起到了關(guān)鍵作用。從效率角度出發(fā),為提高對first_inode鏈表進(jìn)行線性搜索的速度,VFS為已經(jīng)分配的inode構(gòu)造了cache和hash表。Linux維護(hù)了表達(dá)路徑與inode對應(yīng)關(guān)系的VFSdirectorycache。被訪問過的目錄將會被存入directorycache,這樣當(dāng)同一目錄被再次訪問時(shí)就可以快速獲得。數(shù)據(jù)結(jié)構(gòu)如下:為加快對物理設(shè)備的訪問,Linux維護(hù)一組數(shù)據(jù)塊緩沖區(qū),稱為buffercache。Buffercache就是文件組織中所提到的主存緩沖區(qū),它獨(dú)立于任何類型的文件系統(tǒng),被所有的物理設(shè)備所共享。非日志文件系統(tǒng)與日志文件系統(tǒng)
文件系統(tǒng)是用來管理和保存數(shù)據(jù)的,應(yīng)保證數(shù)據(jù)的完整性,但有時(shí)會發(fā)生意外。保存文件之前,系統(tǒng)崩潰。未存盤數(shù)據(jù)會丟失。正在保存文件時(shí),系統(tǒng)崩潰。嚴(yán)重情況下會使文件系統(tǒng)的的管理信息,目錄、分區(qū)甚至整個(gè)硬盤數(shù)據(jù)丟失。非日志文件系統(tǒng)通過備份信息來恢復(fù)目錄結(jié)構(gòu)、分區(qū)信息等。日志文件系統(tǒng)通過先寫日志后寫數(shù)據(jù)。保存改動記錄,在系統(tǒng)重起時(shí)自動根據(jù)日志記錄把尚未完成的文件操作取消,保證文件系統(tǒng)的一致性和完整性。7.1嵌入式文件系統(tǒng)概述一、嵌入式系統(tǒng)的存儲介質(zhì)
嵌入式系統(tǒng)中文件系統(tǒng)常用的有SDRAM,NOR-FLASH,NAND-FLASH,SD卡,U盤和硬盤等,種類比PC機(jī)要多。其中SDRAM作為內(nèi)存,在掉電的情況下,不能保持原有數(shù)據(jù)不變,所以基于內(nèi)存的文件系統(tǒng)只能是臨時(shí)的文件系統(tǒng),可以用來保存臨時(shí)的文件,不能用來保存需要永久記錄的文件。FLASH是嵌入式系統(tǒng)最常用的文件系統(tǒng)存儲介質(zhì),有兩種類型NOR和NAND,NORFLASH可以直接進(jìn)行讀操作,但寫操作要經(jīng)過擦除和寫入兩部分,擦除是按塊來進(jìn)行,不能直接寫入,需要通過命令控制;應(yīng)用程序可以直接在Flash內(nèi)運(yùn)行,不必讀到RAM中。。NANDFLASH即不能直接進(jìn)行讀操作,也不可以直接進(jìn)行寫,讀寫都是按塊來進(jìn)行,都需要通過命令來做控制,但NAND存儲密度高,寫入和擦除速度快。NORFlash主要適用于代碼存儲,NANDFLASH主要適用于數(shù)據(jù)存儲。嵌入式Flash文件系統(tǒng)要求1、掉電安全要求系統(tǒng)掉電和程序崩潰都不會影響文件系統(tǒng)的一致性和完整性。2、平均使用3、高效垃圾回收二、嵌入式Linux文件系統(tǒng)1、嵌入式Linux文件系統(tǒng)原理Linux文件系統(tǒng)主要分成三個(gè)層次。一是用戶空間的應(yīng)用程序?qū)ξ募到y(tǒng)的系統(tǒng)調(diào)用,二是虛擬文件系統(tǒng),三是掛載在VFS中的實(shí)際文件系統(tǒng)。MTD(存儲技術(shù)器件)是Linux內(nèi)核采納的一種設(shè)備驅(qū)動程序,它為底層的存儲芯片提供了統(tǒng)一的設(shè)備接口MTD驅(qū)動也可以為那些支持CFI接口的NOR型Flash提供支持。雖然MTD可以建立在RAM上,但它是專為基于Flash的設(shè)備而設(shè)計(jì)的。MTD包含特定Flash芯片的驅(qū)動程序,開發(fā)者要選擇適合自己系統(tǒng)的Flash芯片驅(qū)動。Flash芯片驅(qū)動向上層提供讀、寫、擦除等基本的操作,MTD對這些操作進(jìn)行封裝后向用戶層提供MTDchar和MTDblock類型的設(shè)備。MTD驅(qū)動層也支持在一塊Flash上建立多個(gè)Flash分區(qū),每一個(gè)分區(qū)作為了一個(gè)MTDblock設(shè)備,可以把系統(tǒng)軟件和數(shù)據(jù)等分配到不同的分區(qū)上,同時(shí)可以在不同的分區(qū)采用不用的文件系統(tǒng)格式。這一點(diǎn)非常重要,正是由于這一點(diǎn)才為嵌入式系統(tǒng)多文件系統(tǒng)的建立提供了靈活性。引導(dǎo)塊位于文件系統(tǒng)開頭,通常為一個(gè)扇區(qū),存放引導(dǎo)程序、用于讀入并啟動操作系統(tǒng)。超級塊由于記錄文件系統(tǒng)的管理信息,根據(jù)特定文件系統(tǒng)的需要超級塊中存儲的信息不同。inode區(qū)用于登記每個(gè)文件的目錄項(xiàng),第一個(gè)inode是該文件系統(tǒng)的根節(jié)點(diǎn)。數(shù)據(jù)區(qū)則存放文件數(shù)據(jù)或一些管理數(shù)據(jù)。Linux中,一個(gè)文件系統(tǒng)在物理數(shù)據(jù)組織上一般劃分成引導(dǎo)塊、超級塊、inode區(qū)以及數(shù)據(jù)區(qū)。支持不同類型的文件系統(tǒng)通過文件系統(tǒng)類型注冊鏈表來描述的。向系統(tǒng)注冊文件系統(tǒng)類型有兩種途徑,一是在編譯操作系統(tǒng)內(nèi)核時(shí)確定,并在系統(tǒng)初始化時(shí)通過函數(shù)調(diào)用向注冊表登記;另一種是把文件系統(tǒng)當(dāng)作一個(gè)模塊,通過kerneld或insmod命令在裝入該文件系統(tǒng)模塊時(shí)向注冊表登記它的類型。當(dāng)Linux自舉時(shí),首先裝入根文件系統(tǒng),然后根據(jù)/etc/fstab中的登記項(xiàng)使用mount命令自動逐個(gè)安裝文件系統(tǒng)。此外用戶也可以顯式地通過mount和umount命令安裝和卸裝文件系統(tǒng)。2、主要的嵌入式文件系統(tǒng)(1)Romfs
傳統(tǒng)型的Romfs文件系統(tǒng)是一種簡單的、緊湊的、只讀的文件系統(tǒng),不支持動態(tài)擦寫保存,按順序存放數(shù)據(jù),因而支持應(yīng)用程序以XIP(eXecuteInPlace,片內(nèi)運(yùn)行)方式運(yùn)行,在系統(tǒng)運(yùn)行時(shí),節(jié)省RAM空間。uClinux系統(tǒng)通常采用Romfs文件系統(tǒng)。(2)Cramfs:
Cramfs是一種只讀的壓縮文件系統(tǒng)。它也基于MTD驅(qū)動程序。
在cramfs文件系統(tǒng)中,每一頁(4KB)被單獨(dú)壓縮,可以隨機(jī)頁訪問,其壓縮比高達(dá)2:1,為嵌入式系統(tǒng)節(jié)省大量的Flash存儲空間,使系統(tǒng)可通過更低容量的FLASH存儲相同的文件,從而降低系統(tǒng)成本。Cramfs文件系統(tǒng)以壓縮方式存儲,在運(yùn)行時(shí)解壓縮,所以不支持應(yīng)用程序以XIP方式運(yùn)行,所有的應(yīng)用程序要求被拷到RAM里去運(yùn)行,但這并不代表比Ramfs需求的RAM空間要大一點(diǎn),因?yàn)镃ramfs是采用分頁壓縮的方式存放檔案,在讀取檔案時(shí),不會一下子就耗用過多的內(nèi)存空間,只針對目前實(shí)際讀取的部分分配內(nèi)存,尚沒有讀取的部分不分配內(nèi)存空間,當(dāng)我們讀取的檔案不在內(nèi)存時(shí),Cramfs文件系統(tǒng)自動計(jì)算壓縮后的資料所存的位置,再即時(shí)解壓縮到RAM中。另外,它的速度快,效率高,其只讀的特點(diǎn)有利于保護(hù)文件系統(tǒng)免受破壞,提高了系統(tǒng)的可靠性。
由于以上特性,Cramfs在嵌入式系統(tǒng)中應(yīng)用廣泛。
但是它的只讀屬性同時(shí)又是它的一大缺陷,使得用戶無法對其內(nèi)容對進(jìn)擴(kuò)充。Cramfs映像通常是放在Flash中,但是也能放在別的文件系統(tǒng)里,使用loopback設(shè)備可以把它安裝別的文件系統(tǒng)里。(3)jffs2
JFFS文件系統(tǒng)最早是由瑞典AxisCommunications公司基于Linux2.0的內(nèi)核為嵌入式系統(tǒng)開發(fā)的文件系統(tǒng)。JFFS2是RedHat公司基于JFFS開發(fā)的閃存文件系統(tǒng),最初是針對RedHat公司的嵌入式產(chǎn)品eCos開發(fā)的嵌入式文件系統(tǒng),所以JFFS2也可以用在Linux,uCLinux中。
Jffs2:日志閃存文件系統(tǒng)版本2(JournallingFlashFileSystemv2)
主要用于NOR型閃存,基于MTD驅(qū)動層,特點(diǎn)是:可讀寫的、支持?jǐn)?shù)據(jù)壓縮的、基于哈希表的日志型文件系統(tǒng),并提供了崩潰/掉電安全保護(hù),提供“寫平衡”支持等。缺點(diǎn)主要是當(dāng)文件系統(tǒng)已滿或接近滿時(shí),因?yàn)槔占年P(guān)系而使jffs2的運(yùn)行速度大大放慢。
(4)yaffs:YetAnotherFlashFileSystem
yaffs/yaffs2是專為嵌入式系統(tǒng)使用NAND型閃存而設(shè)計(jì)的一種日志型文件系統(tǒng)。與jffs2相比,它減少了一些功能(例如不支持?jǐn)?shù)據(jù)壓縮),所以速度更快,掛載時(shí)間很短,對內(nèi)存的占用較小。另外,它還是跨平臺的文件系統(tǒng),除了Linux和eCos,還支持WinCE,pSOS和ThreadX等。
yaffs/yaffs2自帶NAND芯片的驅(qū)動,并且為嵌入式系統(tǒng)提供了直接訪問文件系統(tǒng)的API,用戶可以不使用Linux中的MTD與VFS,直接對文件系統(tǒng)操作。當(dāng)然,yaffs也可與MTD驅(qū)動程序配合使用。
yaffs與yaffs2的主要區(qū)別在于,前者僅支持小頁(512Bytes)NAND閃存,后者則可支持大頁(2KB)NAND閃存。同時(shí),yaffs2在內(nèi)存空間占用、垃圾回收速度、讀/寫速度等方面均有大幅提升。7.2根文件系統(tǒng)一、概述
Linux的文件系統(tǒng)有一個(gè)根節(jié)點(diǎn)“/”,這個(gè)根節(jié)點(diǎn)存在于內(nèi)存中,系統(tǒng)啟動時(shí),要將一個(gè)具體的設(shè)備安裝到節(jié)點(diǎn)“/”上,稱為根設(shè)備,根設(shè)備上的文件系統(tǒng)就稱為根文件系統(tǒng)。
對于PC機(jī)根設(shè)備一般是硬盤上的一個(gè)分區(qū),對嵌入式設(shè)備,通常是Flash上的一個(gè)分區(qū)。二、根文件系統(tǒng)的目錄根文件系統(tǒng)要包括下列目錄:/bin常用的執(zhí)行程序,包括引導(dǎo)啟動的命令,用戶可能用到的命令。這些命令都是二進(jìn)制文件的可執(zhí)行程序。/etc存放系統(tǒng)的設(shè)置文件和其它的系統(tǒng)文件。其中包括用戶信息文件etc/passwd,系統(tǒng)初始化文件/etc/rc等。/sbin系統(tǒng)管理員服務(wù)程序,其中最重要的是供內(nèi)核初始化之后執(zhí)行的/sbin/init進(jìn)程,系統(tǒng)啟動時(shí)由init解釋并運(yùn)行/etc/inittab,inittab將指導(dǎo)int去調(diào)用一個(gè)系統(tǒng)初始化程序/etc/init.d/rcS。
/proc系統(tǒng)狀態(tài)文件目錄,目錄中的文件可以用于訪問有關(guān)內(nèi)核的狀態(tài)、計(jì)算機(jī)的屬性、正在運(yùn)行的進(jìn)程的狀態(tài)等信息。/proc中的文件是虛擬的,有內(nèi)核在內(nèi)存中產(chǎn)生。
/tmp存放程序在運(yùn)行時(shí)產(chǎn)生的信息和數(shù)據(jù)。/dev設(shè)備文件,驅(qū)動程序存放目錄,可以在這里存放自己編寫的驅(qū)動程序。/usr用于存放用戶程序和配置文件的目錄,可以根據(jù)需要進(jìn)行設(shè)置。目錄下的/usr/etc/rc.local執(zhí)行本地所需要的初始化,如安裝核心模塊,進(jìn)行網(wǎng)絡(luò),運(yùn)行應(yīng)用程序,啟動圖形界面等。/etc/modules.conf在系統(tǒng)運(yùn)行期間自動加載模塊。
/var包含系統(tǒng)在運(yùn)行時(shí)要改變的數(shù)據(jù)。/root超級用戶的目錄。/lib根文件系統(tǒng)上的程序所需的共享庫,存放根文件系統(tǒng)運(yùn)行時(shí)所需的共享文件。/mnt用于設(shè)備安裝的目錄。/mnt/etc/init.d/rcS完成各個(gè)文件系統(tǒng)的Mount,執(zhí)行/usr/etc/rc.local;通過rcS可以調(diào)動dhcp程序配置網(wǎng)絡(luò)。rcS執(zhí)行完以后,就會打開Shell。
二、根文件系統(tǒng)的制作1、Busybox工具的使用Busybox是一種開源軟件,集成了一百多個(gè)最常用的Linux命令和一些工具,用戶可以非常方便的在Busybox中定制所需的應(yīng)用程序,使用Busybox可以大大簡化制作嵌入根文件系統(tǒng)的過程。2、制作根文件系統(tǒng)(1)下載Busybox
下載后解壓到本地的任意目錄下(如/home/hgs/busybox)新建根文件目錄(如/home/hgs/rootfs).進(jìn)入/home/hgs/busybox目錄,運(yùn)行makemenuconfig打開編譯界面進(jìn)行配置。以下選項(xiàng)是必須編譯進(jìn)Busybox的功能選項(xiàng):Buildoptions[*]BuildBusyBoxasastaticbinary(nosharedlibs)
這個(gè)選項(xiàng)是一定要選擇的,這樣才能把busybox編譯成靜態(tài)鏈接的可執(zhí)行文件,運(yùn)行時(shí)才獨(dú)立于其他函數(shù)庫.否則必需要其他庫文件才能運(yùn)行,在單一個(gè)linux內(nèi)核不能使他正常工作.
[*]DoyouwanttobuildBusyBoxwithaCrossCompiler選擇自己定義的交叉編譯環(huán)境。InstallationOptions[*]Don'tuse/usr
這個(gè)選項(xiàng)也一定要選,否則makeinstall后busybox將安裝在原系統(tǒng)的/usr下,這將覆蓋掉系統(tǒng)原有的命令.選擇這個(gè)選項(xiàng)后,makeinstall后會在busybox目錄下生成一個(gè)叫_install的目錄,里面有busybox和指向他的鏈接.
其他選項(xiàng)都是一些linux基本命令選項(xiàng),自己需要哪些命令就編譯進(jìn)去,一般用默認(rèn)的就可以了.配置好后退出并保存.
(2)編譯和安裝Busybox執(zhí)行如下命令:#cd/home/hgs/busybox#make
#makeinstall
Busybox編譯后會在_install目錄中建立/usr、/bin、/sbin等目錄。將_install目錄內(nèi)容復(fù)制到/home/hgs/rootfs目錄下,作為根文件系統(tǒng)內(nèi)容。(3)創(chuàng)建頂層目錄#cd/home/hgs/rootfs#mkdirdev#mkdiretc#mkdirlib#mkdirproc#mkdirsys#mkdirtmp(4)創(chuàng)建設(shè)備節(jié)點(diǎn)為系統(tǒng)中的設(shè)備在/dev目錄下建立設(shè)備文件節(jié)點(diǎn)。#cd/home/hgs/rootfs/dev#mknodconsolec51#mknodnullc13#mknodzeroc15(5)添加庫文件和其它程序如果busybox采用了動態(tài)鏈接的方式編譯,還需要把busybox所需要的動態(tài)庫:libcrypt.so.1、libc.so.6、ldlinux.so.2放到lib目錄中。最好按照標(biāo)準(zhǔn)的方式建立相應(yīng)的文件和鏈接,可以參考下面的列表:-rwxrwxrwx192519ld-2.3.2.so
l
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年全球及中國自動式雙面研磨床行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報(bào)告
- 土地廠房買賣合同
- 空心磚采購合同
- 石材采購合同范本
- 涂料勞務(wù)承包合同協(xié)議書
- 醫(yī)療器械配送合同
- 汽車貨物運(yùn)輸合同樣本
- 2025農(nóng)村簡易買賣合同
- 2025如何確定勞動合同的成立商業(yè)保理資格
- 最高額抵押擔(dān)保合同
- 2025財(cái)年美國國防預(yù)算概覽-美國國防部(英)
- 2024年江西省南昌市中考一模數(shù)學(xué)試題(含答案)
- 48貴州省貴陽市2023-2024學(xué)年五年級上學(xué)期期末數(shù)學(xué)試卷
- 《采暖空調(diào)節(jié)能技術(shù)》課件
- 游戲綜合YY頻道設(shè)計(jì)模板
- arcgis軟件操作解析課件
- 中興ZCTP 5GC高級工程師認(rèn)證考試題庫匯總(含答案)
- 大學(xué)生創(chuàng)新創(chuàng)業(yè)教程PPT全套完整教學(xué)課件
- 小學(xué)科學(xué)項(xiàng)目化作業(yè)的設(shè)計(jì)與實(shí)施研究
- 2020年中考生物試卷及答案
- MCNP-5A程序使用說明書
評論
0/150
提交評論