嵌入式實時操作系統(tǒng)uCOS-II參考PPT_第1頁
嵌入式實時操作系統(tǒng)uCOS-II參考PPT_第2頁
嵌入式實時操作系統(tǒng)uCOS-II參考PPT_第3頁
嵌入式實時操作系統(tǒng)uCOS-II參考PPT_第4頁
嵌入式實時操作系統(tǒng)uCOS-II參考PPT_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、嵌入式實時操作系統(tǒng) C/OS-II講座,北 華 大 學(xué) 任 哲 2006 廣州,為什么要學(xué)習(xí)C/OS-II,一.凡從事嵌入式系統(tǒng)開發(fā)工作的人,必須 對嵌入式操作系統(tǒng)有足夠的了解。 二.對于初學(xué)者,從C/OS-II開始是個明智的選擇。 1. C/OS-II麻雀雖小,卻五臟基本全(它是個微內(nèi)核)。 2.可以學(xué)習(xí)實時系統(tǒng)的一些編程技巧。 3.可以把在學(xué)校中學(xué)到的操作系統(tǒng)抽象概念具體化。 4.具有很強的實用性。 5.學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)應(yīng)用的好例子,講座的主要內(nèi)容,一.計算機操作系統(tǒng)的基本概念 二.操作系統(tǒng)中常用的數(shù)據(jù)結(jié)構(gòu) 三.并發(fā)操作系統(tǒng)的概念 四.任務(wù)的要素 五. C/OS-II的任務(wù)管理(任務(wù)調(diào)度) 六

2、. C/OS-II的中斷和時鐘 七. C/OS-II的任務(wù)的同步與通信 八. C/OS-II的存儲管理 九.硬件抽象層和測試臺,操作系統(tǒng)是一種為應(yīng)用程序提供服務(wù)的系統(tǒng)軟件,是一個完整計算機系統(tǒng)的有機組成部分。 從層次來看,操作系統(tǒng)位于計算機硬件之上,應(yīng)用軟件之下。所以也把它叫做應(yīng)用軟件的運行平臺,什么是計算機操作系統(tǒng) (Operating System,OS,它在計算機應(yīng)用程序與計算機硬件系統(tǒng)之間,屏蔽了計算機硬件工作的一些細節(jié),并對系統(tǒng)中的資源進行有效的管理。 通過提供函數(shù)(應(yīng)用程序接口(API),從而使應(yīng)用程序的設(shè)計人員得以在一個友好的平臺上進行應(yīng)用程序的設(shè)計和開發(fā),大大地提高了應(yīng)用程序的

3、開發(fā)效率,計算機操作系統(tǒng)的作用,從用戶的角度來看,它就是一大堆函數(shù)(API和系統(tǒng)函數(shù)),用戶可以調(diào)用(普通調(diào)用或系統(tǒng)調(diào)用)它們來對系統(tǒng)資源進行操作,操作系統(tǒng),計算機操作系統(tǒng)的功能,處理器的管理,存儲管理,網(wǎng)絡(luò)和通信的管理,總之,需要一大堆表,操作系統(tǒng)中經(jīng)常使用 的數(shù)據(jù)結(jié)構(gòu)(數(shù)組,數(shù)組 1。同一數(shù)據(jù)類型數(shù)據(jù)的集合; 2。占用連續(xù)內(nèi)存空間; 3。其中的所有元素名稱都相同,但每個元素都有一個編號; 4。元素名去掉編號(下標(biāo)),得到的是數(shù)組名,數(shù)組名是個指針,int a10,a0,a1,a2,a3,a9,a,a+1,使用上的特點: 1。分類存放; 2。檢索速度快且恒定; 3。缺點:占用連續(xù)空間大,a+

4、2,a+3,a+9,應(yīng)用:記錄同類事物的表,操作系統(tǒng)中經(jīng)常使用 的數(shù)據(jù)結(jié)構(gòu)(位圖,位圖是數(shù)組的一種特殊應(yīng)用,a10 (可以記錄80個事物的狀態(tài),a0,a1,a2,a3,a9,a,a+1,a+2,a+3,a+9,應(yīng)用:登記表,1/0,D7 D6 D5 D4 D3 D2 D1 D0,操作系統(tǒng)中經(jīng)常使用 的數(shù)據(jù)結(jié)構(gòu)(結(jié)構(gòu),1。不同數(shù)據(jù)類型數(shù)據(jù)的集合; 2。占用連續(xù)內(nèi)存空間,struct Student int age; char*name; char sex;,使用上的特點: 1。不分類存放,但用來描述同一事物; 2。檢索速度快且恒定,應(yīng)用:通訊錄中的一條記錄、 工具箱、廚房等等,操作系統(tǒng)中經(jīng)常使用

5、 的數(shù)據(jù)結(jié)構(gòu)(鏈表,struct Student Student*next int age; char*name; char sex;,1。同數(shù)據(jù)類型數(shù)據(jù)的集合; 2。不占用連續(xù)內(nèi)存空間,使用上的特點: 1。分類存放,但空間上不連續(xù)(不需要大量的連續(xù)存儲空間); 2。檢索速度慢,且耗費的時間不固定,應(yīng)用:存放大量的較大 的表,類似檔案柜,操作系統(tǒng)中經(jīng)常使用 的數(shù)據(jù)結(jié)構(gòu)(隊列,按照先進先出 的規(guī)則組織的數(shù)據(jù)結(jié)構(gòu) 可以用數(shù)組也可以用鏈 表來實現(xiàn),主要用于對象的排隊,操作系統(tǒng)中經(jīng)常使用 的數(shù)據(jù)結(jié)構(gòu)(堆棧,按照先進后出 規(guī)則組織的數(shù)據(jù)結(jié)構(gòu) 主要用數(shù)組來實現(xiàn),主要用于 程序模塊的嵌套運行,什么是多任務(wù)系

6、統(tǒng),簡單地說,就是能用一個處理器 并發(fā)(注意,不是同時! ) 地運行多個程序的計算機管理系統(tǒng),并發(fā):由同一個處理器輪換地 運行多個程序?;蛘哒f是由多個 程序輪班地占用處理器這個資源。 且在占用這個資源期間,并不一 定能夠把程序運行完畢,并發(fā)過程 示意圖,處理器如何進行程序的 切換,程序的切換(兩句話,處理器是個傻瓜,PC讓它干啥,它就干啥,PC是個指路器,它指向哪 兒,處理器就去哪兒,從此可以知道,哪個程序占有了PC,哪個程序就占有了處理器,深刻地理解PC是理解系統(tǒng) 進行程序切換動作的關(guān)鍵,如何操作PC,指令: 不同的計算機類型的指令是不同的,數(shù)據(jù)傳送指令 子程序返回指令(由堆 棧彈出) 中斷

7、服務(wù)程序返回指令 (由堆棧彈出,小結(jié),系統(tǒng)是通過把待運行程序的地址賦予程序計數(shù)器PC來實現(xiàn)程序的切換的,任務(wù)代碼,任務(wù)堆棧,內(nèi)存,處理器,任務(wù)運行時與 處理器之間的關(guān)系,處理器通過兩個指針寄存器(PC和SP)來與任務(wù)代碼和任務(wù)堆棧建立聯(lián)系并運行它,寄存器組,運行環(huán)境包括了兩部分:處理器中的運行環(huán)境和內(nèi)存中的運行環(huán)境,處理器,多任務(wù)時的問題,當(dāng)有多個任務(wù)時,處理器中的運行環(huán)境應(yīng)該怎么辦,寄存器組,程序運行環(huán)境,多任務(wù)時任務(wù)與處理器 之間關(guān)系的處理,程序,在內(nèi)存中為每個任務(wù)創(chuàng)建一個虛擬的處理器(處理器部分的運行環(huán)境,由操作系統(tǒng)的調(diào)度器按某種規(guī)則來進行這兩個復(fù)制工作,寄存器組,寄存器組,也就是說,任

8、務(wù)的切換是 任務(wù)運行環(huán)境的切換,虛擬處理器,虛擬處理器應(yīng)該存儲的主要信息: 1。程序的斷點地址(PC) 2。任務(wù)堆棧指針(SP) 3。程序狀態(tài)字寄存器(PSW) 4。通用寄存器內(nèi)容 5。函數(shù)調(diào)用信息(已存在于堆棧,另外再用一個數(shù)據(jù)結(jié)構(gòu)保存任務(wù)堆棧 指針(SP),這個數(shù)據(jù)結(jié)構(gòu)叫做任務(wù) 控制塊,它除了保存任務(wù)堆棧指針之 外還要負責(zé)保存任務(wù)其他信息,這些內(nèi)容通常保存在任務(wù)堆棧中,這些內(nèi)容也常叫做任務(wù)的上下文,任務(wù)控制塊是由操作系統(tǒng)另行構(gòu)造的一個數(shù)據(jù)結(jié)構(gòu),每個任務(wù)都有一個,任務(wù)控制塊結(jié)構(gòu)的主要成員 typedef struct os_tcb OS_STK *OSTCBStkPtr; /指向任務(wù)堆棧棧頂?shù)闹羔?INT8U OSTCBStat;/任務(wù)的當(dāng)前狀態(tài)標(biāo)志 INT8U OSTCBPrio; /任務(wù)的優(yōu)先級別 OS_TCB,其實,程序切換的關(guān)鍵是 把程序的私有堆棧指針賦 予處理器的堆棧指針SP,實質(zhì)上系統(tǒng)是通過SP的切換 來實現(xiàn)程序的切換的,要建立一個概念:具有 控制塊的程序才是一個 可以被系統(tǒng)所運行的任務(wù)。 程序代碼、私有堆棧、任 務(wù)控制塊是任務(wù)的三要件。 任務(wù)控制塊提供了運行

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論