廣東省高等教育自學(xué)考試《嵌入式Linux應(yīng)用編程》
(課程代碼:12730)課程考試大綱
目 錄
一、課程性質(zhì)與設(shè)置目的
二、課程內(nèi)容與考核目標(biāo)
第1章 Linux系統(tǒng)入門基礎(chǔ)
第一節(jié) 認(rèn)識(shí)Linux操作系統(tǒng)
第二節(jié) 基本操作命令
第三節(jié) Linux文件與目錄系統(tǒng)
第四節(jié) shell簡(jiǎn)介
第五節(jié) 網(wǎng)絡(luò)服務(wù)簡(jiǎn)介
第2章 Linux程序設(shè)計(jì)基礎(chǔ)——C環(huán)境
第一節(jié) Linux編程環(huán)境介紹
第二節(jié) 常用編輯器
第三節(jié) gcc編譯器的使用
第四節(jié) GNU make管理項(xiàng)目
第五節(jié) GDB調(diào)試
第3章 Linux shell編程
第一節(jié) 創(chuàng)建與運(yùn)行外殼程序
第二節(jié) 使用外殼變量
第三節(jié) 數(shù)值運(yùn)算命令
第四節(jié) 條件表達(dá)式
第五節(jié) 循環(huán)語(yǔ)句
第六節(jié) shift命令
第七節(jié) select語(yǔ)句
第八節(jié) repeat語(yǔ)句
第九節(jié) 函數(shù)
第十節(jié) shell應(yīng)用舉例
第4章 構(gòu)建嵌入式Linux系統(tǒng)
第一節(jié) GNU跨平臺(tái)開發(fā)工具鏈
第二節(jié) 嵌入式Linux內(nèi)核
第三節(jié) 嵌入式Linux根文件系統(tǒng)
第四節(jié) BootLoader簡(jiǎn)介
第5章 嵌入式BootLoader技術(shù)
第一節(jié) BootLoader的基本概念
第二節(jié) BootLoader典型結(jié)構(gòu)框架
第三節(jié) 典型BootLoader(Blob)分析和移植
第6章 ARM-Linux內(nèi)核分析
第一節(jié) ARM微處理器
第二節(jié) ARM-Linux的內(nèi)存管理
第三節(jié) ARM-Linux進(jìn)程管理與調(diào)度
第四節(jié) ARM-Linux中斷響應(yīng)與處理
第五節(jié) ARM-Linux系統(tǒng)啟動(dòng)與初始化
第六節(jié) Linux模塊化機(jī)制
第七節(jié) ARM-Linux內(nèi)核裁減
第7章 嵌入式文件系統(tǒng)
第一節(jié) Linux文件系統(tǒng)結(jié)構(gòu)與特征
第二節(jié) 嵌入式文件系統(tǒng)簡(jiǎn)介
第三節(jié) 構(gòu)建根文件系統(tǒng)
第四節(jié) 根文件系統(tǒng)設(shè)置
第五節(jié) Busy Box
第8章 嵌入式Linux多線程編程
第一節(jié) 線程基本概念
第二節(jié) 多線程同步
第三節(jié) 生產(chǎn)者-消費(fèi)者問(wèn)題
第9章 簡(jiǎn)單嵌入式Web服務(wù)器設(shè)計(jì)
第一節(jié) HTTP協(xié)議基礎(chǔ)
第二節(jié) socket編程基礎(chǔ)
第三節(jié) 嵌入式Web服務(wù)器系統(tǒng)結(jié)構(gòu)
第四節(jié) Web服務(wù)器構(gòu)建
第10章 嵌入式GUI
第一節(jié) 嵌入式GUI簡(jiǎn)介
第二節(jié) MiniGUI程序設(shè)計(jì)基礎(chǔ)
第三節(jié) Qt/Embedded程序設(shè)計(jì)基礎(chǔ)
第四節(jié) 嵌入式GUI的移植
三、 有關(guān)說(shuō)明與實(shí)施要求
附錄:題型舉例
一、課程性質(zhì)與設(shè)置目的
(一)課程性質(zhì)與特點(diǎn)
嵌入式Linux應(yīng)用編程是嵌入式技術(shù)專業(yè)的核心課程之一。本課程為了適應(yīng)目前發(fā)展迅速的嵌入式Linux需求而設(shè)計(jì),課程目標(biāo)是讓學(xué)生達(dá)到嵌入式應(yīng)用軟件開發(fā)、嵌入式系統(tǒng)開發(fā)或嵌入式驅(qū)動(dòng)開發(fā)的基本素質(zhì)。課程內(nèi)容基于目前應(yīng)用最廣泛的軟硬件開發(fā)平臺(tái)(Linux和Arm),使學(xué)生了解嵌入式技術(shù)的發(fā)展現(xiàn)狀,掌握嵌入式開發(fā)的基本技能;掌握嵌入式Linux項(xiàng)目的完整開發(fā)流程,能夠完成嵌入式Linux系統(tǒng)的移植和設(shè)備驅(qū)動(dòng)程序的編寫,掌握嵌入式Linux應(yīng)用程序的開發(fā)。
(二)課程設(shè)置目的與基本要求
Linux作為日漸流行的多用戶、多任務(wù)的網(wǎng)絡(luò)操作系統(tǒng),有著開放、穩(wěn)定、安全、費(fèi)用低廉等許多其它操作系統(tǒng)無(wú)可比擬的優(yōu)勢(shì),具有越來(lái)越廣泛的應(yīng)用前景。在網(wǎng)絡(luò)技術(shù)迅速發(fā)展的今天,網(wǎng)絡(luò)操作系統(tǒng)是網(wǎng)絡(luò)中的核心技術(shù)。本課程是高等教育自學(xué)考試嵌入式技術(shù)(??疲I(yè)的一門專業(yè)課。本課程的目的在于講授Linux操作系統(tǒng)的基礎(chǔ)和應(yīng)用知識(shí),使學(xué)生掌握Linux系統(tǒng)的安裝、配置、管理維護(hù)等技能,對(duì)Linux系統(tǒng)有一個(gè)全面的了解,奠定在Linux系統(tǒng)上作進(jìn)一步開發(fā)的基礎(chǔ)。
(三)本課程與相關(guān)課程的聯(lián)系
本課程應(yīng)該在先學(xué)習(xí)完計(jì)算機(jī)組成原理和計(jì)算機(jī)網(wǎng)絡(luò)原理前提下開設(shè)的。學(xué)習(xí)完本課程,后續(xù)課程應(yīng)該及時(shí)開設(shè)網(wǎng)絡(luò)安全與管理等專業(yè)課,拓寬學(xué)生的知識(shí)面,從而強(qiáng)化本課程開設(shè)的目的。
本課程共分為十章,分別是Linux系統(tǒng)入門基礎(chǔ)、Linux程序設(shè)計(jì)基礎(chǔ)——C環(huán)境、Linux shell編程、構(gòu)建嵌入式Linux系統(tǒng)、嵌入式BootLoader技術(shù)、ARM-Linux內(nèi)核分析、嵌入式文件系統(tǒng)、嵌入式Linux多線程編程、簡(jiǎn)單嵌入式Web服務(wù)器設(shè)計(jì)、嵌入式GUI。其中:
1. 重點(diǎn)章包括:Linux程序設(shè)計(jì)基礎(chǔ)——C環(huán)境、Linux shell編程、構(gòu)建嵌入式Linux系統(tǒng)、嵌入式BootLoader技術(shù)、ARM-Linux內(nèi)核分析。
2. 次重點(diǎn)章包括:嵌入式文件系統(tǒng)、嵌入式Linux多線程編程、簡(jiǎn)單嵌入式Web服務(wù)器設(shè)計(jì)。
3. 一般章包括:Linux系統(tǒng)入門基礎(chǔ)、嵌入式GUI。
二、課程內(nèi)容與考核目標(biāo)
第一章 Linux系統(tǒng)入門基礎(chǔ)
一、學(xué)習(xí)目的與要求
本章的學(xué)習(xí)目的主要是對(duì)Linux系統(tǒng)有一個(gè)簡(jiǎn)單的了解。認(rèn)識(shí)Linux的操作系統(tǒng)、掌握Linux的基本操作命令。
二、課程內(nèi)容
第一節(jié) 認(rèn)識(shí)Linux操作系統(tǒng)
一、Linux和Unix的簡(jiǎn)明歷史
二、Linux系統(tǒng)的特點(diǎn)和組成
三、Linux的開發(fā)過(guò)程
第二節(jié) 基本操作命令
一、字符界面簡(jiǎn)介
二、常用命令簡(jiǎn)介
第三節(jié) Linux文件與目錄系統(tǒng)
一、Linux文件系統(tǒng)類型介紹
二、Linux目錄系統(tǒng)
第四節(jié) shell簡(jiǎn)介
第五節(jié) 網(wǎng)絡(luò)服務(wù)簡(jiǎn)介
一、Linux支持的網(wǎng)絡(luò)協(xié)議
二、Linux的網(wǎng)絡(luò)服務(wù)
三、考核知識(shí)點(diǎn)
1. Linux系統(tǒng)的特點(diǎn)和組成
2. Linux系統(tǒng)的基本操作命令
3. Linux文件系統(tǒng)類型介紹
4. Linux支持的網(wǎng)絡(luò)協(xié)議
四、考核要求
1. Linux系統(tǒng)的特點(diǎn)和組成
識(shí)記:Linux系統(tǒng)主要的特點(diǎn)和4個(gè)組成
2. Linux系統(tǒng)的基本操作命令
識(shí)記:Linux系統(tǒng)的常用命令
3.Linux文件系統(tǒng)類型介紹
識(shí)記:Linux的常用文件類型和目錄系統(tǒng)
4. Linux支持的網(wǎng)絡(luò)協(xié)議
領(lǐng)會(huì):Linux支持的網(wǎng)絡(luò)協(xié)議和服務(wù)
第二章 Linux程序設(shè)計(jì)基礎(chǔ)—C環(huán)境
一、學(xué)習(xí)目的與要求
本章需要掌握使用GCC編譯C語(yǔ)言程序;理解基本的makefile文件的編寫語(yǔ)法;熟練掌握在Linux系統(tǒng)里面使用C語(yǔ)言進(jìn)行程序設(shè)計(jì);掌握ARM匯編和C進(jìn)行簡(jiǎn)單混合編程。
二、課程內(nèi)容
第一節(jié) Linux編程環(huán)境介紹
一、系統(tǒng)平臺(tái)環(huán)境
二、開發(fā)工具環(huán)境
三、基于文本模式的開發(fā)平臺(tái)
四、集成開發(fā)平臺(tái)Eclipse+CDT
五、文檔幫助環(huán)境
第二節(jié) 常用編輯器
一、VIM編輯器
二、Emacs編輯器
第三節(jié) gcc編譯器的使用
一、gcc的主要選項(xiàng)
二、GNU C擴(kuò)展簡(jiǎn)介
第四節(jié) GNU make管理項(xiàng)目
一、make的簡(jiǎn)介
二、編寫Makefile文件的規(guī)則
第五節(jié) GDB調(diào)試
一、GDB命令介紹
二、GDB調(diào)試?yán)?br />
三、基于GDB的圖形界面調(diào)試工具
三、考核知識(shí)點(diǎn)
1. Linux編程環(huán)境
2.VIM編輯器和Emacs編輯器
3.基于GDB的圖形界面調(diào)試工具
四、考核要求
1. Linux編程環(huán)境
識(shí)記:Linux平臺(tái)特性
領(lǐng)會(huì):基于文本模式的開發(fā)平臺(tái)和集成開發(fā)平臺(tái)
2.VIM編輯器和Emacs編輯器
簡(jiǎn)單應(yīng)用:VIM和Emacs兩種常用的編輯器
3.基于GDB的圖形界面調(diào)試工具
領(lǐng)會(huì):GDB命令
簡(jiǎn)單應(yīng)用:基于GDB的圖形界面調(diào)試工具
第三章 Linux shell編程
一、學(xué)習(xí)目的與要求
本章的學(xué)習(xí)目的是力求使學(xué)生掌握Linux Shell編程的特性。Shell是用戶與內(nèi)核進(jìn)行交互操作的一種接口,是Linux最重要的軟件之一,目前最流行的Shell稱為bash Shell,需要掌握bash Shell腳本編程的語(yǔ)法、命令、技巧、調(diào)試等內(nèi)容。
二、課程內(nèi)容
第一節(jié) 創(chuàng)建與運(yùn)行外殼程序
一、創(chuàng)建外殼程序
二、運(yùn)行外殼程序
第二節(jié) 使用外殼變量
一、給變量賦值
二、讀取變量的值
三、位置變量和其他系統(tǒng)變量
四、引號(hào)的作用
第三節(jié) 數(shù)值運(yùn)算命令
第四節(jié) 條件表達(dá)式
一、if表達(dá)式
二、case表達(dá)式
第五節(jié) 循環(huán)語(yǔ)句
一、for語(yǔ)句
二、while語(yǔ)句
三、until語(yǔ)句
第六節(jié) shift命令
第七節(jié) select語(yǔ)句
第八節(jié) repeat語(yǔ)句
第九節(jié) 函數(shù)
第十節(jié) shell應(yīng)用舉例
三、考核知識(shí)點(diǎn)
1. 外殼變量
2 .數(shù)值運(yùn)算
3. 條件表達(dá)式
4. 循環(huán)語(yǔ)句
5. select語(yǔ)句和repeat語(yǔ)句
四、考核要求
1. 外殼變量
簡(jiǎn)單應(yīng)用:外殼變量的使用
2 .數(shù)值運(yùn)算
簡(jiǎn)單應(yīng)用:數(shù)值運(yùn)算的使用
3. 條件表達(dá)式
簡(jiǎn)單應(yīng)用:if表達(dá)式和case表達(dá)式
4. 循環(huán)語(yǔ)句
簡(jiǎn)單應(yīng)用:for、while和until循環(huán)的使用
5. select語(yǔ)句和repeat語(yǔ)句
簡(jiǎn)單應(yīng)用:select語(yǔ)句和repeat語(yǔ)句
第四章 構(gòu)建嵌入式Linux系統(tǒng)
一、學(xué)習(xí)目的與要求
本章的學(xué)習(xí)目的主要是對(duì)構(gòu)建嵌入式Linux系統(tǒng)的掌握。要求掌握GNU跨平臺(tái)開發(fā)鏈的建立過(guò)程,了解嵌入式Linux內(nèi)核,了解嵌入式Linux根文件系統(tǒng),了解BootLoader。
二、課程內(nèi)容
第一節(jié) GNU跨平臺(tái)開發(fā)工具鏈
一、基礎(chǔ)知識(shí)
二、GNU跨平臺(tái)開發(fā)鏈的建立過(guò)程
第二節(jié) 嵌入式Linux內(nèi)核
第三節(jié) 嵌入式Linux根文件系統(tǒng)
第四節(jié) BootLoader簡(jiǎn)介
三、考核知識(shí)點(diǎn)
1. GNU跨平臺(tái)開發(fā)鏈的建立過(guò)程
2. 嵌入式Linux根文件系統(tǒng)
四、考核要求
1. GNU跨平臺(tái)開發(fā)鏈的建立過(guò)程
領(lǐng)會(huì):GNU跨平臺(tái)開發(fā)工具鏈基礎(chǔ)知識(shí)
綜合應(yīng)用:基于ARM+Linux的嵌入式開發(fā)工具鏈的建立過(guò)程
2. 嵌入式Linux根文件系統(tǒng)
簡(jiǎn)單應(yīng)用:文件系統(tǒng)的建立
第五章 嵌入式BootLoader技術(shù)
一、學(xué)習(xí)目的與要求
本章的學(xué)習(xí)目的主要是對(duì)嵌入式BootLoader的掌握。要求熟悉BootLoader的概念,了解BootLoader的結(jié)構(gòu)框架,了解典型Blob的運(yùn)行過(guò)程,了解Blob的移植。難點(diǎn)是Blob的具體移植。
二、課程內(nèi)容
第一節(jié) BootLoader的基本概念
一、BootLoader所支持的CPU和嵌入式板
二、BootLoader的安裝點(diǎn)和啟動(dòng)過(guò)程
三、BootLoader的操作模式
四、BootLoader與主機(jī)之間的通信方式
第二節(jié) BootLoader典型結(jié)構(gòu)框架
一、BootLoader的stage1
二、BootLoader的stage2
第三節(jié) 典型BootLoader分析和移植
一、Blob簡(jiǎn)介
二、Blob的運(yùn)行過(guò)程分析
三、Blob的移植
三、考核知識(shí)點(diǎn)
1. BootLoader所支持的CPU和嵌入式板、BootLoader的安裝點(diǎn)和啟動(dòng)過(guò)程、BootLoader的操作模式以及BootLoader與主機(jī)之間的通信方式
2. Blob的運(yùn)行過(guò)程分析
四、考核要求
1. BootLoader所支持的CPU和嵌入式板、BootLoader的安裝點(diǎn)和啟動(dòng)過(guò)程、BootLoader的操作模式以及BootLoader與主機(jī)之間的通信方式
識(shí)記;BootLoader的基本概念
領(lǐng)會(huì):各種BootLoader以及它們所支持的體系結(jié)構(gòu)、BootLoader的安裝點(diǎn)和啟動(dòng)過(guò)程、BootLoader的操作模式以及BootLoader與主機(jī)之間的通信方式
2. Blob的運(yùn)行過(guò)程分析
識(shí)記:Blob的基本概念
領(lǐng)會(huì):Blob程序啟動(dòng)流程、Blob的移植
第六章 ARM-Linux內(nèi)核分析
一、學(xué)習(xí)目的與要求
本章的學(xué)習(xí)目的主要是對(duì)基于ARM體系結(jié)構(gòu)的Linux內(nèi)核的掌握。要求了解ARM的體系結(jié)構(gòu),了解ARM-Linux的各個(gè)組成部分包括內(nèi)存管理、中斷管理、系統(tǒng)的啟動(dòng)和初始化、進(jìn)程管理和調(diào)度以及Linux的模塊機(jī)制。重點(diǎn)學(xué)習(xí)ARM-Linux的各個(gè)組成部分。
二、課程內(nèi)容
第一節(jié) ARM微處理器
一、ARM微處理器
二、RISC體系結(jié)構(gòu)
三、ARM微處理器的寄存器結(jié)構(gòu)
第二節(jié) ARM-Linux的內(nèi)存管理
一、內(nèi)存管理單元MMU
二、 ARM-Linux的存儲(chǔ)管理機(jī)制
三、 ARM-Linux存儲(chǔ)機(jī)制的建立
四、 ARM-Linux對(duì)虛擬空間的管理
第三節(jié) ARM-Linux進(jìn)程管理與調(diào)度
一、task_struct數(shù)據(jù)結(jié)構(gòu)
二、Linux進(jìn)程的創(chuàng)建、執(zhí)行和消亡
三、ARM-Linux的進(jìn)程調(diào)度
第四節(jié) ARM-Linux中斷響應(yīng)與處理
一、ARM的異常中斷種類
二、ARM處理器對(duì)異常中斷的響應(yīng)及返回過(guò)程
第五節(jié) ARM-Linux系統(tǒng)啟動(dòng)與初始化
一、內(nèi)核數(shù)據(jù)結(jié)構(gòu)的初始化
二、外設(shè)初始化
三、init進(jìn)程和inittab文件
四、rc啟動(dòng)腳本
五、shell的啟動(dòng)
第六節(jié) Linux模塊化機(jī)制
一、Linux的模塊化
二、模塊的載入
三、模塊的卸載
第七節(jié) ARM-Linux內(nèi)核裁減
三、考核知識(shí)點(diǎn)
1. ARM-Linux的存儲(chǔ)管理機(jī)制、ARM-Linux存儲(chǔ)機(jī)制的建立和ARM-Linux對(duì)虛擬空間的管理
2. task_struct數(shù)據(jù)結(jié)構(gòu)、Linux進(jìn)程的創(chuàng)建、執(zhí)行和消亡和ARM-Linux的進(jìn)程調(diào)度
3. init進(jìn)程和inittab文件、rc啟動(dòng)腳本和shell的啟動(dòng)
四、考核要求
1. ARM-Linux的存儲(chǔ)管理機(jī)制、ARM-Linux存儲(chǔ)機(jī)制的建立和ARM-Linux對(duì)虛擬空間的管理
領(lǐng)會(huì):ARM-Linux的存儲(chǔ)管理機(jī)制、ARM-Linux存儲(chǔ)機(jī)制的建立和ARM-Linux對(duì)進(jìn)程虛擬空間的管理
2. task_struct數(shù)據(jù)結(jié)構(gòu)、Linux進(jìn)程的創(chuàng)建、執(zhí)行和消亡和ARM-Linux的進(jìn)程調(diào)度
領(lǐng)會(huì):task_struct數(shù)據(jù)結(jié)構(gòu)、Linux進(jìn)程的創(chuàng)建、執(zhí)行和消亡和ARM-Linux的進(jìn)程調(diào)度
3. init進(jìn)程和inittab文件、rc啟動(dòng)腳本和shell的啟動(dòng)
領(lǐng)會(huì):ARM-Linux系統(tǒng)啟動(dòng)與初始化
第七章 嵌入式文件系統(tǒng)
一、學(xué)習(xí)目的與要求
本章的學(xué)習(xí)目的主要是對(duì)嵌入式Linux文件系統(tǒng)的掌握。文件系統(tǒng)是Linux系統(tǒng)最基本的資源,了解嵌入式Linux文件系統(tǒng)得基本結(jié)構(gòu)和特征,了解常見的嵌入式文件系統(tǒng)JFFS和YAFFS,重點(diǎn)學(xué)習(xí)嵌入式Linux文件系統(tǒng)的構(gòu)造過(guò)程。
二、課程內(nèi)容
第一節(jié) Linux文件系統(tǒng)結(jié)構(gòu)與特征
一、Linux文件系統(tǒng)概述
二、Linux文件系統(tǒng)布局
三、Linux支持的文件系統(tǒng)
第二節(jié) 嵌入式文件系統(tǒng)簡(jiǎn)介
一、嵌入式文件系統(tǒng)JFFS簡(jiǎn)介
二、嵌入式文件系統(tǒng)YAFFS簡(jiǎn)介
第三節(jié) 構(gòu)建根文件系統(tǒng)
第四節(jié) 根文件系統(tǒng)設(shè)置
第五節(jié) Busy Box
一、Busy Box簡(jiǎn)介
二、使用Busy Box構(gòu)建根文件系統(tǒng)
三、考核知識(shí)點(diǎn)
1. Linux文件系統(tǒng)概述、Linux文件系統(tǒng)布局和Linux支持的文件系統(tǒng)
2. 構(gòu)建根文件系統(tǒng)和根文件系統(tǒng)設(shè)置
四、考核要求
1. Linux文件系統(tǒng)概述、Linux文件系統(tǒng)布局和Linux支持的文件系統(tǒng)
識(shí)記:文件系統(tǒng)的概念
領(lǐng)會(huì):Linux文件系統(tǒng)布局和Linux支持的文件系統(tǒng)
2. 構(gòu)建根文件系統(tǒng)和根文件系統(tǒng)設(shè)置
領(lǐng)會(huì):嵌入式文件系統(tǒng)設(shè)計(jì)所遵循的原則
綜合應(yīng)用:根文件系統(tǒng)的構(gòu)建
第八章 嵌入式Linux多線程編程
一、學(xué)習(xí)目的與要求
本章的學(xué)習(xí)目的主要是對(duì)嵌入式Linux多線程編程基本內(nèi)容的掌握。要求了解Linux線程基本概念,多線程同步,生產(chǎn)者-消費(fèi)者問(wèn)題模型的實(shí)現(xiàn)。重點(diǎn)學(xué)習(xí)生產(chǎn)者-消費(fèi)者問(wèn)題實(shí)例的實(shí)現(xiàn)。
二、課程內(nèi)容
第一節(jié) 線程基本概念
一、Linux線程簡(jiǎn)介
二、Linux線程編程基礎(chǔ)
第二節(jié) 多線程同步
一、互斥鎖
二、條件變量
三、信號(hào)量
第三節(jié) 生產(chǎn)者-消費(fèi)者問(wèn)題
一、生產(chǎn)者-消費(fèi)者問(wèn)題簡(jiǎn)介
二、生產(chǎn)者-消費(fèi)者問(wèn)題實(shí)例
三、考核知識(shí)點(diǎn)
1. Linux線程編程基礎(chǔ)
2. 多線程同步
3. 生產(chǎn)者-消費(fèi)者問(wèn)題的實(shí)例
四、考核要求
1. Linux線程編程基礎(chǔ)
識(shí)記:Linux線程的基本概念,系統(tǒng)創(chuàng)建線程的順序
簡(jiǎn)單應(yīng)用:多線程編程常用的幾個(gè)函數(shù)
2. 多線程同步
簡(jiǎn)單應(yīng)用:多線程同步
3. 生產(chǎn)者-消費(fèi)者問(wèn)題的實(shí)例
綜合應(yīng)用:生產(chǎn)者-消費(fèi)者問(wèn)題模型的實(shí)現(xiàn)
第九章 簡(jiǎn)單嵌入式Web服務(wù)器設(shè)計(jì)
一、學(xué)習(xí)目的與要求
本章的學(xué)習(xí)目的主要是對(duì)簡(jiǎn)單嵌入式Web服務(wù)器設(shè)計(jì)基本內(nèi)容的掌握。要求了解基于嵌入式WEB服務(wù)器的HTTP協(xié)議,嵌入式WEB服務(wù)器的系統(tǒng)結(jié)構(gòu)和工作原理,ARM開發(fā)板上的Socket網(wǎng)絡(luò)編程。重點(diǎn)學(xué)習(xí)以ARM體系結(jié)構(gòu)與編程課程中所學(xué)知識(shí)為基礎(chǔ),對(duì)基于ARM的簡(jiǎn)單嵌入式WEB服務(wù)器系統(tǒng)進(jìn)行簡(jiǎn)單設(shè)計(jì)。
二、課程內(nèi)容
第一節(jié) HTTP協(xié)議基礎(chǔ)
一、HTTP協(xié)議概述
二、HTTP協(xié)議的方法
三、HTTP協(xié)議消息頭
四、HTTP協(xié)議使用舉例
第二節(jié) socket編程基礎(chǔ)
一、socket描述
二、TCP/IP模型
三、socket描述符
第三節(jié) 嵌入式Web服務(wù)器系統(tǒng)結(jié)構(gòu)
一、協(xié)議標(biāo)準(zhǔn)
二、瘦Web服務(wù)器
三、嵌入式應(yīng)用接口技術(shù)
四、實(shí)現(xiàn)形式
五、EMIT
六、RomPager
第四節(jié) Web服務(wù)器構(gòu)建
三、考核知識(shí)點(diǎn)
1. HTTP協(xié)議概述、HTTP協(xié)議的方法和HTTP協(xié)議消息頭
2. 嵌入式WEB服務(wù)器系統(tǒng)結(jié)構(gòu)
3. WEB服務(wù)器的構(gòu)建
四、考核要求
1. HTTP協(xié)議概述、HTTP協(xié)議的方法和HTTP協(xié)議消息頭
識(shí)記:HTTP協(xié)議的基本概念
領(lǐng)會(huì):HTTP協(xié)議中內(nèi)置的方法、HTTP協(xié)議部分消息頭
簡(jiǎn)單應(yīng)用:HTTP協(xié)議的使用
2. 嵌入式WEB服務(wù)器系統(tǒng)結(jié)構(gòu)
領(lǐng)會(huì):典型的嵌入式Web服務(wù)器系統(tǒng)模型
3. WEB服務(wù)器的構(gòu)建
綜合應(yīng)用:WEB服務(wù)器的構(gòu)建
第十章 嵌入式GUI
一、學(xué)習(xí)目的與要求
本章的學(xué)習(xí)目的主要是對(duì)嵌入式系統(tǒng)GUI基本內(nèi)容的掌握。要求了解比較流行的MiniGUI和Qt/Embedded,了解MiniGUI和Qt/Embedded的程序設(shè)計(jì)基礎(chǔ)。重點(diǎn)學(xué)習(xí)基于Qt/Embedded的嵌入式GUI的移植。
二、課程內(nèi)容
第一節(jié) 嵌入式GUI簡(jiǎn)介
一、MiniGUI
二、Qt/Embedded
第二節(jié) MiniGUI程序設(shè)計(jì)基礎(chǔ)
一、MiniGUI的特點(diǎn)
二、窗口處理過(guò)程
三、MiniGUI的線程機(jī)制
四、MiniGUI的體系結(jié)構(gòu)
五、MiniGUI底層引擎
六、MiniGUI的三種運(yùn)行模式
第三節(jié) Qt/Embedded程序設(shè)計(jì)基礎(chǔ)
一、Qt/Embedded的圖形引擎實(shí)現(xiàn)基礎(chǔ)
二、Qt/Embedded的事件驅(qū)動(dòng)基礎(chǔ)
三、Qt/Embedded底層支持分析
第四節(jié) 嵌入式GUI的移植
三、考核知識(shí)點(diǎn)
1. MiniGUI和Qt/Embedded的特點(diǎn)
2. 基于Qt/Embedded的嵌入式GUI的移植
四、考核要求
1. MiniGUI和Qt/Embedded
識(shí)記:MiniGUI和Qt/Embedded的特點(diǎn)
領(lǐng)會(huì):窗口處理過(guò)程、MiniGUI的線程機(jī)制、體系結(jié)構(gòu)和三種運(yùn)行模式;Qt/Embedded3.x中底層圖形引擎實(shí)現(xiàn)結(jié)構(gòu)、事件驅(qū)動(dòng)基礎(chǔ)和底層支持分析
2. 基于Qt/Embedded的嵌入式GUI的移植
綜合應(yīng)用:基于Qt/Embedded的嵌入式GUI的移植
三、有關(guān)說(shuō)明與實(shí)施要求
(一)關(guān)于課程內(nèi)容與考核目標(biāo)的說(shuō)明
《嵌入式Linux應(yīng)用編程》課程自學(xué)考試大綱明確了《嵌入式Linux編程應(yīng)用》課程學(xué)習(xí)的內(nèi)容以及深廣度,規(guī)定了該課程自學(xué)考試的范圍和標(biāo)準(zhǔn),是進(jìn)行學(xué)習(xí)和考核的依據(jù)。該課程中各章的內(nèi)容均由若干知識(shí)點(diǎn)組成,在自學(xué)考試中成為考核知識(shí)點(diǎn)。
本課程的考核目標(biāo)主要是考核考生對(duì)《嵌入式Linux編程應(yīng)用》課程內(nèi)容的掌握程度,檢測(cè)他們對(duì)《嵌入式Linux應(yīng)用編程》相關(guān)理論與方法的認(rèn)識(shí)深度與廣度,以及他們?cè)诠ぷ髦袘?yīng)用這些理論與方法的能力,處理和解決工作實(shí)際問(wèn)題的能力。
《嵌入式Linux編程應(yīng)用》課程自學(xué)考試大綱要求考生學(xué)習(xí)和掌握的知識(shí)點(diǎn)內(nèi)容都作為考核的內(nèi)容。由于各知識(shí)點(diǎn)在課程中的地位、作用以及知識(shí)自身的特點(diǎn)不同,自學(xué)考試將對(duì)各知識(shí)點(diǎn)分別按四個(gè)認(rèn)知(或叫能力)層次確定其考核要求。四個(gè)能力層次從低到高依次是:識(shí)記;理解;簡(jiǎn)單應(yīng)用;綜合應(yīng)用。關(guān)于這些用語(yǔ)、概念的解釋如下:
識(shí)記:能正確認(rèn)識(shí)和表述科學(xué)事實(shí)、原理、術(shù)語(yǔ)和規(guī)律,知道該課程的基礎(chǔ)知識(shí),并能進(jìn)行正確的選擇和判斷。
理解:能將所學(xué)知識(shí)加以解釋、歸納,能領(lǐng)悟某一概念或原理與其他概念或原理之間的聯(lián)系,理解其引申意義,并能做出正確的表述和解釋。
簡(jiǎn)單應(yīng)用:能用所學(xué)的概念、原理、方法正確分析和解決較簡(jiǎn)單問(wèn)題,具有分析和解決一般問(wèn)題的能力。
綜合應(yīng)用:能靈活運(yùn)用所學(xué)過(guò)的知識(shí),分析和解決比較復(fù)雜的問(wèn)題,具有一定解決實(shí)際問(wèn)題的能力。
(二)關(guān)于自考教材
《嵌入式Linux應(yīng)用編程》 許信順、賈智平編著,機(jī)械工業(yè)出版社出版,2012年1月第1版。
(三)自學(xué)方法指導(dǎo)
1.本課程的學(xué)習(xí)者應(yīng)根據(jù)本大綱規(guī)定,認(rèn)真閱讀指定教材,理解教材中的基本原理,熟悉基本分析方法。為有效地指導(dǎo)個(gè)人自學(xué)和社會(huì)助學(xué),本大綱已指明了課程的重點(diǎn)和難點(diǎn),在各章的基本要求中也指明了各章內(nèi)容的重點(diǎn)和難點(diǎn)。本課程的學(xué)習(xí)者應(yīng)在全面系統(tǒng)學(xué)習(xí)的基礎(chǔ)上,掌握重點(diǎn),有目的的深入學(xué)習(xí)重點(diǎn)章節(jié)的內(nèi)容,但切忌在沒有全面學(xué)習(xí)教材的情況下孤立地去抓重點(diǎn)。
2.本課程的學(xué)習(xí)者在自學(xué)時(shí),應(yīng)根據(jù)本大綱在推薦教材和參考書中找出大綱中相關(guān)章節(jié)知識(shí)點(diǎn)的論述,系統(tǒng)做出自學(xué)筆記,適當(dāng)?shù)嘏浜献鲂┚毩?xí)。本課程中概念性、規(guī)則性、理論性內(nèi)容較多,自學(xué)者在學(xué)習(xí)時(shí),要注重對(duì)知識(shí)點(diǎn)的理解和掌握,仔細(xì)閱讀教材和參考書中的案例內(nèi)容,并能聯(lián)系實(shí)際進(jìn)行思考,做到融會(huì)貫通。
(四)對(duì)社會(huì)助學(xué)的要求
1.社會(huì)助學(xué)者應(yīng)根據(jù)本大綱規(guī)定的考試內(nèi)容和考核目標(biāo),認(rèn)真鉆研指定的教材,明確本課程的特點(diǎn)、學(xué)習(xí)范圍和學(xué)習(xí)要求,對(duì)自學(xué)應(yīng)考者進(jìn)行切實(shí)有效的輔導(dǎo),并從學(xué)習(xí)方法上給予指導(dǎo),引導(dǎo)他們防止自學(xué)中的各種偏向,把握社會(huì)助學(xué)的正確方向。
2.正確處理重點(diǎn)和一般的關(guān)系。課程內(nèi)容有重點(diǎn)與一般之分,但考試的內(nèi)容要覆蓋全部課程,而且重點(diǎn)與一般是相互聯(lián)系的,不是截然分開的。社會(huì)助學(xué)者應(yīng)全面系統(tǒng)地學(xué)習(xí)教材,掌握全部考試內(nèi)容和考核知識(shí)點(diǎn),在此基礎(chǔ)上再突出重點(diǎn)??傊獙讶胬斫夂椭攸c(diǎn)深入探討結(jié)合起來(lái),切勿孤立地只抓重點(diǎn),把自學(xué)應(yīng)考者引向猜題押題的歧途。
3.正確處理基礎(chǔ)知識(shí)與應(yīng)用能力之間的關(guān)系。社會(huì)助學(xué)者既要重視基礎(chǔ)理論知識(shí),又要重視實(shí)際應(yīng)用能力的培養(yǎng),努力引導(dǎo)自學(xué)應(yīng)考者將識(shí)記、領(lǐng)會(huì)同應(yīng)用聯(lián)系起來(lái),將基礎(chǔ)知識(shí)和理論轉(zhuǎn)化為應(yīng)用能力,在全面輔導(dǎo)的基礎(chǔ)上,著重培養(yǎng)和提高自學(xué)應(yīng)考者分析和解決問(wèn)題的能力。
(五)關(guān)于命題考試的若干要求
1. 本課程考試采用閉卷筆試方式,考試的時(shí)間為150分鐘。本課程考試可以攜帶沒有存儲(chǔ)功能的小型計(jì)算器。
2. 本大綱各章所規(guī)定的基本要求、考核知識(shí)點(diǎn)及考核要求下的知識(shí)細(xì)目,都屬于考核的內(nèi)容??荚嚸}既要覆蓋到章,又要避免面面俱到。要注意突出課程的重點(diǎn)、章節(jié)重點(diǎn),加大重點(diǎn)內(nèi)容的覆蓋度。
3. 命題不應(yīng)有超出大綱中考核知識(shí)點(diǎn)范圍的題,考核目標(biāo)不得高于大綱中所規(guī)定的相應(yīng)的最高能力層次要求。命題應(yīng)著重考核自學(xué)者對(duì)基本概念、基本知識(shí)和基本理論是否了解或掌握,對(duì)基本方法是否會(huì)用或熟練。不應(yīng)出與基本要求不符的偏題或怪題。
4. 本課程在試卷中對(duì)不同能力層次要求的分?jǐn)?shù)比例大致為:識(shí)記占20%,領(lǐng)會(huì)占30%,簡(jiǎn)單應(yīng)用占30%,綜合應(yīng)用占20%。
5. 要合理安排試題的難易程度,試題的難度可分為:易、較易、較難和難四個(gè)等級(jí)。每份試卷中不同難度試題的分?jǐn)?shù)比例一般為:2:3:3:2。
必須注意試題的難易程度與能力層次有一定的聯(lián)系,但二者不是等同的概念。在各個(gè)能力層次中對(duì)于不同的考生都存在著不同的難度,考生切勿混淆。
6. 課程考試命題的主要題型一般有單項(xiàng)選擇題、多項(xiàng)選擇題、判斷題、填空題、名詞解釋題、簡(jiǎn)答題、編程題等題型。各種題型的具體樣式參見附錄題型舉例。
附錄:題型舉例
一、單項(xiàng)選擇題,要求給出四個(gè)備選答案(一個(gè)正確答案)
1、下面哪個(gè)命令是用來(lái)定義shell的全局變量( )。
A. exportfs B. alias C. exports D. export
二、多項(xiàng)選擇題,要求給出五個(gè)備選答案(二個(gè)以上正確答案)
1、嵌入式linux操作系統(tǒng)的特點(diǎn)( )。
A、低廉性 B、廣泛性 C、可移植性好 D、良好的網(wǎng)絡(luò)支持 E、實(shí)時(shí)性好
三、 判斷題
1、Linux init啟動(dòng)進(jìn)程需要讀取的系統(tǒng)配置文件是/etc/inittab。( )
四、填空題
1、一個(gè)C語(yǔ)言程序的執(zhí)行起點(diǎn)是_________。
五、 名詞解釋題
1、線程
六、 簡(jiǎn)答題
1、簡(jiǎn)述Linux平臺(tái)的特性?
七、編程題
1、Linux下用C語(yǔ)言編寫一程序,實(shí)現(xiàn)如下功能:已知一個(gè)IP地址的16進(jìn)制數(shù)位0x3b40c812,請(qǐng)將此IP地址用十進(jìn)制點(diǎn)的形式輸出,如“59.64.200.18”。要求有Makefile。