<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > μC/OS-Ⅱ在應(yīng)用系統(tǒng)中任務(wù)劃分方法的研究

          μC/OS-Ⅱ在應(yīng)用系統(tǒng)中任務(wù)劃分方法的研究

          作者: 時(shí)間:2012-08-21 來源:網(wǎng)絡(luò) 收藏

          在一些較復(fù)雜的嵌入式中,個(gè)別代碼會包含繁瑣的計(jì)算算法,運(yùn)行時(shí)占用大量的CPU處理時(shí)間和資源,嚴(yán)重影響μⅡ系統(tǒng)的實(shí)時(shí)性。對于這樣的,可將其按照不同的內(nèi)部功能為多個(gè)模塊,每個(gè)模塊即為一個(gè)相對獨(dú)立的小,相互之間通過任務(wù)通信機(jī)制協(xié)調(diào)工作。由于需要占用CPU較多的處理時(shí)間,這些任務(wù)幾乎沒有實(shí)時(shí)性要求,所以通常將其優(yōu)先級設(shè)低,以確保強(qiáng)實(shí)時(shí)任務(wù)的正常運(yùn)行。

          例如:當(dāng)前的μⅡ系統(tǒng)中有一任務(wù)在調(diào)度執(zhí)行時(shí)會占用較長時(shí)間,導(dǎo)致其運(yùn)行過程頻繁被強(qiáng)實(shí)時(shí)任務(wù)打斷,這樣CPU就需要“犧牲”大量時(shí)間和空間用于保存被打斷的任務(wù)現(xiàn)場,而整個(gè)系統(tǒng)的實(shí)時(shí)性就會大大降低,執(zhí)行效率也大打折扣。該任務(wù)的描述如下:首先根據(jù)算法1處理數(shù)據(jù)X,其次利用算法2處理數(shù)據(jù)Y,最后將數(shù)據(jù)X和數(shù)據(jù)Y通過算法3得到數(shù)據(jù)Z。在這種情況下,應(yīng)將不同的算法處理部分為獨(dú)立的子任務(wù),并根據(jù)執(zhí)行順序逐次遞減任務(wù)優(yōu)先級。由于縮短了單個(gè)任務(wù)的執(zhí)行時(shí)間,任務(wù)的響應(yīng)時(shí)間也隨之變短,整個(gè)系統(tǒng)的實(shí)時(shí)性得到了提高。

          3 應(yīng)用實(shí)例

          作者在參與開發(fā)的一個(gè)項(xiàng)目網(wǎng)絡(luò)數(shù)據(jù)采集系統(tǒng)中使用了μⅡ進(jìn)行多任務(wù)的管理。該項(xiàng)目基于Freescale公司1994年推出的微處理器MC9S12NE64,主要功能要求網(wǎng)絡(luò)數(shù)據(jù)采集系統(tǒng)通過光敏傳感器采集工廠生產(chǎn)設(shè)備的多個(gè)狀態(tài)指示燈,以獲取當(dāng)前設(shè)備的工作狀態(tài)信息,隨后通過UDP包將信息發(fā)送至局域網(wǎng)中PC服務(wù)器處理。此外,技術(shù)人員還能夠通過串行通信方式對采集系統(tǒng)進(jìn)行測試和維護(hù)。該采集系統(tǒng)的主要任務(wù)及其優(yōu)先級設(shè)定如表1所示。

          生產(chǎn)設(shè)備狀態(tài)信息采集及處理任務(wù)優(yōu)先級最高,因?yàn)樵撊蝿?wù)屬于強(qiáng)實(shí)時(shí)性任務(wù),無法及時(shí)執(zhí)行會使采集系統(tǒng)處于癱瘓狀態(tài)。而同樣屬于實(shí)時(shí)任務(wù)的系統(tǒng)測試維護(hù)功能由于實(shí)時(shí)要求并不高,所以優(yōu)先級次之。

          A/D模塊驅(qū)動(dòng)程序、網(wǎng)絡(luò)模塊通信程序、串口通信程序和FIASH模塊操作程序與各自硬件單元關(guān)系密切,故將它們劃分為獨(dú)立的硬件相關(guān)任務(wù)。

          采集系統(tǒng)中耗時(shí)最多、處理最復(fù)雜的部分是局域網(wǎng)內(nèi)的數(shù)據(jù)通信。由于受到芯片存儲空間的限制,作者并沒有移植現(xiàn)有源碼公開的TCP/IP協(xié)議棧,取而代之的是自主研發(fā)了簡易TCP/IP協(xié)議,并將該協(xié)議棧中每一層分割成為1個(gè)獨(dú)立的任務(wù)存在。

          4 結(jié)語

          μC/OS-Ⅱ是一個(gè)公開源碼、搶占式、多任務(wù)的嵌入式實(shí)時(shí)操作系統(tǒng),自1992年面世以來,已應(yīng)用于上百種產(chǎn)品。與一些商用嵌入式操作系統(tǒng)相比,它源代碼結(jié)構(gòu)清晰,易于移植和裁剪,具有很大的發(fā)展空間。本文在分析μC/OS-Ⅱ任務(wù)管理機(jī)制的基礎(chǔ)上,對μC/OS-Ⅱ的任務(wù)劃分進(jìn)行了初步探究,闡述了一些任務(wù)劃分的:“劃分與硬件模塊相關(guān)的任務(wù)”、“劃分強(qiáng)實(shí)時(shí)性任務(wù)”、“分割耗時(shí)較多的任務(wù)”。最后,結(jié)合開發(fā)實(shí)踐給出了基于μC/OS-Ⅱ的任務(wù)劃分實(shí)例。


          上一頁 1 2 下一頁

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();