版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第4l卷第7期2004年7月計(jì)算機(jī)研究與發(fā)展Vol.4l,No.7July2004JOURNALOFCOMPUTERRESEARCANDDEVELOPMENT!安全關(guān)鍵實(shí)時(shí)操作系統(tǒng)時(shí)間隔離保護(hù)機(jī)制的設(shè)計(jì)與實(shí)現(xiàn)楊仕平桑楠陳慧熊光澤(電子科技大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院()yangsp!摘要為了設(shè)計(jì)高可信的安全關(guān)鍵實(shí)時(shí)操作系統(tǒng)CRTOS2.0,在分析現(xiàn)有操作系統(tǒng)可信性保障機(jī)制的基礎(chǔ)上,提出成都6l0054)了基于時(shí)空隔離保護(hù)機(jī)制構(gòu)建安全關(guān)鍵實(shí)時(shí)操作系統(tǒng)的新思想.空間隔離保護(hù)的目的是防止不同地址空間內(nèi)的程序無(wú)意或惡意越界進(jìn)行非法讀寫,而時(shí)間隔離保護(hù)的目的則是為了防止某程序長(zhǎng)期獨(dú)占或超時(shí)使用處理器而阻止或
2、延遲其他程序的運(yùn)行在改進(jìn)傳統(tǒng)處理器能力預(yù)留機(jī)制的基礎(chǔ)上,基于兩級(jí)調(diào)度的思想,提出了新的.為實(shí)現(xiàn)時(shí)間隔離保護(hù)機(jī)制,實(shí)現(xiàn)方法可從本質(zhì)上增強(qiáng)安全關(guān)鍵實(shí)時(shí)操作系統(tǒng)的可信性.時(shí)空隔離保護(hù)機(jī)制的提出,.關(guān)鍵詞安全關(guān)鍵;空間隔離;時(shí)間隔離;調(diào)度分析;實(shí)時(shí)操作系統(tǒng)中圖法分類號(hào)TP3l6.2DesignandrealizationofsafetyCriticalrealtimeOperatingsystemBasedontemporalisolationsafeguardmechanismsYANGShi-Ping,SANGNan,CENui,andXIONGGuang-Ze(schoolofComPuters
3、cienceandengineering,Unioersityofelectronicscienceandtechnology,Chengdu6l0054)AbstractTodesignhighlydependablesafetycriticalrealtimeoperatingsystemCRTOS2.0,thestatussofexistingoperatingsystemsisfirstlyanalyzed.SincesafetyCuoofdependabilitysafeguardmechanismcriticalsystemsreCuiresthatbothtemporalands
4、patialisolationsafeguardamongdifferentprocessesbemaintained,anovelapproachfordesigningCRTOS2.0isputforward,whichisbasedontemporalandspatialisolationsafeguardmechanism.Thespatialisolationsafeguardmechanismuseshardwarememoryprotectiontoisolateandprotectkernelitselfandusertasksfromincorrectoperationcau
5、sedbyaccidentalandthememoryprotectionprovidessupportformultipleprotectedvirtualerrorsormalicioustampering,thepurposeoftemporalisolationsafeguardaddressspacesdesignedforworst-caseperformance.owever,mechanismistopreventanapplicationfromoverrunningitsallocatedCuotaofresourceusageanddelaytheprogressofot
6、herintegratedapplicationtasks.Inordertorealizetemporalisolationsafeguardmechanism,thetraditionalapproachbasedonprocessorcapacityreservationisimproved,andanovelimplementationapproachbasedontwo-levelhierachicalschedulingapproachisbroughtforwardanddiscussedindetail.ThedependabilityofCRTOS2.0isenhancedw
7、ithtemporalandspatialisolationsafeguardmechanisms.Keywordssystemsafetycritical;spatialisolation;temporalisolation;schedulinganalysis;realtimeoperating速發(fā)展,實(shí)時(shí)計(jì)算日益廣泛應(yīng)用于航空航天、國(guó)防、1引言交通運(yùn)輸、核電能源和醫(yī)療衛(wèi)生等諸多安全關(guān)鍵系l(統(tǒng)safetycriticalsystem,SCS).這些系統(tǒng)之所以稱為SCS,是因?yàn)樗鼈円坏┦?huì)導(dǎo)致生命財(cái)產(chǎn)在后PC時(shí)代,隨著我國(guó)國(guó)民經(jīng)濟(jì)信息化的迅收稿日期:修回日期:2003-06-02;20
8、04-03-05基金項(xiàng)目:國(guó)家“十五”預(yù)研基金項(xiàng)目(;國(guó)防科技預(yù)研基金項(xiàng)目(4l3l5040l06)2000J6.7.l.DZ0206)7期楊仕平等:安全關(guān)鍵實(shí)時(shí)操作系統(tǒng)時(shí)間隔離保護(hù)機(jī)制的設(shè)計(jì)與實(shí)現(xiàn)1 07的重大損失以及環(huán)境可能遭受嚴(yán)重的破壞.如震驚全世界的前蘇聯(lián)切爾諾貝利核事故、美國(guó)亞利安娜V型火箭發(fā)射失敗及其最近哥倫比亞號(hào)航天飛機(jī)的墜毀,都給人們留下了慘痛的教訓(xùn).為減少或防2止SCS發(fā)生災(zāi)難性事故,增強(qiáng)系統(tǒng)的可信性止或延遲其他任務(wù)的執(zhí)行,進(jìn)而可能導(dǎo)致整個(gè)系統(tǒng)崩潰不同地址空間內(nèi)的程序非法越界讀寫.除此,也是經(jīng)常發(fā)生的錯(cuò)誤作為計(jì)算機(jī)系統(tǒng)中的.可見(jiàn),兩種重要資源處理器與內(nèi)存,必須同時(shí)對(duì)其進(jìn)行有效
9、保護(hù),否則將會(huì)因一個(gè)或幾個(gè)任務(wù)中的設(shè)計(jì)缺陷而導(dǎo)致整個(gè)計(jì)算機(jī)系統(tǒng)的崩潰.由分析可知,為保證SCS的可信性,介于各任務(wù)或應(yīng)用子系統(tǒng)間的隔離保護(hù)機(jī)制是十分必要的,其目的是把軟件設(shè)計(jì)缺陷所導(dǎo)致的失效影響控制在一個(gè)較小的局部范圍(是重點(diǎn)所在dependability).其中可信性是指系統(tǒng)在任務(wù)開(kāi)始時(shí)且可用性給定的情況下,在規(guī)定的時(shí)間和環(huán)境內(nèi)能夠使用且能完成既定功能的能力,即系統(tǒng)“動(dòng)則成功”的能力實(shí)時(shí)操作系統(tǒng).而在SCS中,是惟一緊靠硬件的系統(tǒng)軟件,其本身的可信性是其他軟件可信職能的根基,在此本文稱SCS中的實(shí)時(shí)操作系統(tǒng)為安全關(guān)鍵實(shí)時(shí)操作系統(tǒng)(safetycriticaltimeOperatingsyst
10、em,SCRTOS).由此可見(jiàn),為增強(qiáng)SCS的可信性,設(shè)計(jì)高可信的SCRTOS是重點(diǎn)所在,其目標(biāo)是使操作系統(tǒng)在其工作范圍內(nèi)提供盡可能強(qiáng)的安全防范機(jī)制,在用戶應(yīng)用程序與系統(tǒng)資源之間進(jìn)行符合可信策略的調(diào)度,進(jìn)而防止發(fā)生災(zāi)難性事故.目前,有關(guān)SCRTOS的高可信保障機(jī)制已經(jīng)成為開(kāi)發(fā)商和用戶關(guān)注的焦點(diǎn),是學(xué)術(shù)界和商界亟待研究解決的熱點(diǎn)課題.我們正是為了研究課題高可信賴的嵌入式實(shí)時(shí)操作系統(tǒng)S2.0,進(jìn)而展開(kāi)相關(guān)研究工作的.為保護(hù)計(jì)算機(jī)系統(tǒng)中的兩種重要資源處理器與內(nèi)存,本文首先說(shuō)明了實(shí)現(xiàn)時(shí)間與空間隔離保護(hù)的必要性,其中時(shí)間隔離保護(hù)是為了確保某任務(wù)或子系統(tǒng)不會(huì)長(zhǎng)期獨(dú)占或超時(shí)使用處理器而阻止或延遲其他子系統(tǒng)的
11、運(yùn)行,而空間隔離保護(hù)則是為了保證各應(yīng)用子系統(tǒng)及操作系統(tǒng)內(nèi)核有各自獨(dú)立的地址空間,同時(shí)防止不同地址空間內(nèi)的程序發(fā)生無(wú)意或惡意越界讀寫等非法操作.緊接著本文分析了時(shí)空隔離保護(hù)機(jī)制在現(xiàn)有實(shí)時(shí)操作系統(tǒng)中的應(yīng)用現(xiàn)狀,同時(shí)指出了時(shí)空隔離保護(hù)機(jī)制是構(gòu)建高可信S的關(guān)鍵所在.然后,本文重點(diǎn)研究了時(shí)間隔離保護(hù)機(jī)制的實(shí)現(xiàn)方式,提出了確定時(shí)間隔離保護(hù)區(qū)間大小的方法,并通過(guò)具體實(shí)例進(jìn)行了例證.最后,就時(shí)間隔離保護(hù)機(jī)制在我室所開(kāi)發(fā)的嵌入式實(shí)時(shí)操作系統(tǒng)CRTOS2.0中的實(shí)現(xiàn)方式進(jìn)行了討論,同時(shí)也進(jìn)行了相關(guān)的性能測(cè)試.時(shí)間隔離與空間隔離保護(hù)的必要性通常,SCRTOS屬于多任務(wù)操作系統(tǒng),且使用優(yōu)先級(jí)調(diào)度算法調(diào)度各任務(wù).假設(shè)由
12、于軟件設(shè)計(jì)不當(dāng)而導(dǎo)致某任務(wù)長(zhǎng)期獨(dú)占或超時(shí)使用處理器,將會(huì)阻內(nèi) .由于失效影響可在時(shí)間與空間上蔓延,所以相應(yīng)的隔離保護(hù)機(jī)制也應(yīng)從空間與時(shí)間兩個(gè)方面進(jìn)行,其中空間隔離保護(hù)機(jī)制的主要目的是保證各應(yīng)用子系統(tǒng)及操作系統(tǒng)內(nèi)核有各自獨(dú)立的地址空間,同時(shí)防止不同地址空間內(nèi)的程序發(fā)生無(wú)意或惡意越界讀寫等非法操作;而時(shí)間隔離保護(hù)機(jī)制則是為了確保某子系統(tǒng)不會(huì)長(zhǎng)期獨(dú)占或超時(shí)使用處理器而阻止或延遲其他子系統(tǒng)的運(yùn)行.目前,通用操作系統(tǒng)中的時(shí)間隔離保護(hù)機(jī)制主要通過(guò)處理器能力預(yù)留方法來(lái)實(shí)現(xiàn) ,而空間隔離保護(hù)機(jī)制則通過(guò)內(nèi)存保護(hù)來(lái)實(shí)現(xiàn),即通過(guò)處理器的內(nèi)存管理單元及對(duì)外設(shè)的尋址方式(主要采用內(nèi)存、外設(shè)統(tǒng)一尋址的方式)來(lái)實(shí)現(xiàn)5.對(duì)于
13、空間隔離保護(hù),在開(kāi)發(fā)設(shè)計(jì)“十五”項(xiàng)目CRTOS2.0時(shí)6,我們主要借鑒了L Linux,VxWOrIs中的內(nèi)存管理技術(shù),設(shè)計(jì)出了不均等頁(yè)面的實(shí)時(shí)內(nèi)存管理技術(shù)7.鑒于篇幅有限,本文在此不對(duì)空間隔離保護(hù)機(jī)制做詳細(xì)論述,而是重點(diǎn)研究時(shí)間隔離保護(hù)機(jī)制的設(shè)計(jì)與實(shí)現(xiàn).通用實(shí)時(shí)操作系統(tǒng)的局限性眾所周知,處理器是計(jì)算機(jī)系統(tǒng)中的重要資源之一,操作系統(tǒng)必須對(duì)其進(jìn)行有效保護(hù).否則,將可能存在某應(yīng)用程序長(zhǎng)期獨(dú)占處理器而導(dǎo)致其他應(yīng)用程序餓死,或?qū)е抡麄€(gè)系統(tǒng)崩潰,如不斷fOrI()進(jìn)程而耗盡整個(gè)內(nèi)存空間.由此可見(jiàn),保護(hù)處理器的主要目的是確保某任務(wù)可獨(dú)占預(yù)先分配的CPU處理時(shí)間,且不會(huì)超時(shí)使用處理器而延遲其他任務(wù)的運(yùn)行,即
14、把單個(gè)任務(wù)的失效影響(獨(dú)占或超時(shí)使用處理器)盡可能地限制在一個(gè)局部時(shí)間范圍內(nèi),防止這種失效影響不斷蔓延(表現(xiàn)為長(zhǎng)時(shí)間獨(dú)占或嚴(yán)重超時(shí)使用處理器)而危及整個(gè)系統(tǒng).由前可知,防止獨(dú)占或超時(shí)使用處理器持續(xù)發(fā)生的有效措施便是時(shí)間隔離.然而,目前具有時(shí)間隔離保護(hù)功能的實(shí)時(shí)操作系統(tǒng)很少,這是由于其固有的單級(jí)調(diào)度結(jié)構(gòu)(如圖1real“十五”CRTOSCRTO"!1308計(jì)算機(jī)研究與發(fā)展2004年所示)所決定的.9鑒了交換以太網(wǎng)中的思想,對(duì)資源(處理器)的競(jìng)爭(zhēng)范圍進(jìn)行了分割,使資源競(jìng)爭(zhēng)只在各個(gè)子系統(tǒng)范圍內(nèi)存在,這樣當(dāng)一個(gè)子系統(tǒng)中的某任務(wù)失效時(shí),如獨(dú)占處理器,將不會(huì)影響另一個(gè)子系統(tǒng)中任務(wù)的運(yùn)行本文所設(shè)計(jì)
15、的.基于分割資源競(jìng)爭(zhēng)范圍的思想,強(qiáng)制時(shí)間隔離保護(hù)原理如圖2所示:圖1傳統(tǒng)的單級(jí)調(diào)度結(jié)構(gòu)模型由圖1所示的單級(jí)調(diào)度結(jié)構(gòu)模型可以看出,所有任務(wù)直接運(yùn)行在處理器上,共享處理器的處理能力.當(dāng)由于設(shè)計(jì)錯(cuò)誤而導(dǎo)致高優(yōu)先級(jí)任務(wù)長(zhǎng)期或超時(shí)占用處理器時(shí),這類問(wèn)題不但很難解決,而且對(duì)其他任務(wù)的影響也是非常直接的.如任務(wù)1獨(dú)占處理器時(shí),其余!-1個(gè)任務(wù)將永遠(yuǎn)不可能得到執(zhí)行機(jī)會(huì).為了在SCRTOS中實(shí)現(xiàn)時(shí)間隔離保護(hù)功能,Mercer與Savage等人做了大量的前沿研究工作8,但他們都是通過(guò)處理器處理能力預(yù)留的思想來(lái)實(shí)現(xiàn)時(shí)間隔離保護(hù)的,這種基于預(yù)留機(jī)制的時(shí)間隔離保護(hù)是以犧牲低優(yōu)先級(jí)任務(wù)的運(yùn)行時(shí)間為代價(jià)的,它只能保證高優(yōu)先
16、級(jí)任務(wù)的執(zhí)行時(shí)間.為設(shè)計(jì)高可信的SCRTOS,本文將在下面探討實(shí)現(xiàn)時(shí)間隔離保護(hù)機(jī)制的新方法.圖2基于強(qiáng)制時(shí)間隔離保護(hù)區(qū)的調(diào)度模型由圖2可以看出,基于強(qiáng)制時(shí)間隔離區(qū)的調(diào)度模型實(shí)際上是把所有任務(wù)的運(yùn)行時(shí)間劃分為多個(gè)時(shí)間隔離保護(hù)區(qū),即多個(gè)時(shí)間片,且每個(gè)時(shí)間片內(nèi)可運(yùn)行一個(gè)或多個(gè)任務(wù).在每個(gè)時(shí)間隔離保護(hù)區(qū)結(jié)束時(shí),處理器被強(qiáng)制轉(zhuǎn)交給下一個(gè)時(shí)間隔離保護(hù)區(qū)中的任務(wù).這種基于強(qiáng)制時(shí)間隔離保護(hù)區(qū)的調(diào)度模型可把任務(wù)的失效影響(獨(dú)占處理器)控制在該任務(wù)所在的時(shí)間隔離保護(hù)區(qū)內(nèi),如任務(wù)1獨(dú)占處理器時(shí),只會(huì)阻止任務(wù)2,而不會(huì)阻止或延遲任務(wù)4,3的執(zhí)行,從而實(shí)現(xiàn)了任務(wù)(群)間的時(shí),!-1,!的執(zhí)行,5,間隔離保護(hù).下面本文將
17、詳細(xì)研究如何實(shí)現(xiàn)這種基于強(qiáng)制時(shí)間隔離保護(hù)區(qū)的調(diào)度模型.!"#基于兩級(jí)結(jié)構(gòu)化調(diào)度機(jī)制的時(shí)間隔離保護(hù)模型由圖2及上面的分析可知,實(shí)現(xiàn)時(shí)間隔離保護(hù)區(qū)的關(guān)鍵在于處理器處理能力的強(qiáng)制轉(zhuǎn)交,即在每個(gè)時(shí)間隔離保護(hù)區(qū)結(jié)束時(shí),處理器應(yīng)被強(qiáng)制轉(zhuǎn)交給下一個(gè)時(shí)間隔離保護(hù)區(qū)中的任務(wù)何時(shí)轉(zhuǎn)交.然而,及怎樣轉(zhuǎn)交處理器是實(shí)現(xiàn)時(shí)間隔離保護(hù)的重點(diǎn)所在本文采用了如圖3所示的兩級(jí)結(jié).為解決此問(wèn)題,10構(gòu)化調(diào)度機(jī)制.在圖3所示的兩級(jí)結(jié)構(gòu)化調(diào)度機(jī)制中,操作系!時(shí)間隔離保護(hù)機(jī)制的新實(shí)現(xiàn)由前可知,時(shí)間隔離保護(hù)的主要目的是確保某任務(wù)不會(huì)獨(dú)占或超時(shí)使用處理器而阻止或延遲其他任務(wù)的運(yùn)行,同時(shí)把這種獨(dú)占或超時(shí)使用處理器的失效影響盡可能地控
18、制在很小的時(shí)間范圍內(nèi).而在圖1所示的單級(jí)調(diào)度結(jié)構(gòu)模型中,所有任務(wù)都處于同一個(gè)時(shí)間范圍內(nèi),一個(gè)任務(wù)失效(如獨(dú)占處理器)將會(huì)直接影響到所有其他任務(wù).為了把這種失效影響控制在一個(gè)較小的時(shí)間范圍內(nèi),必須從運(yùn)行時(shí)間上對(duì)任務(wù)進(jìn)行強(qiáng)制隔離我們借.為實(shí)現(xiàn)強(qiáng)制隔離,圖3基于兩級(jí)結(jié)構(gòu)化調(diào)度機(jī)制的時(shí)間隔離保護(hù)模型7期楊仕平等:安全關(guān)鍵實(shí)時(shí)操作系統(tǒng)時(shí)間隔離保護(hù)機(jī)制的設(shè)計(jì)與實(shí)現(xiàn)1309統(tǒng)對(duì)各應(yīng)用任務(wù)的調(diào)度是通過(guò)高低兩級(jí)調(diào)度完成的操作系統(tǒng)首先使用周期性調(diào)度方法.具體實(shí)現(xiàn)時(shí),(如時(shí)間片輪轉(zhuǎn))調(diào)用各子系統(tǒng)服務(wù)器,即首先為各子系統(tǒng)服務(wù)器分配與之相應(yīng)的處理器時(shí)間,然后各子系統(tǒng)服務(wù)器再在所分配的處理器時(shí)間段內(nèi)使用優(yōu)先級(jí)調(diào)度方法(如
19、速率單調(diào)算法)調(diào)度各任務(wù).下面將詳細(xì)說(shuō)明兩級(jí)結(jié)構(gòu)化調(diào)度機(jī)制的實(shí)現(xiàn)方式.!"#兩級(jí)結(jié)構(gòu)化調(diào)度模型的實(shí)現(xiàn),!1不是在能力為"a的子系統(tǒng)服務(wù)器Sa中被調(diào)度,而是在處理器能力為"a的專用處理器上被調(diào)度相對(duì)于處理器能力為1的標(biāo)準(zhǔn)處理.由于"1,a器而言,所有任務(wù)的計(jì)算時(shí)間將增加,即為根據(jù)"a中的充分必要調(diào)度條件可以Lehoczky在文獻(xiàn)13得知,如果子系統(tǒng)Aa內(nèi)的1個(gè)任務(wù)!,2,!1!1可被處理器能力為"則存在時(shí)間a的專用處理器調(diào)度,由第4.1節(jié)的內(nèi)容可知,在實(shí)現(xiàn)時(shí)間隔離保護(hù)機(jī)制時(shí),系統(tǒng)中的所有任務(wù)不應(yīng)直接由處理器調(diào)度,而應(yīng)按功能的不同把所有任
20、務(wù)劃分為m個(gè)子系統(tǒng)a,且在每個(gè)子系統(tǒng)內(nèi)都包含一個(gè)子系統(tǒng)服務(wù)器Sa,該服務(wù)器使用優(yōu)先級(jí)搶占調(diào)度算法調(diào)度Aa中的各任務(wù),并同時(shí)和其他子系統(tǒng)中的服務(wù)器一起共享處理器.另設(shè)子系統(tǒng)Aa內(nèi)包含1個(gè)任務(wù)!1,!2,!1,每個(gè)任務(wù)!i用三元組Ci,Di,Ti表示,其中Ti為任務(wù)!i的周期,Ci為任務(wù)!i的最壞執(zhí)行時(shí)間,Di為任務(wù)!i的死限(deadline),且滿足CiDiTi.為便于后面分析子系統(tǒng)服務(wù)器Sa的可調(diào)度性,我們首先作如下定義:定義$"服務(wù)器能力.不失一般性,假設(shè)標(biāo)準(zhǔn)處理器的總處理速率為1,當(dāng)把服務(wù)器Sa看做一個(gè)虛擬處理器時(shí),服務(wù)器能力"a是指服務(wù)器Sa的處理速率與標(biāo)準(zhǔn)處理器總
21、處理速率的比值.這個(gè)比值表示服務(wù)器Sa占用標(biāo)準(zhǔn)處理器總處理速率的比例,所以有0"a1.在SCRTOS中,假設(shè)操作系統(tǒng)以固定的周期#a周期性地調(diào)度子系統(tǒng)服務(wù)器Sa,而在每個(gè)子系統(tǒng)周期#a內(nèi),子系統(tǒng)服務(wù)器Sa可使用"a#a個(gè)時(shí)間單元調(diào)度子系統(tǒng)內(nèi)的任務(wù),其中"a1,且在其余時(shí)間間隔#a-"a#a內(nèi),子系統(tǒng)服務(wù)器Sa被阻塞.當(dāng)子系統(tǒng)服務(wù)器S用速率單調(diào)調(diào)度算法11,a使12(ratemonotonicalgorithm,RMA)調(diào)度各任務(wù)時(shí),設(shè)Sa內(nèi)的1個(gè)實(shí)時(shí)任務(wù)按優(yōu)先級(jí)關(guān)系排序?yàn)?1!1-1!1,即!1的優(yōu)先級(jí)最高,!1的優(yōu)先級(jí)最低.當(dāng)子系統(tǒng)Aa中的1個(gè)任務(wù)!1
22、,!2,!1在同一時(shí)刻I0=0被初始化時(shí),則在0,I(I0)內(nèi),優(yōu)先級(jí)高于或等于!i的任務(wù)所要求的最壞累積處理器時(shí)間i為Wi(I)=】Cj>IT,Lehoczky13證明了j=1j在時(shí)間段0,I內(nèi)子系統(tǒng)Aa中的任務(wù)!i可被調(diào)度i的條件為Wi(I)I,即】Cj>TjI成立.j=1現(xiàn)在我們假設(shè)子系統(tǒng)Aa中的1個(gè)任務(wù)!1,!2,IGHi=ITj】j=1,2,i;I=1,2,DiTjUDi使下式成立:iWi("a,I)=】j=1"aTjI.(1)式(1)中的Wi("a,I)表示在時(shí)間段0,I內(nèi)且處理器的能力為"a時(shí),優(yōu)先級(jí)高于或等于!i的任務(wù)所要求的
23、最壞累積處理器時(shí)間.為便于下面討論,本文在此定義Bi("a)=maxI-Wi(,GHi"a,II)B(0"a)=)i=1m,2ax,Bi("a.由定義可知,當(dāng)任務(wù),1!i可調(diào)度時(shí),Bi("a)表示在時(shí)間段0,Di內(nèi)處理器沒(méi)有運(yùn)行任何優(yōu)先級(jí)高于或等于!i的任務(wù)的時(shí)間,在此稱Bi("a)為時(shí)間段0,Di內(nèi)的i級(jí)非活動(dòng)周期,同時(shí)稱B0("a)為子系統(tǒng)Aa中的最小非活動(dòng)周期.由上面的分析可知,當(dāng)子系統(tǒng)Aa運(yùn)行在處理能力為"a("a1)的專用處理器上時(shí),子系統(tǒng)Aa中的各任務(wù)均可被調(diào)度.當(dāng)采用如圖3所示的兩級(jí)結(jié)構(gòu)化調(diào)
24、度模型時(shí),假設(shè)此時(shí)處理器的總處理能力為1.0,則我們需要證明在每個(gè)周期#a中,當(dāng)分配給子系統(tǒng)服務(wù)器Sa的處理器能力為"a時(shí),子系統(tǒng)Aa中的各任務(wù)均可被調(diào)度,即通過(guò)比較運(yùn)行于子系統(tǒng)服務(wù)器Sa與處理器能力為"a的專用處理器上任務(wù)集的可調(diào)度性,證明下面的定理1成立.定理$"在基于兩級(jí)結(jié)構(gòu)化調(diào)度模型的安全關(guān)鍵實(shí)時(shí)操作系統(tǒng)中,子系統(tǒng)Aa可被周期為#a、服務(wù)器能力為"a的子系統(tǒng)服務(wù)器Sa調(diào)度的條件為!子系統(tǒng)Aa可在處理器能力為"a的專用處理器上被調(diào)度;"不等式#a-#a"aB0("a),即#aB0("a)1-&quo
25、t;a)成立.證明.設(shè)運(yùn)行于子系統(tǒng)服務(wù)器Sa中的任務(wù)除子系統(tǒng)Aa的1個(gè)任務(wù)!1,!2,!1外,還包括一個(gè)額外的任務(wù)!0.額外任務(wù)!0在每個(gè)周期#a內(nèi)都被調(diào)度,計(jì)算時(shí)間為C0=#a-"a#a,且任務(wù)!0的優(yōu)先級(jí)最高,即有!1!1-1!1!0,于是任務(wù)!0可搶占子系統(tǒng)Aa中的其他任務(wù).則我們需要證明A(1310計(jì)算機(jī)研究與發(fā)展2004年的是:即使由于任務(wù)T的存在而導(dǎo)致Ae中的任務(wù)0被搶占,Ae中的任意任務(wù)Ti也能在其死限D(zhuǎn)i到達(dá)之前完成其計(jì)算中的充分必要調(diào)度.根據(jù)文獻(xiàn)13其中Gi=條件可以得知,如果存在I Hi Gi,i即任務(wù)的完成時(shí)延等于各任為定理1中的條件",務(wù)死限之前的最
26、小非活動(dòng)周期證畢.!"#子系統(tǒng)周期!及服務(wù)器能力"!的確定由第4.2節(jié)的內(nèi)容可知,定理1實(shí)質(zhì)上提供了的方法,即確定子系統(tǒng)服務(wù)一種確定參數(shù)對(duì)(Oe,e)T器Se被調(diào)度的頻率(大小為1以及應(yīng)在每周期e)TDi,使lTl=1,2,e eTj=1TjC0 Cj則任務(wù)TII成立,.e i在服務(wù)器Se上可調(diào)度TOe內(nèi)分配多大的處理器能力e去調(diào)度子系統(tǒng)Ae中T的各任務(wù)(O.本節(jié)將詳細(xì)研究如何確定參數(shù)對(duì)e,另外假設(shè)任務(wù)Ti可在處理器能力為Oe的專用處理器上被調(diào)度,則存在時(shí)間Ii Hi,使Bi(Oe)=Ii -Wi(Oe,Ii ) B0(Oe)0成立,其中i=1,7.由前可知,Wi(Oe,I
27、i)是時(shí)間Ii的非遞減函數(shù),可假設(shè)Ii=mTe+S,其中S Te,如果S (0Oe),則有iCjIi Tj+C0Ii j=1Te=eWi(Oe,Ii )+(m+1)C0 e(Ii -B(0Oe)+(m+1)C0=e(Ii -B(0Oe)+(m+1()1-Oe)Te e(Ii -B(0Oe)+(1-Oe()Ii -S)+B(0Oe)=i +(1-Oe()B0(Oe)-S) Ii .(2)相反,如果S B0(Oe),那么在I/i=mTe Ii 時(shí),則有iCjI/iTj+C0I/ij=1TeOe(Ii -B(0O)+mC0 Oe(Ii -S)+m(1-Oe)Te=OeIi+(1-Oe)I/i=I/i
28、.(3)由于I/i Gi,所以當(dāng)分配給子系統(tǒng)Ae的處理器能力為Oe時(shí),子系統(tǒng)Ae中的各任務(wù)可被服務(wù)器e調(diào)度.由條件!的證明過(guò)程可知,通過(guò)比較服務(wù)器Se上的任務(wù)執(zhí)行序列與處理能力為Oe的專用處理器上的任務(wù)執(zhí)行序列可以看出,在每個(gè)子系統(tǒng)周期Te末,服務(wù)器Se使用了與專用處理器相同的處理能力(大小為Oe)運(yùn)行Ae中的各任務(wù),也即定理1中的條件!成立.另外,當(dāng)Ae中的各任務(wù)運(yùn)行于專用處理器上時(shí),由于此時(shí)不存在假定的特殊任務(wù)T0,Ae中的各任務(wù)將不會(huì)被任務(wù)T0阻塞,因而它們可在每個(gè)周期e內(nèi)更早的完成.當(dāng)各任務(wù)運(yùn)行于服務(wù)器Se之上時(shí),由于服務(wù)器Se還要與系統(tǒng)中的其他子系統(tǒng)服務(wù)器競(jìng)爭(zhēng)處理器,所以很有必要增加
29、額外的條件限制服務(wù)器Se中各任務(wù)的完成時(shí)延,該限制條件即Te).為方便起見(jiàn),假設(shè)子系統(tǒng)服務(wù)器Se使用RMA算法調(diào)度子系統(tǒng)Ae中的各任務(wù),同時(shí)對(duì)處理器能力進(jìn)行歸一化處理,即令處理器的處理能力為1.0.Liu等人11證明了當(dāng)處理器能力為1.0且使用RMA算法調(diào)度各任務(wù)時(shí),處理器的利用率Pe不會(huì)7超過(guò)7(217-1),即有式Pe=7(217-1)i=1Ti成立.于是可推知當(dāng)處理器能力為Oe(Oe1)且使用RMA調(diào)度算法調(diào)度各任務(wù)時(shí),由于此時(shí)處理器的處理速率降低,則任務(wù)的計(jì)算時(shí)間將增加,即由Ci改變?yōu)镃iOe,于是可得此時(shí)處理器的利用率P/e77為 CCi=1OeT,且有iP/e= i=1OeTi 7
30、(217-1)成立.然而當(dāng)各子系統(tǒng)共享處理器能力為1.0的處理器時(shí),則各子系統(tǒng)內(nèi)的任務(wù)可調(diào)度時(shí)處理器的利用率為Pe(而不是P/e),于是可推知在SCRTOS中,不等式Pe Oe7(217-1)成立,即Pe(7(217-1) Oe成立.由此可知分配給子系統(tǒng)服務(wù)器Se的服務(wù)器能力Oe應(yīng)不小于Pe(7(217-1).這樣便確定了子系統(tǒng)服務(wù)器Se所需的最小處理器能力Oemin,即有Oemin=Pe(7(217-1).在各Oe之和不大于1.0的前提下,可適當(dāng)增加各子系統(tǒng)服務(wù)器Se的emin值,這樣便可最終確定出各子系統(tǒng)服務(wù)器Se的e.在確定好各Oe的值后,便可根據(jù)定理1中的條件":Te B(0
31、Oe)(1-Oe),確定出與Oe相對(duì)應(yīng)的子系統(tǒng)周期Te,到此便完全確定出了各子系統(tǒng)服務(wù)器Se的參數(shù)對(duì)(Oe,Te).為了用實(shí)例證明定理1的正確性,假設(shè)存在如表1所示的4個(gè)子系統(tǒng),各子系統(tǒng)中包含幾個(gè)周期性任務(wù)(用三元組Ci,Di,Ti表示).為方便起見(jiàn),假設(shè)各任務(wù)的死限D(zhuǎn)i等于其周期Ti,且在每個(gè)周期Te內(nèi)使用RMA算法調(diào)度子系統(tǒng)Ae中的各任務(wù).2BOOOOISTOO7期楊仕平等:安全關(guān)鍵實(shí)時(shí)操作系統(tǒng)時(shí)間隔離保護(hù)機(jī)制的設(shè)計(jì)與實(shí)現(xiàn)表!"個(gè)子系統(tǒng)中的任務(wù)參數(shù)任務(wù)( , , )子系統(tǒng)12=0.24!1311ms子系統(tǒng)22=0.17!子系統(tǒng)33=0.26!子系統(tǒng)44=0.03!(3,100,1
32、00)(8,110,110)(9,160,160)(13,260,260)(10,330,330)(3,50,50)(4,90,90)(4,120,120)(6,170,170)(6,78,78)(9,110,110)(16,160,160)(1,80,80)(3,140,140)由表1可知,運(yùn)行完子系統(tǒng)1中的各任務(wù)后所,即得到的處理器利用率!1=0.24調(diào)度性,主要目的在于確定參數(shù)對(duì)(".由于分 , )#配給各子系統(tǒng)的執(zhí)行周期并不一定需要連續(xù),因而可以在操作系統(tǒng)中靈活地構(gòu)建周期性調(diào)度器,即確定各時(shí)間隔離區(qū)間的大小可使操作.為簡(jiǎn)單起見(jiàn),系統(tǒng)中的調(diào)度周期 OS為各子系統(tǒng)調(diào)度周期# 的1
33、4最小值(,即 OS=min.對(duì)于表1中的4個(gè)子 )#的一個(gè)可行分系統(tǒng),前面已經(jīng)得到了參數(shù)對(duì)(" , )#1! 10.24,100110160260330同理可計(jì)算出其他子系統(tǒng)的處理器利用率分別為0.17,0.26,0.03.為確定出各子系統(tǒng)服務(wù)器 的參數(shù)對(duì)(,應(yīng)采用前面的方法首先確定出各子" , )#分系統(tǒng)服務(wù)器 .如對(duì)于子系統(tǒng)1, 的處理能力"的處理器能力"不應(yīng)小于配給子系統(tǒng)服務(wù)器 11)( (即"=0.245>(21521 -1)0.32,1min=!)-1)=0.32.同樣可計(jì)算出分配給子系統(tǒng)服務(wù)器,3,的最小處理器能力"
34、;,3min,分 "2 42min"4min別為0.22,0.33,0.04.在各" 的總和不大于1的情,況下可適當(dāng)增大所計(jì)算出的最小處理器能力"1min,2=0.28,4=0.06便是4個(gè)如""1=0.32"3=0.34"子系統(tǒng)的一組可行處理器能力分配.當(dāng)分配好各子系統(tǒng)的處理器能力"便可由定理1中的條件!確 后,定出與".最后便可以得到4 相應(yīng)的子系統(tǒng)周期# 個(gè)子系統(tǒng)參數(shù)對(duì)(的一組可行分配為("0.32, , )#(,(,(,36)0.28,59)0.34,28)0.06,57).&
35、quot;#"時(shí)間隔離區(qū)間大小的確定本文在前面分析了子系統(tǒng)及其內(nèi)部各任務(wù)的可5配為(0.32,(0.28,(0.34,(0.06,36)59)28)所以,由于此時(shí)的最小子系統(tǒng)周期#s,57) 為28m操作系統(tǒng)中調(diào)度器的調(diào)度周期 OS可設(shè)為28m同s,(,(時(shí)4個(gè)子系統(tǒng)的可行分配將從0.32,36)0.28,(0.34,(0.06,轉(zhuǎn)換為(0.32,59)28)57)28)(,(0.28,28)0.34,28)0.06,28).當(dāng)操作系統(tǒng)以每28m分配給4個(gè)子系統(tǒng)的s調(diào)度4個(gè)子系統(tǒng)時(shí),時(shí)間分別為8.96ms=28>0.32ms,7.84ms=28>0.28ms,9.52ms
36、=28>0.34ms,1.68ms=28>即與各子系統(tǒng)相對(duì)應(yīng)的時(shí)間隔離區(qū)間大小0.06ms,分別為8.96ms,7.84ms,9.52ms,1.68ms.圖4為操作系統(tǒng)中調(diào)度器的調(diào)度周期 OS等于28ms時(shí)的時(shí)間隔離區(qū)間序列.除了操作系統(tǒng)周期性地調(diào)度子系統(tǒng)服務(wù)器外,子系統(tǒng)服務(wù)器還要調(diào)度其內(nèi)部的各任務(wù).為了說(shuō)明怎樣使用優(yōu)先級(jí)調(diào)度算法調(diào)度每個(gè)子系統(tǒng)內(nèi)的任務(wù)流,我們?nèi)允褂帽?中的例子.由表1可知,在子系統(tǒng)3內(nèi)包含3個(gè)實(shí)時(shí)任務(wù),處理器圖4基于兩級(jí)結(jié)構(gòu)化調(diào)度模型的時(shí)間隔離保護(hù)調(diào)度序列1312計(jì)算機(jī)研究與發(fā)展2004年將在每28m分s內(nèi)為子系統(tǒng)3的子系統(tǒng)服務(wù)器!3配使用RMA調(diào)度9.52ms.
37、假設(shè)子系統(tǒng)服務(wù)器!3算法調(diào)度子系統(tǒng)內(nèi)的各任務(wù),則在所分配的9.52ms內(nèi),3個(gè)實(shí)時(shí)任務(wù)的調(diào)度序列如圖4的上半部所示.給即將運(yùn)行的子系統(tǒng),該子系統(tǒng)再在所分配的時(shí)間片內(nèi)調(diào)度各應(yīng)用任務(wù).而圖5所示的調(diào)度控制流程圖正是整個(gè)時(shí)間隔離保護(hù)機(jī)制的實(shí)現(xiàn)流程,其中的定時(shí)中斷服務(wù)器主要用于實(shí)現(xiàn)時(shí)間隔離、子系統(tǒng)運(yùn)行環(huán)境切換等功能.5時(shí)間隔離保護(hù)機(jī)制在CRTOS中的實(shí)現(xiàn)“九五”期間CRTOS是我校實(shí)時(shí)系統(tǒng)研究室在開(kāi)發(fā)的擁有自主知識(shí)產(chǎn)權(quán)的嵌入式實(shí)時(shí)操作系統(tǒng),它的2.0版本正處于開(kāi)發(fā)之中“十五”項(xiàng)目研.結(jié)合究高可信賴嵌入式實(shí)時(shí)操作系統(tǒng)的需要,我們提出了基于時(shí)空隔離保護(hù)機(jī)制構(gòu)建安全關(guān)鍵實(shí)時(shí)操作系統(tǒng)CRTOS的新思想基于內(nèi)存
38、保護(hù)技.到目前為止,術(shù)的空間隔離機(jī)制已在CRTOS2.0中成功實(shí)現(xiàn),而本節(jié)將簡(jiǎn)單介紹時(shí)間隔離保護(hù)機(jī)制在CRTOS2.0中的實(shí)現(xiàn)方法.由前面的內(nèi)容可知,要在CRTOS中實(shí)現(xiàn)時(shí)間隔離保護(hù)機(jī)制,首先必須把所有任務(wù)的運(yùn)行時(shí)間按功能的不同分割成多個(gè)時(shí)間隔離保護(hù)區(qū)本.同時(shí),文使用兩級(jí)結(jié)構(gòu)化調(diào)度模型確定出了各時(shí)間隔離保護(hù)區(qū)的時(shí)間片大小,隔離區(qū)大小的確定只是從理論上證明了時(shí)間隔離保護(hù)機(jī)制的可行性,如何在CRTOS中具體實(shí)現(xiàn)還有許多問(wèn)題待解決.由于我們的時(shí)間隔離保護(hù)機(jī)制是基于兩級(jí)結(jié)構(gòu)化調(diào)度實(shí)現(xiàn)的,則存在兩個(gè)調(diào)度器,即CRTOS內(nèi)核中的周期性調(diào)度器與各子系統(tǒng)服務(wù)器中的優(yōu)先級(jí)調(diào)度器,然而前者處于內(nèi)核空間,而后者則處
39、于用戶空間.由于兩個(gè)調(diào)度器處于不同的地址空間,這就需要一種機(jī)制能把處理器的控制權(quán)在兩者之間進(jìn)行轉(zhuǎn)移.除了需要協(xié)調(diào)兩個(gè)調(diào)度器外,我們還需要兩個(gè)定時(shí)器(,timer)一個(gè)是位于內(nèi)核空間的定時(shí)器,它主要用于確定各時(shí)間隔離區(qū)的大小,而另一個(gè)則是位于子系統(tǒng)中的定時(shí)器,它主要用于配合子系統(tǒng)中的優(yōu)先級(jí)調(diào)度器調(diào)度各15為便于理解我們?cè)谌蝿?wù).CRTOS2.0中實(shí)現(xiàn)時(shí)間隔離保護(hù)機(jī)制的原理,我們使用圖5所示的調(diào)度圖5子系統(tǒng)的調(diào)度控制流程圖對(duì)于CRTOS中的時(shí)間隔離保護(hù)機(jī)制,子系統(tǒng)16,為此我們使用間運(yùn)行環(huán)境的切換是十分重要的圖6做進(jìn)一步地詳細(xì)說(shuō)明:圖6時(shí)間隔離機(jī)制在CRTOS2.0中的實(shí)現(xiàn)原理首先假設(shè)圖6中的當(dāng)前子
40、系統(tǒng)正處于運(yùn)行狀態(tài),即該子系統(tǒng)擁有處理器的控制權(quán),一旦當(dāng)前子系統(tǒng)的時(shí)間隔離區(qū)時(shí)間片用完,則會(huì)連續(xù)發(fā)生以下5個(gè)過(guò)程:(處1)當(dāng)前子系統(tǒng)中的定時(shí)器產(chǎn)生定時(shí)中斷,理此中斷的中斷處理器位于內(nèi)核空間,它首先保存當(dāng)前子系統(tǒng)的環(huán)境狀態(tài),以便下一個(gè)時(shí)間隔離區(qū)到達(dá)時(shí)能接著執(zhí)行,同時(shí)該定時(shí)中斷處理器也裝載下一子系統(tǒng)的執(zhí)行環(huán)境;(2)通過(guò)事件交付對(duì)象實(shí)現(xiàn)內(nèi)核空間到用戶空間的轉(zhuǎn)換,其中事件交付對(duì)象內(nèi)主要包含時(shí)間隔離控制流程圖進(jìn)行簡(jiǎn)單說(shuō)明.在實(shí)現(xiàn)時(shí)間隔離保護(hù)機(jī)制之前,應(yīng)首先離線建立一個(gè)靜態(tài)的調(diào)度時(shí)間表,該時(shí)間表主要用于指定每個(gè)子系統(tǒng)何時(shí)可以使用CPU,以及使用CPU的時(shí)間長(zhǎng)度.實(shí)際運(yùn)行時(shí),CRTOS內(nèi)核應(yīng)首先檢查調(diào)度時(shí)
41、間表,以確定哪一個(gè)子系統(tǒng)即將被調(diào)度;緊接著,如設(shè)置遞CRTOS內(nèi)核初始化必要的運(yùn)行環(huán)境,減計(jì)數(shù)器以使在每個(gè)子系統(tǒng)時(shí)間片耗盡時(shí)產(chǎn)生定時(shí)中斷等;最后,CRTOS內(nèi)核把處理器的使用權(quán)轉(zhuǎn)交期楊仕平等:安全關(guān)鍵實(shí)時(shí)操作系統(tǒng)時(shí)間隔離保護(hù)機(jī)制的設(shè)計(jì)與實(shí)現(xiàn)1313區(qū)間大小等信息;(后,圖6中的下一子系統(tǒng)已擁3)經(jīng)過(guò)過(guò)程2)有處理器的控制權(quán),此時(shí)該子系統(tǒng)中的事件服務(wù)器便做一些日常工作,如初始化子系統(tǒng)內(nèi)部的定時(shí)器,除此,事件服務(wù)器也調(diào)用子系統(tǒng)內(nèi)部的調(diào)度器;(任務(wù)的執(zhí)行環(huán)境由多個(gè)處于用戶空4)通常,間與內(nèi)核空間的寄存器組成,當(dāng)子系統(tǒng)內(nèi)部的調(diào)度器調(diào)度下一個(gè)任務(wù)時(shí),由于環(huán)境裝載器發(fā)生在用戶空間,則發(fā)生特權(quán)級(jí)違反異常,為
42、解決此問(wèn)題,我們?cè)黾恿艘粋€(gè)周期性調(diào)度器我們.對(duì)于應(yīng)用級(jí)任務(wù),仍選用表1中的任務(wù)作為實(shí)例研究,同時(shí)如表1所在基于示把所有任務(wù)分為4個(gè)子系統(tǒng).由前可知,兩級(jí)結(jié)構(gòu)化調(diào)度模型實(shí)現(xiàn)時(shí)間隔離保護(hù)機(jī)制時(shí),操作系統(tǒng)內(nèi)核應(yīng)首先使用周期性調(diào)度器調(diào)度各子系統(tǒng),而在各子系統(tǒng)內(nèi)部再使用優(yōu)先級(jí)調(diào)度算法調(diào)度各任務(wù)內(nèi)核中的.當(dāng)一個(gè)子系統(tǒng)切換事件發(fā)生時(shí),周期性調(diào)度器應(yīng)首先保存當(dāng)前子系統(tǒng)的運(yùn)行環(huán)境,同時(shí)也應(yīng)裝載下一個(gè)即將執(zhí)行的子系統(tǒng)運(yùn)行環(huán)境.使用核環(huán)境交換請(qǐng)求原語(yǔ)代表內(nèi)核做環(huán)境裝載工作,同時(shí)處理器的控制權(quán)被轉(zhuǎn)交給內(nèi)核;(5)最后,內(nèi)核把處理器的控制權(quán)轉(zhuǎn)交給由內(nèi)核環(huán)境交換請(qǐng)求原語(yǔ)中所確定的任務(wù).以上是我們?cè)谘芯俊笆濉表?xiàng)目高可信賴
43、的嵌入式實(shí)時(shí)操作系統(tǒng)CRTOS2. 所設(shè)計(jì)的時(shí)間隔離保護(hù)機(jī)制,理論上講,該設(shè)計(jì)是合理的.可以預(yù)測(cè)的是,基于兩級(jí)調(diào)度思想的時(shí)間隔離保護(hù)機(jī)制存在一定的時(shí)空開(kāi)銷.然而,我們只有有所不為,才能有所為.畢竟,我們所研究的CRTOS主要是針對(duì)而設(shè)計(jì)的,只要其開(kāi)銷在所允許的范圍內(nèi),這樣的設(shè)計(jì)便是合理的、可行的.為此,我們將在下節(jié)中針對(duì)上面的設(shè)計(jì)構(gòu)建相關(guān)的實(shí)驗(yàn)原型,同時(shí)對(duì)其進(jìn)行性能測(cè)評(píng).原型實(shí)驗(yàn)及性能測(cè)評(píng)為了驗(yàn)證本文所提出的時(shí)間隔離保護(hù)機(jī)制的可行性,我們使用了華恒科技有限公司的嵌入式評(píng)估板HHPPC86 -3COM-2ETH-R1,該評(píng)估板上不但集成了摩托羅拉的嵌入式處理器POWerPC86 5 MHZ),還
44、集成有16MB的S R M以及4MB的lash.當(dāng)然,POWerPC86 支持存儲(chǔ)管理單元MMU)也是我們選用此板的重要原因,它將支持我們?cè)贑RTOS中實(shí)現(xiàn)空間隔離保護(hù)機(jī)制.由于本文所設(shè)計(jì)的時(shí)間隔離保護(hù)機(jī)制是基于兩級(jí)調(diào)度結(jié)構(gòu)實(shí)現(xiàn)的,因而處理器的時(shí)鐘分辨率是至關(guān)重要的,erPC86 的最小時(shí)鐘分辨率為2 ns,滿足了我們的設(shè)計(jì)需求.實(shí)際應(yīng)用中,當(dāng)使用周期性調(diào)度器調(diào)度各子系統(tǒng)服務(wù)器時(shí),我們使用的時(shí)鐘分辨率為ns,而在各子系統(tǒng)服務(wù)器內(nèi)部調(diào)用各任務(wù)時(shí),我們所使用的時(shí)鐘分辨率為4 ns,這樣做的目的是確保各子系統(tǒng)強(qiáng)制切換時(shí)的準(zhǔn)確性.在構(gòu)建兩級(jí)結(jié)構(gòu)化調(diào)度模型時(shí),我們更改了S原有的單級(jí)RM 調(diào)度結(jié)構(gòu),在此結(jié)
45、構(gòu)之下一旦成功裝載新的子系統(tǒng)運(yùn)行環(huán)境,該子系統(tǒng)將擁有處理器的使用權(quán),緊接著在規(guī)定的隔離保護(hù)時(shí)間片內(nèi)調(diào)度各應(yīng)用任務(wù).由上面的分析可知,基于兩級(jí)結(jié)構(gòu)化調(diào)度模型實(shí)現(xiàn)時(shí)間隔離保護(hù)機(jī)制時(shí),相對(duì)于傳統(tǒng)的單級(jí)調(diào)度模型而言,子系統(tǒng)間的切換開(kāi)銷是時(shí)間隔離保護(hù)機(jī)制所引入開(kāi)銷的關(guān)鍵所在.為此,我們針對(duì)表1中的任務(wù)及子系統(tǒng)進(jìn)行了多次切換開(kāi)銷測(cè)試,其最大、最小及平均測(cè)試開(kāi)銷如表2所示:表"子系統(tǒng)間的切換開(kāi)銷!m最大開(kāi)銷最小開(kāi)銷平均開(kāi)銷34.326.53 .4必須說(shuō)明的是,到目前為止,我們已在CRTOS 中成功實(shí)現(xiàn)了基于內(nèi)存保護(hù)技術(shù)的空間隔離保護(hù)機(jī)制.而對(duì)于時(shí)間隔離保護(hù)機(jī)制,由于實(shí)現(xiàn)難度較大,目前我們只是針對(duì)表
46、1中的任務(wù)群構(gòu)建了一個(gè)實(shí)驗(yàn)原型,其目的是為了驗(yàn)證其可行性.而由表2中的切換開(kāi)銷可知,基于兩級(jí)結(jié)構(gòu)化調(diào)度模型實(shí)現(xiàn)時(shí)間隔離保護(hù)機(jī)制時(shí)所引入的開(kāi)銷較小,其實(shí)現(xiàn)方式是可行的.作為我們的下一步研究工作,我們準(zhǔn)備在內(nèi)核中提供一個(gè)通用的模塊,以便根據(jù)任務(wù)個(gè)數(shù)及子系統(tǒng)功能劃分的需要進(jìn)行定制.結(jié)束語(yǔ)隨著實(shí)時(shí)計(jì)算技術(shù)在SCS中廣泛應(yīng)用,系統(tǒng)的可信性問(wèn)題日益受到關(guān)注.為增強(qiáng)SCS的可信性,設(shè)計(jì)高可信的SCRTOS是重點(diǎn)所在.本文以內(nèi)存與處理器為保護(hù)對(duì)象,指出時(shí)空隔離保護(hù)機(jī)制是構(gòu)建高可信SCRTOS的關(guān)鍵所在.為此,在本文中始終貫穿著“隔離”的思想,并從時(shí)間與空間上展開(kāi)了相應(yīng)隔離機(jī)制的研究,時(shí)空隔離機(jī)制的目的就是把個(gè)
47、體的失效影響控制在局部的時(shí)間與空間范圍內(nèi).對(duì)于空間隔離,本文只做了簡(jiǎn)單討論,而對(duì)于時(shí)間隔離,鑒于國(guó)內(nèi)外的許多操作系統(tǒng)很少涉及,故本文進(jìn)SCS2.!(F(POW2 CRTO#1314計(jì)算機(jī)研究與發(fā)展122004年行了詳細(xì)研究本文所做的研究工作只能算.然而,是滄海一粟,有關(guān)SCRTOS高可信保障機(jī)制的研究還有大量的工作需要去做,如不同子系統(tǒng)間數(shù)據(jù)完整性的保證,實(shí)時(shí)容錯(cuò)技術(shù)等都是亟待研究課題.隨著該領(lǐng)域研究的深入,我們的國(guó)民生活才有可能進(jìn)一步提高,國(guó)防事業(yè)才可能進(jìn)一步增強(qiáng).NAudsley,ABurns,MRichardson,!"#$.ardreal-timescheduling:The
48、deadlinemonotonicapproach.The8thIEEEWorkshoponReal-TimeOperatingSystemsandSoftware,13Atlanta,CA,USA,1991JLehoczky,SLiu,YDing.Therate-monotonicschedulingalgorithm:Exactcharacteristicsandaveragecasebehavior.IEEELosAlamitos,CA,1989Real-TimeSystemsSymposium,14CCan,KJLin,CJou.Distanceconstrainedschedulin
49、ganditsapplicationstoreal-timesystems.IEEETransonComputers,參考文獻(xiàn)JCKnight.Safetycriticalsystems:Challengesanddirections.The24thIntlConfonSoftwareEngineering,Orlando,F(xiàn)lorida,2002KJWika.Safetykernelenforcementofsoftwaresafetypolicies:PhDdissertation.Charlottesville,VA:DepartmentofComputerScience,Univers
50、ityofVirginia,1995JWahbe,SLucco,TAnderson.Efficientsoftware-basedfaultisolation.The14thACMSymponOperatingSystemPrinciples,NorthCarolina,UnitedStates,1996GLamastra.Thedesignofoperatingsystemssupportingtemporalisolation:PhDdissertation.Pisa,Italy:ReTisLaboratory,ScuolaSuperioreSAnna,2000CCBakshi,LBela
51、.Avirtualmemorysystemforreal-timeapplications.Real-TimeSystemsSymposium,Arizona,USA,1992MYZhu,LLuo,GZGuang.Aprovablycorrectoperatingsystem:!-Core.ACMSIGOPSOperatingSystemsReview,2001,35(1):17"33KElphinstone,Geiser.L4referencemanual.SchoolofComputerScienceandEngineering,UniversityofNewSouthWales
52、,TechRep,1997.http:.audisyL4MIPSl4uman.ps.gzCWMercer,SSavage,Tokuda.Temporalprotectioninreal-timeoperatingsystems.The11thIEEEWorkshoponReal-TimeOperatingSystemandSoftware,Seattle,WA,1994YSong.TimeconstrainedcommunicationoverswitchedEthernet.The4thIntlConfonFieldbusSystemsandTheirAppl
53、ications,Nancy,F(xiàn)rance,2001ZDeng,JWLiu.Schedulingreal-timeapplicationsinanopenenvironment.IEEEReal-TimeSystemsSymposium,SanFrancisco,CA,1997CLLiu,JWLayland.Schedulingalgorithmsformultiprogramminginahardrealtimeenvironment.JournalofACM,1973,20(1):46"611996,45(7):814"82615YLee,DKim,MYounis,!&
54、quot;#$.PartitionschedulinginAPEXruntimeenvironmentforembeddedavionicssoftware.IEEEReal-TimeComputingSystemsandApplications,iroshima,Japan,199816DKim,YLee,MYounis.SPIRIT-#Kernelforstronglypartitionedreal-timesystems.The7thIntlConfonReal-TimeComputingSystemsandApplications,ChejuIsland,SouthKorea,2000楊仕平男,1974年生,博士研究生,主要研究方向?yàn)楦呖尚虐踩P(guān)鍵實(shí)時(shí)操作系統(tǒng)的防危機(jī)制與實(shí)現(xiàn)、分布式安全關(guān)鍵實(shí)時(shí)系統(tǒng).桑楠男,1964年生,博士研究生,副教授,主要研究方向?yàn)楦呖尚艑?shí)時(shí)系統(tǒng).陳慧女,1973年生,博士研究生,主要研究方向?yàn)楦呖煽坑矊?shí)時(shí)網(wǎng)絡(luò).熊光澤男,1938年生,教授,博士生導(dǎo)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度新能源企業(yè)聘用合同范本4篇
- 二零二五年度人工智能輔助軟件服務(wù)合同模板2篇
- 二零二五美容院美容護(hù)理技術(shù)培訓(xùn)合同3篇
- 《短視頻編劇:選題構(gòu)想+腳本制作+劇本策劃+鏡頭拍攝》課件 第5章 了解劇本:創(chuàng)作優(yōu)劇本的基礎(chǔ)
- 二零二五年度某局勞務(wù)分包結(jié)算與人才培養(yǎng)計(jì)劃合同4篇
- 二零二五農(nóng)機(jī)綠色生產(chǎn)技術(shù)研發(fā)與應(yīng)用合同4篇
- 二零二五年度棉被品牌授權(quán)生產(chǎn)及銷售合同4篇
- 二零二五年度智能制造名義合伙人合同4篇
- 二零二五版南京海事法院海洋石油開(kāi)發(fā)合同4篇
- (必會(huì))公路水運(yùn)工程助理試驗(yàn)檢測(cè)師《交通工程》近年考試真題題庫(kù)(含答案解析)
- 中藥材產(chǎn)地加工技術(shù)規(guī)程 第1部分:黃草烏
- 危險(xiǎn)化學(xué)品經(jīng)營(yíng)單位安全生產(chǎn)考試題庫(kù)
- 基于視覺(jué)的工業(yè)缺陷檢測(cè)技術(shù)
- 案例分析:美國(guó)紐約高樓防火設(shè)計(jì)課件
- 老客戶維護(hù)方案
- 移動(dòng)商務(wù)內(nèi)容運(yùn)營(yíng)(吳洪貴)任務(wù)一 用戶定位與選題
- 萬(wàn)科物業(yè)管理公司全套制度(2016版)
- 2021年高考化學(xué)真題和模擬題分類匯編專題20工業(yè)流程題含解析
- 工作證明模板下載免費(fèi)
- (完整word)長(zhǎng)沙胡博士工作室公益發(fā)布新加坡SM2考試物理全真模擬試卷(附答案解析)
- 機(jī)械點(diǎn)檢員職業(yè)技能知識(shí)考試題庫(kù)與答案(900題)
評(píng)論
0/150
提交評(píng)論