1、Linux 基礎
安裝Linux操作系統:Linux文件系統 ,Linux常用命令,Linux啟動過程詳解,熟悉Linux服務能夠獨立安裝Linux操作系統,能夠熟練使用Linux系統的基本命令,認識Linux系統的常用服務安裝Linux操作系統,Linux基本命令實踐,設置Linux環(huán)境變量,定制Linux的服務,Shell 編程基礎使用vi編輯文件,使用Emacs編輯文件,使用其他編輯器。
2、Shell 編程基礎
Shell簡介:認識后臺程序Bash編程熟悉Linux系統下的編輯環(huán)境,熟悉Linux下的各種Shell,熟練進行shell編程熟悉vi基本操作,熟悉Emacs的基本操作,比較不同shell的區(qū)別,編寫一個測試服務器是否連通的shell腳本程序,編寫一個查看進程是否存在的shell腳本程序,編寫一個帶有循環(huán)語句的shell腳本程序。
3、Linux下的 C 編程基礎
linux C語言環(huán)境概述:Gcc使用方法:Gdb調試技術,Autoconf Automake Makefile,代碼優(yōu)化,熟悉Linux系統下的開發(fā)環(huán)境,熟悉Gcc編譯器,熟悉Makefile規(guī)則編寫Hello,World程序,使用make命令編譯程序,編寫帶有一個循環(huán)的程序,調試一個有問題的程序。
4、嵌入式系統開發(fā)基礎
嵌入式系統概述:交叉編譯配置TFTP服務,配置NFS服務,下載Bootloader和內核,嵌入式Linux應用軟件開發(fā)流程熟悉嵌入式系統概念以及開發(fā)流程,建立嵌入式系統開發(fā)環(huán)境制作cross_gcc工具鏈,編譯并下載U-boot 編譯并下載Linux內核編譯并下載Linux應用程序。
5、嵌入式系統移植
Linux內核代碼:平臺相關代碼分析,ARM平臺介紹,平臺移植的關鍵技術,移植Linux內核到ARM平臺,了解移植的概念,能夠移植Linux內核移植Linux2.6內核到arm9開發(fā)板。
6、嵌入式 Linux 下串口通信
串行I/O的基本概念:嵌入式Linux應用軟件開發(fā)流程,Linux系統的文件和設備,與文件相關的系統調用,配置超級終端和MiniCOM能夠熟悉進行串口通信,熟悉文件I/O,編寫串口通信程序,編寫多串口通信程序。
7、嵌入式系統中多進程程序設計
Linux系統進程概述:嵌入式系統的進程特點,進程操作,守護進程,相關的系統調用了解Linux系統中進程的概念,能夠編寫多進程程序編寫多進程程序,編寫一個守護進程程序,sleep系統調用任務管理、同步與通信Linux任務概述任務調度管道、信號共享內存,任務管理 API,了解Linux系統任務管理機制,熟悉進程間通信的幾種方式,熟悉嵌入式Linux中的任務間同步與通信編寫一個簡單的管道程序實現文件傳輸,編寫一個使用共享內存的程序。
8、嵌入式系統中多線程程序設計
線程的基礎知識:多線程編程方法,線程應用中的同步問題了解線程的概念,能夠編寫簡單的多線程程序編寫一個多線程程序。
9、嵌入式 Linux 網絡編程
網絡基礎知識:嵌入式Linux中TCP/IP網絡結構,socket編程 ,常用API函數,分析Ping命令的實現,基本UDP套接口編程,許可證管理 PPP協議GPRS,了解嵌入式Linux網絡體系結構,能夠進行嵌入式Linux環(huán)境下的socket編程,熟悉UDP協議、PPP協議,熟悉GPRS使用socket編寫代理服務器,使用socket編寫路由器,編寫許可證服務器,指出TCP和UDP的優(yōu)缺點,編寫一個web服務器,編寫一個運行在 arm平臺的網絡播放器。
10、GUI 程序開發(fā)
GUI基礎:嵌入式系統GUI類型,編譯QT進行QT開發(fā)熟悉嵌入式系統常用的GUI,能夠進行QT編程使用QT編寫“Hello,World”程序,調試一個加入信號/槽的實例,通過重載QWidget類方法處理事件。
11、Linux 字符設備驅動程序
設備驅動程序基礎知識: Linux系統的模塊,字符設備驅動分析fs_operation結構,加載驅動程序了解設備驅動程序的概念,了解Linux字符設備驅動程序結構,能夠編寫字符設備驅動程序編寫Skull驅動,編寫鍵盤驅動,編寫I/O驅動,分析一個看門狗驅動程序,對比Linux2.6內核與2.4內核中字符設備驅動的不同Linux 塊設備驅動程序塊設備驅動程序工作原理,典型的塊設備驅動程序分析,塊設備的讀寫請求隊列了解Linux塊設備驅動程序結構,能夠編寫簡單的塊設備驅動程序比較字符設備與塊設備的異同,編寫MMC卡驅動程序,分析一個文件系統,對比Linux2.6內核與2.4內核中塊設備驅動的不同。
12、文件系統
虛擬文件系統:文件系統的建立,ramfs內存文件系統proc文件系統devfs文件系統,MTD技術簡介,MTD塊設備初始化,MTD塊設備的讀寫操作了解Linux系統的文件系統,了解嵌入式Linux的文件系統,了解MTD技術,能夠編寫簡單的文件系統為arm9開發(fā)板添加MTD支持 移植JFFS2文件系統,通過proc文件系統修改操作系統參數,分析romfs文件系統源代碼,創(chuàng)建一個cramfs文件系統。