嵌入式 TX2440PPT參考幻燈片_第1頁(yè)
嵌入式 TX2440PPT參考幻燈片_第2頁(yè)
嵌入式 TX2440PPT參考幻燈片_第3頁(yè)
嵌入式 TX2440PPT參考幻燈片_第4頁(yè)
嵌入式 TX2440PPT參考幻燈片_第5頁(yè)
已閱讀5頁(yè),還剩12頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、第六部分 嵌入式系統(tǒng)移植 -Linux內(nèi)核,TX-2440A 嵌入式視頻教程,1,主講:相廣超 出品:天祥電子 網(wǎng)址:,第十五講 Linux內(nèi)核分析和配置,2,1. 內(nèi)核源碼目錄結(jié)構(gòu)分析 2. Makefile,Kconfig文件分析 3. Linux啟動(dòng)過(guò)程分析 4. 配置、編譯內(nèi)核,第十五講 Linux內(nèi)核分析和配置,3,Linux內(nèi)核的發(fā)展,Linux內(nèi)核的最初版本由Linus Torvalds在1991年發(fā)布 Linux1.0 1994年3月 僅支持386 Linux1.2 1995年3月 多平臺(tái)支持 Linux2.0 1996年6月 支持SMP Linux2.2 1999年1月 支持

2、更多的硬件 Linux2.4 2001年1月 支持桌面系統(tǒng)和USB Linux2.6 2003年12月 支持更多平臺(tái),使用新的調(diào)度器,內(nèi)核可被搶占,模塊子系統(tǒng)和文件系統(tǒng)做了大量改進(jìn),支持更多的硬件驅(qū)動(dòng)。,4,Linux內(nèi)核的版本,內(nèi)核源碼的官方網(wǎng)址: 但這里可用的內(nèi)核版本并不總是適用于所有的Linux支持 的體系結(jié)構(gòu)。實(shí)際上,這個(gè)站點(diǎn)的內(nèi)核首先確保的是在Intel x86體系結(jié)構(gòu)上可以正常運(yùn)行 要取得目標(biāo)板可用的內(nèi)核,必須找到專(zhuān)門(mén)負(fù)責(zé)開(kāi)發(fā)相應(yīng)處理器架構(gòu)的團(tuán)隊(duì)所提供的內(nèi)核版本。 ARM體系結(jié)構(gòu)的源碼網(wǎng)址: .uk/developer

3、,5,Linux內(nèi)核的版本,目前TX2440A開(kāi)發(fā)板上使用的內(nèi)核版本:2.6.31 在內(nèi)核源碼頂層目錄下Makefile中查看版本號(hào): VERSION = 2 主版本號(hào) PATCHLEVEL = 6 主版本號(hào) SUBLEVEL = 31 次版本號(hào) EXTRAVERSION = 擴(kuò)展版本號(hào),6,內(nèi)核源碼目錄結(jié)構(gòu)分析,arch 與體系結(jié)構(gòu)相關(guān)的代碼。對(duì)應(yīng)于每個(gè)支持的體系結(jié)構(gòu),有一個(gè)相應(yīng)的子目錄如x86、arm等,每個(gè)體系結(jié)構(gòu)子目錄下包含幾個(gè)主要子目錄: .boot 啟動(dòng)內(nèi)核所需的平臺(tái)特有代碼 .kernel 體系結(jié)構(gòu)特有特征(如SMP)的實(shí)現(xiàn) .mm與體系結(jié)構(gòu)相關(guān)的內(nèi)存管理代碼 .lib與體系結(jié)構(gòu)

4、相關(guān)的通用函數(shù)的實(shí)現(xiàn),7,內(nèi)核源碼目錄結(jié)構(gòu)分析,drivers 所有設(shè)備驅(qū)動(dòng)程序代碼,它占整個(gè)內(nèi)核代碼量一半以上,每一個(gè)子目錄對(duì)應(yīng)一類(lèi)驅(qū)動(dòng)程序。 fs 文件系統(tǒng)代碼,每個(gè)支持的文件系統(tǒng)有相應(yīng)的子目錄,如cramfs,yaffs,jffs2等 include 包括編譯內(nèi)核所需的大部分頭文件,與平臺(tái)無(wú)關(guān)的頭文件放在include/linux子目錄下,平臺(tái)相關(guān)的頭文件如include/asm-arm,8,內(nèi)核源碼目錄結(jié)構(gòu)分析,init 內(nèi)核初始化代碼 kernel 內(nèi)核管理核心代碼 lib 庫(kù)函數(shù)代碼 Mm 內(nèi)存管理代碼 net 網(wǎng)絡(luò)支持代碼 sound 音頻設(shè)備驅(qū)動(dòng)代碼 scripts 用于配置內(nèi)

5、核的腳本文件 documentation 內(nèi)核相關(guān)文檔,9,內(nèi)核配置系統(tǒng)的基本結(jié)構(gòu),Makefile:分布在Linux內(nèi)核源碼中的Makefile定義了Linux內(nèi)核編譯的規(guī)則; 配置工具: make config 字符界面 make menuconfig Ncurses圖形界面 make xconfig Xwindows圖形界面 配置文件: .config:在配置內(nèi)核時(shí)生成,根據(jù).config來(lái)決定使用哪些Makefile,10,Makefile 文件分析,Makefile的作用: 決定編譯哪些文件 怎樣編譯這些文件 按什么順序連接這些文件,11,Kconfig文件分析,變量: bool 兩

6、種取值:y、n tristate 三種取值:y、n、m string 字符串 hex 十六進(jìn)制數(shù)據(jù) int 十進(jìn)制數(shù)據(jù),12,Kconfig文件分析,menuconfig: 用于生成菜單 config: 生成配置選項(xiàng) depend on 依賴(lài)關(guān)系 default 默認(rèn)值 select 自動(dòng)選擇 source 讀入另一個(gè)Kconfig文件 help 幫助信息,13,Linux的啟動(dòng)過(guò)程,第一階段: arch/arm/kernel/head.S arch/arm/kernel/head-common.S arch/arm/mm/proc-arm920.S 檢查內(nèi)核是否支持當(dāng)前處理器架構(gòu)和開(kāi)發(fā)板,禁

7、止Cache,使能MMU,設(shè)置棧指針,調(diào)用 start_kernel,14,Linux的啟動(dòng)過(guò)程,第二階段: init/main.c start_kernel 完成內(nèi)核初始化全部工作,最后調(diào)用rest_init函數(shù)啟動(dòng)init進(jìn)程,15,Linux的啟動(dòng)過(guò)程,內(nèi)核文件: vmlinux 編譯出來(lái)的最原始的內(nèi)核文件,未壓縮 zImage 是vmlinux經(jīng)過(guò)gzip壓縮后的文件 uImage U-boot專(zhuān)用的映像文件,由bootm命令啟動(dòng),16,準(zhǔn)備移植,修改Makefile: ARCH ?= arm CROSS_COMPILE ?=arm-linux- 修改時(shí)鐘 arch/arm/mach-s3c2440/mach-smdk2440.c 修改機(jī)器碼 內(nèi)核中:arch/arm/tools/mach-types uboo

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論