《 嵌入式Linux系統(tǒng)原理與應(yīng)用》 試卷及答案 C卷_第1頁
《 嵌入式Linux系統(tǒng)原理與應(yīng)用》 試卷及答案 C卷_第2頁
《 嵌入式Linux系統(tǒng)原理與應(yīng)用》 試卷及答案 C卷_第3頁
《 嵌入式Linux系統(tǒng)原理與應(yīng)用》 試卷及答案 C卷_第4頁
《 嵌入式Linux系統(tǒng)原理與應(yīng)用》 試卷及答案 C卷_第5頁
已閱讀5頁,還剩8頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

試卷C卷本卷共4頁第-4-頁《嵌入式Linux系統(tǒng)原理與應(yīng)用》課程考試試卷(C卷)一、單項(xiàng)選擇題(每小題2分,共20分)1、下列情況下,會(huì)產(chǎn)生看門狗中斷的是。A.軟件喂狗 B.處理器溫度過高C.程序錯(cuò)誤D.看門狗定時(shí)超時(shí)2、以下哪種方式不屬于文件系統(tǒng)的格式 A.FAT32 B.JFFSC.autoexec D.Ext53、嵌入式系統(tǒng)由硬件部分和軟件部分構(gòu)成,以下不屬于嵌入式系統(tǒng)軟件。A.驅(qū)動(dòng)程序 B.BSP C.c# D.內(nèi)核4、下列工具中能夠?qū)崿F(xiàn)自動(dòng)編譯的是。

A.arm-linux-gcc

B.glibc

C. ocr

D.make5、在C語言中,將變量聲明為volatile類型,其作用為。A.設(shè)為靜態(tài)變量 B.讓編譯器不再對(duì)該變量進(jìn)行優(yōu)化 C.設(shè)為全局變量 D.程序調(diào)試6、實(shí)時(shí)操作系統(tǒng)必須在處理來自外部的事件。A、一個(gè)機(jī)器周期

B、被控制對(duì)象規(guī)定的時(shí)間

C、工作時(shí)間

D、時(shí)間片

7、臨界區(qū)是。A.一個(gè)緩沖區(qū) B.一段代碼C.一段共享數(shù)據(jù)區(qū)D.一個(gè)互斥資源區(qū)域8、下列設(shè)備中設(shè)備是塊設(shè)備。

A、控制臺(tái)

B、機(jī)械硬盤

C、DM9000網(wǎng)卡

D、微控制器9、下面哪一種工作模式ARM9不具備,而屬于ARMCortexA8的特有模式是。中斷模式 B、 安全監(jiān)控模式 C、快中斷模式 D、FIQ模式10、關(guān)于RISC指令系統(tǒng)描述不正確的是。A、指令條數(shù)多

B、指令長度固定C、指令格式種類少

D、尋址方式種類少

二.填空題(每空1分,共10分)1.虛擬文件系統(tǒng)具有兩個(gè)針對(duì)文件系統(tǒng)對(duì)象的緩存inode索引節(jié)點(diǎn)對(duì)象和,它們緩存最近使用過的文件系統(tǒng)對(duì)象。2.根據(jù)開發(fā)目標(biāo)平臺(tái)的不同,ARM提供不同的工具解決方案。最常見的是和RVDS。3.Linux內(nèi)核中解決并發(fā)控制最常用的方法是信號(hào)量和。4.字符設(shè)備是以為單位傳輸數(shù)據(jù)的設(shè)備。5.ARM體系結(jié)構(gòu)中存儲(chǔ)體系以字為單位,按字節(jié)對(duì)齊。6.文件系統(tǒng)中每個(gè)塊組依次包括超級(jí)塊、、塊位圖和inode表。7.在嵌入式linux2.6內(nèi)核中,主從設(shè)備被定義為一個(gè)類型的32位數(shù)。8.ARM7處理器架構(gòu)是系統(tǒng)架構(gòu)。9.嵌入式linux的存儲(chǔ)空間可以分為和。三.問答題(每小題5分,共40分)1.字符設(shè)備驅(qū)動(dòng)程序需要file結(jié)構(gòu)體、fileoperations結(jié)構(gòu)體和inode結(jié)構(gòu)體,請(qǐng)描述這三者之間的聯(lián)系和差別。2.說明const在下列定義中的具體含義。constintpnaa;intconstpnaa;constint*pnaa;int*constpnaa;intconst*pnaaconst;3.可靠性是計(jì)算機(jī)系統(tǒng)的重要性能之一。某計(jì)算機(jī)系統(tǒng)由下圖所示的部件“混連”構(gòu)成,假定每個(gè)部件的可靠度R均為0.85,請(qǐng)計(jì)算該系統(tǒng)的總體可靠度(萬分位之前的數(shù)據(jù))4.設(shè)備號(hào)是設(shè)備的唯一標(biāo)識(shí),驅(qū)動(dòng)程序需要分配設(shè)備號(hào)然后注冊(cè)該設(shè)備,請(qǐng)寫出代碼實(shí)現(xiàn)。5.Qt中的a,b是如下counter類的兩個(gè)實(shí)例。#include<QObject>classCounter:publicQObject{ Q_OBJECTpublic:Counter(){m_value=0;}intvalue()const{returnm_value;}publicslots:voidsetValue(intvalue);signals:voidvalueChanged(intnewValue);private:intm_value;};當(dāng)實(shí)現(xiàn)如下操作后,Countera,b;QObject::connect(&a,&Counter::valueChanged,&b,&Counter::setValue);a.setValue(191);b.setValue(408);請(qǐng)分別寫出a.value(),b.value()的值6.某嵌入式系統(tǒng)的一個(gè)絕對(duì)地址為0x3537的無符號(hào)整型變量的值為0x2648。請(qǐng)編寫代碼實(shí)現(xiàn)這一操作。7.假設(shè)某處理機(jī)的流水線指令由3個(gè)子部件完成,每個(gè)子部件的工作周期均為t,采用常規(guī)標(biāo)量單流水線處理機(jī)。若連續(xù)執(zhí)行300條指令,則共需時(shí)間多少t?8.簡(jiǎn)述gcc與arm-linux-gcc編譯器的區(qū)別。四.應(yīng)用題(每小題6分,共30分)搶占式優(yōu)先級(jí)是實(shí)現(xiàn)實(shí)時(shí)性的重要手段。在一個(gè)單處理器的計(jì)算機(jī)系統(tǒng)中,采用搶占式優(yōu)先級(jí)的進(jìn)程調(diào)度方案,且所有任務(wù)可以并行使用I/O設(shè)備。下表列出了3個(gè)任務(wù)T1、T2、T3及優(yōu)先級(jí)(1最高,3低)和獨(dú)立運(yùn)行時(shí)占用CPU與I/O設(shè)備的時(shí)間。如果操作系統(tǒng)的開銷忽略不計(jì),這3個(gè)任務(wù)從同時(shí)啟動(dòng)到全部結(jié)束的總時(shí)間為多少ms,CPU的空閑時(shí)間共有多少ms?請(qǐng)寫出分析過程。任務(wù)優(yōu)先級(jí)每個(gè)任務(wù)獨(dú)立運(yùn)行時(shí)所需的時(shí)間T11對(duì)每個(gè)任務(wù):占用CPU10ms,I/O12ms,再占用CPU5msT22T332.請(qǐng)按要求寫出一個(gè)led燈的makefile文件,要求包括:安裝目錄為install,采用arm-linux-gcc交叉編譯器,源文件為led4.c,目標(biāo)文件為led4,使用led4.h頭文件,使用相應(yīng)宏變量。3.保持主機(jī)IP地址和目標(biāo)機(jī)在同一網(wǎng)段,假設(shè)目標(biāo)機(jī)ARM開發(fā)板的IP地址為9,請(qǐng)首先在主機(jī)上編寫程序?qū)崿F(xiàn)對(duì)100個(gè)整數(shù)由大到小進(jìn)行排序(請(qǐng)寫出完整源碼),然后簡(jiǎn)述將該程序編譯、下載至目標(biāo)機(jī)、修改文件權(quán)限以及執(zhí)行該程序的過程。4.CPSR是ARM的重要寄存器,它可以有效減少程序循環(huán)次數(shù)。請(qǐng)編寫一個(gè)函數(shù),實(shí)現(xiàn)對(duì)含有500個(gè)整型元素的數(shù)組testa進(jìn)行每個(gè)元素加1然后賦值給新數(shù)組testb的操作。并且該代碼段有如下要求:循環(huán)次數(shù)為250次;每次循環(huán)減少一條判斷指令;流水線阻塞減少。5.某計(jì)算機(jī)中斷系統(tǒng)有4級(jí)中斷I1、I2、I3、I4,中斷響應(yīng)的優(yōu)先次序?yàn)镮1>I2>I3>I4。每一級(jí)中斷對(duì)應(yīng)一個(gè)屏蔽碼,屏蔽碼中某位是“1”表示禁止中斷(關(guān)中斷),若為“0”則表示允許中斷(開中斷)。各級(jí)中斷處理程序與屏蔽碼的關(guān)系如下表所示。中斷處理程序屏蔽碼I4級(jí)I3級(jí)I2級(jí)I1級(jí)I1級(jí)1111I2級(jí)1110I3級(jí)1100I4級(jí)1000若將中斷優(yōu)先次序設(shè)置為I1>I4>I3>I2,即響應(yīng)I1,再響應(yīng)I4,然后是I3,最后是I2。請(qǐng)重新設(shè)置各級(jí)的屏蔽碼。《嵌入式Linux系統(tǒng)原理與應(yīng)用》試卷參考答案及評(píng)分標(biāo)準(zhǔn)(C卷)一、選擇題(每小題2分,共20分)題號(hào)12345678910答案DCCDBBBBBD二、填空題(每空1分,共10分)1.dentry目錄項(xiàng)對(duì)象。2.ARMDS5。3.自旋鎖。4.字符。5.4。6.塊組描述符7.dev-t8.馮諾依曼9.系統(tǒng)空間用戶空間四.問答題(每小題5分,共40分)1.File_operations為用戶態(tài)應(yīng)用程序提供接口,是系統(tǒng)調(diào)用和驅(qū)動(dòng)程序關(guān)聯(lián)的重要數(shù)據(jù)結(jié)構(gòu)。1分File結(jié)構(gòu)體在內(nèi)核代碼include/linux/fs.h中定義,表示一個(gè)抽象的打開的文件,1分file_operations結(jié)構(gòu)體就是file結(jié)構(gòu)的一個(gè)成員。1分Inode結(jié)構(gòu)表示一個(gè)文件,而file結(jié)構(gòu)表示一個(gè)打開的文件。這正是二者間最重要的關(guān)系。2分2.constintpnaa;pnaa是一個(gè)常整型數(shù)intconstpnaa;pnaa是一個(gè)常整型數(shù)constint*pnaa;pnaa是一個(gè)指向常整型數(shù)的指針(也就是,整型數(shù)是不可修改的,但指針可以)。int*constpnaa;pnaa是一個(gè)指向整型數(shù)的常指針(也就是說,指針指向的整型數(shù)是可以修改的,但指針是不可修改的)intconst*pnaaconst;pnaa是一個(gè)指向常整型數(shù)的常指針(也就是說,指針指向的整型數(shù)是不可修改的,同時(shí)指針也是不可修改的)每個(gè)各1分3.本題考查系統(tǒng)可靠度的概念。串聯(lián)部件的可靠度=各部件的可靠度的乘積。并聯(lián)部件的可靠度=1?–?各部件失效率的乘積。題目中給出的系統(tǒng)由三個(gè)部件串聯(lián)組成,其中第二、第三部件又分別由兩個(gè)部件并聯(lián)構(gòu)成,因此整個(gè)系統(tǒng)的可靠度為0.85?*(1?–?(1?–?0.85)*?(1?–?0.85))?*?(1?–?(1?–?0.85)?*?(1?–?0.85))?≈?0.81225分(能夠?qū)懗龉降慕o2分,正確計(jì)算結(jié)果給5分)4.structcdev*my_cdev=cdev_alloc();my_cdev->owner=THIS_MODULE;my_cdev->ops=&fops;應(yīng)用cdev_alloc()正確可得2分,程序完全正確得5分5.a.setValue(19);a.value()=191,b.value()=191各1分b.setValue(40);a.value()=191,2分b.value()=4081分6.int*ptr;ptr=(int*)0x3537;*ptr=0x2648;地址轉(zhuǎn)換正確可得2分,程序功能完成即可得5分7.本題考查指令流水的概念。順序執(zhí)行時(shí),每條指令都需3步才能執(zhí)行完,沒有重疊。N級(jí)流水線執(zhí)行,在單標(biāo)量情況下,執(zhí)行時(shí)間=(N-1)+指令數(shù)量所以連續(xù)執(zhí)行20條指令后,共需時(shí)間為(3-1)?+?300=302t。5分或者如做出圖形分析,通過畫圖獲得最終結(jié)果給5分8.gcc的編譯在linux環(huán)境下針對(duì)x86架構(gòu)展開工作,2分,而arm-linux-gcc則是針對(duì)ARM平臺(tái)結(jié)合Linux進(jìn)行編譯工作。3分四.應(yīng)用題(每小題6分,共30分)1.本題考查的是操作系統(tǒng)進(jìn)程調(diào)度方面的知識(shí)??梢园凑杖缦碌耐评聿襟E進(jìn)行分析,如:根據(jù)題意可知,3個(gè)任務(wù)的優(yōu)先級(jí)T1>T2>T3,進(jìn)程調(diào)度過程如下所示,t0時(shí)刻:進(jìn)程調(diào)度程序選任務(wù)T1投入運(yùn)行,運(yùn)行10ms,任務(wù)T1占用I/O。t1時(shí)刻:此時(shí)由于CPU空閑,進(jìn)程調(diào)度程序選任務(wù)T2投入運(yùn)行,運(yùn)行10ms后任務(wù)T2占用I/O。此時(shí),t1與t2時(shí)刻任務(wù)T1占用I/O,任務(wù)T2在運(yùn)行。t2時(shí)刻:此時(shí)由于CPU空閑,進(jìn)程調(diào)度程序選任務(wù)T3投入運(yùn)行,運(yùn)行4ms后任務(wù)T1結(jié)束占用I/O。此時(shí),t2與t3時(shí)刻任務(wù)T1、任務(wù)T2占用I/O,任務(wù)T3在運(yùn)行?!凑杖绱艘?guī)律分析,這3個(gè)任務(wù)從同時(shí)啟動(dòng)到全部結(jié)束的總時(shí)間為57ms,CPU的空閑時(shí)間共有12ms。按照此步驟得出總時(shí)間給3分,空閑時(shí)間給3分。2.CC =arm-linux-gcc2分INSTALL =installTARGET =led42分all:$(TARGET)$(TARGET):led4.cled4.h1分 $(CC)-static$<-o$@clean: rm-rf*.o$(TARGET)*~1分3.#include<stdio.h>voidmain(){voidsort(intx[],intn);int*p,i,a[10];p=a;for(i=0;i<100;i++)scanf(“%d”,p++);p=a;sort(p,10);for(p=a,i=0;i<10;i++){printf(“%d”,*p);p++;}printf("\n");}voidsort(intx[],intn){inti,j,k,t;for(i=0;i<n-1;i++){k=i;for(j=i+1;j<n;j++)if(x[j]>x[k])k=j;if(k!=i) {t=x[i];x[i]=x[k];x[k]=t;}}}2分然后在linux環(huán)境下當(dāng)前路徑使用命令arm-linux-gcc–ohellohello.c生成hello文件(1分)然后采用TFTP服務(wù)器實(shí)現(xiàn)程序下載TFTP–rhello–g9(1分)通過超級(jí)終端登錄到目標(biāo)機(jī),使用命令Chmod777hello修改屬性(1分)最后通過命令./hello執(zhí)行該程序(1分)4.voidincremen

溫馨提示

  • 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)論