版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第1講 實時系統(tǒng)引論主講: 黎忠文,目錄,引言1.1 實時系統(tǒng)的定義1.2 實時系統(tǒng)的例子1.3 實時系統(tǒng)的特征小結(jié),引言,隨著計算機(jī)變得更小、更快、更可靠和更便宜,其應(yīng)用范圍更寬了。最初制造的計算機(jī)只是作為方程求解裝置,現(xiàn)在,其影響已經(jīng)拓展到生活的各個方面,從洗衣機(jī)到空中交通管制。擴(kuò)展最快的一個計算機(jī)應(yīng)用領(lǐng)域所涉及的各種應(yīng)用,其主要功能不是信息處理,然而需要信息處理以實現(xiàn)其主要功能。微處理器控制的洗衣機(jī)是這種系統(tǒng)
2、的一個好例子。這里,基本功能是洗衣機(jī),然而,為了洗不同種類的衣服,要執(zhí)行不同的“洗衣程序”。這種類型的計算機(jī)應(yīng)用通常被稱為實時應(yīng)用或嵌入應(yīng)用。估計世界上有99%的處理器是用于嵌入式系統(tǒng)的。這些嵌入式應(yīng)用的編程對計算機(jī)語言提出了特別的要求,因為它們同傳統(tǒng)的信息處理系統(tǒng)有不同的特征。,1.1 實時系統(tǒng)的定義,牛津計算詞典(Oxford Dictionary of Computing)對實時系統(tǒng)給出下列定義: 實時系統(tǒng)是指那些產(chǎn)生輸出的
3、時間至關(guān)重要的系統(tǒng),這通常是因為輸入對應(yīng)于外界的某個運(yùn)動,而輸出又必須與同一運(yùn)動相關(guān)。自輸入時刻到輸出時刻的時間滯后必須充分小,以達(dá)到可接受的及時性。 PDCS(Predictably Dependable Computer Systems)工程給出如下定義: 實時系統(tǒng)是這樣的系統(tǒng):需要在環(huán)境限定的時間間隔里對來自環(huán)境的激勵做出反應(yīng)(包括實際時間的推移)。,1.2 實時系統(tǒng)的例子,上一節(jié)中我們介紹了實時系統(tǒng)和嵌入式系統(tǒng)的含義之
4、后,這一節(jié)中介紹使用它們的例子,主要包括:,過程控制制造業(yè)通信、指揮與控制廣義嵌入式計算機(jī)系統(tǒng),1.2.1 過程控制,考察圖1-1所示的簡單例子,計算機(jī)完成單一的活動:通過控制閥門確保管道中液體的均勻流動。,當(dāng)檢測到流量增加時,計算機(jī)必須通過改變閥門角度給予響應(yīng),該響應(yīng)必須在一個有限時間段里發(fā)生以使管道接收端的設(shè)備不致過載。注意,實際響應(yīng)可能涉及復(fù)雜的計算,以算出新的閥門角度。,1.2 實時系統(tǒng)的例子,計算機(jī)的作用。此計算機(jī)同
5、使用傳感器和致動器的設(shè)備進(jìn)行交互。閥門是致動器的一個例子,而溫度和壓力轉(zhuǎn)換器是傳感器的例子。計算機(jī)控制傳感器和致動器的動作以確保在當(dāng)時的時間執(zhí)行正確的設(shè)備操作。需要時,要在受控過程和計算機(jī)之間插入模數(shù)和數(shù)模轉(zhuǎn)換器。,上面的例子只展示了更大控制系統(tǒng)的一個部件。圖1-2說明了嵌入到一個完整過程控制環(huán)境中的實時,1.2.2 制造業(yè),圖1-3圖解說明生產(chǎn)控制計算機(jī)在制造過程中的作用。實際系統(tǒng)由諸如機(jī)床、操作裝置和傳送帶等各種機(jī)械裝置組成。它們
6、都需要由計算機(jī)控制和協(xié)調(diào)。,1.2 實時系統(tǒng)的例子,1.2.3 通信、指揮與控制,圖1-4表示了一個指揮控制系統(tǒng)。,1.2 實時系統(tǒng)的例子,1.2.4 廣義嵌入式計算機(jī)系統(tǒng),的外部特性。通常有一個模塊包含實際控制這些裝置所必需的算法,一個模塊負(fù)責(zé)記錄系統(tǒng)狀態(tài)的變化,一個模塊檢索并顯示這些變化,還有一個模塊同操作員進(jìn)行交互。,一個典型的嵌入式計算機(jī)系統(tǒng)可用圖1-5表示,控制系統(tǒng)操作的軟件可以被編制成若干模塊,它們反映環(huán)境,1.2
7、 實時系統(tǒng)的例子,1.3 實時系統(tǒng)的特征,實時系統(tǒng)具有許多特征(固有的或強(qiáng)加的),以下幾小節(jié)將闡明。顯然,并非所有實時系統(tǒng)都具有所有這些特征,然而,用于實時系統(tǒng)有效編程的任何通用語言(和操作系統(tǒng))都必須有支持這些特征的設(shè)施,實時系統(tǒng)的特征有:,大且復(fù)雜 實數(shù)處理 極其可靠和安全 獨立系統(tǒng)部件的并發(fā)控制,1.3.1 大且復(fù)雜,通常人們認(rèn)為同開發(fā)軟件相關(guān)聯(lián)的大多數(shù)問題都是同大小和復(fù)雜性有關(guān)的問題。編寫小程序不出
8、現(xiàn)重大問題,因為設(shè)計、編碼、維護(hù)和理解都由一個人完成。如果使用這個軟件的人離開了公司或機(jī)構(gòu),另一個人能夠在相對短的時間里學(xué)會這個程序,確實,有一種構(gòu)建這種程序的藝術(shù)或技巧,而且小就是美。 令人遺憾的是,不是所有軟件都有這種理想的“小巧”特征。Lehman和Belady(1985)在試圖描述大系統(tǒng)的特征時,拒絕了那種認(rèn)為龐大就是同指令數(shù)目、代碼行數(shù)或組成一個程序的模塊數(shù)目成正比的簡單而且或許是直觀的概念。他們將龐大同多樣性聯(lián)系起來
9、,將龐大的程度同多樣性的數(shù)量聯(lián)系起來,諸如指令數(shù)目和開發(fā)工作量這樣的傳統(tǒng)指標(biāo),就只是多樣性的特征。,1.3 實時系統(tǒng)的特征,1.3.2 實數(shù)處理,圖1-6舉例說明了一個反饋控制器,這是最普通的形式,但也使用前饋控制器。為了計算出如何改變輸入變量向量才能在輸出向量上產(chǎn)生理想效果,該設(shè)備必須有一個數(shù)學(xué)模型。這些模型的推導(dǎo)屬于另一個學(xué)科—控制,論。設(shè)備的模型常常是一個一階常微分方程組,這些微分方程建立了系統(tǒng)的輸出同設(shè)備的內(nèi)部狀態(tài)和其輸入變
10、量之間的聯(lián)系。改變設(shè)備的輸出涉及求解這些微分方程,以得到所需的輸入值。大多數(shù)物理系統(tǒng)都有慣性,所以改變不是瞬時的。在一個固定時間段里使系統(tǒng)移動到一個新的設(shè)置點上的實時需求,將增加數(shù)學(xué)模型和物理系統(tǒng)所需處理的復(fù)雜性。,1.3 實時系統(tǒng)的特征,由于這些困難、模型的復(fù)雜性、不同輸入和輸出的數(shù)目,大多數(shù)控制器都用計算機(jī)實現(xiàn)。將數(shù)字部件引入到系統(tǒng)里面改變了控制循環(huán)的性質(zhì)。圖1-7是對較早模型的修改。標(biāo)記了*的項目現(xiàn)在是離散值,采樣和保存操作由一
11、個模擬/數(shù)字轉(zhuǎn)換器進(jìn)行,兩個轉(zhuǎn)換器都在計算機(jī)的直接控制之下。,1.3.3 極其可靠和安全,社會越是把要害功能的控制讓位給計算機(jī),就迫使計算機(jī)越是不能失效。銀行之間的自動資金轉(zhuǎn)移系統(tǒng)的失效會導(dǎo)致無法挽回的數(shù)百萬美元的損失,發(fā)電廠的一個有故障部件可能導(dǎo)致重癥監(jiān)護(hù)室的一個關(guān)鍵的生命支持系統(tǒng)的失效,等等,這些頗為驚人的例子說明計算機(jī)硬件和軟件必須是可靠的和安全的。 實時系統(tǒng)的大塊頭和復(fù)雜性加重了可靠性問題。不僅必須考慮到應(yīng)用中固有的、可
12、預(yù)見的困難,還要考慮到有差錯的軟件設(shè)計引入的困難。,1.3 實時系統(tǒng)的特征,1.3.4 獨立系統(tǒng)部件的并發(fā)控制,嵌入式系統(tǒng)通常由計算機(jī)和若干共存的外部構(gòu)件組成,計算機(jī)程序必須同它們同時交互。并行地存在是這些外部現(xiàn)實世界構(gòu)件的本性。對表現(xiàn)出并發(fā)性的系統(tǒng)而言,同它的軟件生產(chǎn)相關(guān)的一個主要問題是如何在程序結(jié)構(gòu)中表達(dá)并發(fā)性,一種方法是把它完全留給程序員,這時,程序員就必須構(gòu)造系統(tǒng)以循環(huán)執(zhí)行一個處理各種并發(fā)任務(wù)的程序序列。,1.3 實時系統(tǒng)
13、的特征,1.3.5 實時設(shè)施,在任何實時系統(tǒng)中,響應(yīng)時間都是決定性的,但是,要設(shè)計和實現(xiàn)保證在所有可能條件下都能在適當(dāng)?shù)臅r候產(chǎn)生適當(dāng)?shù)妮敵鍪欠浅@щy的,為此,在所有時刻充分地利用計算資源常常是不可能的。由于這個原因,實時系統(tǒng)通常被構(gòu)建成處理器的使用都有可觀的空閑能力,以保證“最壞情況行為”不致在系統(tǒng)操作的關(guān)鍵階段產(chǎn)生任何不希望的延遲。 有了適當(dāng)?shù)奶幚砟芰?,需要語言和運(yùn)行時的支持使程序員能夠:,規(guī)定動作進(jìn)行的時間。
14、 規(guī)定動作完成的時間。 對所有時間需求都不能滿足的情況做出響應(yīng)。 對時間需求動態(tài)改變的情況做出響應(yīng)。,1.3 實時系統(tǒng)的特征,1.3.6 同硬件接口的交互,嵌入式系統(tǒng)的特性要求計算機(jī)部件同外部世界交互。它們需要為現(xiàn)實里種類繁多的設(shè)備監(jiān)視傳感器和控制致動器。這些設(shè)備經(jīng)由輸入和輸出寄存器同計算機(jī)交互,它們的操作需求是依賴于設(shè)備和依賴于計算機(jī)的。這些設(shè)備還產(chǎn)生中斷,以通知處理器某些操作已經(jīng)完成或引發(fā)了出
15、錯狀態(tài)。 過去,同設(shè)備的對接要么是留給操作系統(tǒng)去控制,要么需要程序員使用匯編語言插入對寄存器和中斷的控制和操縱?,F(xiàn)在,因為設(shè)備多種多樣,而且和它們相關(guān)的交互具有時間緊迫的本性,所以對它們的控制經(jīng)常必須是直接的,不再經(jīng)過操作系統(tǒng)的功能層次。此外,可靠性需求也反對使用低級編程技術(shù)。,1.3 實時系統(tǒng)的特征,1.3.7 高效的實現(xiàn)和執(zhí)行環(huán)境,由于實時系統(tǒng)對時間的要求極為苛刻,實現(xiàn)效率要比在其他系統(tǒng)中更重要。有趣的是,使用高級語言的
16、主要好處是使程序員能將實現(xiàn)細(xì)節(jié)抽象掉,集中精力去解決手頭的問題,但是,嵌入式計算機(jī)系統(tǒng)程序員不能享受這種好處。他或她必須不斷地關(guān)心使用特定語言功能的代價。例如,對某個輸入的響應(yīng)需要在一毫秒之內(nèi),那么就沒有必要使用一個執(zhí)行時間為一微妙的語言功能!,1.3 實時系統(tǒng)的特征,本講小結(jié),本章中,實時系統(tǒng)被定義為: 任何必須在有限、指定的周期內(nèi)對外部發(fā)生的輸入激勵做出響應(yīng)的信息處理活動或系統(tǒng)。 這種系統(tǒng)分為兩類:,硬實時系統(tǒng):是
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論