第一次課嵌入式操作系統(tǒng)_第1頁
第一次課嵌入式操作系統(tǒng)_第2頁
第一次課嵌入式操作系統(tǒng)_第3頁
第一次課嵌入式操作系統(tǒng)_第4頁
第一次課嵌入式操作系統(tǒng)_第5頁
已閱讀5頁,還剩42頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、嵌入式操作系統(tǒng)嵌入式操作系統(tǒng)第一章第一章 嵌入式操作系嵌入式操作系統(tǒng)統(tǒng)的基本的基本概概念念2為什么要學(xué)習(xí)C/OS-II 一.凡從事嵌入式系統(tǒng)開發(fā)工作的人,必須對嵌入式操作系統(tǒng)有足夠的了解。 二.對于初學(xué)者,從C/OS-II開始是個(gè)明智的選擇。 1.C/OS-II麻雀雖小,卻五臟基本全(它是個(gè)微內(nèi)核)。 2.可以學(xué)習(xí)實(shí)時(shí)系統(tǒng)的一些編程技巧。 3.可以把在學(xué)校中學(xué)到的操作系統(tǒng)抽象概念具體化。 4.具有很強(qiáng)的實(shí)用性。 5.學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)應(yīng)用的好例子。3C/OS簡介簡介 l美國人Jean J. Labrosse 1992年完成l應(yīng)用面覆蓋了諸多領(lǐng)域,如照相機(jī)、醫(yī)療器械、音響設(shè)備、發(fā)動(dòng)機(jī)控制、高速公路電話

2、系統(tǒng)、自動(dòng)提款機(jī)等 l1998年C/OS-II,目前的版本C/OS -II V2.90,2.91, 2011年8月C/OS-III開源l2000年, C/OS-II得到美國航空管理局(FAA)的認(rèn)證,可以用于飛行器中l(wèi)網(wǎng)站www.ucos-II.com()4第1章 嵌入式實(shí)時(shí)操作系統(tǒng)的基本概念嵌入式實(shí)時(shí)操作系統(tǒng)的基本概念目標(biāo):本章旨在介紹操作系統(tǒng)基本概念,通過本章的學(xué)習(xí),應(yīng)該掌握如下知識(shí):l操作系統(tǒng)概述l常用的操作系統(tǒng)l操作系統(tǒng)常用的數(shù)據(jù)結(jié)構(gòu)l操作系統(tǒng)基本概念5 操作系統(tǒng)(Operating System,OS)是一種為應(yīng)用程序提供服務(wù)的系統(tǒng)軟件,是一個(gè)完整計(jì)算機(jī)系統(tǒng)的有機(jī)組成部分。61.1

3、計(jì)算機(jī)操作系統(tǒng) 1.1.1 什么是計(jì)算機(jī)操作系統(tǒng)l 操作系統(tǒng)是一種為應(yīng)用程序提供服務(wù)的系統(tǒng)軟件,是一個(gè)完整計(jì)算機(jī)系統(tǒng)的有機(jī)組成部分。l 從層次來看,操作系統(tǒng)位于計(jì)算機(jī)硬件之上,應(yīng)用軟件之下。所以也把它叫做應(yīng)用軟件的運(yùn)行平臺(tái)。 應(yīng)用軟件Microsoft Word、PhotoshopACDSee系統(tǒng)軟件編譯程序、匯編程序、編輯程序數(shù)據(jù)庫操作系統(tǒng)Windows、LinuxSolaris 計(jì)算機(jī)系統(tǒng)硬件計(jì)算機(jī)軟件71.1.2操作系統(tǒng)的作用和功能 操作系統(tǒng)的作用 操作系統(tǒng)是計(jì)算機(jī)硬件系統(tǒng)與應(yīng)用程序之間的接口。它在計(jì)算機(jī)應(yīng)用程序與計(jì)算機(jī)硬件系統(tǒng)之間,屏蔽了計(jì)算機(jī)硬件工作的一些細(xì)節(jié),并對系統(tǒng)中的資源進(jìn)行有

4、效的管理。 82操作系統(tǒng)的功能 操作系統(tǒng)其功能主要是對計(jì)算機(jī)資源進(jìn)行管理,具體來說其主要功能如下: 處理器的管理 存儲(chǔ)的管理 設(shè)備的管理 文件的管理 網(wǎng)絡(luò)和通信的管理 提供用戶接口91.2 嵌入式系統(tǒng)和嵌入式操作系統(tǒng)1.2.1 嵌入式系統(tǒng)的基本概念1什么是嵌入式系統(tǒng) 為了區(qū)別于原有的通用計(jì)算機(jī)系統(tǒng),人們把嵌入到對象體系中,為實(shí)現(xiàn)對象體系智能化控制的計(jì)算機(jī)系統(tǒng),稱作嵌入式計(jì)算機(jī)系統(tǒng),簡稱嵌入式系統(tǒng)。 10 嵌入式系統(tǒng)的定義:嵌入式系統(tǒng)是對對象進(jìn)行自動(dòng)控制而使其具有智能化并可嵌入對象體系中的專用計(jì)算機(jī)系統(tǒng)。 嵌入性、專用性與計(jì)算機(jī)系統(tǒng)是嵌入式系統(tǒng)的三個(gè)基本要素。 112. 嵌入式系統(tǒng)的發(fā)展歷程(1

5、)微型計(jì)算機(jī)(工控機(jī))時(shí)代(2)單片機(jī)時(shí)代(模式和創(chuàng)新模式) MCU(Micro Controller Unit)階段 SoC(System on Chip)階段 123. 嵌入式系統(tǒng)的特點(diǎn) 嵌入式系統(tǒng)的軟件包括操作系統(tǒng)軟件和應(yīng)用軟件。操作系統(tǒng)一般應(yīng)該具有較強(qiáng)的實(shí)時(shí)性,并可以對多任務(wù)進(jìn)行管理,而應(yīng)用軟件都是一些專門性很強(qiáng)的應(yīng)用程序。 特點(diǎn):特點(diǎn): 專用性強(qiáng) 可裁減性好 實(shí)時(shí)性與可靠性好 功耗低 131.2.2 嵌入式操作系統(tǒng) 定義:運(yùn)行在嵌入式硬件平臺(tái)上,對整個(gè)系統(tǒng)及其所操作的部件、裝置等資源進(jìn)行統(tǒng)一協(xié)調(diào)、指揮和控制的系統(tǒng)軟件就叫做嵌入式操作系統(tǒng)。 與普通的操作系統(tǒng)不同,其主要特點(diǎn)如下: 微型

6、化 可裁減性 實(shí)時(shí)性 高可靠性 易移植性14 實(shí)時(shí)操作系統(tǒng)實(shí)時(shí)操作系統(tǒng)的概念的概念: 如果操作系統(tǒng)能使計(jì)算機(jī)系統(tǒng)及時(shí)響應(yīng)外部事件的請求,并能及時(shí)控制所有實(shí)時(shí)設(shè)備與實(shí)時(shí)任務(wù)協(xié)調(diào)運(yùn)行,且能在一個(gè)規(guī)定的時(shí)間范圍內(nèi)完成對事件的處理,那么這種操作系統(tǒng)就是一個(gè)實(shí)時(shí)操作系統(tǒng)(Real Time Operation System, RTOS)。 對實(shí)時(shí)系統(tǒng)有兩個(gè)基本要求對實(shí)時(shí)系統(tǒng)有兩個(gè)基本要求: 第一,實(shí)時(shí)系統(tǒng)的計(jì)算必須產(chǎn)生正確的結(jié)果,稱為邏輯或功能正確; 第二,實(shí)施系統(tǒng)的計(jì)算必須在預(yù)定的時(shí)間內(nèi)完成,稱為時(shí)間正確。151.2.3 實(shí)時(shí)操作系統(tǒng)需要滿足的條件 實(shí)時(shí)操作系統(tǒng)應(yīng)滿足以下三個(gè)條件: 實(shí)時(shí)操作系統(tǒng)必須是

7、多任務(wù)系統(tǒng)。 任務(wù)的概念 任務(wù)的切換時(shí)間應(yīng)與系統(tǒng)中的任務(wù)數(shù)無關(guān)。 內(nèi)核及內(nèi)核類型 任務(wù)切換時(shí)間 中斷延遲的時(shí)間可預(yù)知并盡可能短。 中斷延遲161.2.4 實(shí)時(shí)系統(tǒng)的分類l 從實(shí)時(shí)系統(tǒng)的應(yīng)用特點(diǎn)來看實(shí)時(shí)操作系統(tǒng)可以分為兩種:一般實(shí)時(shí)操作系統(tǒng)和嵌入式實(shí)時(shí)操作系統(tǒng)。一般實(shí)時(shí)操作系統(tǒng)應(yīng)用與實(shí)時(shí)處理的上位機(jī)和實(shí)時(shí)查詢系統(tǒng)等實(shí)時(shí)性較弱的實(shí)時(shí)系統(tǒng),并提供了開發(fā)、調(diào)試、運(yùn)行一直的環(huán)境。嵌入式實(shí)時(shí)操作系統(tǒng)應(yīng)用于實(shí)時(shí)性要求高的實(shí)時(shí)控制系統(tǒng),而且應(yīng)用程序的開發(fā)時(shí)通過交叉開發(fā)來完成的,嵌入式實(shí)時(shí)操作系統(tǒng)具有規(guī)模小(一般在幾K幾十K),可固化、實(shí)時(shí)性強(qiáng)(在毫秒或微秒量級上)的特點(diǎn)即:開發(fā)環(huán)境和運(yùn)行環(huán)境不一致17l按外部

8、過程的要求劃分,分為軟實(shí)時(shí)系統(tǒng)和硬實(shí)時(shí)系統(tǒng)。 軟實(shí)時(shí)系統(tǒng):對于軟實(shí)時(shí)系統(tǒng)來說,未能實(shí)時(shí)完成處理的結(jié)果,僅僅是帶來了額外的代價(jià),且通常這種代價(jià)能夠被接受。 硬實(shí)時(shí)系統(tǒng):對于硬實(shí)時(shí)系統(tǒng)來說,未能實(shí)時(shí)完成處理是堅(jiān)決不允許的,它往往導(dǎo)致致命危害。如剎車系統(tǒng)、制導(dǎo)系統(tǒng)。18l按系統(tǒng)響應(yīng)時(shí)間劃分,分為強(qiáng)實(shí)時(shí)系統(tǒng)、一般實(shí)時(shí)系統(tǒng)、弱實(shí)時(shí)系統(tǒng)。 191.2.5 使用實(shí)時(shí)操作系統(tǒng)的必要性 嵌入式實(shí)時(shí)操作系統(tǒng)在目前的嵌入式應(yīng)用中用得越來越廣泛,尤其在功能復(fù)雜、系統(tǒng)龐大的應(yīng)用中顯得愈來愈重要。在嵌入式應(yīng)用中,只有把CPU嵌入到系統(tǒng)中,同時(shí)又把操作系統(tǒng)嵌入進(jìn)去,才是真正的計(jì)算機(jī)嵌入式應(yīng)用。使用實(shí)時(shí)操作系統(tǒng)主要有以下幾個(gè)

9、因素:l 嵌入式實(shí)時(shí)操作系統(tǒng)提高了系統(tǒng)的可靠性。l 提高了開發(fā)效率,縮短了開發(fā)周期。l 嵌入式實(shí)時(shí)操作系統(tǒng)充分發(fā)揮了CPU的多任務(wù)潛力。201.2.6 實(shí)時(shí)操作系統(tǒng)的優(yōu)缺點(diǎn) 優(yōu)點(diǎn):在嵌入式實(shí)時(shí)操作系統(tǒng)環(huán)境下開發(fā)實(shí)時(shí)應(yīng)用程序使程序的設(shè)計(jì)和擴(kuò)展變得容易,不需要大的改動(dòng)就可以增加新的功能。通過將應(yīng)用程序分割成若干獨(dú)立的任務(wù)模塊,使應(yīng)用程序的設(shè)計(jì)過程大為簡化;而且對實(shí)時(shí)性要求苛刻的事件都得到了快速、可靠的處理。通過有效的系統(tǒng)服務(wù),嵌入式實(shí)時(shí)操作系統(tǒng)使得系統(tǒng)資源得到更好的利用。 缺點(diǎn):但是,使用嵌入式實(shí)時(shí)操作系統(tǒng)還需要額外的ROM/RAM開銷,25%的CPU額外負(fù)荷,以及內(nèi)核的費(fèi)用。 211.2.7 嵌

10、入式系統(tǒng)的任務(wù)及嵌入式實(shí)時(shí)操作系統(tǒng) 1嵌入式系統(tǒng)的任務(wù)一個(gè)用C語言編寫的任務(wù)代碼。 void mytask(void void mytask(void * *pdata)pdata) for(;)for(;) 用用戶編寫戶編寫的代的代碼碼; 22嵌入式系統(tǒng)任務(wù)的典型結(jié)構(gòu)如圖1-5所示:圖1-5 嵌入式系統(tǒng)任務(wù)的典型結(jié)構(gòu)23 2.嵌入式實(shí)時(shí)操作系統(tǒng) 大多數(shù)嵌入式操作系統(tǒng)主要提供三項(xiàng)服務(wù)來輔助應(yīng)用程序設(shè)計(jì)人員: 內(nèi)存管理 多任務(wù)管理 外圍資源管理241.3 常見的嵌入式操作系統(tǒng) 嵌入式LINUX uClinux是一個(gè)完全符合GNU/GPL公約的操作系統(tǒng),完全開放代碼。uClinux從Linux 2

11、.0/2.4內(nèi)核派生而來,沿襲了主流Linux的絕大部分特性。它是專門針對沒有MMU的CPU,并且為嵌入式系統(tǒng)做了許多小型化的工作。適用于沒有虛擬內(nèi)存或內(nèi)存管理單元(MMU)的處理器,例如ARM7TDMI。它通常用于具有很少內(nèi)存或Flash的嵌入式系統(tǒng)。它保留了Linux的大部分優(yōu)點(diǎn):穩(wěn)定、良好的移植性、優(yōu)秀的網(wǎng)絡(luò)功能、完備的對各種文件系統(tǒng)的支持、以及標(biāo)準(zhǔn)豐富的API等。 25 嵌入式操作系統(tǒng)WINCE Windows CE是微軟開發(fā)的一個(gè)開放的、可升級的32位嵌入式操作系統(tǒng),是基于掌上型電腦類的電子設(shè)備操作,它是精簡的Windows 95。Windows CE的圖形用戶界面相當(dāng)出色。Win

12、CE具有模塊化、結(jié)構(gòu)化和基于Win32應(yīng)用程序接口以及與處理器無關(guān)等特點(diǎn)。Win CE不僅繼承了傳統(tǒng)的Windows圖形界面,并且在Win CE平臺(tái)上可以使用Windows 95/98上的編程工具(如Visual Basic、Visual C+等)、使絕大多數(shù)的應(yīng)用軟件只需簡單的修改和移植就可以在Windows CE平臺(tái)上繼續(xù)使用。26 嵌入式操作系統(tǒng)VxWorks VxWorks操作系統(tǒng)是美國WIND RIVER公司于1983年設(shè)計(jì)開發(fā)的一種嵌入式實(shí)時(shí)操作系統(tǒng)(RTOS),是嵌入式開發(fā)環(huán)境的關(guān)鍵組成部分。良好的持續(xù)發(fā)展能力、高性能的內(nèi)核以及友好的用戶開發(fā)環(huán)境,在嵌入式實(shí)時(shí)操作系統(tǒng)領(lǐng)域占據(jù)一席

13、之地。它以其良好的可靠性和卓越的實(shí)時(shí)性被廣泛地應(yīng)用在通信、軍事、航空、航天等高精尖技術(shù)及實(shí)時(shí)性要求極高的領(lǐng)域中,如衛(wèi)星通訊、軍事演習(xí)、彈道制導(dǎo)、飛機(jī)導(dǎo)航等,甚至在1997年4月登陸火星表面的火星探測器上也使用到了VxWorks。 27 嵌入式操作系統(tǒng)Nucleus Nucleus PLUS是為實(shí)時(shí)嵌入式應(yīng)用而設(shè)計(jì)的一個(gè)搶先式多任務(wù)操作系統(tǒng)內(nèi)核,其95的代碼是用ANSIC寫成的,因此非常便于移植并能夠支持大多數(shù)類型的處理器。Nucleus PLUS采用了軟件組件的方法。每個(gè)組件具有單一而明確的目的,通常由幾個(gè)C及匯編語言模塊構(gòu)成,提供清晰的外部接口,對組件的引用就是通過這些接口完成的。由于采用了

14、軟件組件的方法,使Nucleus PLUS 的各個(gè)組件非常易于替換和復(fù)用。28 嵌入式操作系統(tǒng)eCos eCos是RedHat公司開發(fā)的源代碼開放的嵌入式RTOS產(chǎn)品,是一個(gè)可配置、可移植的嵌入式實(shí)時(shí)操作系統(tǒng),設(shè)計(jì)的運(yùn)行環(huán)境為RedHat的GNUPro和GNU開發(fā)環(huán)境。eCOS的所有部分都開放源代碼,可以按照需要自由修改和添加。eCOS的關(guān)鍵技術(shù)是操作系統(tǒng)可配置性,允許用戶組和自己的實(shí)時(shí)組件和函數(shù)以及實(shí)現(xiàn)方式,特別允許eCOS的開發(fā)則定制自己的面向應(yīng)用的操作系統(tǒng),使eCos能有更廣泛的應(yīng)用范圍。 29 嵌入式操作系統(tǒng)C/OS-II C/OS-II是一個(gè)源碼公開、可移植、可固化、可裁剪、占先式的

15、實(shí)時(shí)多任務(wù)操作系統(tǒng)。其絕大部分源碼是用ANSI C寫的,使其可以方便的移植并支持大多數(shù)類型的處理器。C/OS-II通過了聯(lián)邦航空局(FAA)商用航行器認(rèn)證。自1992年問世以來,C/OS-II已經(jīng)被應(yīng)用到數(shù)以百計(jì)的產(chǎn)品中。C/OS-II占用很少的系統(tǒng)資源,并且在高校教學(xué)使用是不需要申請?jiān)S可證。 30 嵌入式操作系統(tǒng)uITRON TRON是指“實(shí)時(shí)操作系統(tǒng)內(nèi)核(The Real-time Operating system Nucleux)”,它是在1984年由東京大學(xué)的Sakamura博士提出的,目的是為了建立一個(gè)理想的計(jì)算機(jī)體系結(jié)構(gòu)。通過工業(yè)界和大學(xué)院校的合作,TRON方案正被逐步用到全新概念

16、的計(jì)算機(jī)體系結(jié)構(gòu)中。uITRON是TRON的一個(gè)子方案,它具有標(biāo)準(zhǔn)的實(shí)時(shí)內(nèi)核,適用于任何小規(guī)模的嵌入式系統(tǒng),日本國內(nèi)現(xiàn)有很多基于該內(nèi)核的產(chǎn)品,其中消費(fèi)電器較多。目前已成為日本事實(shí)上的工業(yè)標(biāo)準(zhǔn)。 31 操作系統(tǒng)常用的數(shù)據(jù)結(jié)構(gòu)- 數(shù)組1.4 操作系統(tǒng)常用的數(shù)據(jù)結(jié)構(gòu) 32 操作系統(tǒng)常用的數(shù)據(jù)結(jié)構(gòu) 位圖33 操作系統(tǒng)常用的數(shù)據(jù)結(jié)構(gòu) 結(jié)構(gòu)34 操作系統(tǒng)常用的數(shù)據(jù)結(jié)構(gòu) 鏈表35 操作系統(tǒng)常用的數(shù)據(jù)結(jié)構(gòu) 對列36 操作系統(tǒng)常用的數(shù)據(jù)結(jié)構(gòu) 堆棧371.5 操作系統(tǒng)的基本概念3839404142 由于嵌入式系統(tǒng)中只有一個(gè)CPU,因此在一個(gè)具體時(shí)刻只能允許多個(gè)任務(wù)中的一個(gè)任務(wù)使用CPU。根據(jù)系統(tǒng)中的任務(wù)獲得使用CPU的權(quán)力的方式,多任務(wù)實(shí)時(shí)操作系統(tǒng)的內(nèi)核分為可剝奪型和不可剝奪型兩種類型。

溫馨提示

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

評論

0/150

提交評論