《嵌入式實時操作系統(tǒng)復習資料》_第1頁
《嵌入式實時操作系統(tǒng)復習資料》_第2頁
《嵌入式實時操作系統(tǒng)復習資料》_第3頁
《嵌入式實時操作系統(tǒng)復習資料》_第4頁
《嵌入式實時操作系統(tǒng)復習資料》_第5頁
免費預覽已結束,剩余1頁可下載查看

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

word文檔可自由復制編輯填空題(請將答案填入題后括號中)10小題,每小題2201、一般而言,嵌入式系統(tǒng)的構架可以分為4分別是(處理器)、輸入/輸出和軟件,一般軟件亦分為操作系統(tǒng)相關和()兩個主要部分。

2、根據(jù)嵌入式系統(tǒng)使用的微處理器,可以將嵌入式系統(tǒng)分為嵌入式微控制器,(嵌入式微處理器)(嵌入式DSP處理器)以及片上系統(tǒng)。

3、操作系統(tǒng)是聯(lián)接硬件與應用程序的系統(tǒng)程序,其基本功能有(任務管理)、任務間通信、()和I/O資源管理。4.實時系統(tǒng):指系統(tǒng)能夠在限定的(響應)時間內提供所需水平的服務

5.ucos-ii64)個任務

6.ucos-ii中,OS_TaskStat任務62),OS_TaskIdle任務的優(yōu)先級是(7ucos-ii中,OSRdyTblOS_RDY_TBL_SIZE由全局宏(OS_LOWEST_PRIO)來決定的,8.TCB中的四個成員變量:INT8U

OSTCBX;INT8U

OSTCBY;INT8UOSTCBBitX;INT8UOSTCBBitY,用于(加速)任務就緒態(tài)的計算過程。9.TCB內部最重要的元素放在第一個單元叫(OSTCBStkPtr)置的變量,將其放在結構最前面,使得在匯編語言中處理這個變量時較為容易。

10.

uC/OS-II是一個簡潔、易用的基于優(yōu)先級的嵌入式(搶占式)多任務實時內核。

11.任務是一個無返回的無窮循環(huán)。uc/os-ii總是運行進入就緒狀態(tài)的(最高優(yōu)先級)的任務。12.因為uc/os-ii總是運行進入就緒狀態(tài)的最高優(yōu)先級的任務。所以,確定哪個任務優(yōu)先級最高,下面該哪個任務運行,這個工作就是由調度器()來完成的。13.(不可剝奪型)內核要求每個任務自我放棄CPU的所有權。不可剝奪型調度法也稱作合作型多任務,各個任務彼此合作共享一個CPU。

14.當系統(tǒng)響應時間很重要時,要使用(可剝奪型)內核。最高優(yōu)先級的任務一旦就緒,總能得到CPU的控制權。

15.(可重入型)函數(shù)是可以被一個以上的任務調用,而不必擔心數(shù)據(jù)的破壞。

16.每個任務都有其優(yōu)先級。任務越重要,賦予的優(yōu)先級應(

越高)。17.μC/OSⅡ初始化是通過調用系統(tǒng)函數(shù)(μC/OS-Ⅱ所有的變量和數(shù)據(jù)結構的初始化。

18.多任務的啟動是用戶通過調用(OSStart())實現(xiàn)的。然而,啟動μC/OS-Ⅱ之前,用戶至少要建立一個(任務)。19.

刪除任務,是說任務將返回并處于(并不是說任務的代碼被刪除了,只是任務的代碼不再被μC/OS-Ⅱ調用。20.μC/OS-Ⅱ要求用戶提供(定時中斷)來實現(xiàn)延時與超時控制等功能。21.μC/OS-Ⅱ中,定時中斷也叫做(時鐘節(jié)拍),在低速系統(tǒng)中,它應該每秒發(fā)生10至100次。22.

時鐘節(jié)拍的實際頻率是由用戶的應用程序決定的。時鐘節(jié)拍的頻率越高,系統(tǒng)的負荷就(越重)。

23.

μC/OS-II中表示當前已經(jīng)創(chuàng)建的任務數(shù)全局變量名為:(

OSTaskCtr)。24.

μC/OS-II中表示當前內核運行的標記全局變量名為:(

OSRunning

)。

25.

μC/OS-II操作系統(tǒng)使用OSSchedLock()函數(shù)和OSSchedUnlock()函數(shù)進行鎖定(不允許任務級調度)和解鎖(重新允許任務級調度)調度器,在用戶應用程序中,OSSchedLock()和OSSchedUnlock()必須是(成對出現(xiàn)的

)。否則,有可能出錯。二、選擇題(請將答案填入題后括號中)10小題,每小題220

1、要使μC/OS-II能夠正常工作,下列哪個條件不是處理器必須滿足的。(

D

)(A)

處理器的編譯器能夠產(chǎn)生可重入代碼(B)在程序中可以找開或者關閉中斷

(C)

處理器支持中斷,并且能產(chǎn)生定時中斷

(D)有大量的存儲空間2、下面哪種操作系統(tǒng)最方便移植到嵌入式設備中。(D

(A)

DOS(B)UNIX

(D)LINUX3、下面哪個選項不是USB(B

)(A)串行通信方式(B)不可熱撥插

(C)分HOST、DEVICE和(DRS232快

4、下面哪種嵌入式操作系統(tǒng)很少用于手機終端設備上。(C)

(A)

Symbian

(B)WIN(C)

uc/os

(D)LINUX

5、以下哪項關于SRAM和DRAM的區(qū)別是不對

。

()

(A)SRAM比DRAM慢(B)SRAM比DRAM耗電多

(C)DRAM存儲密度比SRAM高得多(D)DRAM需要周期性刷新6、UCOS不包含哪些狀態(tài)(A)運行(B)掛起(C)退出(D)休眠7、0X07&0X的運算結果是。(A)

(A)0X(B)0X11(C)0X17

(D)0X07

8、以下哪種方式不是/OS(

C

)(A)信號量(B)消息隊列

(C)郵件(D)郵箱

9、以下哪種方式不是文件系統(tǒng)的格式。(

B

(A)FAT

(B)(C)NTFS

(D)EXT

10、在將UC/OS操作系統(tǒng)移植到ARM(

A

(A)OS_CORE.C

(B)INCLUDE.H(C)OS_CPU.H

(D)OSTASKINIT

三、簡答題:共210分,滿分20

根據(jù)嵌入式系統(tǒng)的特點,寫出嵌入式系統(tǒng)的定義。

答:以應用為中心,以計算機技術為基礎,軟硬件可裁減,功能、可靠性、

、體積、

2、試分析實時操作系統(tǒng)的工作狀態(tài)特點及相互之間的轉換。運行:獲得控制權

就緒:進入任務等待隊列,通過調度中轉為運行狀態(tài)

掛起:任務發(fā)生阻塞,出任務等待隊列,等待系統(tǒng)實時事件的發(fā)生而被喚醒

從而轉為就緒或者運行.

休眠:任務完成或者錯誤等原因被清除的任務,也可以認為是系統(tǒng)中不存在任務試寫搶占式和非搶占式的區(qū)別。答:執(zhí)行的過程中對中斷處理方式不一樣,搶占式:某一中斷執(zhí)行完成后,如果有更高優(yōu)先級的任務處于就緒狀態(tài),將執(zhí)行更高優(yōu)先級任務,而非搶占式不一樣,CPUCPU

4

、從嵌入式系統(tǒng)底層到上層應用軟件,試分析嵌入式計算系統(tǒng)的組成主要分為哪幾個部分,

答:(1)硬件層(2)中間層(嵌入式系統(tǒng)初始化,硬件相關的驅動程序)(3)軟件層(操作,網(wǎng)絡及通用組件)(4)功能層5、專業(yè)名詞解釋(寫出以下英文簡寫對應的中文名稱及解釋

(1)RTOS

:實時操作系統(tǒng)

(2)CISC

:復雜指令集(3)Kernel:內核

(4)Scheduler

:(5)non-preemptive

:6.就緒表中完整的數(shù)據(jù)結構描述

答:就緒表中有2個變量,OSRdyGrp和OSRdyTbl[]。OSRdyGrp中任務按優(yōu)先級分組,8務為一組。OSRdyGrp的每一位表示8組任務中每一組是否有進入就緒態(tài)的任務。任務進入就緒態(tài)時,就緒表OSRdyTbl[]中相應的元素的相應位被置1。7、什么是任務上下文切換時間?任務上下文切換時間受哪些因素的影響?

答:

在多任務操作系統(tǒng)中,任務上下文切換指CPU的控制權由當前運行的任務轉移到另外一個就緒任務這一過程。這處理器的速度高,任務上下文少,保存和恢復上下文所花費的時間就短,時間就長。選擇將投入運行的任務所花費的時間則主要取決于操作系統(tǒng)的調度程序所采用的3.描述建立任務OSTaskCreate()的函數(shù)原型。答:建立任務OSTaskCreate()的函數(shù)原型為:

(void

OS_STK

*ptos,

其中,

task:

任務代碼的指針;

當任務開始執(zhí)行時傳遞給任務的參數(shù)的指針;

分配給任務的堆棧的棧頂指針;

分配給任務的優(yōu)先級。2.簡述uC/OS-II的任務框架

答:

void

task_xxx(void

*pData)

{

/*

該任務的初始化工作

*/

??

/*進入該任務的死循環(huán)

*/

while(1)

{

??

}

}

四、編程題1.舉例說明μCOS-II可移植型數(shù)據(jù)類型的定義方式

答:因為不同的微處理器有不同的字長,μC/OS-II的移植文件包括很多類型定義以確??梢浦残浴&藽OS-II不使用C語言中的short,int,long等數(shù)據(jù)類型的定義,因為它們與處理器類型有關,隱含著不可移植性。μC/OS-II代之以移植性強的整數(shù)數(shù)據(jù)類型,這樣,既直觀又可移植(該數(shù)據(jù)類型不依賴于編譯),舉例如下

typedef

unsigned

char

BOOLEAN;

typedef

unsigned

char

INT8U;

typedef

signed

charINT8S;

INT16U;

typedef

signed

intINT16S;

typedef

unsigned

long

INT32U;

typedef

signed

longINT32S;2.

試寫出OSStartHighRdy(){

調用用戶定義的OSTaskSwHook();

得到將要恢復運行任務的堆棧指針:

從新任務堆棧中恢復處理器的所有寄存器;

執(zhí)行中斷返回指令}2.

試寫出函數(shù)OSCtxSw()void

OSCtxSw()

{

保存處理器寄存器

在當前任務的任務控制塊中保存當前任務的堆棧指針:

OSTCBCur=OSTCBHighRdy;

OSPrioCur=OSPrioHighRdy;

得到將要開始運行的任務的堆棧指針:

從新任務的任務堆棧中恢復處理器所有寄存器的值;

執(zhí)行中斷返回指令;}3、試寫出函數(shù)OSIntCtxSw()void

OSIntCtxSw()

{

調用用戶定義的

OSPrioCur=OSPrioHighRdy;

得到將要重新執(zhí)行的任務的堆棧指針:

Stack

pointer

=

OSTCBHighRdy->OSTCBStkPtr;

從新任務堆棧中恢復所有寄存器;

執(zhí)行中斷返回指令;}4、試寫出函數(shù)OSTickISR(){

保存處理器寄存器

調用OSInitEnter()或者OSInitNesting加

if(OSInitNesting

==1)

給產(chǎn)生中斷的設備清中斷

重新允許中斷

恢復處理器寄存器

執(zhí)行中斷返回指令}5、編寫使任務進入就緒態(tài)代碼:

OSRdyGrp

|=OSMapTbl[prio>>3]

溫馨提示

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

評論

0/150

提交評論