《嵌入式系統(tǒng)應(yīng)用與開(kāi)發(fā)》課程教學(xué)大綱
課程名稱:
| 嵌入式系統(tǒng)應(yīng)用與開(kāi)發(fā)
|
|
|
課程編號(hào):
| 420308
|
|
|
適用專業(yè):
| 網(wǎng)絡(luò)工程
|
|
|
課程類別:
| 專業(yè)限選
|
|
|
課程學(xué)分:
| 3
|
|
|
總學(xué)時(shí):
| 54
|
|
|
其中:理論學(xué)時(shí)
| 42
|
|
|
式實(shí)驗(yàn)學(xué)時(shí)
| 12
|
|
|
先修課程:
| C語(yǔ)言程序設(shè)計(jì)、數(shù)據(jù)結(jié)構(gòu)、操作系統(tǒng)原理、計(jì)算機(jī)網(wǎng)絡(luò)
|
一、課程的性質(zhì)、目的與任務(wù)
《嵌入式系統(tǒng)應(yīng)用與開(kāi)發(fā)》課程是嵌入式方向和物聯(lián)網(wǎng)方向的方向課。該課程主要講述嵌入式系統(tǒng)應(yīng)用程序開(kāi)發(fā)方法與技巧,主要內(nèi)容包括嵌入式應(yīng)用程序開(kāi)發(fā)基礎(chǔ)、嵌入式應(yīng)用程序開(kāi)發(fā)環(huán)境的搭建、文件I/O編程、進(jìn)程控制開(kāi)發(fā)、進(jìn)程間通信開(kāi)發(fā)、多線程編程及網(wǎng)絡(luò)編程等方法與技巧。通過(guò)本實(shí)驗(yàn)課程,應(yīng)達(dá)到以下幾個(gè)教學(xué)目的:
(1)掌握嵌入式系統(tǒng)應(yīng)用程序開(kāi)發(fā)編程基礎(chǔ),包括能熟練掌握vi、gcc、gdb、makefile等開(kāi)發(fā)工具的使用,能掌握l(shuí)inux操作系統(tǒng)常用的基本命令的使用。
(2)熟練掌握嵌入式系統(tǒng)開(kāi)發(fā)環(huán)境搭建過(guò)程,包括掌握交叉環(huán)境的搭建,tftp服務(wù)器的使用,nfs文件系統(tǒng)的使用,smb服務(wù)器的使用,常用的燒寫工具的使用等。
(3)掌握l(shuí)inux操作系統(tǒng)下,文件I/O編程方法和技巧,能熟練使用ANSIC標(biāo)準(zhǔn)和POSIX標(biāo)準(zhǔn)C庫(kù)I/O函數(shù)對(duì)文件進(jìn)行操作。
(4)掌握l(shuí)inux下進(jìn)程控制編程方法和技巧。能熟練掌握進(jìn)程的創(chuàng)建、進(jìn)程的等待、多進(jìn)程、守護(hù)進(jìn)程的編程方法和技巧。
(5)掌握l(shuí)inux下進(jìn)程通信編程的方法和技巧。熟練掌握管道通信、消息隊(duì)列、共享內(nèi)存,信號(hào)及信號(hào)量等通信機(jī)制的原理和編程方法。
(6)掌握l(shuí)inux下線程編程的方法和技巧。
(7)掌握l(shuí)inux下網(wǎng)絡(luò)編程的方法和技巧,能夠使用socket通信原理編寫TCP程序。
二、課程教學(xué)基本內(nèi)容與要求
第一章 Linux快速入門
(一)基本教學(xué)內(nèi)容
1.1嵌入式Linux基礎(chǔ)
1.2 Linux安裝
1.3 Linux文件及文件系統(tǒng)
1.4文件類型及文件屬性
1.5 Linux目錄結(jié)構(gòu)
(二)基本要求
教學(xué)目的:掌握嵌入式Linux的基本概念、理解嵌入式linux的文件系統(tǒng)及目錄結(jié)構(gòu)和掌握l(shuí)inux系統(tǒng)的安裝。
教學(xué)重點(diǎn):Linux安裝、linux文件系統(tǒng)及文件屬性和Linux目錄結(jié)構(gòu)。
教學(xué)難點(diǎn):Linux的安裝和Linux的目錄結(jié)構(gòu)。
第二章 Linux基礎(chǔ)命令
(一)基本教學(xué)內(nèi)容
2.1 Linux常用命令
2.2 Linux啟動(dòng)過(guò)程詳解
2.3 Linux系統(tǒng)服務(wù)
(二)基本要求
教學(xué)目的:掌握l(shuí)inux下常用命令的使用、理解linux啟動(dòng)過(guò)程和能使用linux提供的系統(tǒng)服務(wù)相關(guān)命令完成常用的服務(wù)的設(shè)定。
教學(xué)重點(diǎn):linux常用命令的使用。
教學(xué)難點(diǎn):linux系統(tǒng)的啟動(dòng)過(guò)程。
第三章 Linux下C編程基礎(chǔ)
(一)基本教學(xué)內(nèi)容
3.1 Linux下C語(yǔ)言編程概述
3.2常用編輯器
3.3 gcc編譯器
3.4 gdb調(diào)試器
3.5 make工程管理器
(二)基本要求
教學(xué)目的:掌握l(shuí)inux下常用GNU工具vi編輯器、gcc編譯器和gdb調(diào)試器的使用,能編寫簡(jiǎn)單的make file配置文件。
教學(xué)重點(diǎn):vi編輯器、gcc編譯器、gdb調(diào)試器和make工程管理器。
教學(xué)難點(diǎn):gcc編譯器編譯選項(xiàng)的分析、makefile文件的編寫。
第四章 嵌入式系統(tǒng)基礎(chǔ)
(一)基本教學(xué)內(nèi)容
4.1嵌入式系統(tǒng)概述
4.2 ARM處理器硬件開(kāi)發(fā)平臺(tái)
4.3嵌入式軟件開(kāi)發(fā)流程
(二)基本要求
教學(xué)目的:了解嵌入式系統(tǒng)概述、熟悉ARM處理器硬件開(kāi)發(fā)平臺(tái)、掌握嵌入式軟件開(kāi)發(fā)流程。
教學(xué)重點(diǎn):嵌入式系統(tǒng)的特點(diǎn)、嵌入式系統(tǒng)的體系結(jié)構(gòu)、ARM9體系結(jié)構(gòu)、嵌入式軟件開(kāi)發(fā)流程。
教學(xué)難點(diǎn):ARM9體系結(jié)構(gòu)、S3C2410處理器。
第五章 嵌入式Linux開(kāi)發(fā)環(huán)境的搭建
(一)基本教學(xué)內(nèi)容
5.1嵌入式開(kāi)發(fā)環(huán)境的搭建
5.2 U-Boot移植
(二)基本要求
教學(xué)目的:掌握嵌入式開(kāi)發(fā)環(huán)境的搭建和U-Boot移植主要步驟。
教學(xué)重點(diǎn):嵌入式交叉編譯環(huán)境的搭建、編譯嵌入式Linux內(nèi)核、制作文件系統(tǒng)、U-Boot移植主要步驟。
教學(xué)難點(diǎn):編譯嵌入式Linux內(nèi)核、制作文件系統(tǒng)、U-Boot移植主要步驟。
第六章 文件I/O編程
(一)基本教學(xué)內(nèi)容
6.1 Linux系統(tǒng)調(diào)用及用戶編程接口(API)
6.2 Linux中文件及文件描述符概述
6.3底層文件I/O操作
6.4嵌入式Linux串口應(yīng)用編程
6.5標(biāo)準(zhǔn)I/O編程
(二)基本要求
教學(xué)目的:理解系統(tǒng)調(diào)用及用戶編程接口、了解Linux中文件及文件描述符概述、掌握底層文件I/O操作、掌握嵌入式Linux串口應(yīng)用編程、掌握標(biāo)準(zhǔn)I/O編程。
教學(xué)重點(diǎn):Linux系統(tǒng)調(diào)用及用戶編程接口(API)、inux中文件及文件描述符概述、底層文件I/O操作、嵌入式Linux串口應(yīng)用編程、標(biāo)準(zhǔn)I/O編程。
教學(xué)難點(diǎn):文件鎖、多路復(fù)用式串口操作。
第七章 進(jìn)程控制開(kāi)發(fā)
(一)基本教學(xué)內(nèi)容
7.1 Linux進(jìn)程概述
7.2 Linux進(jìn)程控制編程
7.3 Linux守護(hù)進(jìn)程
(二)基本要求
教學(xué)目的:理解Linux進(jìn)程概述、掌握Linux進(jìn)程控制編程方法和技技巧、掌握Linux守護(hù)進(jìn)程編程的方法。
教學(xué)重點(diǎn):Linux下的進(jìn)程結(jié)構(gòu)、Linux下的進(jìn)程管理、編寫守護(hù)進(jìn)程。
教學(xué)難點(diǎn):Linux下的進(jìn)程結(jié)構(gòu)、守護(hù)進(jìn)程的出錯(cuò)處理。
第八章 進(jìn)程間通信
(一)基本教學(xué)內(nèi)容
8.1 Linux下進(jìn)程間通信概述
8.2管道
8.3信號(hào)
8.4信號(hào)量
8.5共享內(nèi)存
8.6消息隊(duì)列
(二)基本要求
教學(xué)目的:理解Linux下進(jìn)程間通信概述,掌握管道、信號(hào)、信號(hào)量、共享內(nèi)存和消息隊(duì)列等通信方式的應(yīng)用和編程方法。
教學(xué)重點(diǎn):管道、信號(hào)、信號(hào)量、共享內(nèi)存和消息隊(duì)列等通信方式的應(yīng)用和編程方法。
教學(xué)難點(diǎn):信號(hào)的處理、信號(hào)量的應(yīng)用。
第九章 進(jìn)程間通信
(一)基本教學(xué)內(nèi)容
10.1 TCP/IP概述
10.2網(wǎng)絡(luò)基礎(chǔ)編程
10.3網(wǎng)絡(luò)高級(jí)編程
(二)基本要求
教學(xué)目的:理解Linux線程概述、掌握Linux線程編程。
教學(xué)重點(diǎn):線程的創(chuàng)建、線程等待、線程之間的同步與互斥。
教學(xué)難點(diǎn):線程之間的同步與互斥。
第十章 嵌入式Linux網(wǎng)絡(luò)編程
(一)基本教學(xué)內(nèi)容
9.1 Linux線程概述
9.2 Linux線程編程
(二)基本要求
教學(xué)目的:理解TCP/IP概述、掌握網(wǎng)絡(luò)基礎(chǔ)編程、掌握網(wǎng)絡(luò)高級(jí)編程。
教學(xué)重點(diǎn):TCP/IP協(xié)議族、TCP和UDP、地址及順序處理、socket基礎(chǔ)編程。
教學(xué)難點(diǎn):地址及順序處理、網(wǎng)絡(luò)高級(jí)編程。
三、課程各章節(jié)學(xué)時(shí)分配
序號(hào)
| 內(nèi)容
| 理論學(xué)時(shí)
| 實(shí)驗(yàn)學(xué)時(shí)
|
網(wǎng)工
| 網(wǎng)工
|
1
| Linux快速入門
| 2
| 0
|
2
| Linux基礎(chǔ)命令
| 4
| 0
|
3
| Linux下C編程基礎(chǔ)
| 4
| 0
|
4
| 嵌入式系統(tǒng)基礎(chǔ)
| 2
| 0
|
5
| 嵌入式Linux開(kāi)發(fā)環(huán)境的搭建
| 6
| 2
|
6
| 文件I/O編程
| 6
| 2
|
7
| 進(jìn)程控制開(kāi)發(fā)
| 4
| 2
|
8
| 進(jìn)程間通信
| 6
| 2
|
9
| 多線程編程
| 4
| 2
|
10
| 嵌入式Linux網(wǎng)絡(luò)編程
| 4
| 2
|
合計(jì)
| 42
| 12
|
四、本課程課外學(xué)習(xí)與修學(xué)指導(dǎo)
該課程是一門綜合性的課程,運(yùn)用到操作系統(tǒng)原理、C編程基礎(chǔ)和計(jì)算機(jī)網(wǎng)絡(luò)等先行課程的內(nèi)容,所以要多參考相關(guān)書籍,做到能系統(tǒng)的撐握相關(guān)知識(shí);該課程是一門應(yīng)用性較強(qiáng)的課程,在有限的實(shí)驗(yàn)課時(shí)以外,多實(shí)踐練習(xí),鍛煉嵌入式應(yīng)用程序開(kāi)發(fā)的基本技能、基本設(shè)計(jì)思路,另外嵌入式系統(tǒng)源代碼,大多是開(kāi)源的。所以在進(jìn)行應(yīng)用程序開(kāi)發(fā)過(guò)程中,課外多下載閱讀分析相關(guān)應(yīng)用程序源代碼,做到個(gè)性化應(yīng)用開(kāi)發(fā)。
五、本課程考核方式及成績(jī)?cè)u(píng)定標(biāo)準(zhǔn)
考核方式:閉卷考試
成績(jī)?cè)u(píng)定方法:本課程的考核是平時(shí)成績(jī)、實(shí)驗(yàn)成績(jī)和期終考試成績(jī)相結(jié)合。具體比例為:上課出勤、作業(yè)占20%,實(shí)驗(yàn)占20%,期末考試成績(jī)占60%。
其中期未考試總分100分,基礎(chǔ)題占50%,中等難度題占40%,較難題占10%。考試題型主要有:選擇題、填空題、判斷題、程序填空題、程序設(shè)計(jì)題等。
六、教材及參考書
教材:《嵌入式Linux應(yīng)用程序開(kāi)發(fā)標(biāo)準(zhǔn)教程(第2版)》.華清遠(yuǎn)見(jiàn)嵌入式培訓(xùn)中心,人民郵電出版社,2009.
主要參考書:
[1] 劉洪濤,孫天澤.嵌入式系統(tǒng)技術(shù)與設(shè)計(jì).北京:人民郵電出版社,2008
[2] Daniel P.Bovet;Marco Cesati著.陳莉君,張瓊聲,張宏偉譯,深入linux內(nèi)核(第三版).北京:中國(guó)電力出版社,2007
[3] [美]Christopher Halinan.嵌入式Linux開(kāi)發(fā)(英文版).北京:人民郵電出版社,2008
[4] 羅克露,陳云川.嵌入式軟件調(diào)試技術(shù).北京:電子工業(yè)出版社,2009
[5] [英]Neil Matthew;Richard Stones著.陳健,宋健建譯.linux程序設(shè)計(jì)(第三版).北京:人民郵電出版社,2009
大綱撰寫人: 劉澤平
大綱審閱人: 劉偉群
教學(xué)副主任: 易葉青
編寫日期:2012.6