學習步驟如下(以類似文章提綱的形式羅列,大家可以參考一下):
<b>1、Linux 基礎</b>
安裝Linux作業系統
Linux檔案系統
Linux常用指令
Linux啟動過程詳解
熟悉Linux服務能夠獨立安裝Linux作業系統
能夠熟練使用Linux系統的基本指令
認識Linux系統的常用服務安裝Linux作業系統
Linux基本指令實踐
設定Linux環境變量
定制Linux的服務 Shell 程式設計基礎使用vi編輯檔案
使用Emacs編輯檔案
使用其他編輯器
<b>2、Shell 程式設計基礎</b>
Shell簡介
認識背景程式
Bash程式設計熟悉Linux系統下的編輯環境
熟悉Linux下的各種Shell
熟練進行shell程式設計熟悉vi基本操作
熟悉Emacs的基本操作
比較不同shell的差別
編寫一個測試伺服器是否連通的shell腳本程式
編寫一個檢視程序是否存在的shell腳本程式
編寫一個帶有循環語句的shell腳本程式
<b>3、Linux 下的 C 程式設計基礎</b>
linux C語言環境概述
Gcc使用方法
Gdb調試技術
Autoconf
Automake
Makefile
代碼優化 熟悉Linux系統下的開發環境
熟悉Gcc編譯器
熟悉Makefile規則編寫Hello,World程式
使用 make指令編譯程式
編寫帶有一個循環的程式
調試一個有問題的程式
<b>4、嵌入式系統開發基礎 </b>
嵌入式系統概述
交叉編譯
配置TFTP服務
配置NFS服務
下載下傳Bootloader和核心
嵌入式Linux應用軟體開發流程
熟悉嵌入式系統概念以及開發流程
建立嵌入式系統開發環境制作cross_gcc工具鍊
編譯并下載下傳U-boot
編譯并下載下傳Linux核心
編譯并下載下傳Linux應用程式
嵌入式系統移植
Linux核心代碼
平台相關代碼分析
ARM平台介紹
平台移植的關鍵技術
移植Linux核心到 ARM平台 了解移植的概念
能夠移植Linux核心移植Linux2.6核心到 ARM9開發闆
<b>5、嵌入式 Linux 下序列槽通信 </b>
串行I/O的基本概念
Linux系統的檔案和裝置
與檔案相關的系統調用
配置超級終端和MiniCOM 能夠熟悉進行序列槽通信
熟悉檔案I/O 編寫序列槽通信程式
編寫多序列槽通信程式
<b>6、嵌入式系統中多程序程式設計 </b>
Linux系統程序概述
嵌入式系統的程序特點
程序操作
守護程序
相關的系統調用了解Linux系統中程序的概念
能夠編寫多程序程式編寫多程序程式
編寫一個守護程序程式
sleep系統調用任務管理、同步與通信 Linux任務概述
任務排程
管道
信号
共享記憶體
任務管理 API 了解Linux系統任務管理機制
熟悉程序間通信的幾種方式
熟悉嵌入式Linux中的任務間同步與通信
編寫一個簡單的管道程式實作檔案傳輸
編寫一個使用共享記憶體的程式
<b>7、嵌入式系統中多線程程式設計 </b>
線程的基礎知識
多線程程式設計方法
線程應用中的同步問題了解線程的概念
能夠編寫簡單的多線程程式編寫一個多線程程式
<b>8、嵌入式 Linux 網絡程式設計 </b>
網絡基礎知識
嵌入式Linux中TCP/IP網絡結構
socket 程式設計
常用 API函數
分析Ping指令的實作
基本UDP套接口程式設計
許可證管理
PPP協定
GPRS 了解嵌入式Linux網絡體系結構
能夠進行嵌入式Linux環境下的socket 程式設計
熟悉UDP協定、PPP協定
熟悉GPRS 使用socket 編寫代理伺服器
使用socket 編寫路由器
編寫許可證伺服器
指出TCP和UDP的優缺點
編寫一個web伺服器
編寫一個運作在 ARM平台的網絡播放器
<b>9、GUI 程式開發 </b>
GUI基礎
嵌入式系統GUI類型
編譯QT
進行QT開發熟悉嵌入式系統常用的GUI
能夠進行QT程式設計使用QT編寫“Hello,World”程式
調試一個加入信号/槽的執行個體
通過重載QWidget 類方法處理事件
<b>10、Linux 字元裝置驅動程式 </b>
裝置驅動程式基礎知識
Linux系統的子產品
字元裝置驅動分析
fs_operation結構
加載驅動程式了解裝置驅動程式的概念
了解Linux字元裝置驅動程式結構
能夠編寫字元裝置驅動程式編寫Skull驅動
編寫鍵盤驅動
編寫I/O驅動
分析一個看門狗驅動程式
對比Linux2.6核心與2.4核心中字元裝置驅動的不同
Linux 塊裝置驅動程式塊裝置驅動程式工作原理
典型的塊裝置驅動程式分析
塊裝置的讀寫請求隊列了解Linux塊裝置驅動程式結構
能夠編寫簡單的塊裝置驅動程式比較字元裝置與塊裝置的異同
編寫MMC卡驅動程式
分析一個檔案系統
對比Linux2.6核心與2.4核心中塊裝置驅動的不同
<b>11、檔案系統 </b>
虛拟檔案系統
檔案系統的建立
ramfs記憶體檔案系統
proc檔案系統
devfs 檔案系統
MTD技術簡介
MTD塊裝置初始化
MTD塊裝置的讀寫操作了解Linux系統的檔案系統
了解嵌入式Linux的檔案系統
了解MTD技術
能夠編寫簡單的檔案系統為 ARM9開發闆添加 MTD支援
移植JFFS2檔案系統
通過proc檔案系統修改作業系統參數
分析romfs 檔案系統源代碼
建立一個cramfs 檔案系統