當前位置:首頁 > 嵌入式 > 嵌入式軟件
[導讀] 在嵌入式應用系統的設計中,實時操作系統的應用越來越受到重視。目前市場上可以選擇的實時操作系統很多,一些商用系統為用戶提供了非常豐富的功能,不僅包括實時內核,同時

 在嵌入式應用系統的設計中,實時操作系統的應用越來越受到重視。目前市場上可以選擇的實時操作系統很多,一些商用系統為用戶提供了非常豐富的功能,不僅包括實時內核,同時還包括輸入輸出管理、文件系統、網絡、調試軟件等。但是對于中小型的嵌入式應用系統來說,商用實時操作系統的成本太高,所以采用免費軟件是最好的選擇。uC/OS-Ⅱ是一個免費的源代碼公開的實時嵌入式內核,它提供了實時系統所需的基本功能。其包含全部功能的核心部分代碼只占用8.3K字節(jié),而且由于uC/OS-Ⅱ是可裁剪的,所以用戶系統中實際的代碼最少可達2.7K字節(jié),可謂短小精悍。uC/OS-Ⅱ不僅使用戶得到廉價的解決方案,而且由于uC/OS-Ⅱ的開源特性,用戶還可以針對自己的硬件優(yōu)化代碼,以獲得更好的性能。,bRM6z

uC/OS-Ⅱ實際上是一個實時操作系統內核,只包含了任務調度、任務管理、時間管理、內存管理和任務間的通信與同步等基本功能。沒有提供輸入輸出管理、文件系統、網絡之類的額外服務。但是由于uC/OS-Ⅱ的可移植性和開源性,用戶可以自己添加所需的各種服務。目前,已經出現了第三方為uC/OS-Ⅱ開發(fā)的文件系統、TCP/IP協議棧、用戶顯示接口等。;C`wO

uC/OS-Ⅱ的任務調度是按搶占式多任務系統設計的,即它總是執(zhí)行處于就緒條件下優(yōu)先級最高的任務。為了簡化系統的設計,uC/OS-Ⅱ規(guī)定所有任務的優(yōu)先級必須不同,任務的優(yōu)先級同時也唯一地標識了該任務。即使兩個任務的重要性是相同的,它們也必須有優(yōu)先級上的差異,這也就意味著高優(yōu)先級的任務在處理完成后必須進入等待或掛起狀態(tài),否則低優(yōu)先級的任務永遠也不可能執(zhí)行。系統通過兩種方法進行任務調度:一是時鐘節(jié)拍或其它硬件中斷到來后,系統會調用函數OSIntCtxSw()執(zhí)行切換功能;二是任務主動進入掛起或等待狀態(tài),這時系統通過發(fā)軟中斷命令或依靠處理器執(zhí)行陷阱指令來完成任務切換,中斷服務例程或陷阱處理程序的向量地址必須指向函數OSCtxSw()。;3yL

uC/OS-Ⅱ最多可以管理64個任務,這些任務通常都是一個無限循環(huán)的函數。在目前的版本中,作者保留了優(yōu)先級為0、1、2、3、OS_LOWEST_PRIO-3、OS_LOWEST_PRIO-2、OS_LOWEST_PRIO-1、OS_LOWEST_PRIO的任務,所以用戶可以同時擁有56個任務。uC/OS-Ⅱ提供了任務管理的各種函數調用,包括創(chuàng)建任務、刪除任務、改變任務的優(yōu)先級、掛起和恢復任務等。系統初始化時會自動產生兩個任務:一是空閑任務OSTaskIdle(),它的優(yōu)先級最低為OS_LOWEST_PRIO,該任務只是不停地給一個32位的整型變量加一;另一個是統計任務OSTaskStat(),它的優(yōu)先級為OS_LOWEST_PRIO-1,該任務每秒運行一次,負責計算當前CPU的利用率。XfIj

uC/OS-Ⅱ要求用戶提供一個稱為時鐘節(jié)拍的定時中斷,該中斷每秒發(fā)生10至100次,時鐘節(jié)拍的實際頻率是由用戶控制的。任務申請延時或超時控制的計時基準就是該時鐘節(jié)拍。該時鐘節(jié)拍同時還是任務調度的時間基準。uC/OS-Ⅱ提供了與時鐘節(jié)拍相關的系統服務,允許任務延時一定數量的時鐘節(jié)拍或按時、分、秒、毫秒進行延時。")fT

對于一個多任務操作系統來說,任務間的通信與同步是必不可少的。uC/OS-Ⅱ提供了四種同步對象,分別是信號量、郵箱、消息隊列和事件。通過郵箱和消息隊列還可以進行任務間的通信。所有的同步對象都有相應的創(chuàng)建、等待、發(fā)送的函數。但這些對象一旦創(chuàng)建就不能刪除,所以要避免創(chuàng)建過多的同步對象以節(jié)約系統資源。QLc6,]

為了消除多次動態(tài)分配與釋放內存所引起的內存碎片,uC/OS-Ⅱ把連續(xù)的大塊內存按分區(qū)來管理。每個分區(qū)中都包含整數個大小相同的內存塊,但不同分區(qū)之間內存塊的大小可以不同。用戶需要動態(tài)分配內存時,選擇一個適當的分區(qū),按塊來分配內存。釋放內存時將該塊放回它以前所屬的分區(qū)。這樣,就能有效解決內存碎片的問題。Qq.

uC/OS-Ⅱ的大部分代碼是用ANSI C寫成的,只有與處理器硬件相關的一部分代碼用匯編語言編寫。所以uC/OS-Ⅱ的移植性很強,可以在絕大多數8位、16位、32位微處理器、數字信號處理器上運行。uC/OS-Ⅱ的移植并不復雜,只要編寫4個匯編語言的函數、6個C函數再定義3個宏和1個常量,這些宏和函數都非常簡單,其中的5個C函數甚至只需聲明不必包含代碼。用戶可以根據需要自己編寫移植代碼。uC/OS-Ⅱ的網站上(www.uCOS-II.com)有針對不同微處理器的移植代碼可供下載。目前網站上提供的移植實例包括Intel公司的80x86、8051、80196等,Motorola公司的PowerPC、68K、CPU32等,TI公司的TMS320系列,Zilog公司的z-80、z-180,還包括Analog Device公司、ARM公司、日立公司、三菱公司、飛利浦公司和西門子公司的各種微處理器。a"WFu

© uC/OS-Ⅱ是在PC機上開發(fā)的,C編譯器使用的是Borland C/C++ 3.1版,而且PC機是大家最熟悉的開發(fā)環(huán)境,所以在PC機上學習和使用uC/OS-Ⅱ是非常方便的。uC/OS-Ⅱ的網站上也提供了在PC機上運行uC/OS-Ⅱ的源代碼。但是由于C/C++運行庫和DOS本身的限制,在PC上運行uC/OS-Ⅱ時需要注意兩個問題。3y=k1@

第一,由于DOS下的C編譯器提供的運行庫沒有考慮多線程應用的問題,運行庫中的全局變量和部分函數只適用于單線程。這些變量和函數包括:errno、_doserrno、strtok、strerror、tmpnam、tmpfile、asctime、gmtime、ecvt、fcvt等。在uC/OS-Ⅱ中使用這些函數時要小心,要避免兩個任務同時調用這些函數,或者用信號量同步對這些函數的調用。+&i

© 第二,DOS是不能重入的,就是說正在調用DOS服務期間,是不能再次調用DOS的,如果又進行了DOS調用,那么肯定會引起系統崩潰。uC/OS-Ⅱ啟動多任務后,如果兩個以上的任務進行了DOS調用或者調用了需要DOS的C/C++運行庫(如:printf、scanf等等),就有可能引起DOS重入。所以在uC/OS-Ⅱ中,可以調用BIOS或直接操縱硬件,但要盡量減少DOS調用。如果必須要用DOS,最好只有一個調用DOS的任務,或者用信號量進行同步。.

© uC/OS-Ⅱ作為一個源代碼公開的實時嵌入式內核,對我們學習和使用實時操作系統提供了極大的幫助。而uC/OS-Ⅱ自身也因此獲得了快速的發(fā)展,許多開發(fā)者已經成功地把uC/OS-Ⅱ應用于自己的系統之中。隨著uC/OS-Ⅱ的不斷完善,它必將會有更加廣闊的應用空間。[!--empirenews.page--]

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯系該專欄作者,如若文章內容侵犯您的權益,請及時聯系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或將催生出更大的獨角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數字化轉型技術解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關鍵字: AWS AN BSP 數字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術公司SODA.Auto推出其旗艦產品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關鍵字: 汽車 人工智能 智能驅動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據媒體報道,騰訊和網易近期正在縮減他們對日本游戲市場的投資。

關鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數據產業(yè)博覽會開幕式在貴陽舉行,華為董事、質量流程IT總裁陶景文發(fā)表了演講。

關鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數據產業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數字世界的話語權最終是由生態(tài)的繁榮決定的。

關鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經營業(yè)績穩(wěn)中有升 落實提質增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領增長 以科技創(chuàng)新為引領,提升企業(yè)核心競爭力 堅持高質量發(fā)展策略,塑強核心競爭優(yōu)勢...

關鍵字: 通信 BSP 電信運營商 數字經濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術學會聯合牽頭組建的NVI技術創(chuàng)新聯盟在BIRTV2024超高清全產業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現場 NVI技術創(chuàng)新聯...

關鍵字: VI 傳輸協議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯合招商會上,軟通動力信息技術(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關鍵字: BSP 信息技術
關閉
關閉