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

正文內(nèi)容

嵌入式系統(tǒng)及應(yīng)用-閱讀頁(yè)

2024-11-06 17:02本頁(yè)面
  

【正文】 (9) 執(zhí) 行中 斷 返回指令 。 OSIntNesting++。 } uC/OS中,中斷服務(wù)子程序要用匯編語(yǔ)言來(lái)寫(xiě)。 ? 中斷延遲時(shí)間受到系統(tǒng) 關(guān)中斷 時(shí)間的影響: – 實(shí)時(shí)系統(tǒng)在進(jìn)入 臨界區(qū)代碼段 之前要關(guān)中斷,執(zhí)行完臨界代碼之后再開(kāi)中斷。 – 中斷延遲時(shí)間: ? 中斷延遲時(shí)間 = 最大關(guān)中斷時(shí)間+硬件開(kāi)始處理中斷到開(kāi)始執(zhí)行 ISR第一條指令之間的時(shí)間 。 – 在確定中斷延遲時(shí)間時(shí),要使用 最壞情況 下的關(guān)中斷時(shí)間,即 最大關(guān)中斷時(shí)間 。 ? 關(guān)中斷的最長(zhǎng)時(shí)間應(yīng)該是這兩種關(guān)中斷時(shí)間的最大值。 ? 中斷延遲時(shí)間與中斷響應(yīng)時(shí)間的區(qū)別: – 前者指到 中斷服務(wù)程序 的第一條指令; – 而后者指到 用戶的中斷服務(wù)程序 的第一條指令。 40 電子科技大學(xué)嵌入式軟件工程中心 中斷響應(yīng)時(shí)間 ?對(duì)于非搶占式型內(nèi)核: –微處理器保存 CPU上下文(主要是其內(nèi)部寄存器的內(nèi)容)以后立即執(zhí)行用戶的中斷服務(wù)子程序代碼: ?中斷響應(yīng)時(shí)間 = 中斷延遲 + 保存CPU內(nèi)部寄存器的時(shí)間 41 電子科技大學(xué)嵌入式軟件工程中心 中斷時(shí)序 對(duì)于可搶占型內(nèi)核,進(jìn)入用戶中斷服務(wù)子程序之前,需要調(diào)用一個(gè)特定的內(nèi)核函數(shù)OSIntEnter()。因此,其中斷響應(yīng)時(shí)間為: 中斷響應(yīng)時(shí)間 =中斷延遲 +保存 CPU內(nèi)部寄存器的時(shí)間+內(nèi)核進(jìn)入中斷服務(wù)函數(shù)的執(zhí)行時(shí)間 中斷響應(yīng)是系統(tǒng)在最壞情況下的響應(yīng)中斷的時(shí)間。 42 電子科技大學(xué)嵌入式軟件工程中心 中斷時(shí)序 中斷恢復(fù)時(shí)間定義為:微處理器執(zhí)行完用戶中斷處理子程序后返回到被中斷了的程序代碼所需要的時(shí)間,或返回到更高優(yōu)先級(jí)任務(wù)的時(shí)間。典型地,在中斷服務(wù)子程序的末尾,要調(diào)用一個(gè)由實(shí)時(shí)內(nèi)核提供的函數(shù) OSIntExit。如果脫離了嵌套,需要進(jìn)一步判斷是否有一個(gè)比被中斷任務(wù)的優(yōu)先級(jí)更高的任務(wù)進(jìn)入就緒態(tài)。因此, 中斷恢復(fù)時(shí)間 =判斷是否有更高優(yōu)先級(jí)任務(wù)進(jìn)入了就緒態(tài)的時(shí)間 + 恢復(fù)該任務(wù)的 CPU內(nèi)部寄存器值的時(shí)間 + 執(zhí)行中斷返回指令的時(shí)間 44 電子科技大學(xué)嵌入式軟件工程中心 void OSIntExit (void) { OS_ENTER_CRITICAL()。 } if ((OSIntNesting ==0)amp。(OSLockNesting) == 0)) { OSIntExitY = OSUnMapTbl[OSRdyGrp]。 if (OSPrioHighRdy != OSPrioCur) { OSTCBHighRdy = OSTCBPrioTbl[OSPrioHighRdy]。 OSIntCtxSw()。 } uC/OS OSIntExit( )函數(shù) 通知內(nèi)核離開(kāi)中斷服務(wù)子程序 ISR,看起來(lái)非常像 OSSched() 45 電子科技大學(xué)嵌入式軟件工程中心 中斷處理時(shí)間 ? 用戶的中斷處理是由應(yīng)用決定的。 46 電子科技大學(xué)嵌入式軟件工程中心 實(shí)時(shí)內(nèi)核的中斷管理 ? 實(shí)時(shí)內(nèi)核通常提供如下中斷管理功能: – 掛接中斷服務(wù)程序 。當(dāng)中斷向量對(duì)應(yīng)中斷發(fā)生的時(shí)候,被掛接的用戶中斷服務(wù)程序就會(huì)被調(diào)用執(zhí)行; – 獲得中斷服務(wù)程序入口地址 。在允許中斷嵌套的處理中,獲取當(dāng)前的中斷嵌套層次信息; – 開(kāi)中斷 ; – 關(guān)中斷 。 – 中斷服務(wù)程序的注冊(cè)中斷號(hào)為索引,把處理中斷的函數(shù)的地址放置到中斷向量的地址表中。 ? 如果處理器或?qū)崟r(shí)內(nèi)核允許中斷嵌套,中斷服務(wù)程序?qū)⒖赡鼙涣硗獾闹袛喾?wù)程序所搶占。 48 電子科技大學(xué)嵌入式軟件工程中心 用戶中斷服務(wù)程序 ? 由于中斷服務(wù)程序中通常都對(duì)中斷進(jìn)行了屏蔽,要求中斷服務(wù)程序應(yīng)該盡可能比較短,保證其他中斷和系統(tǒng)中的任務(wù)能夠得到及時(shí)處理。 – 中斷服務(wù)程序只是進(jìn)行與外圍設(shè)備相關(guān)的數(shù)據(jù)的讀寫(xiě)操作,并在需要的情況下向外圍設(shè)備發(fā)送確認(rèn)信息,然后喚醒另外的任務(wù)進(jìn)行進(jìn)一步的處理。 49 電子科技大學(xué)嵌入式軟件工程中心 /*Uses to handle data from dataReceiveISR*/ dsrTask() { while(1) { wait_for_signal_from_isr()。 } } /*Uses to receive data by interrupt*/ dataReceiveISR() { … get_data_from _device()。 … } ISR與 DSR相結(jié)合的中斷處理方式 50 電子科技大學(xué)嵌入式軟件工程中心 用戶中斷服務(wù)程序 ? 在中斷服務(wù)程序中可以調(diào)用實(shí)時(shí)內(nèi)核提供的應(yīng)用編程接口: – 但一般只能使用不會(huì)導(dǎo)致調(diào)用程序可能出現(xiàn)阻塞情況的編程接口,如可以進(jìn)行掛起任務(wù)、喚醒任務(wù)、發(fā)送消息等操作; – 但不要使用分配內(nèi)存、獲得信號(hào)量等可能導(dǎo)致中斷服務(wù)程序的執(zhí)行流程被阻塞的操作。 ? 如果中斷出現(xiàn)被阻塞的情況,將導(dǎo)致中斷不能被及時(shí)處理,其余工作也就無(wú)法按時(shí)繼續(xù)進(jìn)行,將嚴(yán)重影響整個(gè)系統(tǒng)的確定性。 ? 中斷服務(wù)程序也不能使用包含了這些操作的編程接口。 52 電子科技大學(xué)嵌入式軟件工程中心 用戶中斷服務(wù)程序 ? 中斷服務(wù)程序還需要同系統(tǒng)中的任務(wù)進(jìn)行通信。 53 電子科技大學(xué)嵌入式軟件工程中心 謝謝! 54
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1