




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第三章
嵌入式系統(tǒng)的軟件基礎(chǔ)主要內(nèi)容嵌入式軟件系統(tǒng)概述嵌入式實時操作系統(tǒng)簡介常用的嵌入式操作系統(tǒng)概述第一節(jié)
嵌入式軟件系統(tǒng)概述軟件系統(tǒng)嵌入式軟件系統(tǒng)的體系結(jié)構(gòu)嵌入式軟件運行流程軟件系統(tǒng)軟件(software)是計算機系統(tǒng)中與硬件(hardware)相互依存的另一部分,它包括程序(program)、相關(guān)數(shù)據(jù)(data)及其說明文檔(document)。其中:程序是按照事先設計的功能和性能要求執(zhí)行的指令序列;數(shù)據(jù)是程序能正常操縱信息的數(shù)據(jù)結(jié)構(gòu);文檔是與程序開發(fā)維護和使用有關(guān)的各種圖文資料。軟件系統(tǒng)軟件是一種邏輯實體,具有抽象性。
這個特點使它與其它工程對象有著明顯的差異。人們可以把它記錄在紙上、內(nèi)存、和磁盤、光盤上,但卻無法看到軟件本身的形態(tài),必須通過觀察、分析、思考、判斷,才能了解它的功能、性能等特性。
軟件產(chǎn)品的特性軟件沒有明顯的制造過程。一旦研制開發(fā)成功,就可以大量拷貝同一內(nèi)容的副本。所以對軟件的質(zhì)量控制,必須著重在軟件開發(fā)方面下工夫。軟件在使用過程中,沒有磨損、老化的問題。軟件在生存周期后期不會因為磨損而老化,但會為了適應硬件、環(huán)境以及需求的變化而進行修改,而這些修改有不可避免的引入錯誤,導致軟件失效率升高,從而使的軟件退化。當修改的成本變得難以接受時,軟件就被拋棄。軟件對硬件和環(huán)境有著不同程度的依賴性。這導致了軟件移植的問題。軟件的開發(fā)至今尚未完全擺脫手工作坊式的開發(fā)方式,生產(chǎn)效率低。軟件是復雜的,而且以后會更加復雜。軟件是人類有史以來生產(chǎn)的復雜度最高的工業(yè)產(chǎn)品。軟件涉及人類社會的各行各業(yè)、方方面面,軟件開發(fā)常常涉及其它領(lǐng)域的專門知識,這對軟件工程師提出了很高的要求。軟件的成本相當昂貴。軟件開發(fā)需要投入大量、高強度的腦力勞動,成本非常高,風險也大?,F(xiàn)在軟件的開銷已大大超過了硬件的開銷。軟件工作牽涉到很多社會因素。許多軟件的開發(fā)和運行涉及機構(gòu)、體制和管理方式等問題,還會涉及到人們的觀念和心理。這些人的因素,常常成為軟件開發(fā)的困難所在,直接影響到項目的成敗。3.1.1嵌入式軟件系統(tǒng)的體系結(jié)構(gòu)硬件應用層驅(qū)動層操作系統(tǒng)層中間件層板級初始化FLASH驅(qū)動RTC/定時器驅(qū)動串口驅(qū)動以太網(wǎng)驅(qū)動LCD
驅(qū)動鍵盤驅(qū)動其他驅(qū)動內(nèi)核TCP/IP網(wǎng)絡系統(tǒng)文件系統(tǒng)嵌入式GUI電源管理嵌入式CORBA嵌入式JAVA嵌入式DCOM面向應用領(lǐng)域的中間件應用任務1應用任務2……應用任務n嵌入式軟件系統(tǒng)的體系結(jié)構(gòu)(1)驅(qū)動層(BSP)
驅(qū)動層是直接與硬件打交道的一層,它對操作系統(tǒng)和應用提供所需的驅(qū)動的支持。該層主要包括三種類型的程序。板級初始化程序這些程序在嵌入式系統(tǒng)上電后初始化系統(tǒng)的硬件環(huán)境,包括嵌入式微處理器、存儲器、中斷控制器、DMA、定時器等的初始化。(網(wǎng)絡?)與系統(tǒng)軟件相關(guān)的驅(qū)動這類驅(qū)動是操作系統(tǒng)和中間件等系統(tǒng)軟件所需的驅(qū)動程序,它們的開發(fā)要按照系統(tǒng)軟件的要求進行。目前操作系統(tǒng)內(nèi)核所需的硬件支持一般都已集成在嵌入式微處理器中了,因此操作系統(tǒng)廠商提供的內(nèi)核驅(qū)動一般不用修改。與應用軟件相關(guān)的驅(qū)動
與應用軟件相關(guān)的驅(qū)動不一定需要與操作系統(tǒng)連接,這些驅(qū)動的設計和開發(fā)由應用決定。嵌入式軟件系統(tǒng)的體系結(jié)構(gòu)(2)操作系統(tǒng)層操作系統(tǒng)層包括嵌入式內(nèi)核、嵌入式TCP/IP網(wǎng)絡系統(tǒng)、嵌入式文件系統(tǒng)、嵌入式GUI系統(tǒng)和電源管理等部分。其中嵌入式內(nèi)核是基礎(chǔ)和必備的部分,其他部分要根據(jù)嵌入式系統(tǒng)的需要來確定。嵌入式軟件系統(tǒng)的體系結(jié)構(gòu)(3)中間件層目前在一些復雜的嵌入式系統(tǒng)中也開始采用中間件技術(shù),主要包括嵌入式CORBA、嵌入式Java、嵌入式DCOM和面向應用領(lǐng)域的中間件軟件。如基于嵌入式CORBA的應用于軟件無線電臺的應用中間件SCA(SoftwareCoreArchitecture)等。嵌入式軟件系統(tǒng)的體系結(jié)構(gòu)(4)應用層應用層軟件主要由多個相對獨立的應用任務組成每個應用任務完成特定的工作,如I/O任務、計算的任務、通信任務等,由操作系統(tǒng)調(diào)度各個任務的運行。3.1.2嵌入式軟件運行流程上電復位系統(tǒng)升級引導/升級系統(tǒng)系統(tǒng)初始化應用初始化多任務應用板級初始化遠程升級本地升級基于多任務操作系統(tǒng)的嵌入式軟件的主要運行流程該運行流程主要分為5個階段嵌入式軟件運行流程(1)上電復位、板級初始化階段嵌入式系統(tǒng)上電復位后完成板級初始化工作。板級初始化程序具有完全的硬件特性,一般采用匯編語言實現(xiàn)。不同的嵌入式系統(tǒng),板級初始化時要完成的工作具有一定的特殊性,但以下工作一般是必須完成的:CPU中堆棧指針寄存器的初始化。BSS段(BlockStorageSpace表示未被初始化的數(shù)據(jù))的初始化。CPU芯片級的初始化:中斷控制器、內(nèi)存等的初始化。返回嵌入式軟件運行流程(2)系統(tǒng)引導/升級階段根據(jù)需要分別進入系統(tǒng)軟件引導階段或系統(tǒng)升級階段。軟件可通過測試通信端口數(shù)據(jù)或判斷特定開關(guān)的方式分別進入不同階段。嵌入式軟件運行流程系統(tǒng)引導階段系統(tǒng)引導有幾種情況:將系統(tǒng)軟件從NORFlash中讀取出來加載到RAM中運行:這種方式可以解決成本及Flash速度比RAM慢的問題。軟件可壓縮存儲在Flash中。(啟動慢,運行速度快)不需將軟件引導到RAM中而是讓其直接在NorFlash上運行,進入系統(tǒng)初始化階段。(啟動快,運行慢)將軟件從外存(如NandFlash、CF卡、MMC等)中讀取出來加載到RAM中運行:這種方式的成本更低。(便宜,啟動慢,運行速度快)嵌入式軟件運行流程系統(tǒng)升級階段進入系統(tǒng)升級階段后系統(tǒng)可通過網(wǎng)絡進行遠程升級或通過串口進行本地升級。遠程升級一般支持TFTP、FTP、HTTP等方式。本地升級可通過Console口使用超級終端或特定的升級軟件進行。返回嵌入式軟件運行流程(3)系統(tǒng)初始化階段
在該階段進行操作系統(tǒng)等系統(tǒng)軟件各功能部分必需的初始化工作,如根據(jù)系統(tǒng)配置初始化數(shù)據(jù)空間、初始化系統(tǒng)所需的接口和外設等。系統(tǒng)初始化階段需要按特定順序進行,如首先完成內(nèi)核的初始化,然后完成網(wǎng)絡、文件系統(tǒng)等的初始化,最后完成中間件等的初始化工作。返回嵌入式軟件運行流程(4)應用初始化階段
在該階段進行應用任務的創(chuàng)建,信號量、消息隊列的創(chuàng)建和與應用相關(guān)的其它初始化工作。(5)多任務應用運行階段
各種初始化工作完成后,系統(tǒng)進入多任務狀態(tài),操作系統(tǒng)按照已確定的算法進行任務的調(diào)度,各應用任務分別完成特定的功能。第二節(jié)
嵌入式實時操作系統(tǒng)簡介嵌入式操作系統(tǒng)特點嵌入式操作系統(tǒng)體系結(jié)構(gòu)實時系統(tǒng)的評價指標概述 嵌入式操作系統(tǒng)可以統(tǒng)稱為應用在嵌入式系統(tǒng)的操作系統(tǒng),它具有一般操作系統(tǒng)的功能,同時具有嵌入式軟件的特點,主要有:可固化可配置、可剪裁獨立的板級支持包,可修改不同的CPU有不同的版本應用的開發(fā)需要有集成的交叉開發(fā)工具概述近十年來,嵌入式操作系統(tǒng)得到飛速的發(fā)展從支持8位微處理器到16位、32位甚至64位微處理器;從支持單一品種的微處理器芯片到支持多品種微處理器芯片;從只有內(nèi)核到除了內(nèi)核外還提供其他功能模塊,如文件系統(tǒng),TCP/IP網(wǎng)絡系統(tǒng),窗口圖形系統(tǒng)等。隨著嵌入式系統(tǒng)應用領(lǐng)域的擴展,目前嵌入式操作系統(tǒng)的市場在不斷細分,出現(xiàn)了針對不同領(lǐng)域的產(chǎn)品,這些產(chǎn)品按領(lǐng)域的要求和標準提供特定的功能。1)實時操作系統(tǒng)的特點
隨著硬件實時性要求的提高,嵌入式系統(tǒng)的軟件規(guī)模也不斷擴大,逐漸形成了實時多任務操作系統(tǒng)(RTOS),并開始成為嵌入式系統(tǒng)的主流。
這一階段嵌入式系統(tǒng)的主要特點是:操作系統(tǒng)的實時性得到了很大改善,已經(jīng)能夠運行在各種不同類型的微處理器上,具有高度的模塊化和擴展性。此時的嵌入式操作系統(tǒng)已經(jīng)具備了文件和目錄管理、設備管理、多任務、網(wǎng)絡、圖形用戶界面(GUI)等功能,并提供了大量的應用程序接口(API),從而使得應用軟件的開發(fā)變得更加簡單。實時操作系統(tǒng)的特點
(1)多任務
一個任務也稱作一個線程,是一個簡單的運行程序。每個任務都是整個應用的某一部分,每個任務被賦予一定的優(yōu)先級,有它自己的一套CPU寄存器和自己的??臻g多任務運行的實現(xiàn),實際上是靠CPU(中央處理單元)在許多任務之間轉(zhuǎn)換、調(diào)度。CPU只有一個,輪番服務于一系列任務中的某一個。多任務運行使CPU的利用率得到最大的發(fā)揮,并使應用程序模塊化。(2)任務的事件驅(qū)動
通用操作系統(tǒng)只注重平均性能,所有任務的平均響應時間是關(guān)鍵,并不關(guān)心單個任務的響應時間。而嵌入式實時系統(tǒng)是指在一個確定的時間內(nèi),實現(xiàn)系統(tǒng)功能并做出及時響應的系統(tǒng)。任務實時任務非實時任務事件驅(qū)動時間驅(qū)動內(nèi)部事件:運算結(jié)果、設備請求等外部事件:開關(guān)量輸入等絕對時間驅(qū)動相對時間驅(qū)動CPU中斷控制器1中斷控制器2外部事件(3)中斷與中斷優(yōu)先級
系統(tǒng)實現(xiàn)中斷可以帶來CPU和外設間的同步工作、實現(xiàn)實時處理和故障處理。(4)同步與異步 與系列時間相關(guān)事件稱為同步事件,驅(qū)動的任務為同步任務。隨機發(fā)生的事件稱為異步事件,驅(qū)動的任務為異步任務,如中斷等。
任何任務所占用的實體都可稱為資源。資源可以是輸入輸出設備,例如打印機、鍵盤、顯示器,資源也可以是一個變量、一個結(jié)構(gòu)或一個數(shù)組等。 程序進行時可使用的軟硬件環(huán)境稱為資源,2個以上任務可同時訪問的共享資源稱為臨界資源。
(5)資源與臨界資源
容錯:當系統(tǒng)軟、硬件發(fā)生故障時,系統(tǒng)仍能正常運轉(zhuǎn),完成預定的任務或某些重要的不允許間斷的任務。包括系統(tǒng)自診斷、自恢復、自動切換等功能。安全性:是指系統(tǒng)對自身文件和用戶文件的存取合法性的控制。如口令、加密。(6)容錯與安全2)嵌入式操作系統(tǒng)體系結(jié)構(gòu)體系結(jié)構(gòu)是操作系統(tǒng)的基礎(chǔ),它定義了硬件與軟件的界限、內(nèi)核與操作系統(tǒng)其它組件(文件、網(wǎng)絡、GUI等)的組織關(guān)系、系統(tǒng)與應用的接口。目前操作系統(tǒng)的體系結(jié)構(gòu)可分為:單塊結(jié)構(gòu)、層次結(jié)構(gòu)和客戶/服務器(微內(nèi)核)結(jié)構(gòu)。嵌入式操作系統(tǒng)體系結(jié)構(gòu)硬件系統(tǒng)服務用戶態(tài)核心態(tài)應用程序應用程序…單塊結(jié)構(gòu)嵌入式操作系統(tǒng)體系結(jié)構(gòu)硬件基本進程管理虛存管理I/O和設備管理進程間通信文件系統(tǒng)用戶用戶模式內(nèi)核模式層次結(jié)構(gòu)嵌入式操作系統(tǒng)體系結(jié)構(gòu)硬件進程服務用戶態(tài)核心態(tài)應用程序客戶內(nèi)存服務微內(nèi)核文件服務網(wǎng)絡服務顯示服務發(fā)送應答客戶/服務器結(jié)構(gòu)(微內(nèi)核結(jié)構(gòu))嵌入式操作系統(tǒng)體系結(jié)構(gòu)微內(nèi)核結(jié)構(gòu)的優(yōu)點提供一致的接口可擴展性:擴展對新的軟件/硬件支持靈活性:可伸縮可移植性分布式系統(tǒng)支持適用于面向?qū)ο蟛僮飨到y(tǒng)環(huán)境性能問題:通過微內(nèi)核構(gòu)造和發(fā)送信息、接受應答并解碼所花費的時間比進行一次系統(tǒng)調(diào)用的時間多很大程度取決于微內(nèi)核的大小和功能嵌入式操作系統(tǒng)體系結(jié)構(gòu)目前嵌入式操作系統(tǒng)主要采用分層和模塊化相結(jié)合的結(jié)構(gòu)或微內(nèi)核結(jié)構(gòu)。分層和模塊化結(jié)合的結(jié)構(gòu)將操作系統(tǒng)分為硬件無關(guān)層、硬件抽象層和硬件相關(guān)層,每層再劃分功能模塊。這樣移植工作便集中在硬件相關(guān)層,與其余兩層無關(guān),功能的伸縮則集中在模塊上,從而確保其具有良好的可移植性和可伸縮性。而采用微內(nèi)核結(jié)構(gòu),則可利用其可伸縮的特點適應硬件的發(fā)展,便于擴展。
嵌入式操作系統(tǒng)體系結(jié)構(gòu)應用程序任務管理硬件用戶擴展處理調(diào)度管理硬件抽象層應用編程接口內(nèi)存管理中斷管理時鐘/定時器管理I/O管理出錯處理同步、通信管理(消息隊列,信號量,事件,異步信號))DeltaCORE的體系結(jié)構(gòu):層次+模塊結(jié)構(gòu)分層次模塊化嵌入式操作系統(tǒng)體系結(jié)構(gòu)用戶模式應用應用應用網(wǎng)絡管理器圖形管理器設備管理器文件系統(tǒng)管理器網(wǎng)絡驅(qū)動圖形驅(qū)動設備驅(qū)動文件系統(tǒng)驅(qū)動硬件內(nèi)核模式內(nèi)核(微內(nèi)核)QNX4.25的體系結(jié)構(gòu):客戶/服務器結(jié)構(gòu)嵌入式操作系統(tǒng)的組成…………嵌入式內(nèi)核內(nèi)核是嵌入式操作系統(tǒng)的基礎(chǔ),也是必備的部分。內(nèi)核還提供特定的應用編程接口,但目前沒有統(tǒng)一的標準。任務管理內(nèi)存管理通信同步與互斥機制中斷管理時間管理任務擴展…………返回嵌入式內(nèi)核任務管理內(nèi)核的核心部分,具有任務調(diào)度、創(chuàng)建任務、刪除任務、掛起任務、解掛任務、設置任務優(yōu)先級等功能。通用計算機的操作系統(tǒng)追求的是最大的吞吐率,為了達到最佳整體性能,其調(diào)度原則是公平,采用Round-Robin或可變優(yōu)先級調(diào)度算法,調(diào)度時機主要以時間片為主驅(qū)動。而嵌入式操作系統(tǒng)多采用基于靜態(tài)優(yōu)先級的可搶占的調(diào)度,任務優(yōu)先級是在運行前通過某種策略靜態(tài)分配好的,一旦有優(yōu)先級更高的任務就緒就馬上進行調(diào)度。返回嵌入式內(nèi)核內(nèi)存管理通用操作系統(tǒng)廣泛使用了虛擬內(nèi)存的技術(shù),為用戶提供一個功能強大的虛存管理機制。嵌入式操作系統(tǒng)的內(nèi)存管理比較簡單。通常不采用虛擬存儲管理,而采用靜態(tài)內(nèi)存分配和動態(tài)內(nèi)存分配(固定大小內(nèi)存分配和可變大小內(nèi)存分配)相結(jié)合的管理方式。有些內(nèi)核利用MMU機制提供內(nèi)存保護功能。返回嵌入式內(nèi)核通信、同步和互斥機制這些機制提供任務間、任務與中斷處理程序間的通信、同步和互斥功能。一般包括信號量、消息、事件、管道、異步信號和共享內(nèi)存等功能。與通用操作系統(tǒng)不同的是,嵌入式操作系統(tǒng)需要解決在這些機制的使用中出現(xiàn)的優(yōu)先級反轉(zhuǎn)問題。返回嵌入式內(nèi)核中斷管理,一般具有以下功能:安裝中斷服務程序中斷發(fā)生時,對中斷現(xiàn)場進行保存,并且轉(zhuǎn)到相應的服務程序上執(zhí)行中斷退出前,對中斷現(xiàn)場進行恢復中斷棧切換中斷退出時的任務調(diào)度
返回嵌入式內(nèi)核時間管理提供高精度、應用可設置的系統(tǒng)時鐘,該時鐘是嵌入式系統(tǒng)的時基,可設置為十毫秒以下。提供日歷時間,負責與時間相關(guān)的任務管理工作如任務對資源有限等待的計時、時間片輪轉(zhuǎn)調(diào)度等,提供軟定時器的管理功能等。通用操作系統(tǒng)的系統(tǒng)時鐘的精度由操作系統(tǒng)確定,應用不可調(diào),且一般是幾十個毫秒。返回嵌入式內(nèi)核任務擴展功能任務擴展功能就是在內(nèi)核中設置一些Hook的調(diào)用點,在這些調(diào)用點上內(nèi)核調(diào)用應用設置的、應用自己編寫的擴展處理程序,以擴展內(nèi)核的有關(guān)功能。Hook調(diào)用點有任務創(chuàng)建、任務切換、任務刪除、出錯處理等。返回實時系統(tǒng)是面向具體應用,對外來事件在限定時間內(nèi)能做出反應的系統(tǒng)。限定時間的范圍很廣可以從微秒級(如信號處理)到分鐘級(如聯(lián)機查詢系統(tǒng))。在實時系統(tǒng)中主要有三個指標來衡量系統(tǒng)的實時性,即響應時間(ResponseTime)、生存時間(SurvivalTime)、吞吐量(Throughput)。3)實時系統(tǒng)的評價指標
響應時間(ResponseTime):是計算機識別一個外部事件到作出響應的時間,在控制應用中它是最重要的指標,如果事件不能及時的處理,系統(tǒng)可能就會崩潰。生存時間(SurvivalTime):是數(shù)據(jù)有效等待時間,在這段時間里數(shù)據(jù)是有效的。吞吐量(Throughput):是在一給定時間內(nèi)(秒),系統(tǒng)可以處理的事件總數(shù)。例如通訊控制器用每秒鐘處理的字符數(shù)來表示吞吐量,吞吐量是平均響應時間的倒數(shù)。參考:一個實時操作系統(tǒng)的實時性能的主要評測標準和指標包括系統(tǒng)響應時間、上下文切換時間,中斷延遲時間、中斷響應時間、任務切換時間、調(diào)度器延遲時間,周期性抖動(jitter這是操作系統(tǒng)的主要職責之一,它決定該輪到哪個任務運行了。 往往調(diào)度是基于任務的優(yōu)先級,根據(jù)其重要不同被賦予任務不同的優(yōu)先級。CPU總是讓處在就緒態(tài)的優(yōu)先級最高的任務先運行。 何時讓高優(yōu)先級任務掌握CPU的使用權(quán),有兩種不同的情況,這要看用的是什么類型的內(nèi)核,是非占先式的還是占先式的內(nèi)核。
(2)任務調(diào)度(dispatcher)(3)非占先式調(diào)度法與占先式調(diào)度法①非占先式(non-preemptive)式調(diào)度法非占先式也稱作合作型多任務(cooperativemultitasking),各個任務彼此合作共享一個CPU。中斷服務可以使一個高優(yōu)先級的任務由掛起狀態(tài)變?yōu)榫途w狀態(tài)。但中斷服務以后控制權(quán)還是回到原來被中斷了的那個任務,直到該任務主動放棄CPU的使用權(quán)時,那個高優(yōu)先級的任務才能獲得CPU的使用權(quán)。低優(yōu)先級任務ISR高優(yōu)先級任務(1)(2)(3)(4)(5)(6)(7)中斷服務程序使高優(yōu)先級任務就緒低優(yōu)先級任務釋放CPU使用權(quán)TIME非占先式(Non-Preemptive)圖
非占先式內(nèi)核的一個特點是幾乎不需要使用信號量保護共享數(shù)據(jù)。正在運行著的任務占有CPU,而不必擔心被別的任務搶占。 非占先式內(nèi)核的最大缺陷在于其響應高優(yōu)先級的任務慢②占先式(搶先式)preemptive)
當系統(tǒng)響應時間很重要時,要使用占先式內(nèi)核。最高優(yōu)先級的任務一旦就緒,總能得到CPU的控制權(quán)。即當一個運行著的任務使一個比它優(yōu)先級高的任務進入了就緒態(tài),當前任務的CPU使用權(quán)就被剝奪了,或者說被掛起了,那個高優(yōu)先級的任務立刻得到了CPU的控制權(quán)。
低優(yōu)先級任務ISR高優(yōu)先級任務(1)(2)(3)(4)(5)(6)中斷服務程序使高優(yōu)先級任務就緒高優(yōu)先級任務得到CPU使用權(quán)TIME占先式(Preemptive)圖
(4)任務優(yōu)先級(priority)
首先介紹一下任務優(yōu)先級的種類,每個任務都有其優(yōu)先級(priority),靜態(tài)優(yōu)先級和動態(tài)優(yōu)先級。
應用程序執(zhí)行過程中,如果各任務優(yōu)先級不變,則稱之為靜態(tài)優(yōu)先級。在靜態(tài)優(yōu)先級系統(tǒng)中,各任務以及它們的時間約束在程序編譯時是已知的。 應用程序執(zhí)行過程中,如果任務的優(yōu)先級是可變的,則稱之為動態(tài)優(yōu)先級。第三節(jié)
常用的嵌入式操作系統(tǒng)概述操作系統(tǒng)功能概述嵌入式操作系統(tǒng)的演變常用的嵌入式系統(tǒng)簡介1、操作系統(tǒng)功能的概述
現(xiàn)在的操作系統(tǒng)十分復雜,它管理著計算機系統(tǒng)中各種不同的軟硬件資源。一般來說,操作系統(tǒng)主要功能有進程管理(處理機管理)、存儲器管理、設備管理和文件管理。 進程管理的主要功能是完成CPU資源的調(diào)度和分配,以某種預定的策略運行系統(tǒng)中的任務。 存儲器管理是操作系統(tǒng)的一個重要職責,主要完成計算機內(nèi)存資源的管理和分配任務。 設備管理負責管理各種計算機外設,主要有設備驅(qū)動程序完成。 文件管理負責管理磁盤上的各種文件和目錄。2、嵌入式操作系統(tǒng)的演變*PercentoftotalsoftwaresuppliedbyRTOSvendorinatypicalembeddeddevice10%*Kernel30%*KernelNetworkingFileSystem75%*KernelNetworkingFileSystemMultiprocessingMemoryManagementNetworkingUtilityWindowsAPIApplicationApplicationApplicationApplication90%*KernelNetworkingFileSystemMultiprocessingFaultToleranceDistributedObjectsAdvancedNetworkingAdvancedInterconnectJavaBrowser/GUI嵌入式操作系統(tǒng)的演變 在嵌入式系統(tǒng)的發(fā)展過程中,從操作系統(tǒng)的角度來看,大致經(jīng)歷了以下幾個階段:無操作系統(tǒng)階段簡單操作系統(tǒng)階段實時操作系統(tǒng)階段面向Internet的階段嵌入式操作系統(tǒng)的演變無操作系統(tǒng)階段嵌入式這一階段嵌入式系統(tǒng)的主要特點是:系統(tǒng)結(jié)構(gòu)和功能相對單一,處理效率較低,存儲容量較小,幾乎沒有用戶接口。由于這種嵌入式系統(tǒng)使用簡便、價格低廉,因而曾經(jīng)在工業(yè)控制領(lǐng)域中得到了非常廣泛的應用,但卻無法滿足現(xiàn)今對執(zhí)行效率、存儲容量都有較高要求的信息家電等場合的需要。嵌入式操作系統(tǒng)的演變簡單操作系統(tǒng)階段20世紀80年代,隨著微電子工藝水平的提高,IC制造商開始把嵌入式應用中所需要的微處理器、I/O接口、串行接口以及RAM、ROM等部件統(tǒng)統(tǒng)集成到一片VLSI中,制造出面向I/O設計的微控制器,并一舉成為嵌入式系統(tǒng)領(lǐng)域中異軍突起的新秀。與此同時,嵌入式系統(tǒng)的程序員也開始基于一些簡單的"操作系統(tǒng)"開發(fā)嵌入式應用軟件,大大縮短了開發(fā)周期、提高了開發(fā)效率。嵌入式操作系統(tǒng)的演變簡單操作系統(tǒng)階段這一階段嵌入式系統(tǒng)的主要特點是:出現(xiàn)了大量高可靠、低功耗的嵌入式CPU(如PowerPC等),各種簡單的嵌入式操作系統(tǒng)開始出現(xiàn)并得到迅速發(fā)展。此時的嵌入式操作系統(tǒng)雖然還比較簡單,但已經(jīng)初步具有了一定的兼容性和擴展性,內(nèi)核精巧且效率高,主要用來控制系統(tǒng)負載以及監(jiān)控應用程序的運行。嵌入式操作系統(tǒng)的演變實時操作系統(tǒng)階段20世紀90年代,在分布控制、柔性制造、數(shù)字化通信和信息家電等巨大需求的牽引下,嵌入式系統(tǒng)進一步飛速發(fā)展,而面向?qū)崟r信號處理算法的DSP產(chǎn)品則向著高速度、高精度、低功耗的方向發(fā)展。隨著硬件實時性要求的提高,嵌入式系統(tǒng)的軟件規(guī)模也不斷擴大,逐漸形成了實時多任務操作系統(tǒng)(RTOS),并開始成為嵌入式系統(tǒng)的主流。嵌入式操作系統(tǒng)的演變實時操作系統(tǒng)階段這一階段嵌入式系統(tǒng)的主要特點是:操作系統(tǒng)的實時性得到了很大改善,已經(jīng)能夠運行在各種不同類型的微處理器上,具有高度的模塊化和擴展性。此時的嵌入式操作系統(tǒng)已經(jīng)具備了文件和目錄管理、設備管理、多任務、網(wǎng)絡、圖形用戶界面(GUI)等功能,并提供了大量的應用程序接口(API),從而使得應用軟件的開發(fā)變得更加簡單。嵌入式操作系統(tǒng)的演變面向Internet的階段21世紀無疑將是一個網(wǎng)絡的時代,將嵌入式系統(tǒng)應用到各種網(wǎng)絡環(huán)境中去的呼聲自然也越來越高。目前大多數(shù)嵌入式系統(tǒng)還孤立于Internet之外,隨著Internet的進一步發(fā)展,以及Internet技術(shù)與信息家電、工業(yè)控制技術(shù)等的結(jié)合日益緊密,嵌入式設備與Internet的結(jié)合才是嵌入式技術(shù)的真正未來。信息時代和數(shù)字時代的到來,為嵌入式系統(tǒng)的發(fā)展帶來了巨大的機遇,同時也對嵌入式系統(tǒng)廠商提出了新的挑戰(zhàn)。嵌入式操作系統(tǒng)的演變 目前,嵌入式技術(shù)與Internet技術(shù)的結(jié)合正在推動著嵌入式技術(shù)的飛速發(fā)展,嵌入式系統(tǒng)的研究和應用產(chǎn)生了如下新的顯著變化:新的微處理器層出不窮,嵌入式操作系統(tǒng)自身結(jié)構(gòu)的設計更加便于移植,能夠在短時間內(nèi)支持更多的微處理器。嵌入式系統(tǒng)的開發(fā)成了一項系統(tǒng)工程,開發(fā)廠商不僅要提供嵌入式操作系統(tǒng)本身,同時還要提供強大的軟件開發(fā)支持包。通用計算機上使用的新技術(shù)、新觀念開始逐步移植到嵌入式系統(tǒng)中,如嵌入式數(shù)據(jù)庫、移動代理、實時CORBA、Java等,嵌入式軟件平臺得到進一步完善。3、μC/OS-II簡介μC/OS-II是一個搶占式實時多任務內(nèi)核。它是用ANSI的C語言編寫的,包含一小部分匯編語言代碼,使之可以提供給不同架構(gòu)的微處理器使用。至今,從8位到64位,μC/OS-II已經(jīng)在40多種不同架構(gòu)的微處理器上使用。使用μC/OS的領(lǐng)域包括:照相機行業(yè)、航空業(yè)、醫(yī)療器械、網(wǎng)絡設備、自動提款機以及工業(yè)機器人等。
4、Linux操作系統(tǒng)簡介
嵌入式系統(tǒng)越來越追求數(shù)字化、網(wǎng)絡化和智能化。因此原來在某些設備或領(lǐng)域中占主導地位的軟件系統(tǒng)越來越難以為繼,整個系統(tǒng)必須是開放的、提供標準的API,并且能夠方便地與眾多第三方的軟硬件溝通。
Linux在嵌入式領(lǐng)域異軍突起,不過是近兩年的事情。過去的一年中有13%的用戶已經(jīng)開始使用嵌入式Linux系統(tǒng)進行開發(fā)工作;有52%的用戶決定在未來24個月內(nèi)開始使用Linux作為嵌入式操作系統(tǒng)的開發(fā)原型。
隨著Linux的迅速發(fā)展,嵌入式Linux現(xiàn)在已經(jīng)有了許多版本,包括強實時的嵌入式Linux(RT-Linux和KURT-Linux)和一般的嵌入式Linux(如uClinux和PorketLinux等)。其中,RT-Linux通過把通常的Linux任務優(yōu)先級設為最低,而所有的實時任務的優(yōu)先級都高于它,以達到既兼容通常的Linux任務,又保證強實時性能的目的。嵌入式uCLinux
另一種常用的嵌入式Linux是uClinux,它是指對Linux經(jīng)過小型化裁剪后,能夠固化在容量只有幾百K字節(jié)或幾兆字節(jié)的存儲器芯片中,即針對沒有MMU的處理器而設計的。它不能使用處理器的虛擬內(nèi)存管理技術(shù),對內(nèi)存的訪問是直接的,所有程序中的地址都是實際的物理地址。它專為嵌入式系統(tǒng)作了許多小型化的工作。嵌入式Linux(EmbeddedLinux)應用于特定嵌入式場合。嵌入式Linux的開發(fā)和研究是目前操作系統(tǒng)領(lǐng)域的一個熱點。5、WindowsCE操作系統(tǒng)簡介
1)概述
WindowsCE是Microsoft公司為開發(fā)各類信息設備而開發(fā)出來的一個嵌入式軟實時操作系統(tǒng)。
WindowsCE是一個非常小巧精致的操作系統(tǒng)。這個操作系統(tǒng)的核心全部是由C語言開發(fā)的,操作系統(tǒng)本身還包含許多由各個廠家用C語言和匯編語言開發(fā)的驅(qū)動程序。
WindowsCE可以看作是Windows98/NT的微縮版,專門為體積小、資源要求低、便攜的機器而設計。但它們之間還存在著一些明顯的差別,WindowsCE不得不放棄某些復雜的特性。
WindowsCE是針對有限資源的平臺而設計的多線程、完整優(yōu)先權(quán)、多任務的操作系統(tǒng),但它不是一個強實時操作系統(tǒng),高度模塊化是它的重要特性,它適合作為可裁減的32位嵌入式操作系統(tǒng)。WinCE既適用于工業(yè)設備的嵌入式控制模塊,也適用于消費類電子產(chǎn)品,如電話、機頂盒和掌上電腦等。針對不同的目標設備硬件環(huán)境,可以在內(nèi)核基礎(chǔ)上添加各種模塊,從而形成一個定制的嵌入式操作系統(tǒng)。
WindowsCE的核允許每個進程有256個優(yōu)先級,采用搶占式優(yōu)先權(quán)調(diào)度法。WindowsCE內(nèi)核至少約為200KB的ROM。對于應用程序開發(fā)者來說,WindowsCE提供了Windows程序員熟悉的各種開發(fā)環(huán)境,例如,MicrosoftWin32API(應用程序接口)、ActiveX控件、消息隊列、COM接口、ATL和MFC。它們不僅有助于提高開發(fā)者的開發(fā)效率,而且有利于從其他Microsoft平臺上移植各種成功的應用程序。2)WinCE與Windows操作系統(tǒng)的區(qū)別⑴WindowsCE不能運行現(xiàn)有的應用程序⑵WindowsCE有嚴格的內(nèi)存限制。⑶WindowsCE有精簡的運行庫和API⑷WindowsCE設備通常沒有鼠標⑸WindowsCE硬件并不十分標準化
使用WinCE用戶需與Microsoft公司簽訂合同方可獲得源代碼。
WindowsCE支持非常流行的Windows應用程序接口API,提供了互聯(lián)網(wǎng)的瀏覽服務和其他服務,使其很適合用于需要與互聯(lián)網(wǎng)連接的系統(tǒng)中。目前常使用的有WindowsCE4.2、CE5.0等版本。6、VxWorks
VxWorks操作系統(tǒng)是美國WindRiver公司于1983年設計開發(fā)的一種嵌入式(無MMU)實時操作系統(tǒng)(RTOS),具有良好的持續(xù)發(fā)展能力、高性能的內(nèi)核以及友好的用戶開發(fā)環(huán)境,在嵌入式實時操作系統(tǒng)領(lǐng)域牢牢占據(jù)著一席之地。
VxWorks操作系統(tǒng)基于微內(nèi)核結(jié)構(gòu),由400多個相對獨立的目標模塊組成,用戶可以根據(jù)需要增加或減少模塊來裁剪和配置系統(tǒng),其連接器可按應用的需要來動態(tài)連接目標模塊。大多數(shù)的VxWorksAPI是專用的,采用GNU的編譯和調(diào)試器。VxWorks所具有的顯著特點
-可靠性、實時性和可裁減性。 -它支持多種處理器,如x86、i960、SunSparc、MotorolaMC68xxx、MIPS、PowerPC等等。例如在美國的F-16和FA-18戰(zhàn)斗機、B2隱形轟炸機、愛國者導彈和“索杰納”火星探測車上使用的都是VxWorks操作系統(tǒng)。
7、智能手機操作系統(tǒng)簡介概述目前的手機操作系統(tǒng)平臺被Symbian、Linux、微軟和Palm四家所掌控。操作系統(tǒng)的成本占15%~20%。1)PalmOS“胖子”由PalmComputing公司設計開發(fā)的一種32位嵌入式操作系統(tǒng),主要應用在掌上電腦(PDA),以及現(xiàn)在的智能手機。Palm已售出3000萬部以上的移動化電腦產(chǎn)品。PalmOS操作系統(tǒng)的最大特點就是節(jié)能以及占用很少的系統(tǒng)資源。同時它還是采用開放式的架構(gòu),因此吸引了眾多為PalmOS平臺開發(fā)應用程序的程序設計人員。目前在其上面運行的共享軟件和免費軟件已超過1萬種。2)SymbianOS“塞班系統(tǒng)”由諾基亞聯(lián)合摩托羅拉、西門子等幾家大型移動通訊設備商共同出資組建的一個合資公司,專門研發(fā)手機操作系統(tǒng),并得到了占據(jù)市場份額大多數(shù)的手持通訊設備廠商的支持。Symbian操作系統(tǒng)的前身是EPOC,而EPOC是ElectronicPieceofCheese取第一個字母而來的,其原意為“使用電子產(chǎn)品時可以像吃乳酪一樣簡單”。在諾基亞的大力倡導下,Symbian已經(jīng)成為一個開放的、易用的、專業(yè)的開發(fā)平臺。支持C++,Java語言,支持藍牙、USB、IPv4、IPv6、
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 喬木遷移施工方案
- 2024版煤礦安全生產(chǎn)標準化管理體系-總體介紹解讀
- 《視覺系統(tǒng)結(jié)構(gòu)與功能》課件
- 游泳救生員在水域救援的技巧及試題及答案
- 2025奶茶店商鋪門面轉(zhuǎn)讓合同
- 新員工公司級安全教育基礎(chǔ)培訓
- 模具專業(yè)人員的職業(yè)發(fā)展試題及答案
- 救生員職業(yè)資格考試練習題及答案
- 游泳救生員資格考試策略與技巧集錦試題及答案
- 模具設計與生產(chǎn)流程的配合試題及答案
- 消防維保方案 (詳細完整版)
- “兩票三制”專項整治工作方案(含檢查表)
- 烯烴分離裝置操作規(guī)程
- JIS G3507-1-2021 冷鐓用碳素鋼.第1部分:線材
- 停電作業(yè)工作票配電填寫模板
- 二重積分的概念與性質(zhì)(課堂PPT)
- 投標法人代表授權(quán)書
- 海天注塑機日常點檢表
- 固體火箭發(fā)動機制造工藝
- 抹灰石膏原始記錄
- 市場監(jiān)督管理行政執(zhí)法文書范本模板(共68頁)
評論
0/150
提交評論