出版時(shí)間:2012-8 出版社:王曉薇 清華大學(xué)出版社 (2012-08出版) 作者:王曉薇 編 頁數(shù):268
內(nèi)容概要
《21世紀(jì)高等學(xué)校嵌入式系統(tǒng)專業(yè)規(guī)劃教材:嵌入式操作系統(tǒng)μC/OS-Ⅱ及應(yīng)用開發(fā)》以理論為核心,以實(shí)用為導(dǎo)向,最大的特色就是將μC/OS-Ⅱ操作系統(tǒng)的原理和應(yīng)用有機(jī)地融合到這一本書中,使學(xué)生既能掌握理論,又能懂得應(yīng)用。 本書先介紹了PC上μC/OS-Ⅱ的開發(fā)環(huán)境BC45,在這個(gè)環(huán)境下演示一個(gè)μC/OS-Ⅱ的實(shí)例,使讀者從整體上理解μC/OS-Ⅱ。然后從操作系統(tǒng)的原理上詳細(xì)講述μC/OS-Ⅱ這個(gè)實(shí)時(shí)操作系統(tǒng)的實(shí)現(xiàn)原理,對其中的內(nèi)核、任務(wù)的管理、任務(wù)的同步和通信、時(shí)鐘和中斷進(jìn)行了詳細(xì)的論述,理論講述后附有該理論的實(shí)驗(yàn)例程及實(shí)現(xiàn)方法。最后介紹了μC/OS-Ⅱ的移植方法,并從應(yīng)用的角度描述了一個(gè)基于μC/OS-Ⅱ的綜合開發(fā)案例,使讀者在應(yīng)用開發(fā)中真正會用μC/OS-Ⅱ,掌握μC/OS-Ⅱ的應(yīng)用技巧?! ”緯m合作為嵌入式系統(tǒng)原理及應(yīng)用的學(xué)習(xí)教材,同時(shí)適合作為高等院校計(jì)算機(jī)相關(guān)專業(yè)嵌入式操作系統(tǒng)教材或參考書,適合相關(guān)學(xué)科的本、??茖W(xué)生、高職高專及成教類學(xué)生閱讀,也可供嵌入式操作系統(tǒng)應(yīng)用開發(fā)人員參考。
書籍目錄
第1章 嵌入式操作系統(tǒng)概述 1.1 操作系統(tǒng)概述 1.1.1 操作系統(tǒng)的作用 1.1.2 操作系統(tǒng)的特征 1.1.3 操作系統(tǒng)的發(fā)展 1.2 操作系統(tǒng)的體系結(jié)構(gòu) 1.2.1 層次結(jié)構(gòu) 1.2.2 微內(nèi)核結(jié)構(gòu) 1.3 嵌入式操作系統(tǒng)概述 1.3.1 嵌入式操作系統(tǒng)的演變 1.3.2 嵌入式操作系統(tǒng)的特點(diǎn) 1.3.3 嵌入式操作系統(tǒng)與通用操作系統(tǒng)的區(qū)別 1.4 嵌入式實(shí)時(shí)操作系統(tǒng)μC/OS-II概述 1.4.1 μC/OS-II的特點(diǎn) 1.4.2 μC/OS-II的文件結(jié)構(gòu) 小結(jié) 習(xí)題 第2章 μC/OS-II的入門知識 2.1 開發(fā)工具 2.1.1 Hello wbrld程序 2.1.2 BCC編譯器 2.1.3 TLINK鏈接器 2.1.4 TASM匯編語言編譯器 2.2 make和makefile 2.2.1 簡單makefile的書寫規(guī)則 2.2.2 make命令 2.3 初識μC/OS-II 小結(jié) 習(xí)題 第3章 μC/OS-II的內(nèi)核結(jié)構(gòu) 3.1 μC/OS-II任務(wù)的描述 3.1.1 任務(wù)的定義 3.1.2 任務(wù)的基本狀態(tài) 3.1.3 任務(wù)控制塊 3.1.4 任務(wù)堆棧 3.2 任務(wù)調(diào)度 3.2.1 基本概念 3.2.2 調(diào)度的時(shí)機(jī) 3.2.3 操作系統(tǒng)常用的調(diào)度算法 3.2.4 實(shí)時(shí)系統(tǒng)中的調(diào)度 3.2.5 μC/OS-II的任務(wù)調(diào)度 3.3 μC/OS-II的系統(tǒng)任務(wù) 3.3.1 空閑任務(wù) 3.3.2 統(tǒng)計(jì)任務(wù) 3.4 μC/OS-II的初始化和任務(wù)的啟動 3.4.1 μC/OS-II的初始化 3.4.2 μC/OS-II的啟動 小結(jié) 習(xí)題 第4章 任務(wù)管理 4.1 任務(wù)的基本操作 4.1.1 任務(wù)創(chuàng)建 4.1.2 任務(wù)刪除 4.1.3 任務(wù)掛起與恢復(fù) 4.1.4 其他任務(wù)管理函數(shù) 4.2 應(yīng)用舉例 4.2.1 任務(wù)的狀態(tài)轉(zhuǎn)變舉例 4.2.2 堆棧功能檢測應(yīng)用舉例 小結(jié) 習(xí)題 第5章 中斷管理 5.1 中斷概述 5.1.1 中斷的基本概念 5.1.2 中斷處理過程 5.1.3 中斷評價(jià)指標(biāo) 5.2 μC/OS-II的中斷 5.2.1 μC/OS-II的中斷服務(wù)子程序ISR 5.2.2 μC/OS-II的中斷級的任務(wù)切換 小結(jié) 習(xí)題 第6章 時(shí)間管理 6.1 時(shí)鐘 6.1.1 時(shí)鐘硬件 6.1.2 時(shí)鐘軟件 6.1.3 系統(tǒng)時(shí)鐘 6.2 時(shí)鐘中斷服務(wù)程序 6.3 μC/OS-II的時(shí)鐘 6.3.1 μC/OS-II的時(shí)鐘中斷服務(wù)子程序ISR 6.3.2 時(shí)鐘節(jié)拍函數(shù)OSTimeTick() 6.3.3 時(shí)鐘節(jié)拍任務(wù) 6.3.4 時(shí)鐘節(jié)拍中斷服務(wù)子程序舉例 6.4 μC/OS-II時(shí)間管理 6.4.1 μC/OS-II時(shí)間管理的基本操作 6.4.2 μC/OS-Il時(shí)間管理應(yīng)用舉例 小結(jié) 習(xí)題 第7章 任務(wù)的同步與通信 7.1 同步和通信的基本概念 7.1.1 競爭條件 7.1.2 同步與通信 7.1.3 共享資源 7.1.4 可重入函數(shù) 7.1.5 臨界區(qū) 7.1.6 μC/OS-II的臨界區(qū) 7.2 任務(wù)通信的數(shù)據(jù)結(jié)構(gòu)——事件控制塊 7.2.1 事件 7.2.2 事件控制塊ECB 7.2.3 空事件控制塊鏈表 7.2.4 事件控制塊的操作 7.3 信號量 7.3.1 信號量概述 7.3.2 μC/OS-II信號量的數(shù)據(jù)結(jié)構(gòu) 7.3.3 信號量的操作 7.3.4 信號量應(yīng)用舉例 7.4 互斥型信號量 7.4.1 互斥型信號量概述 7.4.2 互斥型信號量的數(shù)據(jù)結(jié)構(gòu) 7.4.3 互斥型信號量的操作 7.4.4 優(yōu)先級反轉(zhuǎn) 7.4.5 優(yōu)先級反轉(zhuǎn)應(yīng)用舉例 7.5 事件標(biāo)志組 7.5.1 事件標(biāo)志組概述 7.5.2 事件標(biāo)志組的數(shù)據(jù)結(jié)構(gòu) 7.5.3 事件標(biāo)志組的操作 7.5.4 事件標(biāo)志組應(yīng)用舉例 7.6 消息郵箱 7.6.1 消息郵箱概述 7.6.2 消息郵箱的數(shù)據(jù)結(jié)構(gòu) 7.6.3 消息郵箱的操作 7.6.4 消息郵箱應(yīng)用 7.7 消息隊(duì)列 7.7.1 消息隊(duì)列概述 7.7.2 消息隊(duì)列的數(shù)據(jù)結(jié)構(gòu) 7.7.3 消息隊(duì)列的操作 7.7.4 消息隊(duì)列應(yīng)用舉例 小結(jié) 習(xí)題 第8章 內(nèi)存管理 8.1 分區(qū)內(nèi)存管理技術(shù) 8.1.1 單一分區(qū)內(nèi)存管理 8.1.2 固定大小的多分區(qū)管理 8.1.3 動態(tài)分區(qū)管理 8.2 實(shí)時(shí)系統(tǒng)的內(nèi)存管理 8.2.1 存儲管理原理 8.2.2 動態(tài)內(nèi)存管理的方法 8.3 μC/OS-II內(nèi)存管理 8.3.1 μC/OS-II內(nèi)存管理概述 8.3.2 μC/OS-II內(nèi)存管理的數(shù)據(jù)結(jié)構(gòu) 8.4 μC/OS-II內(nèi)存管理的基本操作 8.5 μC/OS-II內(nèi)存管理應(yīng)用舉例 小結(jié) 習(xí)題 …… 第9章 μC/OS-II在ARM7上移植 第10章 室內(nèi)智能節(jié)電綜合監(jiān)控系統(tǒng)設(shè)計(jì) 附錄 配置手冊 參考文獻(xiàn)
章節(jié)摘錄
版權(quán)頁: 插圖: 運(yùn)行態(tài)(running):就緒的最高優(yōu)先級的任務(wù)獲得了CPU的控制權(quán),從而處于運(yùn)行態(tài)。任何時(shí)刻只能有一個(gè)任務(wù)處于運(yùn)行態(tài)。當(dāng)所有的任務(wù)都在等待事件發(fā)生或等待延遲時(shí)間的結(jié)束時(shí),μC/OS-II執(zhí)行系統(tǒng)的空閑任務(wù),即OSTaskIdle()。 等待態(tài)(waiting):正在運(yùn)行的任務(wù)由于兩種情況使自身處于等待狀態(tài),一種情況是調(diào)用延時(shí)函數(shù),另一種情況是任務(wù)因等待消息、郵箱或信號量等事件的到來而掛起。中斷服務(wù)態(tài)(interrupt):除非該任務(wù)關(guān)中斷,或者μC/OS-II將中斷關(guān)閉,否則一旦產(chǎn)生中斷,當(dāng)前正在執(zhí)行的任務(wù)將被掛起,中斷服務(wù)子程序?qū)⒖刂艭PU的使用權(quán)。中斷服務(wù)子程序可能會通知一個(gè)或多個(gè)事件的發(fā)生,而使一個(gè)或多個(gè)任務(wù)進(jìn)入就緒態(tài)。在這種情況下,從中斷服務(wù)子程序返回之前,μC/OS-II要判斷被中斷的任務(wù)是否還是就緒任務(wù)表中優(yōu)先級最高的。如果中斷服務(wù)子程序使一個(gè)更高優(yōu)先級的任務(wù)進(jìn)入了就緒態(tài),則新進(jìn)入就緒態(tài)的更高優(yōu)先級的任務(wù)將獲得運(yùn)行,否則原來被中斷的任務(wù)將會繼續(xù)運(yùn)行。 2.任務(wù)狀態(tài)的轉(zhuǎn)換 任務(wù)在運(yùn)行期間,不斷地從一個(gè)狀態(tài)轉(zhuǎn)換到另一個(gè)狀態(tài),它可以多次處于就緒態(tài)、運(yùn)行態(tài)、等待態(tài)、睡眠態(tài)和中斷態(tài)。圖3.2顯示了任務(wù)轉(zhuǎn)換的事件類型,下面闡述任務(wù)狀態(tài)轉(zhuǎn)換的原因。 睡眠態(tài)一就緒態(tài):由睡眠態(tài)到就緒態(tài)的轉(zhuǎn)換實(shí)際上是把任務(wù)交給μC/OS-II,是通過建立任務(wù)的兩個(gè)函數(shù)實(shí)現(xiàn)的,即OSTaskCreat()或OS:P:askCreatExt()。 就緒態(tài)一運(yùn)行態(tài):調(diào)用OSStart()可以啟動多任務(wù)。OSStart()只能在啟動時(shí)調(diào)用一次,該函數(shù)運(yùn)行用戶初始化代碼中已經(jīng)建立的、進(jìn)入就緒態(tài)的優(yōu)先級最高的任務(wù)。如果中斷服務(wù)子程序使另一個(gè)優(yōu)先級更高的任務(wù)進(jìn)入了就緒態(tài),則在中斷服務(wù)子程序結(jié)束返回時(shí)調(diào)用OSIntExit(),新進(jìn)入就緒態(tài)的這個(gè)優(yōu)先級更高的任務(wù)將得以運(yùn)行,如果有優(yōu)先級更高的任務(wù)被建立,則要發(fā)生任務(wù)切換OS-TASK swo,使新建的這個(gè)優(yōu)先級高的任務(wù)獲得CPU的控制權(quán),進(jìn)入運(yùn)行態(tài)。 運(yùn)行態(tài)一等待態(tài):正在運(yùn)行的任務(wù)將自身延遲一段時(shí)間,即通過調(diào)用OSTimeDlyC或OS7imeDlyHMSMO,使該任務(wù)由運(yùn)行態(tài)進(jìn)入等待態(tài)。正在運(yùn)行的任務(wù)也可能需要等待某一事件的發(fā)生而掛起,如等待消息、郵箱或信號量等,通過調(diào)用OSFlagPend()、OSSemPen()、OSMutexPen()、OSMboxPen()、OSQPend()使任務(wù)由運(yùn)行態(tài)進(jìn)入等待態(tài)。事件的發(fā)生也可能來自中斷服務(wù)子程序。 運(yùn)行態(tài)一就緒態(tài):正在運(yùn)行的任務(wù)的CPU使用權(quán)被剝奪,則使該任務(wù)由運(yùn)行態(tài)變成就緒態(tài)。
編輯推薦
《21世紀(jì)高等學(xué)校嵌入式系統(tǒng)專業(yè)規(guī)劃教材:嵌入式操作系統(tǒng)μC/OS-II及應(yīng)用開發(fā)》適合作為嵌入式系統(tǒng)原理及應(yīng)用的學(xué)習(xí)教材,同時(shí)適合作為高等院校計(jì)算機(jī)相關(guān)專業(yè)嵌入式操作系統(tǒng)教材或參考書,適合相關(guān)學(xué)科的本、??茖W(xué)生、高職高專及成教類學(xué)生閱讀,也可供嵌入式操作系統(tǒng)應(yīng)用開發(fā)人員參考。
圖書封面
評論、評分、閱讀與下載
嵌入式操作系統(tǒng)μC/OS-II及應(yīng)用開發(fā) PDF格式下載