Linux內(nèi)核移植與根文件系統(tǒng)構(gòu)建.ppt_第1頁
Linux內(nèi)核移植與根文件系統(tǒng)構(gòu)建.ppt_第2頁
Linux內(nèi)核移植與根文件系統(tǒng)構(gòu)建.ppt_第3頁
Linux內(nèi)核移植與根文件系統(tǒng)構(gòu)建.ppt_第4頁
Linux內(nèi)核移植與根文件系統(tǒng)構(gòu)建.ppt_第5頁
已閱讀5頁,還剩42頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、Linux內(nèi)核移植和根文件系統(tǒng)構(gòu)建,根文件系統(tǒng),文件系統(tǒng):簡單地說,它是一種目錄結(jié)構(gòu)。由于Linux操作系統(tǒng)設(shè)備以文件的形式存在于系統(tǒng)中,對(duì)這些文件進(jìn)行分類和管理,并提供與內(nèi)核交互的接口,將形成一定的目錄結(jié)構(gòu),即文件系統(tǒng),它是用戶反映系統(tǒng)的一種形式,并為用戶提供測試和控制系統(tǒng)的接口。根文件系統(tǒng):根文件系統(tǒng)是一個(gè)特殊的文件系統(tǒng),那么根文件系統(tǒng)和普通文件系統(tǒng)有什么區(qū)別呢?由于根文件系統(tǒng)是內(nèi)核啟動(dòng)時(shí)掛起的第一個(gè)文件系統(tǒng),根文件系統(tǒng)應(yīng)該包括啟動(dòng)Linux所需的目錄和關(guān)鍵文件。例如,當(dāng)Linux啟動(dòng)時(shí),它需要初始化目錄中的相關(guān)文件。當(dāng)Linux掛載分區(qū)時(shí),Linux肯定會(huì)找到掛載文件/etc/fstab

2、等。根文件系統(tǒng)還包括許多應(yīng)用程序bin目錄等。Linux系統(tǒng)啟動(dòng)所需的任何文件都可以成為根文件系統(tǒng)。什么是Linux根文件系統(tǒng)?當(dāng)使用Linux時(shí),你會(huì)發(fā)現(xiàn)在/下有很多目錄,比如etc、usr、var、bin等等。這些目錄中有許多目錄或文件;在Linux下,文件系統(tǒng)看起來像一個(gè)樹形結(jié)構(gòu),所以文件系統(tǒng)的結(jié)構(gòu)可以形象地稱為樹形結(jié)構(gòu)。linux文件系統(tǒng)的頂部是“/”。我們稱“/”為Linux的根,它是Linux操作系統(tǒng)的根文件系統(tǒng)。Linux文件系統(tǒng)的入口是“/”,所有的目錄、文件和設(shè)備都在“/”下。根文件系統(tǒng)目錄結(jié)構(gòu),Linux符合文件系統(tǒng)科學(xué)分類標(biāo)準(zhǔn)(FHS),該標(biāo)準(zhǔn)定義了許多文件和目錄的名稱和

3、位置。linux根文件系統(tǒng)的目錄結(jié)構(gòu)如下:/Linux文件系統(tǒng)的入口也是最高級(jí)別的目錄;/bin系統(tǒng)所需的命令位于此目錄中,例如ls、cp、mkdir和其他命令;這個(gè)目錄中的文件都是普通用戶可以使用的可執(zhí)行命令。作為基本系統(tǒng),最基本的命令就放在這里;/boot引導(dǎo)系統(tǒng)程序所需的Linux內(nèi)核和文件目錄;比如內(nèi)核的鏡像文件,引導(dǎo)加載程序(GRUB);根文件系統(tǒng)目錄結(jié)構(gòu)、/dev設(shè)備文件存儲(chǔ)目錄,如聲卡、磁盤./etc系統(tǒng)配置文件位置,一些服務(wù)器配置文件也在這里;例如,/etc/inittab是初始化過程的配置文件,etc/fstab用于指定啟動(dòng)時(shí)需要自動(dòng)安裝的文件系統(tǒng)列表。/home默認(rèn)存儲(chǔ)目錄

4、為普通用戶的主目錄;/lib庫文件存儲(chǔ)目錄/mnt此目錄通常用于存儲(chǔ)裝載存儲(chǔ)設(shè)備的裝載目錄,如cdrom。根文件系統(tǒng)目錄結(jié)構(gòu)、進(jìn)程信息和內(nèi)核信息(如cpu、硬盤分區(qū)、內(nèi)存信息等)。)存儲(chǔ)在這里。由/proc目錄偽裝的文件系統(tǒng)proc的裝載目錄;/rootdirectory /root Linux超級(jí)特權(quán)用戶根;/sbin主要用于存儲(chǔ)與系統(tǒng)管理相關(guān)的命令,是超級(jí)特權(quán)用戶根的可執(zhí)行命令存儲(chǔ)位置。普通用戶無權(quán)在此目錄中執(zhí)行命令,如ifconfig /tmp臨時(shí)文件目錄/usr,這是系統(tǒng)存儲(chǔ)程序(如命令和幫助文件)的目錄。/var目錄包含在正常操作期間已被更改的文件:假脫機(jī)文件、日志文件、鎖定文件、臨

5、時(shí)文件和頁面格式文件。文件存儲(chǔ)規(guī)則,為了實(shí)現(xiàn)各種linux版本的標(biāo)準(zhǔn)化,各種版本的linux系統(tǒng)將遵循FHS標(biāo)準(zhǔn);主要規(guī)則如下:配置文件放在/etc目錄中;設(shè)備文件放在/dev目錄中;庫文件位于目錄/庫目錄下;存儲(chǔ)已編譯的可執(zhí)行文件和命令的目錄是/bin、/sbin、/usr/bin、/usr/sbin和最少數(shù)量的目錄。在嵌入式系統(tǒng)中,根目錄下的許多目錄都可以刪除,如下:所有目錄都應(yīng)該刪除,因?yàn)樗鼈優(yōu)槎鄠€(gè)用戶提供了可擴(kuò)展的環(huán)境;例如,(/home,/mnt,/root)可以根據(jù)引導(dǎo)加載情況刪除/boot目錄。其余的目錄/bin、/dev、/etc、/proc、/sbin、/usr、/lib是必

6、不可少的。linux的根文件系統(tǒng)包括支持Linux系統(tǒng)正常運(yùn)行的基本內(nèi)容,至少應(yīng)該包括以下內(nèi)容:基本文件系統(tǒng)結(jié)構(gòu),如bin、dev等,s bin、lib、usr、proc?;A(chǔ)程序運(yùn)行所需的動(dòng)態(tài)庫?;鞠到y(tǒng)配置文件。必要的設(shè)備文件支持?;緫?yīng)用程序,如sh、ls、cp等,通過將相應(yīng)的文件添加到相應(yīng)的目錄來構(gòu)建根文件系統(tǒng)。例如,在/dev中添加設(shè)備文件,/etc中添加配置文件,/bin中添加命令或程序,/lib中添加動(dòng)態(tài)庫。Linux內(nèi)核移植,1。Linux內(nèi)核移植,2。Busybox生成工具集,3。昕薇,內(nèi)核,根文件系統(tǒng)編寫,Linux內(nèi)核移植,/arm2410s/kernel-2410s是內(nèi)

7、核的源代碼,Linux內(nèi)核移植,1)make config:進(jìn)入命令行,可以逐行配置2)make menuconfig:進(jìn)入熟悉的menuconfig菜單3)make xconfig:在2.4.X和以前的版本中,xconfig菜單是基于TCL/TK圖形庫的。Linux內(nèi)核移植,Linux內(nèi)核移植,1。代碼成熟度級(jí)別選項(xiàng),其中有子項(xiàng):1.1。提示開發(fā)和/或不完整的代碼/驅(qū)動(dòng)程序。該選項(xiàng)支持那些仍處于測試階段的代碼和驅(qū)動(dòng)程序模塊。一般來說,您應(yīng)該選擇這個(gè)選項(xiàng),除非您只想使用在LINUX中完全穩(wěn)定的東西。然而,這有時(shí)會(huì)對(duì)系統(tǒng)性能產(chǎn)生很大影響。1.2 .提示過時(shí)的代碼/驅(qū)動(dòng)程序。此項(xiàng)目用于支持舊的驅(qū)動(dòng)

8、程序和代碼,并被現(xiàn)有文件替換。除非您的機(jī)器配置是舊的,否則您可能不會(huì)選擇它。但是會(huì)有很多問題。因此,這個(gè)項(xiàng)目基本上沒有被使用,在新版本中已經(jīng)被替換。Linux內(nèi)核移植,2??杉虞d模塊支持動(dòng)態(tài)加載模塊支持選項(xiàng),其子項(xiàng)有:2.1。啟用模塊支持支持模塊加載功能,應(yīng)選擇該功能。2.2在所有模塊符號(hào)上設(shè)置版本信息此項(xiàng)用于支持跨內(nèi)核版本的模塊支持。也就是說,由某個(gè)版本的內(nèi)核編譯的模塊可以在另一個(gè)版本的內(nèi)核下使用,這通常是我們不使用的。所以不要選擇。2.3內(nèi)核模塊加載器如果啟用此選項(xiàng),您可以在必要時(shí)借助內(nèi)核程序自動(dòng)加載或卸載這些可加載模塊。我們通常選擇。Linux內(nèi)核移植,3,系統(tǒng)類型系統(tǒng)類型,主要是CPU

9、類型,以及相關(guān)內(nèi)容。在我們的ARM2410-S平臺(tái)上,你在這個(gè)項(xiàng)目上看到的是S3C2410的ARM系列CPU。其他選項(xiàng)是一些關(guān)于芯片和平臺(tái)的結(jié)構(gòu)定義。其他版本的內(nèi)核不是這樣的,但它通常包括處理器系列選項(xiàng),允許我們選擇中央處理器的類型,并且基本輸入輸出系統(tǒng)可以檢查它,所以要注意系統(tǒng)的啟動(dòng)信息。只需選擇正確的中央處理器類型。Linux內(nèi)核移植,4,通用設(shè)置4.1,支持熱插拔設(shè)備支持熱插拔設(shè)備,具體視情況而定??蛇x控制通用串行總線設(shè)備,如通用串行總線閃存驅(qū)動(dòng)器。4.2 .網(wǎng)絡(luò):支持網(wǎng)絡(luò)支持。4.3 .系統(tǒng)五:支持系統(tǒng)五4.4的進(jìn)程間通信。系統(tǒng)支持:這種支持可以直接改變內(nèi)核參數(shù)而無需重啟。啟用此選項(xiàng)后

10、,內(nèi)核將增加約8K。如果你的記憶力太小,不要選擇它。4.5 .數(shù)學(xué)仿真模擬器。4.6 .電源管理器電源管理,這在編譯X86內(nèi)核時(shí)更有用,尤其是筆記本電腦。您不能選擇為ARM編寫內(nèi)核。Linux內(nèi)核移植,5。聯(lián)網(wǎng)選項(xiàng),主要是關(guān)于一些網(wǎng)絡(luò)協(xié)議選項(xiàng)。Linux的功能在于對(duì)網(wǎng)絡(luò)功能的靈活支持。這部分有相當(dāng)多的內(nèi)容。根據(jù)不同情況,我們一般選擇以下項(xiàng)目。5.1 .數(shù)據(jù)包套接字協(xié)議支持。一些應(yīng)用程序使用數(shù)據(jù)包協(xié)議直接與網(wǎng)絡(luò)設(shè)備通信,但不通過內(nèi)核中的其他中介協(xié)議。同時(shí),它可以讓你在TCP不能工作的時(shí)候找到一種通信方式。5.2 .unix域套接字支持基本UNIX套接字5.3。當(dāng)然是支持協(xié)議堆棧。如果您的內(nèi)核非常

11、關(guān)注大小,并且您不需要任何網(wǎng)絡(luò),并且您不使用基于UNIX套接字的應(yīng)用程序,如X窗口,您可以節(jié)省大約144千字節(jié)的空間。Linux內(nèi)核移植,10,SCSI設(shè)備支持如果有SCSI設(shè)備(SCSI控制卡、硬盤或光驅(qū)等)。),選擇此選項(xiàng)。目前,有許多類型的SCSI設(shè)備。要區(qū)分它們,你必須首先知道它們使用的控制芯片的類型。2.6.X內(nèi)核已經(jīng)對(duì)各種類型的SCSI設(shè)備提供了更加具體和詳細(xì)的支持。scsi支持;scsi磁盤支持;Linux內(nèi)核移植,請(qǐng)?jiān)诒緦?shí)驗(yàn)中靜態(tài)地向內(nèi)核添加ad轉(zhuǎn)換器驅(qū)動(dòng)程序;Linux內(nèi)核移植,請(qǐng)?jiān)诒緦?shí)驗(yàn)中靜態(tài)地向內(nèi)核添加ad轉(zhuǎn)換器驅(qū)動(dòng)程序;Linux內(nèi)核移植,請(qǐng)?jiān)诒緦?shí)驗(yàn)中靜態(tài)地向內(nèi)核添加a

12、d轉(zhuǎn)換器驅(qū)動(dòng)程序;其中包括:直接編譯到內(nèi)核中,并以模塊的形式編譯。如果您需要將模塊留空,您將無法編譯和移植Linux內(nèi)核。1.命令make clean是在正式編譯內(nèi)核之前清理環(huán)境。2.命令make dep用于編譯相關(guān)的依賴文件。3.make zImage命令是最終的編譯命令。有時(shí)你可以直接使用make(針對(duì)2.6.x版本)或make bzImage(針對(duì)為個(gè)人電腦編譯大型內(nèi)核)來最終生成內(nèi)核映像zImage。生成路徑是:/arm 2410s/kernel-2410s/arch/arm/boot/zim age。第二,內(nèi)核和根文件系統(tǒng)的實(shí)驗(yàn)。下載最新版本的Busybox時(shí):busybox-1.1

13、7.3.tar.bz2注意:在提取arm-linux-gcc工具時(shí),tar jxff arm-Linux-gcc-3 . 4 . 1 . tar . bz2,ii。內(nèi)核和根文件系統(tǒng)實(shí)驗(yàn),root # root CD/arm 2410s/exp root # root mkdir rootfs root # root CD rootfs/root # root fs CP ARF/arm 2410s/busybox-1.00-pre 10/arm 2410s/root/。(注意“.”當(dāng)前路徑的符號(hào))根# rootfscd busybox-1.00-pre10/,解壓縮后,進(jìn)入配置菜單:具體選項(xiàng)和

14、操作見說明書P192。2.內(nèi)核和根文件系統(tǒng)實(shí)驗(yàn)。選擇busybox的編譯方法:請(qǐng)注意:在“構(gòu)建選項(xiàng)-將busybox構(gòu)建為靜態(tài)二進(jìn)制文件(無共享庫)”中,取消使用鏈接庫。是否要用交叉編譯器構(gòu)建Busybox?/usr/local/arm/3.4.1/bin/arm-Linux-首先查看本地3 . 4 . 1編譯器的地址,并用上面的藍(lán)色字體書寫;安裝后,依次執(zhí)行以下命令:root # root make dep root # root make root # root make prefix=。/root install;內(nèi)核和根文件系統(tǒng)實(shí)驗(yàn);內(nèi)核和根文件系統(tǒng)實(shí)驗(yàn);注意:如果make dep不起

15、作用,請(qǐng)執(zhí)行命令:rm rf。/。在basybox-1.00-pre10/目錄中依賴刪除此文件保存以前的依賴關(guān)系。第二,內(nèi)核和根文件系統(tǒng)實(shí)驗(yàn),編譯生成的目錄結(jié)構(gòu)(默認(rèn)為_ install folder):/bin/linuxrc/sbin/usr/usr/bin/usr/sbin;第二,內(nèi)核和根文件系統(tǒng)實(shí)驗(yàn),將上述三個(gè)紅色文件替換為教學(xué)平臺(tái)原始根文件系統(tǒng)的相應(yīng)目錄:root # rootdc/arm 2410s/exp/rootfs/root root root # roormrfbin/sbin/usr/root # rootcparf/arm 2410s/exp/rootfs/Busybo

16、x-1.00-pre 10/root/*。第二,實(shí)驗(yàn)內(nèi)核和根文件系統(tǒng)以生成cramfs文件系統(tǒng):root # rootdc/arm 2410s/exp/rootfroot # roomkcramfs root.cramfs生成根文件系統(tǒng)root . cramfs第二,內(nèi)核和根文件系統(tǒng)實(shí)驗(yàn),刻錄2410S linux操作系統(tǒng):在windows xp下,所需文件在光盤上的img目錄和flashvivi目錄中提供。編寫2410S linux操作系統(tǒng)包括三個(gè)步驟:編寫李美慧、內(nèi)核和根。此外,我們還需要寫yaffs.tar,這是在img目錄。昕薇- linux操作系統(tǒng)啟動(dòng)引導(dǎo)程序;linux操作系統(tǒng)內(nèi)核;根文件系統(tǒng)。Yaffs.tar-應(yīng)用程序,2。內(nèi)核和根文件系統(tǒng)實(shí)驗(yàn),1。將并行線插入pc的并行端口,并將并行端口連接到JTAG,該端口連接到開發(fā)板的14針JTAT端口;2.將整個(gè)GIVEIO目錄復(fù)制到C:WINDOWS,并將此目錄中的giveio.sys文件復(fù)制到c :/WINDOWs/syst

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論