一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

實(shí)時操作系統(tǒng)UCOS-II,學(xué)會RTOS給你的身價增值

h1654155971.7688 ? 來源:未知 ? 作者:李倩 ? 2018-03-16 09:18 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

如果,你最近關(guān)注一些嵌入式招聘職位描述,你可能會經(jīng)常看到看到使用過uCOS、Vxworks、QNX等RTOS者優(yōu)先。

隨便打開一個20K的嵌入式開發(fā)工作職責(zé):

你會發(fā)現(xiàn)熟悉RTOS的開發(fā)、移植、剪裁真的很吃香!

今天,我們就來介紹一下實(shí)時操作系統(tǒng)UCOS-II

一、嵌入式操作系統(tǒng)概覽

嵌入式操作系統(tǒng)的主要好處就是屏蔽了底層硬件的差別,給上層應(yīng)用提供統(tǒng)一的接口,并管理進(jìn)程調(diào)度和資源(如CPU時間、內(nèi)存)分配等。并且可以充分利用硬件資源,如在單任務(wù)時(大循環(huán)結(jié)構(gòu),如大部分51程序)遇到delay函數(shù)時,CPU在空轉(zhuǎn)。而在多任務(wù)系統(tǒng),遇到delay或需等待資源時系統(tǒng)會自動運(yùn)行下一個任務(wù),等條件滿足再回來運(yùn)行先前的任務(wù),這樣就充分利用了CPU,提高了效率。

uC/OS操作系統(tǒng)與裸機(jī)程序的最大不同點(diǎn)就在于uC/OS有任務(wù)調(diào)度,可以根據(jù)任務(wù)的重要程度(優(yōu)先級)優(yōu)先執(zhí)行重要的任務(wù),從而確保能及時處理最重要的數(shù)據(jù)。(所以對于一個系統(tǒng)有必要使用OS的判斷是能否劃分一個個的任務(wù),并且各任務(wù)間的耦合很小)可以思考下裸機(jī)程序中斷的時候發(fā)生的過程。利用堆??梢院茏杂傻脑贏、B中切換,如果切換足夠快,A、B看以來好像同時在執(zhí)行,這就是并行,A、B就是任務(wù)。如果這個切換操作放到定時器函數(shù)中來做,就可以嚴(yán)格按照時間來切換。另外,各個任務(wù)之間有存在一定的關(guān)系,有邏輯上的先后等,必須引進(jìn)全局的結(jié)構(gòu)體、變量來標(biāo)記一些信息,全局的這些數(shù)據(jù)是不會被釋放的,所以所有的任務(wù)可以去通過讀、寫這些數(shù)據(jù)來實(shí)現(xiàn)各個程序塊交流信息,實(shí)現(xiàn)所謂的同步、互斥。這就是操作系統(tǒng)的原理,而這些不同的通信方式按功能細(xì)分就成事件管理、內(nèi)存管理等。

二、ucos的運(yùn)行概覽

首先是主函數(shù),然后是OSInit(),這個函數(shù)就是對那些全局的數(shù)據(jù)結(jié)構(gòu)初始化,建立希望的鏈表等數(shù)據(jù)結(jié)構(gòu),為后面全局變量通信做好準(zhǔn)備,并且創(chuàng)建了1-2個系統(tǒng)任務(wù)(空閑任務(wù)必須,為了不讓操作系統(tǒng)返回。統(tǒng)計任務(wù)可選),而所謂的創(chuàng)建任務(wù)OSTaskCreate就是把一個函數(shù)的函數(shù)地址、自己的棧建立聯(lián)系、優(yōu)先級、任務(wù)控制塊等弄好,為任務(wù)切換做好準(zhǔn)備。設(shè)置好定時切換的相關(guān)信息類似定時器,按照節(jié)拍在中斷中進(jìn)行任務(wù)切換判斷(這個節(jié)拍是給延時函數(shù)提供計時基準(zhǔn),一個任務(wù)的延時時間到或等待的資源滿足而進(jìn)入就緒表就會檢查優(yōu)先級看是否可以執(zhí)行),可以的話就發(fā)生切換,這個時候還沒有開啟開關(guān),所以等任務(wù)創(chuàng)建完成后,啟動多任務(wù)函數(shù)OSStart(),這個函數(shù)是讓SP指到其中的一個棧,然后出棧就跳到一個任務(wù)函數(shù)里去了,接下來就是正常的任務(wù)運(yùn)行了。

對于操作系統(tǒng),主要是任務(wù)怎么釋放CPU(延時、中斷、等待資源),其他的任務(wù)怎么獲得CPU(進(jìn)入就緒表),如何找到某個任務(wù)(優(yōu)先級及任務(wù)控制列表)。

三、ucos各部分介紹

μC/OS-II的各種服務(wù)都以任務(wù)的形式來出現(xiàn)的。在μC/OS-II中,每個任務(wù)都有一個唯一的優(yōu)先級。它是基于優(yōu)先級可剝奪型內(nèi)核,適合應(yīng)用在對實(shí)時性要求較高的地方。

3.1 μC/OS-II的任務(wù)

μC/OS-II的核心部分就是它的任務(wù),它也是通過任務(wù)來對不同事件進(jìn)行響應(yīng)和處理的。從代碼上來看,μC/OS-II的任務(wù)一般為如下形式(C語言描述,后同):

void uCOSTask(void *p)

{

while(1)

{

任務(wù)具體的功能;

}

}

創(chuàng)建任務(wù)的函數(shù)有個是OSTaskCreate (void (*task)(void *pd), void *pdata, OS_STK *ptos, INT8U prio),OSTaskCreate()需要四個參數(shù):task是任務(wù)代碼的指針,pdata是當(dāng)任務(wù)開始執(zhí)行時傳遞給任務(wù)的參數(shù)的指針,ptos是分配給任務(wù)的堆棧的棧頂指針,prio是分配給任務(wù)的優(yōu)先級。

μC/OS-II的任務(wù)是在內(nèi)存中來看,任務(wù)由三個部分構(gòu)成:任務(wù)的代碼部分、任務(wù)堆棧和任務(wù)控制塊。其中任務(wù)控制塊保存任務(wù)的屬性;任務(wù)堆棧在任務(wù)進(jìn)行切換時保存任務(wù)運(yùn)行的環(huán)境;任務(wù)代碼部分就是宏觀上看到的C語言代碼。

嵌入式設(shè)備中一般只有一個處理器,所以在某一具體的時刻只能有一個任務(wù)占用處理器。μC/OS-II的任務(wù)一共有5種狀態(tài):睡眠、就緒、運(yùn)行、等待和中斷服務(wù)。

3.2 任務(wù)控制塊

μC/OS-II中參與調(diào)度和管理的最小單位是任務(wù)。而任務(wù)是通過任務(wù)控制塊的形式管理的。任務(wù)控制塊是一個結(jié)構(gòu)體,它包含了任務(wù)的堆棧信息,任務(wù)控制塊的指針,前一個任務(wù)控制塊和后一個任務(wù)控制塊的指針(利用優(yōu)先級一個個查找是否是要找的任務(wù),所以優(yōu)先級是唯一的),任務(wù)的優(yōu)先級(根據(jù)優(yōu)先級查找到任務(wù)控制塊,從而就找到該任務(wù)),任務(wù)需要等待的時間(任務(wù)延時的時候時鐘節(jié)拍中斷來的時候會對等待時間做減,為零的時候就放入就緒表,查看一下是否需要切換)等信息。

任務(wù)控制塊包含了除了指向任務(wù)代碼的所有信息。而任務(wù)的代碼地址在任務(wù)運(yùn)行時是怎么獲得的呢?其實(shí),任務(wù)代碼的地址是通過任務(wù)的堆棧儲存的。

3.3 任務(wù)堆棧

任務(wù)在創(chuàng)建時候,必須指明該任務(wù)的堆棧。任務(wù)的堆棧大小由用戶根據(jù)實(shí)際情況自行定義。μC/OS-II的堆棧實(shí)際上是一個連續(xù)的內(nèi)存塊,任務(wù)在創(chuàng)建的時候,由函數(shù)OSTaskCreate()將任務(wù)的代碼和用戶為任務(wù)定義的堆棧聯(lián)系起來。由于堆棧按照增長方向可以分為兩種類型,故在創(chuàng)建任務(wù)的時候調(diào)用的堆棧初始化函數(shù)實(shí)際上也跟微處理器類型有關(guān)的。故這些代碼也是移植時需要修改的。

3.4系統(tǒng)任務(wù)

μC/OS-II提供了兩個系統(tǒng)任務(wù):空閑任務(wù)和統(tǒng)計任務(wù)。其中空閑任務(wù)是必要的。因?yàn)樵谀骋粫r刻可能所有的用戶任務(wù)都不處于就緒狀態(tài),這樣微處理器會因?yàn)闆]有任何任務(wù)運(yùn)行造成系統(tǒng)崩潰。

3.5 臨界區(qū)

μC/OS-II還有一個臨界的概念,所謂臨界區(qū),就是一段特殊的代碼。在這段代碼內(nèi)不允許中斷的響應(yīng),以此來保證這段代碼的原子性。臨界代碼段通過調(diào)用開關(guān)中斷兩個宏來實(shí)現(xiàn)的。

3.6 μC/OS-II任務(wù)的管理

3.6.1 對就緒任務(wù)的管理

μC/OS-II定義了一個就緒表的數(shù)據(jù)結(jié)構(gòu),跟普通的數(shù)組非常像(也就是一維數(shù)組),但是被賦予了特殊的意義。就緒表中每一位表示一個優(yōu)先級的任務(wù)是否處于就緒狀態(tài)。而每一位的下標(biāo)則表示任務(wù)的優(yōu)先級。通過特殊的數(shù)據(jù)結(jié)構(gòu)和意義,就緒任務(wù)的管理效率很高。

任務(wù)就緒表是由一個OSRdyTbl數(shù)組表示,數(shù)組大小(OS_RDY_TBL_SIZE)由最低優(yōu)先級(OS_LOWEST_PRIO)確定, 這樣可以減少不必要的空間浪費(fèi),節(jié)約RAM資源。OSRdyTbl[]是INT8U 類型數(shù)組,每一個元素占8位。每一位表示一個優(yōu)先級狀態(tài)(1為就緒,0則未就緒)。8個元素則可以表示64個優(yōu)先級(8*8=64)。為加速就續(xù)表的查找,Labrosse把每個OSRdyTbl元素劃為每一優(yōu)先級組,8個元素則有8個優(yōu)先級組,它定義了一個INT8U類型的8位變量OSRdyGrp ,OSRdyGrp的每一位對應(yīng)每個優(yōu)先級組。如下圖:

任務(wù)優(yōu)先級的第三位用于確定任務(wù)在osRdyTb1中在元素的第幾位,接著的三位用于指定是第幾個元素。

假設(shè)優(yōu)先級31的任務(wù)第一個加入了就緒任務(wù)表,此時OSRdyGrp和OSRdyTbl的情況:

OSRdyGrp的第3位為1,表示第3優(yōu)先級組有就緒任務(wù)。OSRdyTbl的第7位為1,表示第31優(yōu)先級的任務(wù)被就緒。

用此可以使任務(wù)加入或脫離就緒表。調(diào)度的時候即是查找此表,找出最高的優(yōu)先級,從而找到任務(wù)控制塊,執(zhí)行該任務(wù)。

3.6.2 任務(wù)的創(chuàng)建、掛起和其他操作

μC/OS-II提供了兩個函數(shù)可以創(chuàng)建任務(wù),它們是OSTaskCreate()和OSTaskCreateExt(),任務(wù)在創(chuàng)建之后也可以掛起或者恢復(fù),這同樣要使用μC/OS-II提供的系統(tǒng)函數(shù)。掛起任務(wù)使用函數(shù)OSTsakSuspend(),恢復(fù)被掛起的任務(wù)使用函數(shù)OSTaskResume()。μC/OS-II還提供了任務(wù)的刪除,優(yōu)先級的修改,查詢?nèi)蝿?wù)信息等其他功能的函數(shù)。

3.6.3 任務(wù)的調(diào)度

μC/OS-II任務(wù)的調(diào)度是由調(diào)度器完成的。所謂調(diào)度器實(shí)際上是一個函數(shù)OSShed();此函數(shù)通過搜索任務(wù)就緒表來獲得最高優(yōu)先級的就緒任務(wù),在由該任務(wù)的優(yōu)先級來獲得任務(wù)的控制塊再來實(shí)現(xiàn)任務(wù)的切換。

任務(wù)的調(diào)度不是任何時刻都進(jìn)行的,而是有時機(jī)的。μC/OS-II任務(wù)當(dāng)有以下情況發(fā)生時將產(chǎn)生一次任務(wù)調(diào)度:

● 創(chuàng)建了新任務(wù),并在就緒表中進(jìn)行了登記

● 有任務(wù)被刪除

● 有處于等待的任務(wù)被喚醒

● 中斷退出的時候

● 正在運(yùn)行的任務(wù)等待某事件而進(jìn)入等待狀態(tài)

● 正在運(yùn)行的任務(wù)自愿放棄微處理器占有權(quán)而等待一段時間

3.6.4任務(wù)的初始化和啟動

μC/OS-II中定義了大量的全局變量和數(shù)據(jù)結(jié)構(gòu)。在μC/OS-II運(yùn)行以前需要對這些全局變量和數(shù)據(jù)結(jié)構(gòu)進(jìn)行初始化。為了完成μC/OS-II的初始化,系統(tǒng)提供了初始化函數(shù)OSInit()。μC/OS-II的啟動也是通過系統(tǒng)提供的函數(shù)OSStart()來實(shí)現(xiàn)的。OSStart()在判斷系統(tǒng)沒有在運(yùn)行后來獲得就緒表中最高優(yōu)先級的就緒任務(wù),并調(diào)用函數(shù)OSStartHighRdy()來啟動系統(tǒng)。

3.6.5 中斷和時鐘

實(shí)時系統(tǒng)為了能夠響應(yīng)異步事件,通常會采用中斷。μC/OS-II也采用了中斷來響應(yīng)外部事件。μC/OS-II處理中斷過程大致如下:當(dāng)系統(tǒng)開中斷時,系統(tǒng)接收到中斷然后找到中斷服務(wù)程序的入口地址執(zhí)行中斷,執(zhí)行完成后退出中斷。這里要提到的一點(diǎn)是,當(dāng)要退出中斷時,系統(tǒng)會查找就緒表是否有比處于中斷服務(wù)狀態(tài)任務(wù)的優(yōu)先級更高的任務(wù)進(jìn)入就緒狀態(tài)。如果有將會一發(fā)一次調(diào)度,否則返回被中斷的任務(wù)繼續(xù)運(yùn)行。關(guān)于中斷的一些細(xì)節(jié)在后面的移植的部分還會討論。

在所有的中斷源中最重要的一個就是時鐘中斷,它為系統(tǒng)提供時間服務(wù)以此來實(shí)現(xiàn)任務(wù)的延時。

3.6.6 任務(wù)間的通信

對于一個完整的嵌入式操作系統(tǒng)來說,任務(wù)間的通信機(jī)制必不可少。μC/OS-II提供了相應(yīng)的數(shù)據(jù)結(jié)構(gòu)和機(jī)制來實(shí)現(xiàn)任務(wù)之間的同步和通信。

在ucos II 里任務(wù)間通信可以采用以下幾種方式:

1. 共享全局變量,這是最快捷有效的方式,實(shí)現(xiàn)這種通信可以采用以下兩種方式:一是利用宏OS_ENTER_CRITICAL()和OS_EXIT_CRITICAL()來關(guān)閉中斷和打開中斷,二是利用函數(shù)OSSchedLock()和OSSchedUnlock()對μC/OS-II中的任務(wù)調(diào)度函數(shù)上鎖和開鎖.

2. 使用信號

3. 使用郵箱

4. 使用消息隊(duì)列

創(chuàng)建一個任務(wù)需要給這個任務(wù)分配一個任務(wù)控制塊,這個任務(wù)控制塊存儲著關(guān)于這個任務(wù)的重要信息。那么,事件控制塊就好比任務(wù)里的任務(wù)控制塊。它存儲著這個事件的重要信息,我們說創(chuàng)建一個事件(信號,郵箱,消息隊(duì)列),其本質(zhì)的過程就是初始化這個事件控制塊。多個任務(wù)可以同時等待同一個事件的發(fā)生。在這種情況下,當(dāng)該事件發(fā)生后,所有等待該事件的任務(wù)中,優(yōu)先級最高的任務(wù)得到了該事件并進(jìn)入就緒狀態(tài),準(zhǔn)備執(zhí)行。

事件控制塊是一個數(shù)據(jù)結(jié)構(gòu),其定義如下:

typedef struct {

void *OSEventPtr; /* 指向消息或者消息隊(duì)列的指針 */

INT8U OSEventTbl[OS_EVENT_TBL_SIZE]; /* 等待任務(wù)列表 */

INT16U OSEventCnt; /* 計數(shù)器(當(dāng)事件是信號量時) */

INT8U OSEventType; /* 時間類型 */

INT8U OSEventGrp; /* 等待任務(wù)所在的組 */

} OS_EVENT;

.OSEventPtr指針,只有在所定義的事件是郵箱或者消息隊(duì)列時才使用。當(dāng)所定義的事件是郵箱時,它指向一個消息,而當(dāng)所定義的事件是消息隊(duì)列時,它指向一個數(shù)據(jù)結(jié)構(gòu)(因?yàn)殛?duì)列要傳遞多個消息)。

.OSEventTbl[]和.OSEventGrp很像前面講到的OSRdyTbl[]和OSRdyGrp,只不過前兩者包含的是等待某事件的任務(wù),而后兩者包含的是系統(tǒng)中處于就緒狀態(tài)的任務(wù)。

.OSEventCnt當(dāng)事件是一個信號量時,.OSEventCnt是用于信號量的計數(shù)器。

(初始化時,如果信號量是用來表示一個或者多個事件的發(fā)生,那么該信號量的初始值應(yīng)設(shè)為0, 如果信號量是用于對共享資源的訪問,那么該信號量的初始值應(yīng)設(shè)為1)

.OSEventType定義了事件的具體類型。它可以是信號量(OS_EVENT_SEM)、郵箱(OS_EVENT_TYPE_MBOX)或消息隊(duì)列(OS_EVENT_TYPE_Q)中的一種。用戶要根據(jù)該域的具體值來調(diào)用相應(yīng)的系統(tǒng)函數(shù),以保證對其進(jìn)行的操作的正確性。

信號量是什么?信號量有什么用?

信號量一是可以用來表示一個或多個事件的發(fā)生,二是用來對共享資源的訪問。

有時候郵箱可以當(dāng)做信號量來使用,郵箱相對信號量而言,只是多傳遞了一個指針變量。其實(shí)和創(chuàng)建一個信號量的過程幾乎是一樣的,先申請一個空事件控制塊,接著初始化這個事件控制塊。最后返回一個指向這個事件控制塊的指針。不同之處在于事件控制塊的類型被設(shè)置成OS_EVENT_TYPE_MBOX,以及使用.OSEventPtr域來容納消息指針。

如果把郵箱比作是信號量的升級版,那消息隊(duì)列就是郵箱的升級版。郵箱可以實(shí)現(xiàn)從一個任務(wù)向另外一個任務(wù)發(fā)送一個指針變量,消息隊(duì)列則可以實(shí)現(xiàn)從一個任務(wù)向另外一個任務(wù)發(fā)送很多個指針變量。而且每個指針指向的數(shù)據(jù)結(jié)構(gòu)變量也可以有所不同。(消息隊(duì)列最根本的部分是一個循環(huán)緩沖區(qū),其中的每個單元包含一個指針。)和創(chuàng)建郵箱,創(chuàng)建信號量過程是很相似的,首先申請控制塊,接著初始化這個控制塊,和創(chuàng)建郵箱,信號量不同的,創(chuàng)建消息隊(duì)列過程是多申請了一個隊(duì)列控制塊。

最后,簡單總結(jié)一下搞懂RTOS的知識儲備:

1. 找一塊別人已經(jīng)移植好代碼的MCU,把uCOS跑起來。然后去看別人的示例代碼,先搞懂怎么使用uC/OS。

嘗試著寫一個控制三個不同的led燈,它們以不同頻率閃爍。

2.等到uCOS給你提供的API用熟了, 去讀關(guān)于操作系統(tǒng)的書。 然后再去把堆棧、上下文、調(diào)度器、鎖、文件系統(tǒng)、網(wǎng)絡(luò)、中斷、線程、郵箱(消息隊(duì)列)等等這些概念對應(yīng)到實(shí)踐中去。

試著寫一個多任務(wù)的HTTP服務(wù)器。 試著利用uCOS重構(gòu)現(xiàn)有的代碼。

3. 去讀一個早期一點(diǎn)的版本uCOS的代碼, 看看uCOS是怎么實(shí)現(xiàn)操作系統(tǒng)的。

這個時候再去看操作系統(tǒng)原理的書。

4. 嘗試著移植uCOS到一塊新的芯片上去。 不到萬不得已不要去google。 試著獨(dú)立解決遇到的問題。

5. 改一改原始版本的uCOS代碼,看看修改了之后,操作系統(tǒng)的行為會如何變化。

6. 去查uCOS版本進(jìn)化的歷史,看看為什么大家會如此修改這個代碼? 為什么這么設(shè)計 ?

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴

原文標(biāo)題:月薪20K不是夢!學(xué)會RTOS給你的身價增值

文章出處:【微信號:weixin21ic,微信公眾號:21ic電子網(wǎng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    《嵌入式實(shí)時操作系統(tǒng)uCOS-II》4

    《嵌入式實(shí)時操作系統(tǒng)uCOS-II》4
    發(fā)表于 08-03 22:19

    邵貝貝譯著:嵌入式實(shí)時操作系統(tǒng)uCOS-II中文教程

    邵貝貝譯著:嵌入式實(shí)時操作系統(tǒng)uCOS-II中文教程
    發(fā)表于 08-04 11:16

    實(shí)時嵌入式操作系統(tǒng)ucos-II在ARM9上的移植應(yīng)用

    實(shí)時嵌入式操作系統(tǒng)ucos-II在ARM9上的移植應(yīng)用
    發(fā)表于 04-22 13:00

    Ucos中文書-邵貝貝嵌入式實(shí)時操作系統(tǒng)uCOS-II中文教程

    Ucos中文書-邵貝貝嵌入式實(shí)時操作系統(tǒng)uCOS-II中文教程
    發(fā)表于 04-28 11:44

    嵌入式實(shí)時操作系統(tǒng)uCOS-II[邵貝貝]

    嵌入式實(shí)時操作系統(tǒng)uCOS-II[邵貝貝]
    發(fā)表于 07-01 20:59

    基于linux的模擬uCOS-II實(shí)時操作系統(tǒng)

    作者:張森1 引言  uCOS-II是一個短小而功能強(qiáng)大的實(shí)時嵌入式操作系統(tǒng)。在Jean J.Labrosse先生所著.由邵貝貝教授翻譯的Micro/uCOS-II THE REAL-
    發(fā)表于 07-04 07:23

    基于linux的uCOS-II實(shí)時操作系統(tǒng)

    張森1 引言  uCOS-II是一個短小而功能強(qiáng)大的實(shí)時嵌入式操作系統(tǒng)。在Jean J.Labrosse先生所著.由邵貝貝教授翻譯的Micro/uCOS-II THE REAL-TIM
    發(fā)表于 07-09 07:26

    基于linux的uCOS-II實(shí)時操作系統(tǒng)模擬

    1 引言uCOS-II是一個短小而功能強(qiáng)大的實(shí)時嵌入式操作系統(tǒng)。在Jean J.Labrosse先生所著.由邵貝貝教授翻譯的Micro/uCOS-II THE REAL-TIME KE
    發(fā)表于 07-23 08:23

    uCOS-II操作流程

    商業(yè)途徑是需要付費(fèi)的,但是對于學(xué)習(xí)研究卻是免費(fèi)的。它們同是嵌入式實(shí)時操作系統(tǒng),很多東西都是共通的,熟悉其一,其它都非難題了。??RTOS的學(xué)習(xí),我選擇的是uCOS-II。學(xué)習(xí)該
    發(fā)表于 08-23 09:29

    UCOS-II實(shí)時操作系統(tǒng)是怎樣進(jìn)行移植的

    UCOS-II實(shí)時操作系統(tǒng)是怎樣進(jìn)行移植的?有哪些具體流程?
    發(fā)表于 11-02 10:00

    uCOS-II實(shí)時操作系統(tǒng)實(shí)時操作系統(tǒng)與分時操作系統(tǒng)的區(qū)別是什么

    文章目錄1簡介1uCOS-II中的任務(wù)1簡介uCOS-II實(shí)時操作系統(tǒng)實(shí)時操作系統(tǒng)與分時
    發(fā)表于 12-14 06:42

    UCOS-II實(shí)時操作系統(tǒng)在數(shù)碼相框中的應(yīng)用

    本文研究了UCOS-II操作系統(tǒng)在數(shù)碼相框中的應(yīng)用,詳細(xì)描述了UCOS-II操作系統(tǒng)在ZEVIO1020雙核處理器上的移植,并且根據(jù)數(shù)碼相框多任務(wù)的特點(diǎn),設(shè)計了一套完整的消息處理機(jī)制
    發(fā)表于 03-09 11:36 ?3241次閱讀
    <b class='flag-5'>UCOS-II</b><b class='flag-5'>實(shí)時</b><b class='flag-5'>操作系統(tǒng)</b>在數(shù)碼相框中的應(yīng)用

    嵌入式實(shí)時操作系統(tǒng)uCOS-II(第二版)配套光盤

    電子發(fā)燒友網(wǎng)站提供《嵌入式實(shí)時操作系統(tǒng)uCOS-II(第二版)配套光盤.txt》資料免費(fèi)下載
    發(fā)表于 10-23 14:55 ?0次下載

    UCOS-II:源碼公開的實(shí)時嵌入式操作系統(tǒng)

    UCOS-II:源碼公開的實(shí)時嵌入式操作系統(tǒng)
    發(fā)表于 04-20 13:55 ?9次下載

    嵌入式實(shí)時操作系統(tǒng) uCOS-II +g +m

    嵌入式實(shí)時操作系統(tǒng) uCOS-II ,講的詳細(xì),希望對大家學(xué)嵌入式實(shí)時操作系統(tǒng)有幫助。
    發(fā)表于 05-31 14:40 ?2次下載