嵌入式LINUX系統,課程針對目前嵌入式開發工程師的特點,重點講解LINUX
原理和實際工作中的開發流程,并結合實際操作,加深理解。達到面對企業和
終端客戶的(de)高級工程師的(de)水(shui)平(ping)。
1:嵌(qian)(qian)(qian)入(ru)式(shi)Linux 入(ru)門(men)Linux基礎知識入(ru)門(men);Bootloader 、交叉編譯(yi)環境等的基本概(gai)念;嵌(qian)(qian)(qian)入(ru)式(shi)系(xi)統概(gai)述;嵌(qian)(qian)(qian)入(ru)式(shi)處理器介紹;嵌(qian)(qian)(qian)入(ru)式(shi)操(cao)作系(xi)統介紹;嵌(qian)(qian)(qian)入(ru)式(shi)Linux開發流程介紹;CentOS 以及(ji)ubuntu安裝及(ji)使用;Linux基礎命令的介紹及(ji)使用;實例演示一個嵌(qian)(qian)(qian)入(ru)式(shi)設備
2:嵌入式(shi)Linux 開發基礎(一(yi))Linux操作系(xi)統簡(jian)介(jie);Linux內核(he)及文(wen)件(jian)系(xi)統簡(jian)介(jie);Shell及常用(yong)命(ming)令(ling);編輯器vim的(de)(de)使(shi)(shi)用(yong);BASH程(cheng)序設計;其他應用(yong)軟件(jian)的(de)(de)使(shi)(shi)用(yong);實驗:用(yong) vim 編寫一(yi)個(ge) shell 程(cheng)序
3:嵌入式Linux 開發基礎(二)gcc使(shi)用(yong);gdb使(shi)用(yong);Makefile 編寫(xie);Binutils工具;Linux內核編譯及安裝;實驗:動手編寫(xie)一(yi)(yi)個 Makefile 用(yong) GCC 編譯一(yi)(yi)個程(cheng)序
4:ARM體系(xi)結構(gou) 與開(kai)發(fa)(fa)(fa)環(huan)境(jing)搭(da)(da)建嵌入式系(xi)統(tong)開(kai)發(fa)(fa)(fa)基礎;ARM體系(xi)結構(gou);ARM指令系(xi)統(tong);開(kai)發(fa)(fa)(fa)板(ban)及相關(guan)資(zi)源介紹,開(kai)發(fa)(fa)(fa)板(ban)使(shi)用(yong)(yong);搭(da)(da)建交叉編(bian)譯環(huan)境(jing);常(chang)用(yong)(yong)開(kai)發(fa)(fa)(fa)工具使(shi)用(yong)(yong);實驗:搭(da)(da)建開(kai)發(fa)(fa)(fa)環(huan)境(jing),熟悉開(kai)發(fa)(fa)(fa)板(ban)流程
5:嵌入式系統 Bootloader 開(kai)發(fa)ARM 架(jia)構;ARM 匯編語言;VIVI分析與開(kai)發(fa);U-BOOT分析與開(kai)發(fa);實驗與實例:用 VIVI 和 U-BOOT 編寫(xie) bootloader 在開(kai)發(fa)板(ban)上能順(shun)利運(yun)行
6:嵌(qian)入(ru)式Linux 開發(fa)(fa)環(huan)境(jing)(jing)搭建(jian)與(yu)內(nei)(nei)核(he)裁剪交(jiao)叉開發(fa)(fa)環(huan)境(jing)(jing)介(jie)(jie)紹;搭建(jian)ARM 交(jiao)叉開發(fa)(fa)環(huan)境(jing)(jing); 搭建(jian)主機(ji)開發(fa)(fa)環(huan)境(jing)(jing) : NFS、 TFTP、超級終端(duan)、minicom、C-kermit; ELDK :The Embedded Linux Development Kit; Linux內(nei)(nei)核(he)基(ji)本知識介(jie)(jie)紹;Linux內(nei)(nei)核(he)配置選項介(jie)(jie)紹;Linux內(nei)(nei)核(he)編譯(yi)(yi)鏈接; Linux內(nei)(nei)核(he)移(yi)植基(ji)本概念;Linux內(nei)(nei)核(he)源代碼修改; MTD支持及(ji)(ji)(ji)FLASH分(fen)區修改; Linux 內(nei)(nei)核(he)中編譯(yi)(yi)進新的(de)設(she)備驅動; Linux 啟(qi)動過程的(de) LOG 分(fen)析(xi); Linux 啟(qi)動過程原理(li)分(fen)析(xi); Linux initrd.img 的(de)制作與(yu)分(fen)析(xi); Linux 內(nei)(nei)核(he)的(de)調試以及(ji)(ji)(ji)出錯(cuo)分(fen)析(xi); Linux內(nei)(nei)核(he)的(de) hacking ,oops 及(ji)(ji)(ji)printk; Linux 內(nei)(nei)核(he)常用(yong)的(de)調試方法以及(ji)(ji)(ji)工具; 分(fen)析(xi)解決內(nei)(nei)核(he)編譯(yi)(yi)移(yi)植過程中的(de)錯(cuo)誤; 實例分(fen)析(xi)與(yu)實驗: 動手(shou)移(yi)植一個(ge)嵌(qian)入(ru)式Linux內(nei)(nei)核(he)使之(zhi)在開發(fa)(fa)板上(shang)啟(qi)動
7:嵌入式Linux 文件(jian)系(xi)(xi)統(tong)Linux 文件(jian)系(xi)(xi)統(tong)介紹(shao); 根(gen)文件(jian)系(xi)(xi)統(tong)原理及基(ji)本(ben)概念(nian); Ramdisk Cramfs Jffs2 Yaffs2基(ji)本(ben)概念(nian);Busybox 介紹(shao)以及使(shi)用(yong); 制作(zuo)一(yi)個(ge)(ge)文件(jian)系(xi)(xi)統(tong)作(zuo)NFS LFS 啟(qi)動(dong)(dong)使(shi)用(yong); 制作(zuo)Ramdisk文件(jian)系(xi)(xi)統(tong)、Cramfs 文件(jian)系(xi)(xi)統(tong)、JFFS2文件(jian)系(xi)(xi)統(tong)、Yaffs2文件(jian)系(xi)(xi)統(tong); 移植(zhi)一(yi)個(ge)(ge)嵌入式 web 服(fu)務(wu)(wu)器:GoaHead, Boa ; 實例(li)分析與實驗: 動(dong)(dong)手制作(zuo)一(yi)個(ge)(ge)嵌入式Linux 文件(jian)系(xi)(xi)統(tong)使(shi)之在(zai)開發板上(shang)啟(qi)動(dong)(dong)并實現web 服(fu)務(wu)(wu) 補(bu)充實驗: 在(zai)主機(ji)上(shang)實現 XAMPP :HTTP 服(fu)務(wu)(wu),FTP 服(fu)務(wu)(wu),MYSQL ,MySQLAdmin,PHP ,Wiki服(fu)務(wu)(wu)
8:Linux驅動開發(fa) 必備的內核知(zhi)識(shi)基本(ben)知(zhi)識(shi)及(ji)基本(ben)概念; 進程 、線(xian)程;內存管(guan)理(li);同步互斥;阻(zu)塞(sai)非阻(zu)塞(sai); 中斷top half bottom half; 硬件(jian)控制;定時延時處理(li) 等; 一個簡單(dan)的Linux 驅動:hello.c; 實(shi)例分析與實(shi)驗: process.c memory.c irqlock.c timer.c globalfifo.c pollmonitor.c etc
9:字符(fu)(fu)設(she)(she)備(bei)(bei)(bei)(bei)驅(qu)(qu)(qu)動(dong) 與設(she)(she)備(bei)(bei)(bei)(bei)文(wen)件系(xi)統(tong)字符(fu)(fu)設(she)(she)備(bei)(bei)(bei)(bei): 字符(fu)(fu)設(she)(she)備(bei)(bei)(bei)(bei)基本概(gai)念; Linux字符(fu)(fu)設(she)(she)備(bei)(bei)(bei)(bei)驅(qu)(qu)(qu)動(dong)基礎(chu); 字符(fu)(fu)設(she)(she)備(bei)(bei)(bei)(bei)驅(qu)(qu)(qu)動(dong)程序實(shi)現框架; 字符(fu)(fu)設(she)(she)備(bei)(bei)(bei)(bei)關鍵數(shu)據結(jie)構; 用(yong)戶空間與內核空間的數(shu)據傳輸; GlobalFIFO 設(she)(she)備(bei)(bei)(bei)(bei)驅(qu)(qu)(qu)動(dong)分(fen)析; 設(she)(she)備(bei)(bei)(bei)(bei)文(wen)件系(xi)統(tong):(Linux 文(wen)件操作、devfs 文(wen)件系(xi)統(tong)、udev文(wen)件系(xi)統(tong)、sysfs 文(wen)件系(xi)統(tong)、Linux 設(she)(she)備(bei)(bei)(bei)(bei)模(mo)型) 實(shi)例分(fen)析與實(shi)驗(yan): Buttons 驅(qu)(qu)(qu)動(dong)、LED驅(qu)(qu)(qu)動(dong)、LCD驅(qu)(qu)(qu)動(dong)
10:驅(qu)動(dong)調(diao)試(shi)技(ji)術 與PCI設備(bei)驅(qu)動(dong)Linux驅(qu)動(dong)調(diao)試(shi)技(ji)術: Linux 調(diao)試(shi)工具搭建(jian); Linux內核驅(qu)動(dong)調(diao)試(shi)技(ji)術; GDB 、KGDB、KCORE、 DDD、OOPS、PRINTK; PCI設備(bei)驅(qu)動(dong): PCI/PCI-E協議; Linux PCI 設備(bei)驅(qu)動(dong)開發基礎; Linux PCI 設備(bei)驅(qu)動(dong)關鍵數據結構; Linux PCI 設備(bei)注冊(ce)模型(xing); Linux PCI 設備(bei)的(de)管理模型(xing)分析; 實例分析與實驗: oops.c 、mvsas 驅(qu)動(dong)
11:FrameBuffer驅(qu)(qu)動(dong)(dong)(dong)與觸(chu)摸(mo)屏(ping)驅(qu)(qu)動(dong)(dong)(dong)FrameBuffer (顯(xian)卡)驅(qu)(qu)動(dong)(dong)(dong): FrameBuffer顯(xian)示基本概念以(yi)及原理; FrameBuffer驅(qu)(qu)動(dong)(dong)(dong)程序關鍵數據結構; FrameBuffer驅(qu)(qu)動(dong)(dong)(dong)程序的(de)(de)API; FrameBuffer驅(qu)(qu)動(dong)(dong)(dong)程序的(de)(de)實現; 觸(chu)摸(mo)屏(ping)驅(qu)(qu)動(dong)(dong)(dong): 觸(chu)摸(mo)屏(ping)的(de)(de)硬件原理; 觸(chu)摸(mo)屏(ping)驅(qu)(qu)動(dong)(dong)(dong)的(de)(de)數據結構與硬件控制; 觸(chu)摸(mo)屏(ping)驅(qu)(qu)動(dong)(dong)(dong)的(de)(de)加載卸載、打開(kai)釋放; 觸(chu)摸(mo)屏(ping)驅(qu)(qu)動(dong)(dong)(dong)的(de)(de)中斷、定(ding)時(shi)處理; 觸(chu)摸(mo)屏(ping)驅(qu)(qu)動(dong)(dong)(dong)的(de)(de)輪詢(xun)與異步(bu)通知; Linux 輸(shu)入子系(xi)統; 實例分析及實驗: 顯(xian)卡驅(qu)(qu)動(dong)(dong)(dong)、S3C2410觸(chu)摸(mo)屏(ping)驅(qu)(qu)動(dong)(dong)(dong)
12:塊(kuai)設(she)備驅動(dong)(dong)(dong)(dong)(dong) 與(yu) Flash設(she)備驅動(dong)(dong)(dong)(dong)(dong)塊(kuai)設(she)備驅動(dong)(dong)(dong)(dong)(dong): 塊(kuai)設(she)備基本知識(shi)及其驅動(dong)(dong)(dong)(dong)(dong)的(de)特點; 塊(kuai)設(she)備驅動(dong)(dong)(dong)(dong)(dong)程序(xu)(xu)中關鍵結構體(ti); 塊(kuai)設(she)備驅動(dong)(dong)(dong)(dong)(dong)程序(xu)(xu)的(de)注冊與(yu)請求處(chu)理實例(li)分析; 塊(kuai)設(she)備驅動(dong)(dong)(dong)(dong)(dong)程序(xu)(xu)的(de)數據處(chu)理模型(xing); RamDisk 硬件(jian)原(yuan)理及驅動(dong)(dong)(dong)(dong)(dong); Flash 設(she)備驅動(dong)(dong)(dong)(dong)(dong);MTD; NOR Flash 驅動(dong)(dong)(dong)(dong)(dong);NAND Flash驅動(dong)(dong)(dong)(dong)(dong); Flash 文件(jian)系統; 實例(li)分析與(yu)實驗: Ramdisk驅動(dong)(dong)(dong)(dong)(dong)、S3c2410 NAND Flash 驅動(dong)(dong)(dong)(dong)(dong)
13:網(wang)(wang)(wang)絡(luo)(luo)(luo)設(she)備(bei)(bei)(bei)(bei)驅(qu)(qu)(qu)(qu)動(dong)(dong)TCP IP 協(xie)(xie)(xie)議(yi)(yi)(yi): TCP IP 協(xie)(xie)(xie)議(yi)(yi)(yi) SPEC的(de)(de)獲取; TCP IP 協(xie)(xie)(xie)議(yi)(yi)(yi) 基(ji)本工作原(yuan)理(li)(li)(li); ARP 、IP 、TCP、UDP、ICMP、 IGMP 等(deng)協(xie)(xie)(xie)議(yi)(yi)(yi)的(de)(de)基(ji)本概念基(ji)本原(yuan)理(li)(li)(li); IRIS抓網(wang)(wang)(wang)絡(luo)(luo)(luo)數據包實(shi)例(li)分(fen)析 TCP/IP 協(xie)(xie)(xie)議(yi)(yi)(yi)簇; Socket 網(wang)(wang)(wang)絡(luo)(luo)(luo)編程;Socket 基(ji)本原(yuan)理(li)(li)(li);Socket 編程應用; 網(wang)(wang)(wang)絡(luo)(luo)(luo)設(she)備(bei)(bei)(bei)(bei)驅(qu)(qu)(qu)(qu)動(dong)(dong): 1. 網(wang)(wang)(wang)絡(luo)(luo)(luo)協(xie)(xie)(xie)議(yi)(yi)(yi)基(ji)礎知識及原(yuan)理(li)(li)(li); 2. 網(wang)(wang)(wang)絡(luo)(luo)(luo)設(she)備(bei)(bei)(bei)(bei)及其驅(qu)(qu)(qu)(qu)動(dong)(dong)的(de)(de)基(ji)本原(yuan)理(li)(li)(li); 3. 網(wang)(wang)(wang)絡(luo)(luo)(luo)設(she)備(bei)(bei)(bei)(bei)驅(qu)(qu)(qu)(qu)動(dong)(dong)程序中關鍵(jian)結(jie)構體(ti); 4. 網(wang)(wang)(wang)絡(luo)(luo)(luo)設(she)備(bei)(bei)(bei)(bei)驅(qu)(qu)(qu)(qu)動(dong)(dong)程序的(de)(de)注(zhu)冊與(yu)請求處(chu)理(li)(li)(li)實(shi)例(li)分(fen)析; 網(wang)(wang)(wang)絡(luo)(luo)(luo)設(she)備(bei)(bei)(bei)(bei)驅(qu)(qu)(qu)(qu)動(dong)(dong)程序的(de)(de)數據處(chu)理(li)(li)(li)模(mo)型; 網(wang)(wang)(wang)絡(luo)(luo)(luo)設(she)備(bei)(bei)(bei)(bei)驅(qu)(qu)(qu)(qu)動(dong)(dong)程序的(de)(de)基(ji)本實(shi)現; 實(shi)例(li)分(fen)析與(yu)實(shi)驗(yan): Socket 應用實(shi)例(li)、CS8900網(wang)(wang)(wang)卡驅(qu)(qu)(qu)(qu)動(dong)(dong)
14:智(zhi)能家(jia)居項目通過WEB頁面能進(jin)行遠(yuan)程(cheng)監控,并能遠(yuan)程(cheng)對于家(jia)電進(jin)行控制
15:電子數碼(ma)相冊(ce)實(shi)(shi)現數碼(ma)相冊(ce)的瀏(liu)覽與圖(tu)(tu)片管理功能,并支(zhi)持瀏(liu)覽外接U盤中(zhong)的圖(tu)(tu)像資料,實(shi)(shi)現幻燈(deng)片播放
|