久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: ARM9(三星2410/2440) 多任務搶占式調度器 簡易0S設計 [打印本頁]

作者: gggge123    時間: 2021-2-26 17:05
標題: ARM9(三星2410/2440) 多任務搶占式調度器 簡易0S設計
本文檔以ARM9(三星 2410/2440)為平臺,介紹一個多任務搶占式調度器------搶占式任務調度,提供延時,掛起,恢復任務操作。最精簡化,沒有加入信號量郵箱等同步通信機制。只實現一個基本任務調度器的功能。
雖然不能稱為操作系統,但已體現了小型嵌入式操作系統的精髓。OS代碼不到1.5K,核心函數只有幾個,思路簡單明了。比起 UCOS,更適合用作多任務系統原理的學習入門。  對初學者來說,看UCOS的源代碼很容易迷糊。
回想初學嵌入式多任務系統時,什么都不懂,Jean  J.Labrosse 的經典之作《嵌入式實時操作系統 uc/osII》看得我一頭霧水。事實上,使我對多任務的原理印象最深的是網上的一篇文章----《建立一個屬于自己的AVR的 RTOS》 。
學習就應該這樣,循序漸進。把一步步把簡單的東西弄懂了,便沒有復雜的了,所謂水到渠成。
這篇文章是面對初學者的,把很多問題簡化了。希望對剛接觸嵌入式多任務系統的兄弟有所幫助。
必定存在不少 bug,歡迎指正。


  什么是多任務系統?
就像我們用電腦時可以同時聽歌,上網,編輯文檔等。在多任務系統中,可以同時執行多個并行任務,各個任務之間互相獨立。通過操作系統執行任務調度而實現宏觀上的“并發運行” 。從宏觀上不同的任務并發運行,好像每個任務都有自己的 CPU一樣。
其實在單一CPU的情況下,是不存在真正的多任務機制的,存在的只有不同的任務輪流使用CPU,所以本質上還是單任務的。但由于 CPU 執行速度非常快,加上任務切換十分頻繁并且切換的很快,所以我們感覺好像有很多任務同時在運行一樣。這就是所謂的多任務機制。
多任務的最大好處是充分利用硬件資源,如在單任務時(大循環結構,如大部分 51程序)遇到 delay函數時,CPU在空轉;而在多任務系統,遇到 delay或需等待資源時系統會自動運行下一個任務,等條件滿足再回來運行先前的任務,這樣就充分利用了 CPU,提高了效率。


任務有下面的特性:

l  動態性。任務并不是隨時都可以運行的,而一個已經運行的任務并不能保證一直占有CPU直到運行完。一般有就緒態,運行態,掛起態等。
  運行態。一個運行態的任務是一個正在使用 CPU的任務。任何時刻有且只有一個運行著的任務。
  就緒態。一個就緒態任務是可運行的,等待占有 CPU的任務釋放 CPU。
  掛起態。某些條件不滿足而掛起不能運行的狀態。

51hei.png (101.16 KB, 下載次數: 199)

51hei.png

簡易0S設計.pdf

374.41 KB, 下載次數: 28, 下載積分: 黑幣 -5


作者: lfly08    時間: 2021-3-23 11:06
好資料,51黑有你更精彩!!!
作者: liesnake    時間: 2021-5-2 06:37
這個不錯的,好東西。感覺還是要上系統,這樣程序才能穩定一些。




歡迎光臨 (http://m.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 激情网站| 日韩一区二区三免费高清在线观看 | 日韩免费观看视频 | 精品热久久 | 亚洲区一区二 | 国产黄色免费 | 国产成人影视 | 欧美日韩在线免费观看 | 完全免费av| 亚洲美女网站 | wwwav在线 | 91av视频在线 | 亚洲视频免费看 | 国产人成 | 黄色一级大片在线免费看国产一 | 免费在线观看黄 | 午夜精品视频在线 | 精品99视频 | 日韩8x8x | 伊人av影院| 亚洲经典一区 | 精品欧美一区二区精品久久 | 玖玖在线观看 | 午夜成人在线视频 | 精品一区二区国产 | 久久久久网站 | 精品| 成人国产精品免费观看 | 91成人精品一区在线播放 | av网在线观看 | 国产欧美日韩在线视频 | 日韩欧美中文字幕在线观看 | 亚洲激情四射 | 免费的黄色录像 | 国产日韩在线视频 | 第一福利视频导航 | 一级片网址 | 亚洲最大黄色网址 | 欧美日韩视频在线 | 欧美级毛片 | 国产精品久久久一区二区 |