嵌入式Linux系統(tǒng)開發(fā)教程部分答案_第1頁
嵌入式Linux系統(tǒng)開發(fā)教程部分答案_第2頁
嵌入式Linux系統(tǒng)開發(fā)教程部分答案_第3頁
嵌入式Linux系統(tǒng)開發(fā)教程部分答案_第4頁
嵌入式Linux系統(tǒng)開發(fā)教程部分答案_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

??#?1、ARM-Linux內(nèi)核的配置系統(tǒng)由三個(gè)部分組成,它們分別是Makefile、配置文件和配置工具。2、配置工具一般包括配置命令解釋器和配置用戶界面,前者主要作用是對(duì)配置腳本中使用的配置命令進(jìn)行解釋;而后者則是提供基于字符界面、基于Ncurses圖形界面以及基于XWindow圖形界面的用戶配置界面。3、Makefile文件主要包含注釋、編譯目標(biāo)定義和適配段。4、Linux內(nèi)核常用的配置命令有makeoldconfig、makeconfig>makemenuconfig和makexconfig。其中以字符界面配置的命令是makeconfig。5、內(nèi)核編譯結(jié)束后,會(huì)在“/arch/arm/boot/”目錄下面和根目錄下面生成一個(gè)名為zImage的內(nèi)核鏡像文件。二、選擇題1.linux內(nèi)核中的makefile以及與makefile直接相關(guān)的文件不包括(C)。A.Rules.makeB.子目錄下的MakefileC.后綴名為.inD.后綴名為.config用戶通過makeconfig配置后,產(chǎn)生了后綴名為(D)。A.configB.inC.config.inD.in.configrules.make文件定義了許多變量,最重要的是那些編譯、連接列表變量,但不包括(C)。A.MX_OBJXB.O_TARGETC.O_OBJSD.O_OBJL在內(nèi)核配置過程中,如果需要設(shè)置networkingsupport這個(gè)選項(xiàng),進(jìn)入的菜單項(xiàng)是(A)。A.GeneralsetupB.FilesystemC.BootoptionsD.Devicederives5?在linux系統(tǒng)中,我們既需要標(biāo)記變量的符號(hào),有需要變量的物理地址,兩者同時(shí)需要的時(shí)候可以采用符號(hào)表的方式,其對(duì)應(yīng)的文件為(B)。A.vmlinuxB.System.mapC.vmlinuzD.initrd-x.x.x.img三、敘述題1、Linux內(nèi)核各個(gè)部分與內(nèi)核源碼的各個(gè)目錄都是對(duì)應(yīng)起來的,比如有關(guān)驅(qū)動(dòng)的內(nèi)容,內(nèi)核中就都組織到“drive”這個(gè)目錄中去,有關(guān)網(wǎng)絡(luò)的代碼都集中組織到“net”中。當(dāng)然,這里有的目錄是包含多個(gè)部分的內(nèi)容。具體各個(gè)目錄的內(nèi)容組成如下:arch:arch目錄包括了所有和體系結(jié)構(gòu)相關(guān)的核心代碼。include:include目錄包括編譯核心所需要的大部分頭文件,例如與平臺(tái)無關(guān)的頭文件在include/linux子目錄下;init:init目錄包含核心的初始化代碼(不是系統(tǒng)的引導(dǎo)代碼),有main.c和Version.c兩個(gè)文件;mm:mm目錄包含了所有的內(nèi)存管理代碼。與具體硬件體系結(jié)構(gòu)相關(guān)的內(nèi)存管理代碼位于arch/*/mm目錄下;drivers:drivers目錄中是系統(tǒng)中所有的設(shè)備驅(qū)動(dòng)程序。它又進(jìn)一步劃分成幾類設(shè)備驅(qū)動(dòng),每一種有對(duì)應(yīng)的子目錄,如聲卡的驅(qū)動(dòng)對(duì)應(yīng)于drivers/sound;ipc:ipc目錄包含了核心進(jìn)程間的通信代碼;modules:modules目錄存放了已建好的、可動(dòng)態(tài)加載的模塊;fs:fs目錄存放Linux支持的文件系統(tǒng)代碼。不同的文件系統(tǒng)有不同的子目錄對(duì)應(yīng),如ext3文件系統(tǒng)對(duì)應(yīng)的就是ext3子目錄;Kernel:Kernel內(nèi)核管理的核心代碼放在這里。同時(shí)與處理器結(jié)構(gòu)相關(guān)代碼都放在arch/*/kernel目錄下;net:net目錄里是核心的網(wǎng)絡(luò)部分代碼,其每個(gè)子目錄對(duì)應(yīng)于網(wǎng)絡(luò)的一個(gè)方面;lib:lib目錄包含了核心的庫代碼,不過與處理器結(jié)構(gòu)相關(guān)的庫代碼被放在arch/*/lib/目錄下;scripts:scripts目錄包含用于配置核心的腳本文件;documentation:documentation目錄下是一些文檔,是對(duì)每個(gè)目錄作用的具體說明。2、將自己開發(fā)的內(nèi)核代碼加入到Linux內(nèi)核中,需要有三個(gè)步驟。首先確定把自己開發(fā)代碼放入到內(nèi)核的位置;其次,把自己開發(fā)的功能增加到Linux內(nèi)核的配置選項(xiàng)中,使用戶能夠選擇此功能;最后,構(gòu)建子目錄Makefile,根據(jù)用戶的選擇,將相應(yīng)的代碼編譯到最終生成的Linux內(nèi)核中去。主要步驟有:組織目錄結(jié)構(gòu),配置文件,修改makefile文件等。3、Linux內(nèi)核的移植過程比較繁瑣,具體步驟如下:解壓內(nèi)核文件、修改機(jī)器碼、修改內(nèi)核源碼根目錄下的Makefile文件、修改“arch/arm/plat-s3c24xx/common-smdk.c"文件,修改NandFlash的分區(qū)信息和NandFlash的硬件信息、修改時(shí)鐘頻率、增加Yaffs2文件系統(tǒng)的支持、配置內(nèi)核、編譯內(nèi)核等。4、為什么要進(jìn)行內(nèi)核裁剪?內(nèi)核裁剪,主要作用就是為了適應(yīng)嵌入式系統(tǒng)的小體積、小存儲(chǔ)的特點(diǎn),在內(nèi)核的大小方面進(jìn)行裁剪。內(nèi)核編譯之前,通過配置內(nèi)核的選項(xiàng)參數(shù)進(jìn)行設(shè)置,將不需要的功能刪掉,保留系統(tǒng)需要的部分,這樣就在一定程序上縮小了生成的鏡像文件大小。第九章p261一、填空題。1、Linux下的文件系統(tǒng)主要分為三個(gè)層次:上層用戶的應(yīng)用程序?qū)ξ募到y(tǒng)的系統(tǒng)調(diào)用、虛擬文件系統(tǒng)VFS和掛載到VFS中的各種實(shí)際文件系統(tǒng)。2、Blkmem驅(qū)動(dòng)層、RAMdisk驅(qū)動(dòng)層、MTD驅(qū)動(dòng)層3、基于Flash存儲(chǔ)常見的文件系統(tǒng)有JFFS2、Yaffs、Romfs和Cramfso4、基于RAM的文件系統(tǒng)常見的有Ramdisk和Ramfs/Tmpfs。二、選擇題1、(A)也支持在一塊Flash上建立多個(gè)Flash分區(qū),沒一個(gè)分區(qū)作為一個(gè)MTDblock設(shè)備,可以把系統(tǒng)軟件數(shù)據(jù)等分配到不同的分區(qū)上,同時(shí)也可以在不同的分區(qū)采用不同的文件系統(tǒng)格式。A、MTD驅(qū)動(dòng)層B、Blkmem驅(qū)動(dòng)層C、Romdisk驅(qū)動(dòng)層D、Ramdisk驅(qū)動(dòng)層2、在Linux系統(tǒng)中,因?yàn)镕lash可以以分區(qū)為單位拆開或者合并后使用,所以文件系統(tǒng)是針對(duì)于(B)而言的。A、存儲(chǔ)芯片B、存儲(chǔ)器分區(qū)C、FlashD、RAM3、(B)是可讀寫的、支持?jǐn)?shù)據(jù)壓縮的、基于哈希表的日志型文件系統(tǒng),并提供了崩潰/掉電保護(hù),提供了“寫平衡”支持,是具有支持多種節(jié)點(diǎn)類型,提高了對(duì)Flash的利用率等優(yōu)點(diǎn)的文件系統(tǒng)、A、CramfsB、YaffsC、RomfsD、JFFS24、(D)將一部分固定大小的內(nèi)存當(dāng)做分區(qū)來使用。它并非一個(gè)實(shí)際的文件系統(tǒng),而是一種將實(shí)際的文件系統(tǒng)裝入內(nèi)存的機(jī)制,并可以作為根文件系統(tǒng)。A、JFFS2B、YaffsC、RomfsD、Ramdisk5、目錄“rcn.d”(n表示運(yùn)行級(jí)別,值分別取0~6)下存放的文件則是用來定義每個(gè)運(yùn)行級(jí)別將會(huì)執(zhí)行的應(yīng)用程序名,通常情況下它們都是符號(hào)鏈接,具體的文件則位于(B)目錄下。A、rc.localB、init.dC、rcD、rc.dABBDB三、敘述題1、在Linxu根文件系統(tǒng)中,一般包括這樣一些子目錄:/etc/、/dev/、/usr/、/usr/bin/、/bin/等。根文件系統(tǒng)的建立需要遵循一定的規(guī)則,包括目錄的位置及名字等。用來建立根文件系統(tǒng)的規(guī)則被稱作文件系統(tǒng)分類標(biāo)準(zhǔn)(FilesystemHierarchyStandard,F(xiàn)HS),該規(guī)則定義了在構(gòu)建Linux根文件系統(tǒng)時(shí)文件和目錄的名字和存放位置的標(biāo)準(zhǔn)。2、簡述Busybox的主要作用。Busybox能使用戶迅速方便的建立一套相對(duì)完整、功能豐富的文件系統(tǒng),

溫馨提示

  • 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)論