資料介紹
引言
筆者曾在本刊2008年12期上發(fā)表過一篇文章——《基于μC/OS-11的時(shí)間片調(diào)度法設(shè)計(jì)》,近期在網(wǎng)絡(luò)上看到有很多感興趣的技術(shù)同行作了大量引用和轉(zhuǎn)載。根據(jù)在實(shí)際項(xiàng)目中的應(yīng)用經(jīng)驗(yàn),有必要對其再議,主要原因如下:①多任務(wù)的時(shí)間片調(diào)度在嵌入式領(lǐng)域有實(shí)用價(jià)值。一方面是很多嵌入式軟件系統(tǒng)升級有這種需求,舊的軟件模塊基于Endless Loop實(shí)現(xiàn),升級到μC/OS-II后,若要最大限度地復(fù)用舊的軟件模塊,時(shí)間片調(diào)度算法是實(shí)現(xiàn)舊的設(shè)計(jì)模式到新架構(gòu)之間最簡單的橋梁。另一方面,對于控制領(lǐng)域,存在大量的耗時(shí)任務(wù)無法自動釋放控制權(quán),時(shí)間片調(diào)度降低了任務(wù)設(shè)計(jì)的復(fù)雜度。剛剛發(fā)布不久的μC/OS-II,推出的重大改進(jìn)之一就是增加了對Round Robin的支持,更是表明μC/OS-II的使用者們對該功能的實(shí)際需求是切實(shí)存在的。
②不更改μC/OS-II內(nèi)核代碼實(shí)現(xiàn)時(shí)間片調(diào)度。《基于μC/OS-II的時(shí)間片調(diào)度法設(shè)計(jì)》對OS內(nèi)核代碼作了修改,雖然很少但增加了系統(tǒng)耦合度,對日后的項(xiàng)目維護(hù)和第三方升級都是不利的。如果存在完全不用更改內(nèi)核而僅基于OS服務(wù)的正常調(diào)用的實(shí)現(xiàn)方案,對系統(tǒng)的可靠性和移植性都是有益的。
?、巯鄬Ζ藽/OS-III,μC/OS-II仍然有廣泛的應(yīng)用領(lǐng)域。μC/OS-III作出了重大的改進(jìn),增加了時(shí)間片調(diào)度,擴(kuò)展了任務(wù)數(shù)的限制,允許了同等優(yōu)先級任務(wù)的存在,更多新特性的引入帶來了內(nèi)核結(jié)構(gòu)的重整以及運(yùn)行時(shí)開銷的增加。雖然可以通過配置優(yōu)化系統(tǒng),但就大部分的應(yīng)用而言,μC/OS-II完全能夠勝任,至少不需要僅僅為了時(shí)間片調(diào)度功能而選用μC/OS-III.
1調(diào)度原理
該調(diào)度算法對系統(tǒng)的要求有兩點(diǎn):首先要建立一個(gè)額外的調(diào)度任務(wù)用于管理待調(diào)度的用戶任務(wù)時(shí)間片計(jì)時(shí)及其切換,我們將其命名為TaskRB_Scheduler;其次是保證其任務(wù)優(yōu)先級高于所有的待調(diào)度時(shí)間片任務(wù),保證調(diào)度任務(wù)能搶占所有被調(diào)度任務(wù)的控制權(quán)。
我們假設(shè)系統(tǒng)中有3個(gè)任務(wù)需要分享時(shí)間片,分別為TaskRB_1、TaskRB_2、TaskRB_3.為了實(shí)現(xiàn)時(shí)間片的調(diào)度功能,還需要額外的調(diào)度任務(wù)TaskRB Scheduler,于是系統(tǒng)中的將會有4個(gè)任務(wù)。其中,TaskRB Scheduler由初始化代碼創(chuàng)建,而待調(diào)度的3個(gè)用戶任務(wù)的創(chuàng)建和管理完全由TaskRB Scheduler任務(wù)來完成。
TaskRB_Scheduler的運(yùn)行分為兩個(gè)階段:首先是初始化階段,負(fù)責(zé)所有時(shí)間片任務(wù)的創(chuàng)立并確保其處于Suspend狀態(tài);然后是調(diào)度運(yùn)行階段,如圖
筆者曾在本刊2008年12期上發(fā)表過一篇文章——《基于μC/OS-11的時(shí)間片調(diào)度法設(shè)計(jì)》,近期在網(wǎng)絡(luò)上看到有很多感興趣的技術(shù)同行作了大量引用和轉(zhuǎn)載。根據(jù)在實(shí)際項(xiàng)目中的應(yīng)用經(jīng)驗(yàn),有必要對其再議,主要原因如下:①多任務(wù)的時(shí)間片調(diào)度在嵌入式領(lǐng)域有實(shí)用價(jià)值。一方面是很多嵌入式軟件系統(tǒng)升級有這種需求,舊的軟件模塊基于Endless Loop實(shí)現(xiàn),升級到μC/OS-II后,若要最大限度地復(fù)用舊的軟件模塊,時(shí)間片調(diào)度算法是實(shí)現(xiàn)舊的設(shè)計(jì)模式到新架構(gòu)之間最簡單的橋梁。另一方面,對于控制領(lǐng)域,存在大量的耗時(shí)任務(wù)無法自動釋放控制權(quán),時(shí)間片調(diào)度降低了任務(wù)設(shè)計(jì)的復(fù)雜度。剛剛發(fā)布不久的μC/OS-II,推出的重大改進(jìn)之一就是增加了對Round Robin的支持,更是表明μC/OS-II的使用者們對該功能的實(shí)際需求是切實(shí)存在的。
②不更改μC/OS-II內(nèi)核代碼實(shí)現(xiàn)時(shí)間片調(diào)度。《基于μC/OS-II的時(shí)間片調(diào)度法設(shè)計(jì)》對OS內(nèi)核代碼作了修改,雖然很少但增加了系統(tǒng)耦合度,對日后的項(xiàng)目維護(hù)和第三方升級都是不利的。如果存在完全不用更改內(nèi)核而僅基于OS服務(wù)的正常調(diào)用的實(shí)現(xiàn)方案,對系統(tǒng)的可靠性和移植性都是有益的。
?、巯鄬Ζ藽/OS-III,μC/OS-II仍然有廣泛的應(yīng)用領(lǐng)域。μC/OS-III作出了重大的改進(jìn),增加了時(shí)間片調(diào)度,擴(kuò)展了任務(wù)數(shù)的限制,允許了同等優(yōu)先級任務(wù)的存在,更多新特性的引入帶來了內(nèi)核結(jié)構(gòu)的重整以及運(yùn)行時(shí)開銷的增加。雖然可以通過配置優(yōu)化系統(tǒng),但就大部分的應(yīng)用而言,μC/OS-II完全能夠勝任,至少不需要僅僅為了時(shí)間片調(diào)度功能而選用μC/OS-III.
1調(diào)度原理
該調(diào)度算法對系統(tǒng)的要求有兩點(diǎn):首先要建立一個(gè)額外的調(diào)度任務(wù)用于管理待調(diào)度的用戶任務(wù)時(shí)間片計(jì)時(shí)及其切換,我們將其命名為TaskRB_Scheduler;其次是保證其任務(wù)優(yōu)先級高于所有的待調(diào)度時(shí)間片任務(wù),保證調(diào)度任務(wù)能搶占所有被調(diào)度任務(wù)的控制權(quán)。
我們假設(shè)系統(tǒng)中有3個(gè)任務(wù)需要分享時(shí)間片,分別為TaskRB_1、TaskRB_2、TaskRB_3.為了實(shí)現(xiàn)時(shí)間片的調(diào)度功能,還需要額外的調(diào)度任務(wù)TaskRB Scheduler,于是系統(tǒng)中的將會有4個(gè)任務(wù)。其中,TaskRB Scheduler由初始化代碼創(chuàng)建,而待調(diào)度的3個(gè)用戶任務(wù)的創(chuàng)建和管理完全由TaskRB Scheduler任務(wù)來完成。
TaskRB_Scheduler的運(yùn)行分為兩個(gè)階段:首先是初始化階段,負(fù)責(zé)所有時(shí)間片任務(wù)的創(chuàng)立并確保其處于Suspend狀態(tài);然后是調(diào)度運(yùn)行階段,如圖
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- FreeRTOS時(shí)間片進(jìn)行任務(wù)調(diào)度?
- FreeRTOS時(shí)間片調(diào)度
- UCOIII時(shí)間片輪轉(zhuǎn)調(diào)度
- 單片機(jī)應(yīng)用程序架構(gòu)-時(shí)間片輪詢法
- 小信號放大電路設(shè)計(jì)方案匯總 139次下載
- 空調(diào)PFC原理及交錯(cuò)設(shè)計(jì)方案分析 18次下載
- AC24V接口EMC標(biāo)準(zhǔn)電路設(shè)計(jì)方案 36次下載
- AC380V EMC標(biāo)準(zhǔn)電路設(shè)計(jì)方案 50次下載
- AV接口EMC標(biāo)準(zhǔn)電路設(shè)計(jì)方案 29次下載
- CAN總線接口EMC標(biāo)準(zhǔn)電路設(shè)計(jì)方案 206次下載
- 基于NVM和DRAN的混合內(nèi)存系統(tǒng)設(shè)計(jì)方案 12次下載
- 如何進(jìn)行窄帶蜂窩物聯(lián)網(wǎng)的資源分配和調(diào)度問題分析與設(shè)計(jì) 6次下載
- UCOS擴(kuò)展例程-UCOSIII時(shí)間片輪轉(zhuǎn)調(diào)度 21次下載
- 嵌入式實(shí)時(shí)操作系統(tǒng)VxWorks內(nèi)核調(diào)度機(jī)制分析
- 時(shí)間繼電器設(shè)計(jì)方案
- FreeRTOS任務(wù)調(diào)度器的三種調(diào)度算法講解(下) 1794次閱讀
- 軟件架構(gòu)之時(shí)間輪片法 384次閱讀
- 配網(wǎng)調(diào)度自動化自愈系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 923次閱讀
- 不同功率的充電樁設(shè)計(jì)方案總結(jié) 2091次閱讀
- 電力變壓器保護(hù)設(shè)計(jì)方案 573次閱讀
- 高效電路分析:疊加定理、支路分析法、網(wǎng)孔分析法、結(jié)點(diǎn)分析法、戴維南和諾頓定理 5273次閱讀
- 任務(wù)調(diào)度開源代碼是什么 784次閱讀
- 時(shí)間片調(diào)度算法issue詳解 1206次閱讀
- 利用IP流量發(fā)生器實(shí)現(xiàn)IPTV測試儀的設(shè)計(jì)方案 2477次閱讀
- 單片機(jī)中的時(shí)間片輪詢法解析 8389次閱讀
- 智能電網(wǎng)調(diào)度的主要運(yùn)行技術(shù)分析 4279次閱讀
- 四種常用的電路分析法 1.7w次閱讀
- 基于FPGA的數(shù)字核脈沖分析器硬件設(shè)計(jì)方案 2075次閱讀
- 基于FPGA的幀同步系統(tǒng)設(shè)計(jì)方案 4712次閱讀
- LED大屏幕控制電路設(shè)計(jì)方案研究 2473次閱讀
下載排行
本周
- 1TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費(fèi)
- 2開關(guān)電源基礎(chǔ)知識
- 5.73 MB | 6次下載 | 免費(fèi)
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設(shè)計(jì)
- 0.60 MB | 3次下載 | 免費(fèi)
- 5基于FPGA的光纖通信系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 0.61 MB | 2次下載 | 免費(fèi)
- 6基于FPGA的C8051F單片機(jī)開發(fā)板設(shè)計(jì)
- 0.70 MB | 2次下載 | 免費(fèi)
- 751單片機(jī)窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費(fèi)
- 8基于51單片機(jī)的RGB調(diào)色燈程序仿真
- 0.86 MB | 2次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33564次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21548次下載 | 免費(fèi)
- 5電氣工程師手冊免費(fèi)下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動電路設(shè)計(jì)》 溫德爾著
- 0.00 MB | 6653次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537796次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191185次下載 | 免費(fèi)
- 7十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183278次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評論
查看更多