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