国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      嵌入式操作系統(tǒng)分組硬實(shí)時(shí)任務(wù)調(diào)度的實(shí)現(xiàn)方法

      文檔序號(hào):6556481閱讀:243來源:國(guó)知局
      專利名稱:嵌入式操作系統(tǒng)分組硬實(shí)時(shí)任務(wù)調(diào)度的實(shí)現(xiàn)方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及嵌入式操作系統(tǒng)實(shí)時(shí)任務(wù)調(diào)度技術(shù)領(lǐng)域,尤其是涉及一種嵌入式操作系統(tǒng)分組硬實(shí)時(shí)任務(wù)調(diào)度的實(shí)現(xiàn)方法。
      背景技術(shù)
      操作系統(tǒng)是充當(dāng)計(jì)算機(jī)用戶和計(jì)算機(jī)硬件之間的一個(gè)中介,并用于管理計(jì)算機(jī)資源和控制應(yīng)用程序運(yùn)行的計(jì)算機(jī)程序。一個(gè)程序的運(yùn)行離不開操作系統(tǒng)的配合,其中包括指令和數(shù)據(jù)載入內(nèi)存,I/O設(shè)備和文件系統(tǒng)的初始化等等;每種I/O設(shè)備的管理和使用都有自己的特點(diǎn)。而操作系統(tǒng)接管了這些工作,從而使得用戶在使用這些I/O設(shè)備的過程中會(huì)感覺更方便。文件訪問不僅需要熟悉相關(guān)I/O設(shè)備(磁盤驅(qū)動(dòng)器等)的特點(diǎn),而且還要熟悉相關(guān)的文件格式。另外,對(duì)于多用戶操作系統(tǒng)或者網(wǎng)絡(luò)操作系統(tǒng),從計(jì)算機(jī)安全角度考慮,需要對(duì)文件的訪問權(quán)限做出相應(yīng)的規(guī)定和處理。這些都是操作系統(tǒng)所要完成的工作。對(duì)于一個(gè)多用戶或者網(wǎng)絡(luò)操作系統(tǒng)而言,操作系統(tǒng)需要對(duì)用戶系統(tǒng)訪問權(quán)限做出相應(yīng)的規(guī)定和處理。當(dāng)操作系統(tǒng)運(yùn)行時(shí),會(huì)出現(xiàn)這樣那樣的問題。操作系統(tǒng)應(yīng)當(dāng)提供相應(yīng)的機(jī)制來檢測(cè)這些信息,并且能對(duì)某些問題給出合理的處理或者報(bào)告用戶。
      在一些現(xiàn)代操作系統(tǒng)中,出于系統(tǒng)性能優(yōu)化或者系統(tǒng)安全角度考慮,操作系統(tǒng)會(huì)對(duì)用戶使用過程紀(jì)錄相關(guān)信息。一般操作系統(tǒng)都會(huì)提供豐富的API供程序員開發(fā)應(yīng)用程序,并且很多程序編輯工具,集成開發(fā)環(huán)境等等也都是通過操作系統(tǒng)提供的。而計(jì)算機(jī)有很多資源,它們分別用于數(shù)據(jù)的傳輸、處理或存儲(chǔ)以及這些操作的控制。這些資源的管理工作就交給了操作系統(tǒng)。
      實(shí)時(shí)操作系統(tǒng)(RTOS)是指能對(duì)外部事件在限定的時(shí)間內(nèi)作出并完成響應(yīng)的多任務(wù)操作系統(tǒng),它是嵌入式計(jì)算機(jī)中的重要的系統(tǒng)資源,與通用平臺(tái)的操作系統(tǒng)不同,它往往嵌入到目標(biāo)機(jī)硬件設(shè)備內(nèi)部運(yùn)行,一般用戶無法看到它的運(yùn)行界面,因而又被稱為嵌入式操作系統(tǒng)。它往往采用微內(nèi)核結(jié)構(gòu),具有實(shí)時(shí)性、可靠性和可裁減性的特點(diǎn),非常適合于嵌入式系統(tǒng)和要求實(shí)時(shí)處理的應(yīng)用場(chǎng)合。
      實(shí)時(shí)的特征有兩點(diǎn),那就是系統(tǒng)不僅需要給出合乎邏輯的計(jì)算結(jié)果,而且其處理時(shí)間還需要滿足一定的要求,比如說不能超過某個(gè)截止時(shí)間等等??梢园褜?shí)時(shí)系統(tǒng)分為兩類,一類是硬實(shí)時(shí)(Hard Real-Time);另外一類則是軟實(shí)時(shí)(Soft Real-Time)。所謂硬實(shí)時(shí)是指如果系統(tǒng)對(duì)某個(gè)實(shí)時(shí)任務(wù)的處理未能在某個(gè)截止時(shí)間開始或者結(jié)束的話,最終的結(jié)果將是災(zāi)難性的,這就意味著即便是處理結(jié)果合乎邏輯但是仍然毫無意義;而在軟實(shí)時(shí)系統(tǒng)中,處理任務(wù)啟動(dòng)或者結(jié)束的截止時(shí)間只是一個(gè)期望值,并不見得必須滿足;即便是處理時(shí)間超過了截止時(shí)間,也是有意義的。
      實(shí)時(shí)操作系統(tǒng)與普通操作系統(tǒng)的區(qū)別主要表現(xiàn)在五個(gè)方面,這就是其任務(wù)處理的確定性、響應(yīng)靈敏度、用戶參與控制、可靠性以及故障保護(hù)措施上。
      實(shí)時(shí)操作系統(tǒng)應(yīng)當(dāng)能夠做到這一點(diǎn)實(shí)時(shí)任務(wù)處理的開始時(shí)間和結(jié)束時(shí)間應(yīng)當(dāng)是確定的、可預(yù)測(cè)的、這在實(shí)時(shí)處理上顯得非常重要。從這方面來講,在實(shí)時(shí)操作系統(tǒng)中,系統(tǒng)的吞吐量和確定的任務(wù)處理相比,要次要的多,實(shí)時(shí)操作系統(tǒng)的任務(wù)處理具備一定的確定性。
      衡量系統(tǒng)的確定性有一個(gè)比較好的指標(biāo),就是系統(tǒng)從接到要求處理的中斷和對(duì)應(yīng)的處理任務(wù)啟動(dòng)這兩個(gè)事件發(fā)生的時(shí)間間隔。一般操作系統(tǒng)這個(gè)時(shí)間參數(shù)很大,而且可能會(huì)有幾個(gè)數(shù)量級(jí)的變動(dòng)。而在實(shí)時(shí)操作系統(tǒng)中,它應(yīng)當(dāng)很小,并且比較穩(wěn)定,有一個(gè)上限值。

      發(fā)明內(nèi)容
      本發(fā)明的目的在于提供一種嵌入式操作系統(tǒng)分組硬實(shí)時(shí)任務(wù)調(diào)度的實(shí)現(xiàn)方法。
      本發(fā)明解決其技術(shù)問題采用的技術(shù)方案如下1)嵌入式操作系統(tǒng)中,對(duì)于實(shí)時(shí)任務(wù),多個(gè)實(shí)時(shí)任務(wù)集合的定義·維,統(tǒng)計(jì)各個(gè)可預(yù)測(cè)任務(wù)的特點(diǎn),將每個(gè)特點(diǎn)稱為這個(gè)進(jìn)程的一個(gè)維;·組,嵌入式操作系統(tǒng)對(duì)實(shí)時(shí)任務(wù)進(jìn)行分組,將維空間相近的任務(wù)聚類為組,分組時(shí)主要依據(jù)任務(wù)按照所需要的資源和對(duì)實(shí)時(shí)性的要求;·組群,一定數(shù)量維上相似的組組合;·進(jìn)程間距離使用歐幾里得距離在組空間進(jìn)程之間計(jì)算;·組間距離使用歐幾里得距離在組之間計(jì)算;·組群間距離使用歐幾里得距離以部分維數(shù)在組群之間計(jì)算;·相吸的任務(wù)進(jìn)程間距離小的任務(wù);·相斥的任務(wù)進(jìn)程間距離大的任務(wù);2)實(shí)時(shí)任務(wù)的調(diào)度方法i)任務(wù)分組對(duì)于系統(tǒng)中的實(shí)時(shí)任務(wù),統(tǒng)計(jì)各個(gè)可預(yù)測(cè)任務(wù),將任務(wù)按照所需要的資源和對(duì)實(shí)時(shí)性的要求分為不同的組,并將不同的組分為不同組群,計(jì)算進(jìn)程間距離、組間距離和組群間距離;ii)組內(nèi)調(diào)度在組內(nèi)選出最合適的進(jìn)程,具體的調(diào)度算法可以根據(jù)各個(gè)組的不同情況來選取,盡量選擇相吸的任務(wù)進(jìn)行調(diào)度;iii)組間調(diào)度收集系統(tǒng)目前的狀況和各種資源的利用情況來選擇合適的調(diào)度算法,由于調(diào)度算法是根據(jù)進(jìn)程的相關(guān)屬性來進(jìn)行調(diào)度的,所以,只要在屬性的選取上調(diào)整一下種類和權(quán)重,實(shí)現(xiàn)各種常見的調(diào)度算法。
      所述的各種常見的調(diào)度算法為循環(huán)執(zhí)行算法,先進(jìn)先出的調(diào)度算法,基于優(yōu)先級(jí)的調(diào)度算法或反饋式隊(duì)列的調(diào)度算法。
      本發(fā)明與背景技術(shù)相比,具有的有益的效果是(1)實(shí)時(shí)性。實(shí)時(shí)任務(wù)處理的開始時(shí)間和結(jié)束時(shí)間是確定的、可預(yù)測(cè)的,在實(shí)時(shí)操作系統(tǒng)中,系統(tǒng)的吞吐量和確定的任務(wù)處理相比,要次要的多,實(shí)時(shí)操作系統(tǒng)的任務(wù)處理具備一定的確定性。
      (2)靈敏性。系統(tǒng)在確認(rèn)任務(wù)請(qǐng)求之后,處理完相關(guān)的計(jì)算任務(wù)的時(shí)間較短,有利于提高響應(yīng)速度。


      附圖是本發(fā)明調(diào)度方法示意圖。
      具體實(shí)施方法下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步的說明。
      一種嵌入式操作系統(tǒng)分組硬實(shí)時(shí)任務(wù)調(diào)度的實(shí)現(xiàn)方法,其具體實(shí)施方式
      為1)嵌入式操作系統(tǒng)中,對(duì)于實(shí)時(shí)任務(wù),多個(gè)實(shí)時(shí)任務(wù)集合的定義·維,統(tǒng)計(jì)各個(gè)可預(yù)測(cè)任務(wù)的特點(diǎn),將每個(gè)特點(diǎn)稱為這個(gè)進(jìn)程的一個(gè)維;·組,嵌入式操作系統(tǒng)對(duì)實(shí)時(shí)任務(wù)進(jìn)行分組,將維空間相近的任務(wù)聚類為組,分組時(shí)主要依據(jù)任務(wù)按照所需要的資源和對(duì)實(shí)時(shí)性的要求;·組群,一定數(shù)量維上相似的組組合;·進(jìn)程間距離使用歐幾里得距離在組空間進(jìn)程之間計(jì)算;·組間距離使用歐幾里得距離在組之間計(jì)算;·組群間距離使用歐幾里得距離以部分維數(shù)在組群之間計(jì)算;·相吸的任務(wù)進(jìn)程間距離小的任務(wù);
      ·相斥的任務(wù)進(jìn)程間距離大的任務(wù);2)實(shí)時(shí)任務(wù)的調(diào)度方法i)任務(wù)分組作為調(diào)度算法的準(zhǔn)備,先將任務(wù)按照所需要的資源和對(duì)實(shí)時(shí)性的要求分為不同的組,這樣做比較方便對(duì)資源的管理,例如,當(dāng)某一種資源緊缺時(shí),可以直接停止對(duì)這個(gè)組的調(diào)度,提高系統(tǒng)的效率。特別的是,專門設(shè)置一個(gè)實(shí)時(shí)任務(wù)的組,并為這個(gè)組預(yù)留一部分資源,用來確保實(shí)時(shí)任務(wù)的響應(yīng)時(shí)間。
      對(duì)于系統(tǒng)中的實(shí)時(shí)任務(wù),還要統(tǒng)計(jì)各個(gè)可預(yù)測(cè)任務(wù),將任務(wù)按照所需要的資源和對(duì)實(shí)時(shí)性的要求分為不同的組,并將不同的組分為不同組群,計(jì)算進(jìn)程間距離、組間距離和組群間距離。
      在多道程序設(shè)計(jì)系統(tǒng)中,操作系統(tǒng)需要為各個(gè)進(jìn)程合理分配各種資源,從而使得不僅不會(huì)讓它們的運(yùn)行相互產(chǎn)生沖突,而且還希望能對(duì)這些資源進(jìn)行充分利用。在計(jì)算機(jī)系統(tǒng)中,最寶貴并且最容易引起各進(jìn)程競(jìng)爭(zhēng)的資源就是處理器。如何公平合理地分配給各進(jìn)程足夠的處理器時(shí)間,并且盡可能提高處理器的利用率同樣是操作系統(tǒng)原理研究的重要內(nèi)容。而這個(gè)任務(wù)是由操作系統(tǒng)的調(diào)度機(jī)制完成的。
      ii)組內(nèi)調(diào)度在組內(nèi)選出最合適的進(jìn)程,具體的調(diào)度算法可以根據(jù)各個(gè)組的不同情況來選取,盡量選擇相吸的任務(wù)進(jìn)行調(diào)度;組內(nèi)調(diào)度就是在組內(nèi)選出最合適的進(jìn)程,具體的調(diào)度算法可以根據(jù)各個(gè)組的不同情況來選取,例如對(duì)于網(wǎng)絡(luò)相關(guān)的組,可能輪轉(zhuǎn)法更好一點(diǎn),而對(duì)于實(shí)時(shí)進(jìn)程的組來說FIFO可能更能體現(xiàn)系統(tǒng)的實(shí)時(shí)性。每個(gè)組都有自己的調(diào)度算法,這樣做可以很靈活地調(diào)整組內(nèi)進(jìn)程的對(duì)資源的需求,也可以根據(jù)不同的情況及時(shí)地進(jìn)行調(diào)整。但是因?yàn)樾枰趥鹘y(tǒng)的調(diào)度算法前先在組內(nèi)進(jìn)行調(diào)度,所以如果算法過于復(fù)雜的話,會(huì)導(dǎo)致系統(tǒng)的效率降低,所以在組內(nèi)調(diào)度的時(shí)候,一般都是使用比較成熟的,比較簡(jiǎn)單的調(diào)度算法。
      例如,可采用循環(huán)執(zhí)行算法。
      循環(huán)執(zhí)行算法的基本指導(dǎo)思想是,將處理器時(shí)間分成一個(gè)一個(gè)的時(shí)間片(Time Slice),從等待進(jìn)程隊(duì)列中選擇下一個(gè)運(yùn)行進(jìn)程的方法和FCFS一樣,所不同的是,每一個(gè)被選中的進(jìn)程一次所占有的處理器時(shí)間頂多是這么一個(gè)時(shí)間片,而后,下一個(gè)被選中的進(jìn)程將會(huì)以搶占式的方式來頂替該進(jìn)程取得處理器的控制權(quán)。而將處理器時(shí)間分片是靠定時(shí)器中斷來實(shí)現(xiàn)的,即每當(dāng)一個(gè)時(shí)間片耗完之后,會(huì)有一個(gè)中斷產(chǎn)生,告知調(diào)度程序,然后調(diào)度算法就被激活,選取下一個(gè)要運(yùn)行的進(jìn)程,開始新一輪循環(huán)。
      循環(huán)執(zhí)行算法有一個(gè)缺點(diǎn)就是它在處理I/O操作密集型進(jìn)程和處理器使用密集型進(jìn)程時(shí)會(huì)帶來的資源使用的不平衡。I/O密集型進(jìn)程會(huì)導(dǎo)致I/O設(shè)備忙,而處理器使用卻很少。
      而處理器使用密集型進(jìn)程則會(huì)讓處理器連軸轉(zhuǎn),而I/O設(shè)備卻往往處于空閑狀態(tài)。這會(huì)導(dǎo)致該算法在進(jìn)程間的公平性和資源使用的平衡度方面表現(xiàn)比較差。
      其改進(jìn)是虛擬循環(huán)執(zhí)行算法。
      虛擬循環(huán)執(zhí)行算法的進(jìn)程創(chuàng)建、入列以及被選中運(yùn)行部分與FCFS算法別無二致。所不同的是,加入了一個(gè)輔助進(jìn)程隊(duì)列。這樣,當(dāng)一個(gè)原來因?yàn)镮/O操作掛起的進(jìn)程現(xiàn)在如果它申請(qǐng)的I/O操作已經(jīng)完成的話,它不是進(jìn)入普通的等待進(jìn)程隊(duì)列,而是進(jìn)入輔助進(jìn)程隊(duì)列。當(dāng)一個(gè)新的處理器時(shí)間片來臨的時(shí)候,輔助進(jìn)程隊(duì)列里的進(jìn)程比普通的等待進(jìn)程隊(duì)列里的進(jìn)程優(yōu)先獲取處理器控制權(quán),而其運(yùn)行時(shí)間將不會(huì)超過它在上一次自己獲取的時(shí)間片里用剩下來的時(shí)間。
      iii)組間調(diào)度在每個(gè)組的組內(nèi)調(diào)度結(jié)束后,就進(jìn)入到了組間調(diào)度的階段。本系統(tǒng)所使用的調(diào)度算法可以根據(jù)系統(tǒng)的具體情況進(jìn)行改變。眾所周知,沒有一種調(diào)度算法適用于各種情況,每種調(diào)度算法都有自己的適用情況,所以使用一種固定的調(diào)度算法肯定無法讓系統(tǒng)一直保持高效率運(yùn)行,只有根據(jù)系統(tǒng)運(yùn)行的狀況來變換調(diào)度算法才能合理地調(diào)整系統(tǒng)的運(yùn)行狀況。具體的實(shí)現(xiàn)是通過收集系統(tǒng)目前的狀況和各種資源的利用情況來選擇合適的調(diào)度算法,由于調(diào)度算法是根據(jù)進(jìn)程的相關(guān)屬性來進(jìn)行調(diào)度的,所以,只要在屬性的選取上調(diào)整一下種類和權(quán)重,就可以實(shí)現(xiàn)各種常見的調(diào)度算法了,比如虛擬循環(huán)執(zhí)行算法,具體算法過程如2)iii)中對(duì)算法的描述。
      組間調(diào)度使得一些相互存在耦合的進(jìn)程同時(shí)一對(duì)一地指定給同樣數(shù)目的處理器并運(yùn)行。對(duì)于幾個(gè)相互關(guān)聯(lián)的進(jìn)程,如果并行處理的話,就會(huì)減少同步阻塞,減少進(jìn)程切換,從而提高性能;另外,由于一個(gè)調(diào)度決策會(huì)同時(shí)影響一組進(jìn)程,從而也降低了調(diào)度程序執(zhí)行的頻度,從而減少了調(diào)度時(shí)間。
      所述的各種常見的調(diào)度算法為循環(huán)執(zhí)行算法,先進(jìn)先出的調(diào)度算法,基于優(yōu)先級(jí)的調(diào)度算法或反饋式隊(duì)列的調(diào)度算法。
      權(quán)利要求
      1.一種嵌入式操作系統(tǒng)分組硬實(shí)時(shí)任務(wù)調(diào)度的實(shí)現(xiàn)方法,其特征在于1)嵌入式操作系統(tǒng)中,對(duì)于實(shí)時(shí)任務(wù),多個(gè)實(shí)時(shí)任務(wù)集合的定義·維,統(tǒng)計(jì)各個(gè)可預(yù)測(cè)任務(wù)的特點(diǎn),將每個(gè)特點(diǎn)稱為這個(gè)進(jìn)程的一個(gè)維;·組,嵌入式操作系統(tǒng)對(duì)實(shí)時(shí)任務(wù)進(jìn)行分組,將維空間相近的任務(wù)聚類為組,分組時(shí)主要依據(jù)任務(wù)按照所需要的資源和對(duì)實(shí)時(shí)性的要求;·組群,一定數(shù)量維上相似的組組合;·進(jìn)程間距離使用歐幾里得距離在組空間進(jìn)程之間計(jì)算;·組間距離使用歐幾里得距離在組之間計(jì)算;·組群間距離使用歐幾里得距離以部分維數(shù)在組群之間計(jì)算;·相吸的任務(wù)進(jìn)程間距離小的任務(wù);·相斥的任務(wù)進(jìn)程間距離大的任務(wù);2)實(shí)時(shí)任務(wù)的調(diào)度方法i)任務(wù)分組對(duì)于系統(tǒng)中的實(shí)時(shí)任務(wù),統(tǒng)計(jì)各個(gè)可預(yù)測(cè)任務(wù),將任務(wù)按照所需要的資源和對(duì)實(shí)時(shí)性的要求分為不同的組,并將不同的組分為不同組群,計(jì)算進(jìn)程間距離、組間距離和組群間距離;ii)組內(nèi)調(diào)度在組內(nèi)選出最合適的進(jìn)程,具體的調(diào)度算法可以根據(jù)各個(gè)組的不同情況來選取,盡量選擇相吸的任務(wù)進(jìn)行調(diào)度;iii)組間調(diào)度收集系統(tǒng)目前的狀況和各種資源的利用情況來選擇合適的調(diào)度算法,由于調(diào)度算法是根據(jù)進(jìn)程的相關(guān)屬性來進(jìn)行調(diào)度的,所以,只要在屬性的選取上調(diào)整一下種類和權(quán)重,實(shí)現(xiàn)各種常見的調(diào)度算法。
      2.根據(jù)權(quán)利要求1所述的一種嵌入式操作系統(tǒng)分組硬實(shí)時(shí)任務(wù)調(diào)度的實(shí)現(xiàn)方法,其特征在于所述的各種常見的調(diào)度算法為循環(huán)執(zhí)行算法,先進(jìn)先出的調(diào)度算法,基于優(yōu)先級(jí)的調(diào)度算法或反饋式隊(duì)列的調(diào)度算法。
      全文摘要
      本發(fā)明公開了一種嵌入式操作系統(tǒng)分組硬實(shí)時(shí)任務(wù)調(diào)度的實(shí)現(xiàn)方法,對(duì)于嵌入式操作系統(tǒng)中的任務(wù),統(tǒng)計(jì)各個(gè)可預(yù)測(cè)任務(wù)的特點(diǎn),并給每個(gè)任務(wù)定義了維和任務(wù)間距離,對(duì)于多個(gè)任務(wù)的集合定義了組、組群以及組間距離和組群間距離,采用了多任務(wù)情況下,對(duì)沖突最少的任務(wù)進(jìn)行調(diào)度的方法,從而能夠減少切換時(shí)間,減少任務(wù)切換時(shí)的各項(xiàng)開銷,提高任務(wù)調(diào)度的效率和嵌入式操作系統(tǒng)的實(shí)時(shí)性。
      文檔編號(hào)G06F9/46GK1818875SQ20061004987
      公開日2006年8月16日 申請(qǐng)日期2006年3月16日 優(yōu)先權(quán)日2006年3月16日
      發(fā)明者陳天洲, 胡威, 謝斌, 趙懿 申請(qǐng)人:浙江大學(xué)
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1