《嵌入式系統(tǒng)與開發(fā)》實驗報告(共4頁)_第1頁
《嵌入式系統(tǒng)與開發(fā)》實驗報告(共4頁)_第2頁
《嵌入式系統(tǒng)與開發(fā)》實驗報告(共4頁)_第3頁
《嵌入式系統(tǒng)與開發(fā)》實驗報告(共4頁)_第4頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上構(gòu)建嵌入式Linux系統(tǒng)實驗報告 學(xué)生姓名: 劉濤 學(xué) 號: B 專業(yè)班級: NIIT9班 指導(dǎo)教師: 孫國梓 完成時間: 2015.5.8 實驗2 構(gòu)建嵌入式Linux系統(tǒng)一.實驗?zāi)康睦斫馇度胧絃inux內(nèi)核和文件系統(tǒng)構(gòu)建過程,掌握Linux內(nèi)核裁剪、編譯等過程,掌握基于busybox構(gòu)建嵌入式文件系統(tǒng)命令工具等內(nèi)容,并利用相關(guān)工具制作文件系統(tǒng)。二.實驗內(nèi)容實驗2.1 配置和編譯UBOOT實驗2.2 裁剪和編譯內(nèi)核實驗2.3 制作文件系統(tǒng)三.預(yù)備知識Linux使用等四.實驗設(shè)備及工具(包括軟件調(diào)試工具)硬件:ARM 嵌入式開發(fā)平臺、PC 機Pentium100 以上

2、、串口線。軟件: WinXP或UBUNTU開發(fā)環(huán)境。五.實驗步驟5.1 UBOOT配置及編譯步驟【參看04- Tiny6410 Linux開發(fā)指南.pdf文檔1.5.1節(jié)】:第一步,解壓縮uboot源碼,命令tar zxvf u-boot-mini6410-.tar.gz,在解壓后的文件夾下,可以看到Makefile文件,是整個uboot源碼包編譯的總Makefile,負責(zé)整個uboot的裁剪、編譯等過程。第二步,實驗設(shè)備使用128M內(nèi)存,處理器采用S3C6410,生成配置文件命令為#cd /opt/FriendlyARM/ /u-boot-mini6410#make mini6410_nan

3、d_config-ram128。第三步,編譯UBOOT命令為#make,編譯完成后生成uboot.bin,該文件存儲在/opt/FriendlyARM/ /u-boot-mini6410目錄下。5.2 內(nèi)核裁剪及編譯步驟【參看04- Tiny6410 Linux開發(fā)指南.pdf文檔1.6.1節(jié)】:第一步,解壓縮Linux內(nèi)核源碼,命令_,在解壓縮后的文件夾下,可以看到Makefile文件,是整個Linux內(nèi)核源碼包編譯的總Makefile,負責(zé)整個Linux內(nèi)核的裁剪和編譯工作。第二步,內(nèi)核源碼裁剪cp config_linux_mini6410 .configmake cleanmake z

4、lmage方式1:通常情況下linux根目錄下有個.config文件,該文件是宏文件,每個宏和一定的源碼文件關(guān)聯(lián),如果注釋掉相應(yīng)宏,則對應(yīng)源碼將不會被編譯進linux內(nèi)核映像文件中。實驗1-打開該文件可以選擇注釋掉部分宏,如CONFIG_NET=y,重新編譯會發(fā)現(xiàn)內(nèi)核文件zImage大小為_3.1MB_字節(jié),或者到net目錄下發(fā)現(xiàn)所有的c文件_B_(A.被編譯 B.未被編譯)。實驗2-重新打開.config文件,取消注釋宏CONFIG_NET=y,重新編譯會發(fā)現(xiàn)內(nèi)核文件zImage大小為_3.6MB_字節(jié),或者到net目錄下發(fā)現(xiàn)所有的c文件_A_(A.被編譯 B.未被編譯),且net目錄下的所

5、有被編譯后的目標(biāo)文件被連接成一個目標(biāo)文件_build-in.o_。方式2:在shell環(huán)境下,進入內(nèi)核源碼頂層目錄,執(zhí)行命令make menuconfig命令,進入圖形環(huán)境下裁剪Linux內(nèi)核。找到“網(wǎng)絡(luò)支持選項”,按空格鍵取消選擇,并保存退出,重新打開.config文件,發(fā)現(xiàn)宏CONFIG_NET是否被定義_B_(A. 被定義 B.被注釋 ),重新編譯會發(fā)現(xiàn)內(nèi)核文件zImage大小為_3.6MB_字節(jié),或者到net目錄下發(fā)現(xiàn)所有的c文件_A_(A.被編譯 B.未被編譯)。第三步,編譯內(nèi)核,命令為_make zImage_,編譯完成后生成zImage,該文件存儲在_/opt/FriendlyA

6、RM/linux-2.6.38/arch/arm/boot_目錄下。5.3 內(nèi)核添加自己代碼的方式本例以添加一個RC4加密算法為例來進行第一步,找到內(nèi)核源碼存放加密算法的文件夾,位于_/opt/FriendlyARM/linux-2.6.38/crypto_目錄第二步,在該目錄下編寫代碼rc4.c文件,文件僅簡單包含如下內(nèi)容#include <linux/kernel.h>void rc4ENCrypt()printk("THIS IS A SIMPLE TEST,NO USEn");return;第三步,打開該文件夾下Kconfig文件,添加如下代碼【紅色加粗

7、斜體部分】if CRYPTOcomment "Crypto core or helper"config RC4ENCRYPTbool "RC4 ENCRYPT SUPORT"help this is a simple test ,no use第四步,執(zhí)行make menuconfig,在其中找到"RC4 ENCRYPT SUPORT"選項,并選中,退出配置,在.config文件中,_A_(A.有 B.沒有)宏CONFIG_RC4ENCRYPT。第五步,打開crypt目錄下的Makefile文件,添加如下代碼【紅色加粗斜體部分】obj-

8、$(CONFIG_CRYPTO_WORKQUEUE) += crypto_wq.oobj-$(CONFIG_CRYPTO_FIPS) += fips.oobj-$(CONFIG_RC4ENCRYPT) +=rc4.o第六步,編譯內(nèi)核,并查看crypt目錄下_A_(A.有 B.沒有)rc4.o文件5.4 文件系統(tǒng)構(gòu)建步驟【參看04- Tiny6410 Linux開發(fā)指南.pdf文檔1.71.8節(jié)】第一步,解壓縮busybox,命令為_,解壓縮完成后,可以看到在目錄下有Makefile文件和.config文件,Makefile文件負責(zé)編譯,具體編譯哪些文件依據(jù).config文件。打開fa.config文件,查看其中宏。第二步,裁剪命令,執(zhí)行命令_makemenuconfig_,去除其中部分選項,保存退出,查看.config文件,可以看到相應(yīng)宏定義也發(fā)生變化了。第三步,編譯文件,命令為_make_,安裝到相應(yīng)的文件夾,命令為_make install_,到對應(yīng)的文件夾下查看生成的命令文件。第四步,創(chuàng)建配置文件,將busybox源碼目錄下的etc

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論