freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

rtosucos-ii原理及應(yīng)用-文庫吧資料

2025-05-13 18:12本頁面
  

【正文】 優(yōu)先級指定目標(biāo)。n OS_TASK_SUSPEND_PRIO 指定的任務(wù)不存在。n OS_TASK_SUSPEND_IDEL 不能掛起空閑任務(wù)。page山東科技大學(xué) 信息學(xué)院 68* 任務(wù)的掛起和恢復(fù)n 掛起任務(wù)函數(shù)原型INT8U OSTaskSuspend( INT8U prio )。n uC/OSII中,可掛起除 “空閑任務(wù) ”( OSTaskIdel( )) 外的任何任務(wù)。n 掛起任務(wù)的 TCB 還存在系統(tǒng)中,只是該任務(wù)的狀態(tài)是 “掛起 ” ,對掛起態(tài)的任務(wù) uC/OSII不再調(diào)度運(yùn)行。 Task_B 控制蜂鳴器每 3S鳴 。補(bǔ)充:任務(wù)延時(shí)系統(tǒng)函數(shù)。) // Task_A 任務(wù)體{……}}page山東科技大學(xué) 信息學(xué)院 64*兩個延時(shí)函數(shù)的原型:void OSTimeDly( INT16U ticks ) /* ticks 是節(jié)拍數(shù) */INT8U OSTimeDlyHMSM (INT8U hours, INT8U minutes, INT8U seconds, INT16U milli) /* 絕對時(shí)間延時(shí),位于 */備注: 參數(shù)值域 hours255, minutes59, seconds59, milli999這兩個系統(tǒng)函數(shù)定義在 。 // 初始化統(tǒng)計(jì)任務(wù)(如果需要的話)…… // 在此處可以創(chuàng)建其他任務(wù)Forpdata) //任務(wù) A{…… // 安裝并啟動 uC/OSII 系統(tǒng)時(shí)鐘OSStatInit(Task_A(void)。 // uC/OSII 初始化…… //主要是系統(tǒng)硬件初始化OSInit(){page山東科技大學(xué) 信息學(xué)院 63* 任務(wù)的創(chuàng)建n 創(chuàng)建任務(wù)的示意代碼void uC/OSII要求:在 OSStart( 也可在 Task中創(chuàng)建其他的 Task,應(yīng)用中習(xí)慣使用此結(jié)構(gòu)。))前創(chuàng)建。)可在主函數(shù) page山東科技大學(xué) 信息學(xué)院 62* 任務(wù)的創(chuàng)建n 創(chuàng)建任務(wù)的一般方法216。)n OSTaskCreateExt(創(chuàng)建該任務(wù)的 TCB;在 TCB中將該任務(wù)的 Code、 Stack關(guān)聯(lián)起來和 TCB共同構(gòu)成Task。直接操作寄存器page山東科技大學(xué) 信息學(xué)院 60*第 2章 目錄n 任務(wù)的基本概念n 任務(wù)堆棧n 任務(wù)控制塊及任務(wù)控制塊鏈表n 任務(wù)就緒表及任務(wù)調(diào)度n 任務(wù)的創(chuàng)建n 任務(wù)的掛起和恢復(fù)n 其他任務(wù)管理函數(shù)n uC/OSII的初始化和任務(wù)的啟動page山東科技大學(xué) 信息學(xué)院 61* 任務(wù)的創(chuàng)建任務(wù)的創(chuàng)建 )OS_TASK_SW( ) 依次完成的 7項(xiàng)工作:1. 被中止 Task的斷點(diǎn)指針( PC)入棧保護(hù)2. 被中止 Task通用寄存器入棧保護(hù)3. 被中止 Task系統(tǒng)管理 SP → 該 TCBOSTCBStkPtr4. 獲得待運(yùn)行任務(wù) TCB5. 獲得待運(yùn)行任務(wù) TCBOSTCBStkPtr6. 恢復(fù)待運(yùn)行任務(wù) CPU現(xiàn)場(不包含 PC)7. 切換 ,使 CPU接續(xù)運(yùn)行待運(yùn)行 Task斷點(diǎn)。接續(xù)運(yùn)行要求斷點(diǎn)和斷點(diǎn)數(shù)據(jù)(現(xiàn)場)的完全保護(hù)和恢復(fù)。備注:程序 PC、 SP、 PSWCPU216。n 幾個概念:216。page山東科技大學(xué) 信息學(xué)院 57* 任務(wù)就緒表及任務(wù)調(diào)度2. 任務(wù)切換宏 ……} OSTCBPrio。 OSTCBDly。*OSTCBPrev。*OSTCBNext。os_tcbpage山東科技大學(xué) 信息學(xué)院 56* 任務(wù)控制塊及任務(wù)控制塊鏈表n 任務(wù)控制塊( TCB)的結(jié)構(gòu)任務(wù)控制塊結(jié)構(gòu)的主要成員typedef是以優(yōu)先權(quán)為下標(biāo)的 TCB,很簡單:OSTCBHighRdy = OSTCBPrioTbl[OSPrioHighRdy ]備注: OSTCBPrioTbl[OSPrioHighRdy ) “優(yōu)先級 ”TCBTCB)。OSIntCtxSw():任務(wù)級的調(diào)度器 (中有兩個 n 任務(wù)調(diào)度器的兩項(xiàng)主要工作 : ① 從任務(wù)就緒表中查找優(yōu)先級最高的就緒任務(wù), ② 實(shí)現(xiàn)任務(wù)切換?!叭蝿?wù)調(diào)度器 ”n uC/OSIIn 任務(wù)調(diào)度 CPU任務(wù)的調(diào)度n 任務(wù)切換 page山東科技大學(xué) 信息學(xué)院 52*page山東科技大學(xué) 信息學(xué)院 53* 任務(wù)就緒表及任務(wù)調(diào)度n 用于加速 TCB 的訪問。page山東科技大學(xué) 信息學(xué)院 51* 任務(wù)控制塊及任務(wù)控制塊鏈表 _回顧n 任務(wù)控制塊鏈表其他相關(guān)系統(tǒng)管理變量n OSTCBPrioTbl[ ]uC/OSIIy = OSUnMapTbl[OSRdyGrp]。// 優(yōu)先級別// D D D0位prio = (y3)+x。// D D D3位x = OSUnMapTal[OSRdyTbl[y]]。y = OSUnMapTal[OSRdyGrp]。S以 OSRdyTbl[] 的第 y 元素為下標(biāo),查 OSUnMapTbl[] 表,可得 x 。在就緒表中查找最高優(yōu)先級別任務(wù)的過程說明:在 “按圖索驥 ” 算法中,對于所有的任務(wù)其 “索驥 ” 時(shí)間都是一致的。 1 10 0 0 0 0 0 0 0 0 000y = OSUnMapTbl[OSRdyGrp]。D0D1D0D1D0D1]中預(yù)定義了一個 page32(亦稱之為 《 優(yōu)先級判定表 》 )在 …}。]prio的(任務(wù))映射操作。)的當(dāng)前狀態(tài)(位圖)到最高優(yōu)先級別 OSRdyGrp、 OSRdyTbl[就緒狀態(tài))。)的操作(進(jìn)入 /脫離 OSRdyGrp、 OSRdyTbl[prio= ~ OSMapTbl[prio3]。= ~ OSMapTbl[prioamp。n 使用如下代碼可使一個優(yōu)先級別為 prio的任務(wù)脫離就緒狀態(tài):OSRdyTbl[prio3] | = OSMapTbl[prioamp。0x07 ]。]操作:把 prio為 29的任務(wù)置為就緒狀態(tài)Y XOSRdyGrp | = OSMapTbl[ prio3 ]。D0D1D0D1D0D1數(shù)組:page山東科技大學(xué) 信息學(xué)院 46*OSRdyGrpOSMapTbl[uC/OSII========“置 /清 ”依照 為 29的任務(wù)就緒狀態(tài)在任務(wù)就緒表中的表示Y Xpage山東科技大學(xué) 信息學(xué)院 45* 任務(wù)就緒表及任務(wù)調(diào)度n D0D1D0D1D0D1OOSRdyGrp8 29prio29page山東科技大學(xué) 信息學(xué)院 44*舉例: prioyOSRdyTbln [2:0]OSRdyGrp), OSRdyTblOSRdyTbl 也是 8bit。OSRdyGrp(任務(wù)組就緒變量) 8~63,對應(yīng)的二進(jìn)制數(shù) 最多管理 64個任務(wù), Prio值域: 01/01/01/0D2D3D4D5D6D71/01/01/01/01/01/01/01/01/01/01/01/01/01/01/01/01/01/01/01/01/01/01/01/01/01/01/01/01/01/01/01/0OSRdyTbl[OSRdyTbl[ ] 充當(dāng),最多 8個元素,可以標(biāo)示 64個任務(wù)。一個 的位置,并用這個位置的狀態(tài)( 1或者 0)來表示任務(wù)是否處于就緒狀態(tài) ,這個表就叫做任務(wù)就緒狀態(tài)表,簡稱叫 任務(wù)就緒表 RAM中設(shè)立了一個記錄表, 系統(tǒng)中的每個任務(wù)都在這個表中占據(jù)一 μC/OS_II進(jìn)行任務(wù)調(diào)度的依據(jù)就是 任務(wù)就緒表 μC/OS_II進(jìn)行任務(wù)調(diào)度的思想是 “近似地每時(shí)每刻總是讓優(yōu)先級最高的就緒任務(wù)處于運(yùn)行狀態(tài) ” 。page山東科技大學(xué) 信息學(xué)院 38* 任務(wù)就緒表及任務(wù)調(diào)度 多任務(wù)操作系統(tǒng)的核心工作就是任務(wù)調(diào)度。u程序代碼、私有堆棧、任務(wù)控制塊 是任務(wù)的三要件。其實(shí),程序切換的關(guān)鍵是把程序的 私有堆棧指針 賦予處理器的堆棧指針 SP實(shí)質(zhì)上系統(tǒng)是通過 SP的切換來實(shí)現(xiàn)程序的切換的。通用寄存器內(nèi)容5。任務(wù)堆棧指針( SP)3。page山東科技大學(xué) 信息學(xué)院 34*任務(wù)代碼任務(wù)堆棧內(nèi)存內(nèi)存處理器PCSP任務(wù)運(yùn)行時(shí)與 處理器之間的關(guān)系處理器通過兩個指針寄存器( PC和 SP)來與任務(wù)代碼和任務(wù)堆棧建立聯(lián)系并運(yùn)行它寄存器組程序運(yùn)行環(huán)境運(yùn)行環(huán)境包括了兩部分:處理器中的運(yùn)行環(huán)境和內(nèi)存中的運(yùn)行環(huán)境page山東科技大學(xué) 信息學(xué)院 35*任務(wù)代碼任務(wù)堆棧內(nèi)存處理器PCSP多任務(wù)時(shí)的問題任務(wù)代碼任務(wù)堆棧內(nèi)存任務(wù)代碼任務(wù)堆棧內(nèi)存?當(dāng)有多個任務(wù)時(shí),處理器中的運(yùn)行環(huán)境應(yīng)該怎么辦?寄存器組程序運(yùn)行環(huán)境page山東科技大學(xué) 信息學(xué)院 36*程序 虛擬處理器PCSP 虛擬處理器PCSP 虛擬處理器PCSP 虛擬處理器PCSP調(diào)度器多任務(wù)時(shí)任務(wù)與處理器之間關(guān)系的處理程序處理器PCSP在內(nèi)存中為每個任務(wù)創(chuàng)建一個虛擬的處理器(處理器部分的運(yùn)行環(huán)境由操作系統(tǒng)的 調(diào)度器 按某種規(guī)則來進(jìn)行這兩個復(fù)制工作復(fù)制當(dāng)需要運(yùn)行某個任務(wù)時(shí)就把該任務(wù)的虛擬處理器復(fù)制到實(shí)際處理器中復(fù)制當(dāng)需要中止當(dāng)前任務(wù)時(shí),則把任務(wù)對應(yīng)的虛擬處理器復(fù)制到內(nèi)存復(fù)制再把另一個需要運(yùn)行的任務(wù)的虛擬處理器復(fù)制到實(shí)際處理器中寄存器組寄存器組也就是說,任務(wù)的切換是任務(wù) 運(yùn)行環(huán)境的切換page山東科技大學(xué) 信息學(xué)院 37*虛擬處理器虛擬處理器應(yīng)該存儲的主要信息:1。page山東科技大學(xué) 信息學(xué)院 32*所謂切換就是:PC 目標(biāo)地址如何操作 PC指令:不同的計(jì)算機(jī)類型的指令是不同的。從此可以知道,哪個程序占有了 PC,哪個程序就占有了處理器。并發(fā)過程示意圖處理器如何進(jìn)行程序的切換?page山東科技大學(xué) 信息學(xué)院 31*程序的切換(兩句話)處理器是個傻瓜, PC讓它干啥,它就干啥?;蛘哒f是由多個程序輪班地 占用 處理器這個資源。的基本工作方式page山東科技大學(xué) 信息學(xué)院 30*什么是多任務(wù)系統(tǒng)簡單地說,就是能用一個處理器并發(fā)(注意,不是同時(shí)! )地運(yùn)行多個程序的計(jì)算機(jī)管理系統(tǒng)。OS任務(wù)控制塊優(yōu)先級數(shù)組216。 OSTCBPrioTbl[ ] OSTCBFreeList、 OSTCBList216。n OSTCBCur:全局系統(tǒng)變量,指向當(dāng)前正在運(yùn)行的任務(wù)的 TCB 。: OS_TCB* 數(shù)據(jù)類型的數(shù)組,以 Prio 為下標(biāo)存放已使能的 TCB 指針。 page山東科技大學(xué) 信息學(xué)院 25*任務(wù)控制塊鏈表 空任務(wù)控制塊鏈表page山東科技大學(xué) 信息學(xué)院 26*uC/OSII 中提供了系統(tǒng)函數(shù) OSTaskDel( ),用于刪除一個任務(wù) 實(shí)質(zhì)就是將該任務(wù)的 TCB從 “任務(wù)控制塊列表 ” 移到了 “空任務(wù)控制塊列表 ” 。 由于這些任務(wù)控制塊還沒有對應(yīng)的任務(wù),故這個鏈表叫做 空任務(wù)塊鏈表。這個函數(shù)首先為被創(chuàng)建任務(wù)從空任務(wù)控制塊鏈表獲取一個任務(wù)控制塊,然后用任務(wù)的屬
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1