嵌入式LINUX系統(tǒng),課程針對(duì)目前嵌入式開(kāi)發(fā)工程師的特點(diǎn),重點(diǎn)講解LINUX
原理和實(shí)際工作中的開(kāi)發(fā)流程,并結(jié)合實(shí)際操作,加深理解。達(dá)到面對(duì)企業(yè)和
終端客戶的高級(jí)工程師的水平。
1:嵌入式Linux 入門(mén)Linux基礎(chǔ)知識(shí)入門(mén);Bootloader 、交叉編譯環(huán)境等的基本概念;嵌入式系統(tǒng)概述;嵌入式處理器介紹;嵌入式操作系統(tǒng)介紹;嵌入式Linux開(kāi)發(fā)流程介紹;CentOS 以及ubuntu安裝及使用;Linux基礎(chǔ)命令的介紹及使用;實(shí)例演示一個(gè)嵌入式設(shè)備
2:嵌入式Linux 開(kāi)發(fā)基礎(chǔ)(一)Linux操作系統(tǒng)簡(jiǎn)介;Linux內(nèi)核及文件系統(tǒng)簡(jiǎn)介;Shell及常用命令;編輯器vim的使用;BASH程序設(shè)計(jì);其他應(yīng)用軟件的使用;實(shí)驗(yàn):用 vim 編寫(xiě)一個(gè) shell 程序
3:嵌入式Linux 開(kāi)發(fā)基礎(chǔ)(二)gcc使用;gdb使用;Makefile 編寫(xiě);Binutils工具;Linux內(nèi)核編譯及安裝;實(shí)驗(yàn):動(dòng)手編寫(xiě)一個(gè) Makefile 用 GCC 編譯一個(gè)程序
4:ARM體系結(jié)構(gòu) 與開(kāi)發(fā)環(huán)境搭建嵌入式系統(tǒng)開(kāi)發(fā)基礎(chǔ);ARM體系結(jié)構(gòu);ARM指令系統(tǒng);開(kāi)發(fā)板及相關(guān)資源介紹,開(kāi)發(fā)板使用;搭建交叉編譯環(huán)境;常用開(kāi)發(fā)工具使用;實(shí)驗(yàn):搭建開(kāi)發(fā)環(huán)境,熟悉開(kāi)發(fā)板流程
5:嵌入式系統(tǒng) Bootloader 開(kāi)發(fā)ARM 架構(gòu);ARM 匯編語(yǔ)言;VIVI分析與開(kāi)發(fā);U-BOOT分析與開(kāi)發(fā);實(shí)驗(yàn)與實(shí)例:用 VIVI 和 U-BOOT 編寫(xiě) bootloader 在開(kāi)發(fā)板上能順利運(yùn)行
6:嵌入式Linux 開(kāi)發(fā)環(huán)境搭建與內(nèi)核裁剪交叉開(kāi)發(fā)環(huán)境介紹;搭建ARM 交叉開(kāi)發(fā)環(huán)境; 搭建主機(jī)開(kāi)發(fā)環(huán)境 : NFS、 TFTP、超級(jí)終端、minicom、C-kermit; ELDK :The Embedded Linux Development Kit; Linux內(nèi)核基本知識(shí)介紹;Linux內(nèi)核配置選項(xiàng)介紹;Linux內(nèi)核編譯鏈接; Linux內(nèi)核移植基本概念;Linux內(nèi)核源代碼修改; MTD支持及FLASH分區(qū)修改; Linux 內(nèi)核中編譯進(jìn)新的設(shè)備驅(qū)動(dòng); Linux 啟動(dòng)過(guò)程的 LOG 分析; Linux 啟動(dòng)過(guò)程原理分析; Linux initrd.img 的制作與分析; Linux 內(nèi)核的調(diào)試以及出錯(cuò)分析; Linux內(nèi)核的 hacking ,oops 及printk; Linux 內(nèi)核常用的調(diào)試方法以及工具; 分析解決內(nèi)核編譯移植過(guò)程中的錯(cuò)誤; 實(shí)例分析與實(shí)驗(yàn): 動(dòng)手移植一個(gè)嵌入式Linux內(nèi)核使之在開(kāi)發(fā)板上啟動(dòng)
7:嵌入式Linux 文件系統(tǒng)Linux 文件系統(tǒng)介紹; 根文件系統(tǒng)原理及基本概念; Ramdisk Cramfs Jffs2 Yaffs2基本概念;Busybox 介紹以及使用; 制作一個(gè)文件系統(tǒng)作NFS LFS 啟動(dòng)使用; 制作Ramdisk文件系統(tǒng)、Cramfs 文件系統(tǒng)、JFFS2文件系統(tǒng)、Yaffs2文件系統(tǒng); 移植一個(gè)嵌入式 web 服務(wù)器:GoaHead, Boa ; 實(shí)例分析與實(shí)驗(yàn): 動(dòng)手制作一個(gè)嵌入式Linux 文件系統(tǒng)使之在開(kāi)發(fā)板上啟動(dòng)并實(shí)現(xiàn)web 服務(wù) 補(bǔ)充實(shí)驗(yàn): 在主機(jī)上實(shí)現(xiàn) XAMPP :HTTP 服務(wù),F(xiàn)TP 服務(wù),MYSQL ,MySQLAdmin,PHP ,Wiki服務(wù)
8:Linux驅(qū)動(dòng)開(kāi)發(fā) 必備的內(nèi)核知識(shí)基本知識(shí)及基本概念; 進(jìn)程 、線程;內(nèi)存管理;同步互斥;阻塞非阻塞; 中斷top half bottom half; 硬件控制;定時(shí)延時(shí)處理 等; 一個(gè)簡(jiǎn)單的Linux 驅(qū)動(dòng):hello.c; 實(shí)例分析與實(shí)驗(yàn): process.c memory.c irqlock.c timer.c globalfifo.c pollmonitor.c etc
9:字符設(shè)備驅(qū)動(dòng) 與設(shè)備文件系統(tǒng)字符設(shè)備: 字符設(shè)備基本概念; Linux字符設(shè)備驅(qū)動(dòng)基礎(chǔ); 字符設(shè)備驅(qū)動(dòng)程序?qū)崿F(xiàn)框架; 字符設(shè)備關(guān)鍵數(shù)據(jù)結(jié)構(gòu); 用戶空間與內(nèi)核空間的數(shù)據(jù)傳輸; GlobalFIFO 設(shè)備驅(qū)動(dòng)分析; 設(shè)備文件系統(tǒng):(Linux 文件操作、devfs 文件系統(tǒng)、udev文件系統(tǒng)、sysfs 文件系統(tǒng)、Linux 設(shè)備模型) 實(shí)例分析與實(shí)驗(yàn): Buttons 驅(qū)動(dòng)、LED驅(qū)動(dòng)、LCD驅(qū)動(dòng)
10:驅(qū)動(dòng)調(diào)試技術(shù) 與PCI設(shè)備驅(qū)動(dòng)Linux驅(qū)動(dòng)調(diào)試技術(shù): Linux 調(diào)試工具搭建; Linux內(nèi)核驅(qū)動(dòng)調(diào)試技術(shù); GDB 、KGDB、KCORE、 DDD、OOPS、PRINTK; PCI設(shè)備驅(qū)動(dòng): PCI/PCI-E協(xié)議; Linux PCI 設(shè)備驅(qū)動(dòng)開(kāi)發(fā)基礎(chǔ); Linux PCI 設(shè)備驅(qū)動(dòng)關(guān)鍵數(shù)據(jù)結(jié)構(gòu); Linux PCI 設(shè)備注冊(cè)模型; Linux PCI 設(shè)備的管理模型分析; 實(shí)例分析與實(shí)驗(yàn): oops.c 、mvsas 驅(qū)動(dòng)
11:FrameBuffer驅(qū)動(dòng)與觸摸屏驅(qū)動(dòng)FrameBuffer (顯卡)驅(qū)動(dòng): FrameBuffer顯示基本概念以及原理; FrameBuffer驅(qū)動(dòng)程序關(guān)鍵數(shù)據(jù)結(jié)構(gòu); FrameBuffer驅(qū)動(dòng)程序的API; FrameBuffer驅(qū)動(dòng)程序的實(shí)現(xiàn); 觸摸屏驅(qū)動(dòng): 觸摸屏的硬件原理; 觸摸屏驅(qū)動(dòng)的數(shù)據(jù)結(jié)構(gòu)與硬件控制; 觸摸屏驅(qū)動(dòng)的加載卸載、打開(kāi)釋放; 觸摸屏驅(qū)動(dòng)的中斷、定時(shí)處理; 觸摸屏驅(qū)動(dòng)的輪詢與異步通知; Linux 輸入子系統(tǒng); 實(shí)例分析及實(shí)驗(yàn): 顯卡驅(qū)動(dòng)、S3C2410觸摸屏驅(qū)動(dòng)
12:塊設(shè)備驅(qū)動(dòng) 與 Flash設(shè)備驅(qū)動(dòng)塊設(shè)備驅(qū)動(dòng): 塊設(shè)備基本知識(shí)及其驅(qū)動(dòng)的特點(diǎn); 塊設(shè)備驅(qū)動(dòng)程序中關(guān)鍵結(jié)構(gòu)體; 塊設(shè)備驅(qū)動(dòng)程序的注冊(cè)與請(qǐng)求處理實(shí)例分析; 塊設(shè)備驅(qū)動(dòng)程序的數(shù)據(jù)處理模型; RamDisk 硬件原理及驅(qū)動(dòng); Flash 設(shè)備驅(qū)動(dòng);MTD; NOR Flash 驅(qū)動(dòng);NAND Flash驅(qū)動(dòng); Flash 文件系統(tǒng); 實(shí)例分析與實(shí)驗(yàn): Ramdisk驅(qū)動(dòng)、S3c2410 NAND Flash 驅(qū)動(dòng)
13:網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)TCP IP 協(xié)議: TCP IP 協(xié)議 SPEC的獲取; TCP IP 協(xié)議 基本工作原理; ARP 、IP 、TCP、UDP、ICMP、 IGMP 等協(xié)議的基本概念基本原理; IRIS抓網(wǎng)絡(luò)數(shù)據(jù)包實(shí)例分析 TCP/IP 協(xié)議簇; Socket 網(wǎng)絡(luò)編程;Socket 基本原理;Socket 編程應(yīng)用; 網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng): 1. 網(wǎng)絡(luò)協(xié)議基礎(chǔ)知識(shí)及原理; 2. 網(wǎng)絡(luò)設(shè)備及其驅(qū)動(dòng)的基本原理; 3. 網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)程序中關(guān)鍵結(jié)構(gòu)體; 4. 網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)程序的注冊(cè)與請(qǐng)求處理實(shí)例分析; 網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)程序的數(shù)據(jù)處理模型; 網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)程序的基本實(shí)現(xiàn); 實(shí)例分析與實(shí)驗(yàn): Socket 應(yīng)用實(shí)例、CS8900網(wǎng)卡驅(qū)動(dòng)
14:智能家居項(xiàng)目通過(guò)WEB頁(yè)面能進(jìn)行遠(yuǎn)程監(jiān)控,并能遠(yuǎn)程對(duì)于家電進(jìn)行控制
15:電子數(shù)碼相冊(cè)實(shí)現(xiàn)數(shù)碼相冊(cè)的瀏覽與圖片管理功能,并支持瀏覽外接U盤(pán)中的圖像資料,實(shí)現(xiàn)幻燈片播放