嵌入式實(shí)時(shí)操作系統(tǒng)ucos期末考試題_第1頁
嵌入式實(shí)時(shí)操作系統(tǒng)ucos期末考試題_第2頁
嵌入式實(shí)時(shí)操作系統(tǒng)ucos期末考試題_第3頁
嵌入式實(shí)時(shí)操作系統(tǒng)ucos期末考試題_第4頁
嵌入式實(shí)時(shí)操作系統(tǒng)ucos期末考試題_第5頁
已閱讀5頁,還剩3頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上一、名詞解釋:1、OS:操作系統(tǒng)2、MCU:微控制器3、ISR:中斷服務(wù)子程序4、FIFO:先進(jìn)先出5、TCB:Task Control Block,任務(wù)控制塊6、API:應(yīng)用程序接口7、RTOS:實(shí)時(shí)操作系統(tǒng)8、UART:通用異步收發(fā)傳輸器9、MMU:內(nèi)存管理單元10、JTAG:邊界調(diào)試接口二、填空題1、( 優(yōu)先級(jí)搶占和時(shí)間片輪轉(zhuǎn) )是一種運(yùn)行時(shí)間一到就剝奪進(jìn)程處理器使用權(quán)的剝奪式調(diào)度。2、實(shí)時(shí)系統(tǒng)的兩個(gè)基本要求:( 邏輯或功能正確 )、時(shí)間正確。所謂時(shí)間正確是指 (實(shí)時(shí)系統(tǒng)的計(jì)算必須在預(yù)定的時(shí)間內(nèi)完成)。3、臨界區(qū)是指( 處理時(shí)不可分割的代碼 、每個(gè)進(jìn)程中訪問臨界

2、資源的那段程序 )4、UCOS調(diào)用系統(tǒng)延時(shí)最小時(shí)間單位( 毫秒 )5、UCOS配置文件中OS_TICKS_PER_SEC的數(shù)值定義為32,含義是(時(shí)鐘頻率為32 hz)6如果某一個(gè)任務(wù)不是必須的監(jiān)控任務(wù),我們一般采用( 動(dòng)態(tài)內(nèi)存管理 )的機(jī)制來創(chuàng)建該任務(wù)所需要的變量?jī)?nèi)存空間,要想能使用這種機(jī)制,必須首先將內(nèi)存交給(操作系統(tǒng))來統(tǒng)一管理7、如果系統(tǒng)中某一個(gè)資源屬于獨(dú)占資源,n個(gè)任務(wù)都需要使用,標(biāo)準(zhǔn)的做法是使用( 互斥信號(hào)量 )來解決8、在UCOS中,優(yōu)先級(jí)用一個(gè)數(shù)字表示,數(shù)字越大表示任務(wù)的優(yōu)先級(jí)別越(低 )9、優(yōu)先級(jí)調(diào)度的( 任務(wù)就緒表 )標(biāo)志進(jìn)程搶占處理器的權(quán)利大小。10、( 任務(wù)控制塊 )主

3、要用來記錄任務(wù)的堆棧指針,任務(wù)的當(dāng)前狀態(tài),任務(wù)的優(yōu)先級(jí)別等一些與任務(wù)管理有關(guān)的屬性的表。11、臨界區(qū)是指( 保證共享資源的完整性和可靠性的代碼段 )。12、可重入指的是( 是一段代碼(如一個(gè)函數(shù))可以被多個(gè)任務(wù)同時(shí)調(diào)用,而不必?fù)?dān)心會(huì)破壞數(shù)據(jù) )。13、某事件周期不確定,持續(xù)時(shí)間較短,處理容忍度較長(zhǎng),通常我們采取在( 任務(wù)就緒表)中發(fā)現(xiàn)該事件,在(任務(wù)調(diào)度)中處理該事件。14、如果系統(tǒng)中有2個(gè)資源,n個(gè)任務(wù)都需要使用,標(biāo)準(zhǔn)的做法是使用(互斥信號(hào)量)來解決。15、在UCOS中,最低優(yōu)先級(jí)自動(dòng)賦給( 空閑任務(wù) )這個(gè)系統(tǒng)任務(wù)。16、對(duì)CPU資源進(jìn)行分配的兩種操作系統(tǒng)常見調(diào)度算法為_(任務(wù)級(jí)調(diào)度_)和

4、 (中斷級(jí)調(diào)度)。17、uC/OS中,主要依靠_(任務(wù)堆棧_)來保存任務(wù)工作環(huán)境。18、uC/OS為加快就緒任務(wù)的檢索速度,定義了_OSRdyTbl_數(shù)組保存所有任務(wù)的就緒狀態(tài),定義了變量_OSRdyGrp_來表明上面的數(shù)組中有那些行有任務(wù)就緒。19、uC/OS進(jìn)入中斷時(shí)首先需要調(diào)用的函數(shù)為_OSIntEnter()_,退出中斷時(shí)需要調(diào)用的函數(shù)為_OSIntExit()_。20、uC/OS為保證低優(yōu)先級(jí)的任務(wù)得到CPU控制權(quán),要求除空閑任務(wù)外,所有任務(wù)必須在任何的合適位置調(diào)用系統(tǒng)延時(shí)函數(shù)如_OSTimeDly() 或事件等待函數(shù)如OSTimeDlyHMSM()_ _。21、uC/OS如果某個(gè)任

5、務(wù)的執(zhí)行需要多個(gè)信號(hào)量組合決定,可使用系統(tǒng)資源_事件標(biāo)志組flag _ 22、實(shí)時(shí)操作系統(tǒng)的兩個(gè)基本要求是_邏輯或功能_ _正確和_ 時(shí)間 _正確。23、uC/OS的設(shè)計(jì)人員并不知道用戶的任務(wù)名,卻可以正常的調(diào)用用戶任務(wù),主要依靠的技術(shù)是_函數(shù)指針_ _。24、uC/OS為保證任務(wù)控制塊的檢索為常量時(shí)間,定義的數(shù)組為OSPrioTbl_ _,為加快當(dāng)前任務(wù)的訪問速度,定義的變量為_OSTCBCur_ _。25、uC/OS中斷級(jí)別的調(diào)度器為_OSIntExt()_ _,任務(wù)級(jí)的調(diào)度器為_OSSched() _。26、uC/OS要求所有操作超過一個(gè)機(jī)器字長(zhǎng)的全局變量必須作為_原子操作_ _處理,對(duì)

6、可能被多個(gè)任務(wù)調(diào)用的函數(shù)必須是_可重入 _的。27、uC/OS用來解決優(yōu)先級(jí)反轉(zhuǎn)的問題主要是依靠 互斥信號(hào)量 _解決的。28、如果系統(tǒng)中有20個(gè)資源,n個(gè)任務(wù)都需要使用,標(biāo)準(zhǔn)的做法是使用( 信號(hào)量 )來解決。三、選擇題1、下列不屬于構(gòu)成嵌入式系統(tǒng)的實(shí)際物理裝置的是 ( c )A、CPU B、存儲(chǔ)器 C、固件 D、接口設(shè)備2、下列哪項(xiàng)不屬于對(duì)實(shí)時(shí)操作系統(tǒng)的要求 ( d )A、多任務(wù) B、任務(wù)切換為常量時(shí)間 C、中斷延遲短 D、開源3、關(guān)于uC/OS中的優(yōu)先級(jí),下列說法錯(cuò)誤的是 ( a )A、優(yōu)先級(jí)數(shù)目越大,優(yōu)先級(jí)越高; B、空閑任務(wù)的優(yōu)先級(jí)為OS_LOWEST_PRIO-1;C、一般要求和中斷相

7、關(guān)的任務(wù)優(yōu)先級(jí)較高;D、uC/OS 2.52版本中優(yōu)先級(jí)數(shù)目應(yīng)小于644、下列操作中,不屬于OSTCBInit()函數(shù)所需要完成的任務(wù)是 ( a )A、創(chuàng)建空任務(wù)控制塊鏈表; B、為任務(wù)從空任務(wù)控制塊鏈表中取得一個(gè)任務(wù)控制塊; C、對(duì)任務(wù)控制塊各個(gè)成員進(jìn)行賦值;D、把任務(wù)控制塊鏈入任務(wù)控制塊鏈表;5、下列哪項(xiàng)不屬于中斷級(jí)調(diào)度必須檢查的條件 ( c )   A、OSRunning=TRUE          B、OSIntNesting=0   &

8、#160;       C、OSstatRdy=0            D、OSLockNesting=0 6、下列不屬于嵌入式操作系統(tǒng)特點(diǎn)的是 ( d )A、高可靠性 B、可裁剪性 C、實(shí)時(shí)性 D、免費(fèi)7、下列操作系統(tǒng)中,哪個(gè)不屬于嵌入式操作系統(tǒng) ( c )A、VxWorks B、 WinCE C、Minix D、uC/OS8、如果常數(shù)OS_LOWEST_PRIO為6,使能了統(tǒng)計(jì)任務(wù),則最多可安排的用戶任務(wù)數(shù)為

9、( b )A、6 B、5 C、4 D、79、uCOS-II 2.52操作系統(tǒng)中最多可以管理多少個(gè)任務(wù)。 ( a )A、64 B、56 C、128 D、6310. 下面屬于嵌入式系統(tǒng)的是( a )A、“天河”計(jì)算機(jī)系統(tǒng) B、智能電能表C、聯(lián)想筆記本電腦 D、核電站控制系統(tǒng)11、如果常數(shù)OS_LOWEST_PRIO為6,使能了統(tǒng)計(jì)任務(wù),則最多可安排的用戶 任務(wù)數(shù)為 ( d )A、6 B、5 C、4 D、712、運(yùn)行任務(wù)被搶占的原因不包括( d ) A、它喚醒了高優(yōu)先級(jí)的任務(wù) B、 將自己掛起 C、有多個(gè)就緒任務(wù),允許任務(wù)的運(yùn)行的時(shí)間片到 D、優(yōu)先級(jí)較低的中斷產(chǎn)生并處理中斷13、以下不是嵌入式系統(tǒng)應(yīng)

10、用領(lǐng)域的是 ( a ) 、通用軟件 B、工業(yè)控制 C、消費(fèi)類電子產(chǎn)品 D、機(jī)器人 14、下列哪項(xiàng)不屬于對(duì)實(shí)時(shí)操作系統(tǒng)的要求 ( d )A、多任務(wù) B、任務(wù)切換為常量時(shí)間 C、中斷延遲短 D、開源15、以下說法不正確的是 ( d )A、任務(wù)可以有類型說明 B、任務(wù)可以返回一個(gè)數(shù)值 C、任務(wù)可以有形參變量 D、任務(wù)是一個(gè)無限循環(huán)四、簡(jiǎn)答題1、實(shí)時(shí)操作系統(tǒng)設(shè)計(jì)應(yīng)盡量滿足的5個(gè)條件(第一章)(9頁10業(yè))實(shí)時(shí)操作系統(tǒng)必須是多任務(wù)系統(tǒng);實(shí)時(shí)操作系統(tǒng)的任務(wù)切換時(shí)間與系統(tǒng)中任務(wù)數(shù)無關(guān);中斷延遲的時(shí)間可預(yù)知并盡可能的短;2、 標(biāo)準(zhǔn)的UCOS中斷處理程序都應(yīng)該使用那些功能的系統(tǒng)功能調(diào)用?(要求按調(diào)用順序書寫,可

11、以不寫出具體函數(shù)名)。3、 OSTimeTick()的功能(書本) 函數(shù)OSTimeTick( )的任務(wù),就是在每個(gè)時(shí)鐘節(jié)拍了解每個(gè)任務(wù)的延時(shí)狀態(tài),使其中已經(jīng)到了延時(shí)時(shí)限的非掛起任務(wù)進(jìn)入就緒狀態(tài)。C/OS-II與大多數(shù)計(jì)算機(jī)系統(tǒng)一樣,用硬件定時(shí)器產(chǎn)生一個(gè)周期為ms級(jí)的周期性中斷來實(shí)現(xiàn)系統(tǒng)時(shí)鐘,最小的時(shí)鐘單位就是兩次中斷之間相間隔的時(shí)間,這個(gè)最小時(shí)鐘單位叫做時(shí)鐘節(jié)拍(Time Tick)。硬件定時(shí)器以時(shí)鐘節(jié)拍為周期定時(shí)地產(chǎn)生中斷,該中斷的中斷服務(wù)程序叫做OSTickISR( )。中斷服務(wù)程序通過調(diào)用函數(shù)OSTimeTick( )來完成系統(tǒng)在每個(gè)時(shí)鐘節(jié)拍時(shí)需要做的工作。OSTimeTick()是為

12、系統(tǒng)提供時(shí)鐘節(jié)拍的服務(wù)程序。4、設(shè)ucos設(shè)定的一個(gè)時(shí)鐘節(jié)拍為20ms,則在代碼中主要需要哪兩處?5、 標(biāo)準(zhǔn)的UCOS中斷處理程序都應(yīng)該使用那些功能的系統(tǒng)功能調(diào)用?(要求按調(diào)用順序書寫,可以不寫出具體函數(shù)名)。6、 ucos都在什么時(shí)候可能調(diào)用任務(wù)調(diào)度函數(shù)進(jìn)行任務(wù)調(diào)度?任務(wù)調(diào)度的依據(jù)是任務(wù)就緒表僅僅在OSTimeDly()任務(wù)延時(shí)函數(shù)中才發(fā)生OS_Sched()任務(wù)調(diào)度。 任務(wù)級(jí)的任務(wù)調(diào)度是由OS_Sched()函數(shù)完成的,而且任務(wù)級(jí)的調(diào)度要保存所有的狀態(tài)。中斷級(jí)的任務(wù)調(diào)度是由另一個(gè)函數(shù)OSIntExt()完成的,在中斷級(jí)的調(diào)度中,一些狀態(tài)在進(jìn)入中斷前已被保存 。創(chuàng)建任務(wù),中斷,osdelay

13、,pend;7、 uC/OS中任務(wù)的狀態(tài)主要有哪幾種,并對(duì)任務(wù)狀態(tài)進(jìn)行簡(jiǎn)要解釋。課本52頁運(yùn)行狀態(tài):任務(wù)掌握了CPU的控制權(quán),正在運(yùn)行中的狀態(tài)。就緒狀態(tài):任務(wù)已經(jīng)準(zhǔn)備好,可以運(yùn)行了,但由于該任務(wù)的優(yōu)先級(jí)比正在運(yùn)行的任務(wù)的優(yōu)先級(jí)低,還暫時(shí)不能運(yùn)行的狀態(tài)。在C/OS-中,當(dāng)任務(wù)一旦建立,這個(gè)任務(wù)就進(jìn)入就緒態(tài)準(zhǔn)備運(yùn)行;睡眠狀態(tài):任務(wù)駐留在程序空間之中,還沒有交給C/OS-管理的狀態(tài),而將任務(wù)交給C/OS-管理是通過調(diào)用函數(shù)OSTaskCreate()實(shí)現(xiàn)的;被中斷狀態(tài):因?yàn)橹袛喾?wù)程序正在執(zhí)行而得不到CPU控制權(quán)的狀態(tài);(中斷服務(wù)狀態(tài))等待狀態(tài):任務(wù)在等待某一事件的發(fā)生還不能運(yùn)行的狀態(tài);8、uC/O

14、S中如果需要將系統(tǒng)時(shí)鐘節(jié)拍設(shè)置為40Hz,主要需要做哪些工作?如涉及到主要系統(tǒng)函數(shù),必須進(jìn)行說明。9、 uC/OS中的任務(wù)按照?qǐng)?zhí)行方式分類,主要分成哪幾種,并對(duì)各種方式使用的系統(tǒng)函數(shù)做簡(jiǎn)要說明。如涉及系統(tǒng)函數(shù)調(diào)用,必須進(jìn)行說明。10、uC/OS優(yōu)先級(jí)大小設(shè)置的原則都有哪些?請(qǐng)簡(jiǎn)要說明。(周立功)傳遞性:信息傳遞的上游任務(wù)的優(yōu)先級(jí)高于下游任務(wù)的優(yōu)先級(jí)。如信號(hào)采集任務(wù)的優(yōu)先級(jí)高于數(shù)據(jù)處理任務(wù)的優(yōu)先級(jí)。快捷性:在前面各項(xiàng)條件相近時(shí),越快捷(耗時(shí)短)的任務(wù)安排的優(yōu)先級(jí)越高,以使其它就緒任務(wù)的延時(shí)縮短;頻繁性:對(duì)于周期性任務(wù),執(zhí)行越頻繁,則周期越短,允許耽誤的時(shí)間也越短,故應(yīng)該安排的優(yōu)先級(jí)也越高,以保障

15、及時(shí)得到執(zhí)行;中斷關(guān)聯(lián)性:與中斷服務(wù)程序(ISR)有關(guān)聯(lián)的任務(wù)應(yīng)該安排盡可能高的優(yōu)先級(jí),以便及時(shí)處理異步事件,提高系統(tǒng)的實(shí)時(shí)性。如果優(yōu)先級(jí)安排得比較低,CPU有可能被優(yōu)先級(jí)比較高的任務(wù)長(zhǎng)期占用,以致于在第二次中斷發(fā)生時(shí)連第一次中斷還沒有處理,產(chǎn)生信號(hào)丟失現(xiàn)象;關(guān)鍵性:任務(wù)越關(guān)鍵安排的優(yōu)先級(jí)越高,以保障其執(zhí)行機(jī)會(huì);緊迫性:因?yàn)榫o迫任務(wù)對(duì)響應(yīng)時(shí)間有嚴(yán)格要求,在所有緊迫任務(wù)中,按響應(yīng)時(shí)間要求排序,越緊迫的任務(wù)安排的優(yōu)先級(jí)越高。緊迫任務(wù)通常與ISR關(guān)聯(lián);11、 uC/OS中如果想使用統(tǒng)計(jì)任務(wù),主要需要做哪些工作?如涉及到系統(tǒng)函數(shù)或配置參數(shù),必須指出名字。統(tǒng)計(jì)任務(wù)OSTaskStat( )。這個(gè)統(tǒng)計(jì)任務(wù)

16、每秒計(jì)算一次CPU在單位時(shí)間內(nèi)被使用的時(shí)間,并把計(jì)算結(jié)果以百分比的形式存放在變量OSCPUsage中,以便應(yīng)用程序通過訪問它來了解CPU的利用率,所以這個(gè)系統(tǒng)任務(wù)OSTaskStat( )叫做統(tǒng)計(jì)任務(wù) 12、uC/OS主要有哪些類系統(tǒng)函數(shù)禁止在中斷中調(diào)用,請(qǐng)居于至少三類,并說明其原因。函數(shù)要求指出函數(shù)名。(任務(wù)跳轉(zhuǎn))13、 C/OS-時(shí)間管理提供哪些服務(wù),并簡(jiǎn)要說明每個(gè)函數(shù)的功能。OSTimeDly() 以時(shí)鐘節(jié)拍為單位延時(shí) 或OSTimeDlyHMSM()以鐘時(shí)分秒毫秒為單位延時(shí)OSTimeDlyResume()恢復(fù)延時(shí)的任務(wù) OSTimeDlyHMSM()可能需要多個(gè)OSTimeDlyRe

17、sume()才能恢復(fù)OSTimeGet() 獲得系統(tǒng)時(shí)間 以時(shí)鐘節(jié)拍為單位OSTimeSet()設(shè)置系統(tǒng)時(shí)間 以時(shí)鐘節(jié)拍為單位OSTimeTick()時(shí)鐘節(jié)拍處理函數(shù)由時(shí)鐘節(jié)拍中斷處理程序調(diào)用,用戶很少使用14、 給出uCOS-II單次執(zhí)行任務(wù)和周期性執(zhí)行任務(wù)的示意性代碼。單次:void MyTask (void *pdata) 進(jìn)行準(zhǔn)備工作的代碼; 定義和初始化變量及硬件設(shè)備 任務(wù)實(shí)體代碼; 完成該任務(wù)的具體功能 調(diào)用任務(wù)刪除函數(shù); 將自己刪除,操作系統(tǒng)將不再管理它 周期:void MyTask (void *pdata) 進(jìn)行準(zhǔn)備工作的代碼; while (1) 任務(wù)實(shí)體代碼; 調(diào)用系統(tǒng)延

18、時(shí)函數(shù); 15、 uC/OS主要有哪幾類任務(wù)同步方法,請(qǐng)每類至少舉出一個(gè)系統(tǒng)函數(shù)名。信號(hào)量OSSemCreate()建立信號(hào)量 OSSemDel()刪除信號(hào)量OSMutexCreate()建立互斥信號(hào)量消息郵箱OSMboxCreate()建立消息郵箱 OSMutexDel()消息隊(duì)列OSQCreate()建立消息隊(duì)列 OSQDel()五、程序分析題1、#define debug 1#if debug !=1fun();#endif則在最終的代碼中,是否包含fun()函數(shù)答:不包含2、在某 .h文件中有如下代碼,功能為? #ifndef _DEVICE_H#define _DEVICE_H.#endif答:如果沒有定義_DEVICE_H定義_DEVICE_H,這樣多次include同一個(gè).h文件,就不會(huì)重復(fù)引用其中的內(nèi)容。3、寫出下列兩個(gè)任務(wù)的執(zhí)行效果,并分析它們相互之間是否有影響。void MyTask4(void *ppdata) ppdata=ppdata;for(;) LED4=0;OSTimeDlyHMSM(0,0,0,800);LED4=1;OSTimeDly(OS_TICKS_PER_SEC*1.2); void MyTask5(void *p

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論