在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

電子發燒友App

硬聲App

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示
電子發燒友網>電子資料下載>嵌入式開發>淺談Nut/OS和μC/OS—II的實時調度算法比較

淺談Nut/OS和μC/OS—II的實時調度算法比較

2017-11-07 | rar | 0.2 MB | 次下載 | 1積分

資料介紹

如果說CPU是計算機系統的心臟,那么進程調度就是計算機系統的靈魂,因為它決定了如何使用CPU。例如,Linux是一個多任務操作系統,它的理想狀況是保持CPU有效運行。如果某個正在運行的進程轉入等待系統資源,操作系統就調度其他進程運行,從而保證CPU的最大利用率。如何使系統能夠保證較短的響應時間和較高的吞吐量,使得多個進程競爭CPU時保持公平、高效,是通用操作系統所追求的目標。但對于實時操作系統而言,它的調度算法是基于POSIX規定的基于事件驅動優先級的調度算法,為了及時響應高優先級進程,它寧愿犧牲整體效率。
  調度的實現可以分為2步來完成:
  ①何時啟動調度,即解決調度啟動時機的問題;
  ②怎么調度,按優先級調度就是要找到系統當前優先級最高的進程,然后進行上下文切換。
  在實時系統中,只有當就緒進程集合發生變動時才有調度的需要,而就緒進程集合的變動只可能發生在幾種情況下:
  ①運行中的進程受阻或自動放棄CPU;
  ②系統中新建了進程;
  ③運行中的進程“自殺”或“被殺”;
  ④運行中的進程喚醒了某個線程;
  ⑤中斷服務子程序結束時喚醒了其他進程。
  理想情況下,實時系統在有高優先級的進程轉入就緒態時,就應該立即啟動調度程序,響應高優先級進程。但實際上卻存在著不可調度的時隙,稱為不可調度窗口:
  ①正在進行進程切換,不能進行調度;
  ②中斷響應期間,不能進行調度;
  ③進入臨界區,不能進行調度;
  ④DMA期間CPU已被掛起,不可能進行調度。
  在實時系統里,必須努力縮小不可調度窗口。
  在調度啟動的時機上,所有的實時操作系統基本一致。
  那么接下來要做的就是尋找系統中當前最應該得到運行機會的進程,下面分別看一個最簡單的和比較復雜的實現。
  1 μC/OS-Il的實現
  在μC/OS-II里。只允許有64個優先級且不同進程優先級互不相同。把64個優先級分成8組,數據結構位圖OSRdyGrp反映著哪一些進程組中有就緒進程。另外,各個進程組的標志位在位圖中的位置也是有規律的,位置靠右邊的標志位代表優先級較高的進程組,只要從右到左掃描位圖OSRdyGrp,碰到第一個非0的標志位就代表當前優先級最高的就緒進程所在的進程組。這樣,就可以預先編制一個對照表,即數組。此數組就是OStJnMapTbl[](該表的詳細描述可參閱參考文獻的88~90頁),以位圖OSRdyGrp的數值為下標,就可以直接得到優先級最高者所屬組號。
  8個標志位共有256種不同組合,所以這個數組大小是256。為了便于與μC/OS-II源代碼對照,把以OSRdyGrp的數值為下標,在OSTJnMapTbl[]數組中查得的值稱為組號y。知道組號y以后,就可以以此為下標在OSRdyTbl[]中得到相應的組內位圖。同理,以這個位圖的數值OSRdyThl[y]為下標,又可以在OSUnMapTbl[]內查得該組內優先級最高者進程號。將組號和組內號拼合在一起,就得到了目標進程完整的進程號,即優先級。再以此為下標,就可以從OSTcBPrioTbl[]中得到指向目標進程控制塊的OSTCBHighRdy。以下就是進程切換的工作了。
  通過上面的分析,不難理解下面這樣的語句了:這個過程如此簡潔,其根本原因是μC/OS-II嚴格按優先級調度,并且每個優先級只有一個進程。如果優先級的使用并非唯一,多個線程可以使用相同的優先級,那就還有個相同優先級的就緒進程之間怎樣調度的問題,這就使調度過程復雜化了。一些商品的實時操作系統,例如VxWorks,允許多個進程具有相同的優先級,因為不支持不同進程可以有相同優先級的系統,無法采用優先級繼承算法來解決實時系統里令人討厭的優先級反轉現象,但它不公開源代碼。下面選擇一個公開源代碼的實時操作系統Nut/OS進行分析。它有256個優先級且允許不同進程具有相同的優先級。在這樣的系統里,是不可能采用類似于位圖這樣的機制來實現調度的。
  2Nut/OS的實現
  為了敘述方便,設計一個完整的進程運行的情景來說明。另外Nut/0S中采用了線程的概念,在不分系統空間和用戶空間的系統中,進程等價于線程。而進程和任務本來就是同一個概念的不同叫法。Nut/Os是一個嵌入式實時操作系統,不分系統空間和用戶空間,所以以下的敘述中,線程、進程和任務混用,意思完全一樣。
  在Nut/OS中,可以通過下面的函數創建一個線程:
  淺談Nut/OS和μC/OS—II的實時調度算法比較
  創建一個線程的過程,實際上就是從堆棧空間中申請一個放置線程控制塊的空間,在這個空間中建立線程控制塊并完成對控制塊的賦值的過程。為了更好地說明線程控制塊的作用,下面用一個圖表來說明,如圖1所示。
  淺談Nut/OS和μC/OS—II的實時調度算法比較
下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1GD100PIX120C6SNA規格書
  2. 0.98 MB   |  3次下載  |  免費
  3. 2一款入耳式耳機的仿真與分析
  4. 0.44 MB   |  2次下載  |  免費
  5. 3Eurotherm TKS Temperature 用戶手冊
  6. 1.46 MB  |  2次下載  |  免費
  7. 4人形機器人電機驅動和傳感報告
  8. 4.27 MB   |  2次下載  |  免費
  9. 5無線系統中天線和RF元件電磁建模
  10. 7.48 MB   |  1次下載  |  4 積分
  11. 6Multisim模擬電路仿真教程
  12. 1.93 MB   |  1次下載  |  3 積分
  13. 7DMP300C1型微機變壓器保護測控裝置技術說明書
  14. 4.11 MB   |  次下載  |  10 積分
  15. 8用MT3540芯片設計BOOST電路 1(可下載)
  16. 445.66 KB  |  次下載  |  免費

本月

  1. 1晶體三極管的電流放大作用詳細說明
  2. 0.77 MB   |  32次下載  |  2 積分
  3. 2Python從入門到精通背記手冊
  4. 18.77 MB   |  27次下載  |  1 積分
  5. 3雙極型三極管放大電路的三種基本組態的學習課件免費下載
  6. 4.03 MB   |  25次下載  |  1 積分
  7. 4AIWA HS-J303 MKⅡ維修手冊
  8. 22.47 MB   |  23次下載  |  10 積分
  9. 5多級放大電路的學習課件免費下載
  10. 1.81 MB   |  21次下載  |  2 積分
  11. 6九陽豆漿機高清原理圖
  12. 2.47 MB   |  20次下載  |  1 積分
  13. 7AIWA HS-J202/HS-J202M/HS-J800維修手冊
  14. 13.60 MB   |  15次下載  |  10 積分
  15. 81875功放原理圖
  16. 0.04 MB   |  11次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935127次下載  |  10 積分
  3. 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉換器 PCB layout 設計
  4. 1.48MB  |  420063次下載  |  10 積分
  5. 3Altium DXP2002下載入口
  6. 未知  |  233089次下載  |  10 積分
  7. 4電路仿真軟件multisim 10.0免費下載
  8. 340992  |  191382次下載  |  10 積分
  9. 5十天學會AVR單片機與C語言視頻教程 下載
  10. 158M  |  183337次下載  |  10 積分
  11. 6labview8.5下載
  12. 未知  |  81585次下載  |  10 積分
  13. 7Keil工具MDK-Arm免費下載
  14. 0.02 MB  |  73814次下載  |  10 積分
  15. 8LabVIEW 8.6下載
  16. 未知  |  65988次下載  |  10 積分
主站蜘蛛池模板: 狠狠涩| 国产综合色精品一区二区三区 | 天堂网www| 综合网天天 | 秋霞特色大片18入口私人高清 | 欧美有码视频 | 啪啪小视频网站 | 天天综合网久久 | 欧美一级视频在线观看欧美 | 欧美色图狠狠干 | 人人干人人上 | 亚洲偷自偷白图片 | 嫩草影院永久入口在线观看 | 午夜影院在线观看视频 | 在线观看免费黄视频 | 久久国产乱子伦精品免费午夜 | 亚洲区一二三四区2021 | 亚洲第一区第二区 | 奇米四色7777 | 干夜夜 | 午夜片 飘香香影院 | 天天爱天天爽 | 嗯!啊!使劲用力在线观看 | 亚洲夂夂婷婷色拍ww47 | 免费看一级大片 | 最近国语视频免费观看在线播放 | 手机看片日韩高清1024 | 32pao强力打造免费高速高清 | 久久99精品久久久久久野外 | 久久精品亚洲一级毛片 | 国产人成精品香港三级古代 | 亚洲youjizz | 欧美三级一区二区三区 | 综综综综合网 | 国产黄色在线免费观看 | 91久久另类重口变态 | 亚洲一级特黄 | 亚洲综合久久久久久888 | zzji国产精品视频 | 狠狠欧美| 国内啪啪|