直播推薦
企業(yè)動態(tài)
- 廣東皓天復(fù)合式鹽霧試驗箱成功交付上海汽車制造企業(yè)
- 中歐AMP班走進天正 探索智能制造新范式
- 戰(zhàn)略伙伴獲獎!華天軟件三維CAD創(chuàng)新方案問鼎數(shù)字工業(yè)巔峰
- “以光惠算”走進校園,湖北大學(xué)用F5G-A全光網(wǎng)賦能智慧校園
- AI時代驅(qū)動聯(lián)接升級,F(xiàn)5G-A萬兆全光網(wǎng)成為園區(qū)新標(biāo)配
- 直擊廣州物流展現(xiàn)場!ZWG兆威工業(yè)雙鏈輪滾筒全新發(fā)布
- 上汽集團、智己汽車走訪易格斯:共探工程塑料創(chuàng)新應(yīng)用與汽車產(chǎn)業(yè)升級
- 園區(qū)網(wǎng)絡(luò)難不難,華為F5G-A有新招
推薦展會
1.1 TinyOS存在的問題
當(dāng)前的構(gòu)件化嵌入式操作系統(tǒng)主要有TinyOS和Echidna[5]兩種。TinyOS是為無線傳感器網(wǎng)絡(luò)(Wireless Sensor Network,簡稱WSN)開發(fā)的構(gòu)件化嵌入式操作系統(tǒng),適用于內(nèi)存資源和處理能力有限,電池供電的嵌入式系統(tǒng)。其內(nèi)核支持兩級調(diào)度,任務(wù)按照FIFO的方式執(zhí)行,目的是減少對內(nèi)存的使用量,但造成系統(tǒng)實時性差。Echidna與TinyOS一樣使用FIFO的方式調(diào)度任務(wù),因此存在相同的缺點。
V. Subramonian等人在文獻[6]中研究了FIFO調(diào)度方式對TinyOS系統(tǒng)性能的影響。在使用TinyOS的系統(tǒng)中,當(dāng)需要處理的數(shù)據(jù)量較大時,如果超過其計算能力,則會出現(xiàn)過載(overload)現(xiàn)象。處理過載的較好方式一般是保證關(guān)鍵任務(wù)的執(zhí)行,放棄非關(guān)鍵任務(wù)。而FIFO調(diào)度方式不能做到這一點,因為這種方式無法區(qū)分關(guān)鍵任務(wù)和非關(guān)鍵任務(wù)。下面通過分析TinyOS對通信數(shù)據(jù)包的處理來說明其缺點。
發(fā)送數(shù)據(jù)包由應(yīng)用層產(chǎn)生并傳遞給底層發(fā)送構(gòu)件,當(dāng)成功發(fā)送后,后者會觸發(fā)一個任務(wù)實例來通知應(yīng)用層發(fā)送完畢。應(yīng)用層在收到這一事件之前將一直等待,不能繼續(xù)發(fā)送數(shù)據(jù)。即,只有通知任務(wù)實例得到執(zhí)行,應(yīng)用層才能繼續(xù)發(fā)送數(shù)據(jù)。如果TinyOS當(dāng)前需要處理的數(shù)據(jù)量較大,有較多的任務(wù)實例需要執(zhí)行,則通知任務(wù)實例會排在FIFO隊列的zui后,等到前面的任務(wù)實例執(zhí)行完才得以執(zhí)行。這樣就延緩了發(fā)送數(shù)據(jù)的過程,降低了通信數(shù)據(jù)包的吞吐量。在情況下,其它任務(wù)實例會將整個FIFO隊列占滿,通知任務(wù)實例到達時會被調(diào)度內(nèi)核放棄,造成應(yīng)用層發(fā)送數(shù)據(jù)的終止。從無線信道接收數(shù)據(jù)時同樣會出現(xiàn)這種情況。
文獻[6]中提出了一種改進措施,給任務(wù)分配優(yōu)先級,將調(diào)度內(nèi)核升級為優(yōu)先級驅(qū)動的非搶占式調(diào)度。這樣與FIFO調(diào)度方式相比,能提高任務(wù)集合的可調(diào)度性,但仍會出現(xiàn)任務(wù)集合不可調(diào)度的情況。
1.2 搶占閾值調(diào)度算法適合構(gòu)件化嵌入式操作系統(tǒng)
利用搶占閾值進行任務(wù)調(diào)度時,不但給集合G中的任務(wù)ti分配任務(wù)優(yōu)先級pi?[1,2,…,n],還分配搶占閾值gi,并且pi?gi,即,gi?[pi,…,n]。這樣就實現(xiàn)了一個雙優(yōu)先級系統(tǒng)。其中的pi用于搶占其它的任務(wù),而gi是任務(wù)運行中的有效優(yōu)先級。如果當(dāng)前正在運行的任務(wù)是ti,那么對于就緒任務(wù)tj,必須有pj>gi, tj才能搶占ti。對于周期任務(wù)ti,每次開始執(zhí)行后,其優(yōu)先級將從pi提升為gi,執(zhí)行完后,優(yōu)先級再從gi下降為pi。
當(dāng)任務(wù)的搶占閾值等于其任務(wù)優(yōu)先級時,就是搶占式調(diào)度;當(dāng)任務(wù)的搶占閾值是系統(tǒng)zui高優(yōu)先級時,就是非搶占式調(diào)度。所以搶占調(diào)度和非搶占調(diào)度是使用搶占閾值調(diào)度模型的兩個特例。實際中,搶占閾值調(diào)度能同時利用搶占式調(diào)度和非搶占式調(diào)度的優(yōu)點,通過調(diào)節(jié)任務(wù)搶占閾值,減少不必要的任務(wù)搶占,提高整個任務(wù)集合的可調(diào)度性。能運行搶占和非搶占式調(diào)度算法都不能調(diào)度的任務(wù)集合[2]。在文獻[3]描述的仿真環(huán)境下,搶占閾值調(diào)度算法與搶占式調(diào)度算法相比,處理器利用率提高15%-20%。搶占閾值調(diào)度模型中,任務(wù)集合被分割成數(shù)目很少的非搶占組(Non-Preemptive Group,簡稱NPG)。組內(nèi)任務(wù)之間是非搶占的,能共享一個棧空間,減少了任務(wù)集合對內(nèi)存資源的消耗。在文獻[4]的仿真環(huán)境下,當(dāng)任務(wù)zui大周期為100時,平均100個任務(wù)被分割成14.3個NPG。
在構(gòu)件化嵌入式操作系統(tǒng)的應(yīng)用環(huán)境中,希望能在提高任務(wù)集合可調(diào)度性的同時,使用盡可能少的內(nèi)存資源。根據(jù)這一要求,本文提出了在實時調(diào)度內(nèi)核中使用搶占閾值調(diào)度算法。為了說明該算法較其它調(diào)度算法更適于構(gòu)件化嵌入式操作系統(tǒng),提出了如下的指標(biāo),以比較各種算法的性能:非搶占式調(diào)度中,所有任務(wù)共享一個線程??臻g,節(jié)省了內(nèi)存資源。對于搶占閾值調(diào)度,如果任務(wù)集合生成一個非搶占組,則會使用與非搶占式調(diào)度相同的內(nèi)存資源。為此,在每個測試點,針對相同一組隨機產(chǎn)生的任務(wù)集合,比較搶占閾值調(diào)度生成一個非搶占組的次數(shù)除以整個產(chǎn)生的任務(wù)集合個數(shù)(用NAT表示)得到的百分率,與非搶占式調(diào)度以及FIFO調(diào)度方式下可調(diào)度任務(wù)集合個數(shù)除以NAT得到的百分率,稱作單線程比率(One Thread Rate,簡稱OTR)。來說明不同算法在保證任務(wù)集合可調(diào)度的前提下,只使用一個線程的能力。
使用隨機產(chǎn)生的任務(wù)集合。生成任務(wù)時,任務(wù)個數(shù)totalTasks從2開始,以2為步長遞增到50;任務(wù)集合的zui大周期maxPeriod取為1000。任務(wù)個數(shù)和zui大周期的取值構(gòu)成一個測試點。在每個測試點,任務(wù)集合按如下規(guī)則產(chǎn)生:(1)在[1, maxPeriod]之間均勻、隨機地選擇任務(wù)周期Ti。(2)在[0.1/totoalTasks, 2.0/totalTask]之間均勻、隨機地選擇任務(wù)利用率Ui,任務(wù)執(zhí)行時間Ci=Ui*Ti。用任務(wù)個數(shù)來調(diào)整取值,以免產(chǎn)生過多的不可調(diào)度任務(wù)集合。(3)任務(wù)截至期Di=Ti。
在每個測試點,從100次獨立仿真實驗中獲得各調(diào)度算法的性能指標(biāo)值,以進行性能比較。
圖1給出了針對相同一組任務(wù)集合,搶占閾值、非搶占式和FIFO等3種調(diào)度算法下產(chǎn)生的單線程比率。可以看出,F(xiàn)IFO調(diào)度方式的性能zui差。在大部分測試點,搶占閾值調(diào)度下產(chǎn)生的使用一個線程的任務(wù)集合個數(shù)等于非搶占調(diào)度下生成的可調(diào)度任務(wù)集合個數(shù)。只在少數(shù)幾個測試點,前者產(chǎn)生的OTR值略低于后者。所以,在此指標(biāo)下,搶占閾值調(diào)度具有與非搶占式調(diào)度接近的性能。但搶占閾值調(diào)度能提高任務(wù)集合的可調(diào)度性??傊?,搶占閾值調(diào)度能在提高任務(wù)集合可調(diào)度性的同時,使用較少的內(nèi)存資源。與其它兩種調(diào)度算法相比,更適合作為構(gòu)件化嵌入式操作系統(tǒng)的實時調(diào)度算法
圖1比較3種算法得到的OTR值
如何將構(gòu)件技術(shù)成功地應(yīng)用到嵌入式操作系統(tǒng)開發(fā)中得到越來越多的重視。現(xiàn)有的工作大部分著重于從結(jié)構(gòu)的角度分解系統(tǒng)成若干構(gòu)件,并重用構(gòu)件。實際嵌入式實時系統(tǒng)的處理器資源和內(nèi)存資源是有限的,同時系統(tǒng)還有實時性需求。另外,當(dāng)前成熟的實時調(diào)度算法都是基于任務(wù)模型分析系統(tǒng)的可調(diào)度性。所以,在嵌入式實時系統(tǒng)中應(yīng)用構(gòu)件技術(shù)時,還需要研究如何從時間(運行)的角度將構(gòu)件映射成任務(wù),以及為底層構(gòu)件化嵌入式實時操作系統(tǒng)選擇合適的調(diào)度算法。
免責(zé)聲明
- 凡本網(wǎng)注明"來源:智能制造網(wǎng)"的所有作品,版權(quán)均屬于智能制造網(wǎng),轉(zhuǎn)載請必須注明智能制造網(wǎng),http://www.tzhjjxc.com。違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
- 企業(yè)發(fā)布的公司新聞、技術(shù)文章、資料下載等內(nèi)容,如涉及侵權(quán)、違規(guī)遭投訴的,一律由發(fā)布企業(yè)自行承擔(dān)責(zé)任,本網(wǎng)有權(quán)刪除內(nèi)容并追溯責(zé)任。
- 本網(wǎng)轉(zhuǎn)載并注明自其它來源的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點或證實其內(nèi)容的真實性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉(zhuǎn)載時,必須保留本網(wǎng)注明的作品來源,并自負(fù)版權(quán)等法律責(zé)任。
- 如涉及作品內(nèi)容、版權(quán)等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
2025長三角國際智能儀表/線纜產(chǎn)業(yè)博覽會
展會城市:滁州市展會時間:2025-11-11