第1講操作系統(東北大學嵌入式實時操作系統)_第1頁
第1講操作系統(東北大學嵌入式實時操作系統)_第2頁
第1講操作系統(東北大學嵌入式實時操作系統)_第3頁
第1講操作系統(東北大學嵌入式實時操作系統)_第4頁
第1講操作系統(東北大學嵌入式實時操作系統)_第5頁
已閱讀5頁,還剩59頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

嵌入式實時操作系統

丁山dingshan@Ch1嵌入式實時操作系統概論

1.1操作系統概觀1.2操作系統的形成和發展

1.3操作系統提供的服務和用戶接口

1.4操作系統的結構

1.5流行操作系統簡介1.6嵌入式實時操作系統1.1操作系統概觀1.1.1操作系統的定義和目標1.1.2操作系統的作用和功能1.1.3操作系統的主要特性1.1.1操作系統的定義和目標

操作系統是管理系統資源、控制程序執行,改善人機界面,提供各種服務,合理組織計算機工作流程和為用戶有效使用計算機提供良好運行環境的一種系統軟件。它可被看作是用戶和計算機硬件之間的一種接口,是現代計算機系統不可分割的重要組成部分。計算機系統的層次結構(1)

用戶1用戶2用戶3用戶4用戶n財務系統航空訂票上網瀏覽電子商務科學計算(應用程序)編譯程序匯編程序編輯程序數據庫(系統程序)操作系統計算機硬件………計算機系統的層次結構(2)

硬件層操作系統層系統程序層應用層硬件層提供基本的可計算性資源,包括:具有一組指令的處理器、可被訪問的寄存器和存儲器,可被使用的各種I/O設施和設備。這些是操作系統賴以工作的基礎,也是操作系統設計者可以使用的功能和資源。操作系統層對硬件作擴充和改造,提供了操作系統接口,為編譯程序、編輯程序、數據庫系統等的設計者提供有力支撐。此外,操作系統還要做資源的調度和分配,信息的存取和保護,并發活動的協調和控制等許多工作。系統程序層建立在操作系統改造和擴充過的機器上,提供擴展指令集,實現各種語言處理程序、數據庫管理系統和其他系統程序。提供種類繁多的實用程序,如連接裝配程序、庫管理程序、診斷排錯程序、分類/合并程序等供用戶使用。

應用層解決用戶不同的應用問題,應用程序開發者借助程序設計語言來表達應用問題,開發各種應用程序,既快捷又方便。操作系統和硬件組成了一個運行平臺,其他軟件都運行在這個平臺上。

操作系統的主要目標方便用戶使用擴大機器功能管理系統資源提高系統效率構筑開放環境

1.1.2操作系統的作用與功能

操作系統的作用

OS作為用戶與計算機硬件之間的接口

OS作為虛擬計算機

OS作為計算機系統的資源管理者

(2)OS為用戶提供虛擬計算機(1)

如何把硬件復雜性與用戶隔離開來?基本方法是在計算機裸機上加上一層又一層軟件來組成整個計算機系統。每當在計算機上復蓋一層軟件,提供了一種抽象,系統的功能便增加一點,使用就更加方便一點,用戶可用的運行環境就更加好一點。OS為用戶提供虛擬計算機(2)

1)裸機極難使用,雖有很強的指令系統,從功能上來說局限性很大。加上軟件后,就可在硬件基礎上,對其功能和性能進行擴充和完善。

OS為用戶提供虛擬計算機(3)

2)軟件之間的關系,采用同樣辦法,一些軟件的運行以另一些軟件的存在并為其提供運行支撐作為基礎,新添加的這些軟件是在原來那些軟件基礎上的擴充和完善。

OS為用戶提供虛擬計算機(4)

3)例1,在裸機上加上虛擬存儲管理軟件,用戶就可有碩大的編程空間,不必涉及物理存儲空間的容量、地址轉換、程序重定位等物理細節。虛擬存儲器是現代操作系統對計算機系統中多級物理存儲體系進行高度抽象的結果。

OS為用戶提供虛擬計算機(5)

4)例2,如果加上一層I/O設備管理軟件,用戶就可使用I/O命令來進行數據的I/O,不必涉及顯示器、打印機、掃描儀、鍵盤和鼠標等的物理細節。

OS為用戶提供虛擬計算機(6)

5)如果加上一層文件管理軟件,它將磁盤抽象成一組命名的文件,用戶通過文件操作,按文件名來存取信息,不必涉及諸如數據物理地址、磁盤記錄命令、移動磁頭臂、搜索物理塊及設備驅動等物理細節,便于使用、效率又高。

OS為用戶提供虛擬計算機(7)

6)例3,如果加上一層窗口管理軟件,由該軟件把一臺物理屏幕改造成多窗口,每個應用可以在各自的窗口中操作,用戶可以在窗口環境中方便地與計算機交互。OS為用戶提供虛擬計算機(8)

操作系統是緊靠硬件的第一層軟件,計算機上覆蓋操作系統后,可擴展基本功能,為用戶提供一臺功能顯著增強,使用更加方便,安全可靠性好,效率明顯提高的機器,稱為虛擬計算機,或操作系統虛機器(VirtualMachine)。(3)操作系統作為計算機系統的資源管理者(1)

在操作系統中,能分配給用戶使用的硬件和軟件設施總稱為資源,包括兩大類:硬件資源和信息資源。硬件資源又分:處理器、存儲器、I/O設備等;信息資源又分:程序和數據等。操作系統作為計算機系統的

資源管理者(2)

操作系統如何來管理系統資源,哪些情況下需要對資源進行管理?來看幾個例子:操作系統作為計算機系統的

資源管理者(3)

例1,用戶想把一批信息存儲到某個設備上,必須先弄清楚該設備的存儲格式、讀寫命令和各種情況下的中斷處理步驟。而讓用戶了解設備的物理細節將會十分困難,甚至束手無策。這些工作只能讓操作系統代勞。操作系統作為計算機系統的

資源管理者(4)

例2,若內存中能裝入兩道程序并同時啟動運行,不但可充分利用內存資源,當一道程序等待I/O完成時,可讓另一道程序占有CPU運行,使得I/O設備和CPU同時保持忙碌,這類高效的工作方式,需要解決許多技術問題,這只有靠操作系統來做。操作系統作為計算機系統的

資源管理者(5)

例3,三個需要打印輸出信息的應用程序在同時運行,打印機上三個程序的輸出結果會交錯夾雜、混亂不堪。一種解決方案:程序輸出時,先把各自的結果存在磁盤上,等到某程序生成的輸出全部存入后,才啟動打印機輸出,消除了雜亂無章的局面,這種做法只有操作系統才辦得到。

操作系統作為計算機系統的

資源管理者(6)

也有人將操作系統定義為:是能使諸用戶有效、方便地共享一套計算機系統資源的一種系統軟件。

操作系統作為計算機系統的

資源管理者(7)操作系統的重要任務之一(1)

對資源進行抽象研究,找出各種資源共性和個性,有序地管理計算機中的硬件、軟件資源,跟蹤資源使用情況,監視資源的狀態,滿足用戶對資源的需求,協調各程序對資源的使用沖突;操作系統作為計算機系統的

資源管理者(8)操作系統的重要任務之一(2)

研究使用資源的統一方法,讓用戶簡單、有效的使用資源,最大限度地實現各類資源的共享,提高資源利用率,從而,使得計算機系統的效率有很大提高。

操作系統的功能

處理機管理存儲管理設備管理文件管理網絡與通信管理用戶接口

處理機管理(1)

?處理器管理的第一項工作是處理中斷事件,

?處理器管理的第二項工作是處理器調度。

處理機管理(2)處理器管理具體包括:進程控制和管理

進程同步和互斥

進程通信和死鎖

線程控制和管理

處理器調度,分作業調度,中程調度,低級調度等

存儲管理

存儲管理具有四大功能:

存儲分配

存儲共享

地址轉換與存儲保護

存儲擴充設備管理

設備管理具有以下功能:設備分配緩沖管理

設備驅動設備獨立性實現虛擬設備文件管理

文件管理要完成以下任務:提供文件邏輯組織方法提供文件物理組織方法提供文件的存取方法提供文件的使用方法實現文件的目錄管理實現文件的存取控制實現文件的存儲空間管理

網絡與通信管理

聯網操作系統應具有以下管理功能:網上資源管理功能數據通信管理功能網絡管理功能,包括:故障管理、安全管理、性能管理、記帳管理和配置管理。1.1.3操作系統的主要特性

第一個特性--并發性第二個特性--共享性第三個特性--異步性第四個特性--虛擬性操作系統的主要特性第一個特性--并發性(1)并發性(Concurrence)指兩個或兩個以上的事件或活動在同一時間間隔內發生發揮并發性能夠消除系統中部件和部件之間的相互等待,有效地改善系統資源的利用率,改進系統的吞吐率,提高系統效率第一個特性--并發性(2)

內存中同時有多個用戶程序,或內存中同時有操作系統程序和用戶程序被啟動交替、穿插地執行,都是并發性的例子。

第一個特性--并發性(3)

并發性使系統變得復雜化(1)

如何從一個活動切換到另一個活動?怎樣將各個活動隔離開來,使之互不干擾,免遭對方破壞?怎樣讓多個活動協作完成任務?第一個特性--并發性(4)

并發性使系統變得復雜化(2)

怎樣協調多個活動對資源的競爭?如何保證每個活動的資源不被其它進程侵犯?多個活動共享文件數據時,如何保證數據的一致性?第一個特性--并發性(5)

操作系統中很早就引入重要概念--進程,進程能清晰刻劃操作系統中的并發性,實現并發活動的執行,因而,它已成為現代操作系統的一個重要基礎。第一個特性--并發性(6)采用并發技術的系統稱為多任務系統(Multitasking),并發的實質是一個物理CPU(也可以多個物理CPU)在若干道程序之間多路復用,并發性是對有限物理資源強制行使多用戶共享以提高效率。

第一個特性--并發性(7)

結論:實現并發技術的關鍵之一是如何對系統內的多個活動(進程)進行切換的技術。第一個特性--并發性(8)

并行性(parallelism)指兩個或兩個以上事件或活動在同一時刻發生。

?在多道程序環境下,并行性使多個程序同一時刻可在不同CPU上同時執行。

?在分布式系統中,多臺計算機并存使程序的并發性得到了更充分發揮,同一時刻每臺計算機上都可以有程序在執行。第一個特性--并發性(9)

?并行的事件或活動一定是并發的,但反之并發的事件或活動未必是并行的。

?并行性是并發性的特例,而并發性是并行性的擴展。第二個特性-共享性(1)

共享指操作系統中的資源可被多個并發執行的進程所使用,可分成兩種資源共享方式:互斥訪問

:

系統中的某些資源同一時間內只允許一個進程訪問,許多物理設備,以及某些數據和表格都是互斥共享的資源。第二個特性-共享性(2)

同時訪問:

系統中還有許多資源,允許同一時間內多個進程對它進行訪問,這里“同時”是宏觀上的說法。典型的可供多進程同時訪問的資源是磁盤,可重入程序也可被同時訪問。與共享性有關的問題是資源分配、信息保護、存取控制等,必須要妥善解決好這些問題。第三個特性-異步性(1)操作系統中的異步性處處可見:一個進程在CPU上運行一段時間后,由于等待資源滿足或事件發生,被暫停執行,CPU轉讓給另一個進程執行。系統中的進程何時執行?何時暫停?怎樣的速度向前推進?進程總共要多少時間執行才能完成?這些都是不可予知的,或者說該進程是以異步方式運行的。第三個特性-異步性(2)

操作系統中異步性的其他例子:

(1)作業到達系統的類型和時間是隨機的;

(2)操作員發出命令或按按鈕的時刻是隨機的;

(3)程序運行發生錯誤或異常的時刻是隨機的;

(4)各種各樣硬件和軟件中斷事件發生的時刻是隨機的

。第三個特性-異步性(3)

?異步性給系統帶來潛在危險,有可能導致與時間有關的錯誤。

?操作系統的一個重要任務是必須確保捕捉任何一種隨機事件,正確處理可能發生的隨機事件,正確處理任何一種產生的事件序列,否則將會導致嚴重后果。第四個特性--虛擬性(1)

虛擬性是指操作系統中的一種管理技術,它是把物理上的一個實體變成邏輯上的多個對應物,或把物理上的多個實體變成邏輯上的一個對應物的技術,顯然,前者是實際存在的而后者是虛構假想的。第四個特性--虛擬性(2)

通過多道程序和分時使用CPU技術,物理上的一個CPU變成邏輯上的多個CPU。第四個特性--虛擬性(3)

通過Spooling技術可把物理上的一臺獨占設備變成邏輯上的多臺虛擬設備,第四個特性--虛擬性(4)

通過窗口技術可把物理上的一個屏幕變成邏輯上的多個虛擬屏幕,IBM的VM技術把物理上的一臺計算機變成邏輯上的多臺計算機。第四個特性--虛擬性(5)

虛擬存儲器則是把物理上的多個存儲器(主存和輔存)變成邏輯上的一個(虛存)的例子。1.6嵌入式實時操作系統什么是嵌入式系統:

來自IEEE的定義:“Embeddedsystemisdevicesusedtocontrol,monitor,orassisttheoperationofequipment,machineryorplants”. ——IEEE上述定義主要從應用上加以定義。

可以看出:嵌入式系統是軟硬件的綜合體,還可以涵蓋機械等附屬裝置。什么是嵌入式系統:

廣義上嵌入式系統是一種應用系統,它至少包含一個可編程的計算機(通常是某種形式的微控制器、微處理器或數字信號處理芯片(DSP))且使用該系統的人一般并未意識到該系統是基于計算機的。什么是嵌入式系統:

國內的經典定義嵌入式系統是 “以應用為中心,以計算機技術為基礎,并且軟硬件可裁剪,適用于應用系統對功能、可靠性、成本、體積、功耗有嚴格要求的專用計算機系統”一般由嵌入式微處理器、外圍硬件設備、嵌入式操作系統以及用戶的應用程序等部分組成,用于實現對其他設備的控制、監視或管理等功能。可以從以下幾個方面來理解國內對嵌入式系統的定義:嵌入式系統是面向用戶、面向產品、面向應用的,它必須與具體應用相結合才會具有生命力、才更具有優勢。

即嵌入式系統是與應用緊密結合的,它具有很強的專用性,必須結合實際系統需求進行合理的裁減利用。嵌入式系統是將先進的計算機技術

溫馨提示

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

評論

0/150

提交評論