課程進(jìn)度安排(*更新日期:2012.03.10) |
時(shí)間 |
課程大綱 |
*天
|
9:00
|
12:00 |
1 嵌入式Linux開發(fā)環(huán)境搭建
目標(biāo):通過今天課程的學(xué)習(xí),學(xué)員能掌握嵌入式Linux的開發(fā)流程,掌握諸如tftp、nfs等Linux下服務(wù)器的配置方法,為嵌入式Linux的高效開發(fā)做鋪墊。
1.1 嵌入式LINUX簡介與發(fā)展
1.2 LINUX快速入門
1.3 建立嵌入式LINUX開發(fā)環(huán)境
1.4 熟悉嵌入式開發(fā)平臺(tái)
1.5 嵌入式LINUX開發(fā)工具
1.6 LINUX下的調(diào)試技巧
1.7 MAKE工程管理器
1.8 交叉編譯
|
13:30
|
17:30 |
【實(shí)驗(yàn)】
1、學(xué)習(xí)LINUX系統(tǒng)命令
2、配置TFTP服務(wù)
3、配置NFS服務(wù)
4、建立嵌入式開發(fā)環(huán)境
5、下載內(nèi)核到嵌入式平臺(tái)
6、下載根文件系統(tǒng)
7、編寫并下載應(yīng)用程序到嵌入式平臺(tái)
|
第二天
|
9:00
|
12:00 |
2 嵌入式LINUX進(jìn)程及進(jìn)程間通訊開發(fā)
目標(biāo):通過今天課程的學(xué)習(xí),學(xué)員將了解到Linux系統(tǒng)中的進(jìn)程的概念,從內(nèi)核的角度了解進(jìn)程的原理和實(shí)現(xiàn)。同時(shí)會(huì)掌握Linux下守護(hù)進(jìn)程的編寫方法,了解Linux下幾種進(jìn)程間通訊的方法,并具備編寫進(jìn)程間通訊編程的能力。
2.1 進(jìn)程的屬性和狀態(tài)
2.2 進(jìn)程的控制和調(diào)度
2.3 進(jìn)程的創(chuàng)建、執(zhí)行、消亡
2.4 進(jìn)程的相關(guān)系統(tǒng)調(diào)用
2.5 守護(hù)進(jìn)程
2.6 進(jìn)程間通信基本概念
2.7 管道(PIPE)
2.8 信號(hào)(SIGNAL)
2.9 內(nèi)存映射(MAPPED MEMORY)
2.10 消息隊(duì)列(MESSAGE QUEUE)
2.11 信號(hào)量(SEMAPHORE)
2.12 共享內(nèi)存(SHARE MEMORY)
|
13:30
|
17:30 |
【實(shí)驗(yàn)】
1、使用PS命令查看進(jìn)程信息
2、使用PROC文件系統(tǒng)查看進(jìn)程信息
3、使用SYSTEM()系統(tǒng)調(diào)用運(yùn)行和等待
4、EXIT和EXEC系統(tǒng)調(diào)用實(shí)例
5、編寫一個(gè)守護(hù)進(jìn)程
6、編寫基于串口通信的多進(jìn)程程序
|
第三天
|
9:00
|
12:00 |
3 嵌入式LINUX多線程開發(fā)與線程間的同步
目標(biāo):通過今天課程的學(xué)習(xí),學(xué)員將了解到Linux系統(tǒng)中的線程的概念,從內(nèi)核的角度了解線程的原理和實(shí)現(xiàn)。同時(shí)會(huì)掌握Linux下多線程程序的編寫方法,同步互斥方法,并具備編寫多線程間通訊編程的能力。
3.1 線程程的屬性和狀態(tài)
3.2 線程的控制和調(diào)度
3.3 線程的創(chuàng)建、執(zhí)行、消亡
3.4 線程的相關(guān)系統(tǒng)調(diào)用
3.5 線程間同步基本概念
3.6 P、V操作原理
3.7 信號(hào)量
3.8 互斥鎖
3.9 條件變量
|
13:30
|
17:30 |
【實(shí)驗(yàn)】
1、多線程實(shí)例分析
2、多線程API的使用方法
3、用信號(hào)量進(jìn)行同步
4、用互斥鎖進(jìn)行互斥
5、用條件變量進(jìn)行同步
|
第四天
|
9:00
|
12:00 |
4 嵌入式Linux下的網(wǎng)絡(luò)開發(fā)
目標(biāo):通過今天課程的學(xué)習(xí),學(xué)員能了解網(wǎng)絡(luò)的基礎(chǔ)知識(shí),了解Linux下的網(wǎng)絡(luò)結(jié)構(gòu)和套接字編程,具備Linux下網(wǎng)絡(luò)程序設(shè)計(jì)的能力。
4.1 ISO/OSI七層協(xié)議模型與IP網(wǎng)絡(luò)四層模式
4.2 TCP/IP協(xié)議簇
4.3 基于嵌入式LINUX的TCP/IP網(wǎng)絡(luò)結(jié)構(gòu)
4.4 基于嵌入式LINUX的SOCKET編程
4.5 UDP與TCP的區(qū)別
4.6 UDP SERVER-CLIENT關(guān)系程
|
13:30
|
17:30 |
【實(shí)驗(yàn)】
1、SOCKET套接字編程
2、分析并加強(qiáng)PING程序
3、FTP服務(wù)器設(shè)計(jì)
|
第五天
|
9:00
|
12:00 |
5 嵌入式GUI與數(shù)據(jù)庫開發(fā)
目標(biāo):通過今天課程的學(xué)習(xí),學(xué)員能夠了解嵌入式Linux下的幾種常見GUI及其特點(diǎn),重點(diǎn)能掌握QT的有關(guān)內(nèi)容,具備QT程序設(shè)計(jì)能力。了解嵌入式數(shù)據(jù)庫的配置與開發(fā)。
5.1 嵌入式LINUX GUI介紹及QT/MINIGUI之間比較
5.2 QT介紹及其信號(hào)插槽機(jī)制
5.3 QT圖形界面編程技術(shù)
5.4 QVFB虛擬幀緩存的建立和模擬開發(fā)調(diào)試
5.5 QT程序移植技術(shù)
5.6 QT在實(shí)際項(xiàng)目中具體應(yīng)用
5.7 嵌入式數(shù)據(jù)庫的概念
5.8 嵌入式數(shù)據(jù)庫的移植與編程
|
13:30
|
17:30 |
【實(shí)驗(yàn)】
1、基于QT實(shí)現(xiàn)HELLO WORLD對(duì)話框程序
2、建立主機(jī)虛擬幀緩存實(shí)驗(yàn)
3、基于QT圖形界面的溫度計(jì)的實(shí)現(xiàn)
|
第六天
|
9:00
|
17:00 |
6 綜合項(xiàng)目實(shí)踐“基于QT的網(wǎng)絡(luò)通信系統(tǒng)”
目標(biāo):經(jīng)過前幾天的學(xué)習(xí),學(xué)員基本上掌握了嵌入式linux常用的應(yīng)用編程方法,今天通過一個(gè)綜合項(xiàng)目案例鞏固、加深前面的知識(shí),并使學(xué)員了解嵌入式Linux項(xiàng)目開發(fā)流程。
6.1 項(xiàng)目實(shí)現(xiàn)的功能
6.1.1 QT界面設(shè)計(jì)
6.1.2 網(wǎng)絡(luò)消息傳輸功能
6.1.3 網(wǎng)絡(luò)文件傳輸功能
6.1.4 系統(tǒng)管理功能
6.2 項(xiàng)目涉及到的技術(shù)
6.2.1 項(xiàng)目流程及項(xiàng)目管理方法
6.2.2 QT界面開發(fā)
6.2.3 QT多線程
6.2.4 QT網(wǎng)絡(luò)編程
6.2.5 Linux文件操作
6.2.6 Qt移植(軟件移植到S3C2440開發(fā)平臺(tái))
6.2.7 程序優(yōu)化、測試(包括:內(nèi)存泄漏、系統(tǒng)調(diào)用跟蹤、函數(shù)執(zhí)行時(shí)間及頻率檢測、core dump處理等)
|