嵌入式期末復(fù)習(xí)_第1頁(yè)
嵌入式期末復(fù)習(xí)_第2頁(yè)
嵌入式期末復(fù)習(xí)_第3頁(yè)
嵌入式期末復(fù)習(xí)_第4頁(yè)
嵌入式期末復(fù)習(xí)_第5頁(yè)
已閱讀5頁(yè),還剩18頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

------------------------------------------------------------------------嵌入式期末復(fù)習(xí)

(1)簡(jiǎn)述嵌入式系統(tǒng)的定義和特點(diǎn)

答:定義:以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟硬件可裁剪,應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積、功耗有嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。

特點(diǎn):專用性強(qiáng)、實(shí)時(shí)性好、可裁剪性好、可靠性高和功耗低等。

(2)簡(jiǎn)述計(jì)算機(jī)系統(tǒng)的發(fā)展歷程

第一階段大致在20世紀(jì)70年代前后,可以看成是嵌入式系統(tǒng)的萌芽階段;

第二階段是以嵌入式微處理器為基礎(chǔ),以簡(jiǎn)單操作系統(tǒng)為核心的嵌入式系統(tǒng);

第三階段是以嵌入式操作系統(tǒng)為標(biāo)志的嵌入式系統(tǒng),也是嵌入式應(yīng)用開(kāi)始普及的階段;

第四階段是以基于Internet為標(biāo)志的嵌入式系統(tǒng),這是一個(gè)正在迅速發(fā)展的階段。

(1)ARM和S3C2410X有什么關(guān)系?

S3C2410是韓國(guó)三星公司生產(chǎn)的嵌入式處理器,它采用了ARM公司的ARM920T(即ARM9)內(nèi)核

(2)ARM7是多少位的RISC處理器?使用幾級(jí)流水線?采用什么樣的體系結(jié)構(gòu)?支持MMU嗎?ARM7是32位RISC處理器,使用3級(jí)流水線,采用馮

?諾依曼體系結(jié)構(gòu),不支持MMU。(3)ARM9是多少位的RISC處理器?使用幾級(jí)流水線?采用什么樣的體系結(jié)構(gòu)?支持MMU嗎?

ARM8是32位RISC處理器,使用5級(jí)流水線,采用哈佛體系結(jié)構(gòu),支持MMU。

(4)S3C2410X芯片有多少根地址線,多少根片選線(nGCS),多少根數(shù)據(jù)線。S3C2410X芯片有27根地址線,8根片選線(nGCS),32根數(shù)據(jù)線。

(5)s3c2410芯片內(nèi)部集成了哪些控制接口?S3C2410X芯片內(nèi)部集成了一個(gè)LCD控制器,SDRAM控制器,3個(gè)通道UART,4個(gè)通道DMA,4個(gè)具有PWM功能的計(jì)時(shí)器和一個(gè)內(nèi)部時(shí)鐘,8通道的10位ADC。

(6)ARM體系結(jié)構(gòu)有哪幾種工作狀態(tài)?又有哪幾種運(yùn)行模式?其中哪些為特權(quán)模式?哪些為異常模式?并指出處理器在什么情況下進(jìn)入相應(yīng)模式?

工作狀態(tài):

第1種:ARM狀態(tài)。處理器執(zhí)行32位的字對(duì)齊的ARM指令。

第2種:Thumb狀態(tài)。處理器執(zhí)行16位的半字對(duì)齊的Thumb指令。

運(yùn)行模式:

用戶模式(usr)

快速中斷模式(fiq)

外部中斷模式(irq)

管理模式(svc)

數(shù)據(jù)訪問(wèn)中止模式(abt)

系統(tǒng)模式(sys)

未定義指令中止模式(und)

在這7種運(yùn)行模式,除了用戶模式外,其他6種處理器模式都為特權(quán)模式。

在這6種特權(quán)模式中,除了系統(tǒng)模式外的其他5種特權(quán)模式又稱為異常模式。

用戶模式:非特權(quán)模式,也就是正常程序執(zhí)行的模式,大部分任務(wù)在這種模式下執(zhí)行。在用戶模式下,

如果沒(méi)異常發(fā)生,不允許應(yīng)用程序自行切換果沒(méi)異常發(fā)生,不允許應(yīng)用程序自行改變處理器的工作模式,如果有異常發(fā)生,處理器會(huì)自動(dòng)切換工作模式。

快速中斷模式:支持高速數(shù)據(jù)傳輸和通道處理,當(dāng)一個(gè)高優(yōu)(fast)中斷產(chǎn)生時(shí)將會(huì)進(jìn)入這種模式。

外部中斷模式:也稱為普通中斷模式,當(dāng)一個(gè)低優(yōu)先級(jí)中斷產(chǎn)生時(shí)將會(huì)進(jìn)入這種模式。在這模式下按中斷的處理器方式又分為向量中斷和非向量中斷兩種。通常的中斷處理都在IRQ模式下進(jìn)行。

管理模式:是一種操作系統(tǒng)保護(hù)模式,當(dāng)復(fù)位或軟中斷指令執(zhí)行時(shí)處理器將進(jìn)入這種模式。

數(shù)據(jù)訪問(wèn)中止模式:當(dāng)存取異常時(shí)將會(huì)進(jìn)入這種模式,用來(lái)處理存儲(chǔ)器故障、實(shí)現(xiàn)虛擬存儲(chǔ)或存儲(chǔ)保護(hù)。

系統(tǒng)模式:使用和user模式相同寄存器組的特權(quán)模式,用來(lái)運(yùn)行特權(quán)級(jí)的操作系統(tǒng)任務(wù)。

未定義指令中止模式:當(dāng)執(zhí)行未定義指令時(shí)會(huì)進(jìn)入這種模式,主要是用來(lái)處理未定義的指令陷阱,支持硬件協(xié)處理器的軟件仿真,因?yàn)槲炊x指令多發(fā)生在對(duì)協(xié)處理器的操作上。

(7)ARM體系結(jié)構(gòu)支持的數(shù)據(jù)類型?有多少寄存器?如何組織?

支持的數(shù)據(jù)類型:1.字節(jié)(byte),各種處理器體系結(jié)構(gòu)中,字節(jié)的長(zhǎng)度均為8位。

2.半字(half-word),在ARM體系結(jié)構(gòu)中,半字的長(zhǎng)度為16位。

3.字(word),在ARM體系結(jié)構(gòu)中,字的長(zhǎng)度為32位。

ARM處理器共有37個(gè)寄存器,其中31個(gè)通用寄存器,6個(gè)狀態(tài)寄存器。

(8)S3C2410的存儲(chǔ)控制器如何對(duì)內(nèi)存空間進(jìn)行管理?

S3C2410X存儲(chǔ)控制器為片外存儲(chǔ)器提供控制信號(hào)。它將系統(tǒng)的存儲(chǔ)空間分成8組(Bank),每組的大小為128MB,共1GB。

(9)分析程序狀態(tài)寄存器各位的功能描述,并說(shuō)明C、Z、N、V在什么情況下進(jìn)行置1和清0

狀態(tài)寄存器(PSR)的具體格式為

V—溢出標(biāo)志位

對(duì)于加/減法運(yùn)算指令,當(dāng)操作數(shù)和運(yùn)算結(jié)果為二進(jìn)制補(bǔ)碼表示的帶符號(hào)數(shù)時(shí),V=1表示符號(hào)位溢出,其它指令通常不影響V位。例如:兩個(gè)正數(shù)(最高位為0)相加,運(yùn)算結(jié)果為一個(gè)負(fù)數(shù)(最高位為1),則符號(hào)位溢出,相應(yīng)V=1.

C--進(jìn)位或借位標(biāo)志位

對(duì)于加法指令(包括比較指令CMN),結(jié)果產(chǎn)生進(jìn)位,則C=1,表示無(wú)符號(hào)數(shù)運(yùn)算發(fā)生上溢出,其他情況下C=0;

在減法指令中(包括比較指令CMP),結(jié)果產(chǎn)生借位,則C=0,表示無(wú)符號(hào)數(shù)運(yùn)算發(fā)生下溢出,其他情況下C=1;

對(duì)于包含移位操作的非加/減法運(yùn)算指令,C中包含最后一次溢出位的數(shù)值;

對(duì)于其他非加/減法運(yùn)算指令,C位的值通常不受影響。

Z--結(jié)果為0標(biāo)志位

Z=1表示運(yùn)算結(jié)果是0,Z=0表示運(yùn)算結(jié)果不是零;

對(duì)于CMP指令,Z=1表示進(jìn)行比較的兩個(gè)數(shù)大小相等。

N--符號(hào)標(biāo)志位

本位設(shè)置成當(dāng)前指令運(yùn)算結(jié)果的bit[31]的值。當(dāng)兩個(gè)補(bǔ)碼表示有符號(hào)整數(shù)運(yùn)算時(shí),N=1表示運(yùn)算的結(jié)果為負(fù)數(shù),N=0

表示結(jié)果為正數(shù)或零。

(10)ARM指令可分為哪幾類?說(shuō)出哪幾條指令是無(wú)條件執(zhí)行的。

ARM指令可分為:

數(shù)據(jù)處理指令,跳轉(zhuǎn)指令,程序狀態(tài)寄存器處理指令,加載/存儲(chǔ)指令,協(xié)處理器指令

,異常產(chǎn)生指令。

無(wú)條件執(zhí)行指令:BLX指令,BKPT指令(產(chǎn)生軟件斷點(diǎn)中斷)

(1)

make和Makefile之間的關(guān)系?

答:make是一種命令,是根據(jù)Makefile文件的規(guī)則決定如何編譯和連接程序或其他的動(dòng)作。

(2)Makefile的普通變量與預(yù)定義變量有什么不同?預(yù)定義變量有哪些?它們分別表示什么意思?

答:普通變量:引用變量時(shí),只需在變量前面加上$符;預(yù)定義變量:已經(jīng)定義好,直接引用即可。

預(yù)定義變量有:$@、$^、$<。$@:表示完整的目標(biāo)文件名;$^:表示所有的依賴文件;$<:表示依賴文件列表中的第一個(gè)文件。

(3)GCC編譯器的常用參數(shù)有哪些?它們的功能分別是什么?

答:gcc編譯器的常用參數(shù):-o,-I,-L,-E,-S,-c

功能:-o表示編譯成一個(gè)可執(zhí)行程序;-I表示指定頭文件目錄;-L表示指定庫(kù)文件目錄選項(xiàng);-E表示對(duì)源代碼進(jìn)行預(yù)編譯;-S表示編譯成匯編代碼;-c表示把.c文件轉(zhuǎn)換為以.o為擴(kuò)展名的目標(biāo)文件。

(1)簡(jiǎn)述嵌入式開(kāi)發(fā)環(huán)境的搭建過(guò)程

答:1、交叉編譯工具鏈的安裝;2、安裝配置TFTP服務(wù);3、安裝配置NFS服務(wù);4、C-Kermit的安裝配置;5、minicom的安裝配置;6、windows下超級(jí)終端的配置。

(2)

BootLoader的結(jié)構(gòu)分兩部分,簡(jiǎn)述各部分的功能?

答:兩部分:Stage1:用匯編語(yǔ)言編寫(xiě),主要進(jìn)行設(shè)備的初始化;Stage2:用C語(yǔ)言編寫(xiě),增強(qiáng)程序的移植性和可讀性。

(2)

ARM常用的Bootloader程序有哪些?

答:U-Boot,Blob,RedBoot,vivi

(3)

簡(jiǎn)述生成內(nèi)核映像文件zImage的步驟。

答:1、make

config

進(jìn)入命令行;

2、make

menuconfig

內(nèi)核裁剪;

3、make

clean

清理以前已生成的目標(biāo)文件;

4、make

dep

編譯變量的依賴關(guān)系;

5、make

zImage

生成內(nèi)核鏡像文件zImage。

(4)

BusyBox工具的功能是什么?

答:BusyBox工具用來(lái)精簡(jiǎn)基本用戶命令和程序,它將數(shù)以百計(jì)的常用UNIX/Linux命令集成到一個(gè)可執(zhí)行文件中。

(5)簡(jiǎn)述根文件系統(tǒng)的創(chuàng)建過(guò)程。

答:1、建立基本的目錄結(jié)構(gòu);

2、交叉編譯BusyBox;

3、創(chuàng)建配置文件;

4、利用cramfs工具創(chuàng)建根文件系統(tǒng)映像文件。

(1)

簡(jiǎn)述驅(qū)動(dòng)程序的主要功能。

答:1、對(duì)設(shè)備初始化和釋放;2、數(shù)據(jù)傳送;3、檢測(cè)和處理設(shè)備出現(xiàn)的錯(cuò)誤。

(2)

簡(jiǎn)述驅(qū)動(dòng)程序的組成。

答:1、自動(dòng)配置和初始化子程序;2、服務(wù)于I/O請(qǐng)求的子程序;3、中斷服務(wù)子程序。

(3)

簡(jiǎn)述設(shè)備驅(qū)動(dòng)程序與應(yīng)用程序的區(qū)別。

答:1、設(shè)備驅(qū)動(dòng)程序工作在內(nèi)核態(tài)下,而應(yīng)用程序工作在用戶態(tài)下;2、設(shè)備驅(qū)動(dòng)程序從module_init()開(kāi)始,將初始化函數(shù)加入內(nèi)核初始化函數(shù)列表中,在內(nèi)核初始化時(shí)執(zhí)行驅(qū)動(dòng)的初始化函數(shù),從而完成驅(qū)動(dòng)的初始化和注冊(cè),之后驅(qū)動(dòng)便停止工作,等待應(yīng)用程序的調(diào)用;而應(yīng)用程序從main()函數(shù)開(kāi)始執(zhí)行。

3、應(yīng)用程序可以和GLIBC庫(kù)連接,因此可以包含標(biāo)準(zhǔn)的頭文件;驅(qū)動(dòng)程序不能使用標(biāo)準(zhǔn)的C庫(kù),因此不能調(diào)用所有的C庫(kù)函數(shù)。

(4)簡(jiǎn)述設(shè)備文件、驅(qū)動(dòng)文件、主設(shè)備號(hào)和次設(shè)備號(hào)之間的關(guān)系。

答:驅(qū)動(dòng)程序加載到內(nèi)核后有一個(gè)主設(shè)備號(hào)。在Linux內(nèi)核中,主設(shè)備號(hào)標(biāo)識(shí)設(shè)備對(duì)應(yīng)的驅(qū)動(dòng)程序,告訴Linux內(nèi)核使用哪一個(gè)驅(qū)動(dòng)程序?yàn)樵撛O(shè)備(也就是/dev下的設(shè)備文件)服務(wù),而次設(shè)備號(hào)則用來(lái)標(biāo)識(shí)具體且唯一的某個(gè)設(shè)備。

(5)簡(jiǎn)述字符設(shè)備驅(qū)動(dòng)程序提供的常用入口點(diǎn)及各自的功能。

答:open入口點(diǎn):對(duì)將要進(jìn)行的I/O操作做好必要的準(zhǔn)備工作,如清除緩沖區(qū)等。如果設(shè)備是獨(dú)占的,即同一時(shí)刻只能有一個(gè)程序訪問(wèn)此設(shè)備,則open子程序必須設(shè)置一些標(biāo)志以表示設(shè)備處于忙狀態(tài)。

close入口點(diǎn):當(dāng)設(shè)備操作結(jié)束時(shí),需要調(diào)用close子程序關(guān)閉設(shè)備。獨(dú)占設(shè)備必須標(biāo)記設(shè)備可再次使用。

read入口點(diǎn):當(dāng)從設(shè)備上讀取數(shù)據(jù)時(shí),需要調(diào)用read子程序。

write入口點(diǎn):向設(shè)備上寫(xiě)數(shù)據(jù)時(shí),需要調(diào)用write子程序。

ioctl入口點(diǎn):主要用于對(duì)設(shè)備進(jìn)行讀寫(xiě)之外的其他操作,比如配置設(shè)備、進(jìn)入或退出某種操作模式等,這些操作一般無(wú)法通過(guò)read或write子函數(shù)完成操作。

(1)關(guān)于嵌人式系統(tǒng)發(fā)展趨勢(shì),描述不正確的是(A)A.產(chǎn)品性能不斷提高,功耗不斷增加B.體積不斷縮小C.網(wǎng)絡(luò)化、智能化程度不斷提高D.軟件成為影響價(jià)格的主要因素嵌入式系統(tǒng)的發(fā)展趨勢(shì)表現(xiàn)在以下幾方面:

1.產(chǎn)品種類不斷豐富,應(yīng)用范圍不斷普及

2.產(chǎn)品性能不斷提高

3.產(chǎn)品功耗不斷降低,體積不斷縮小

4.網(wǎng)絡(luò)化、智能化程度不斷提高

5.軟件成為影響價(jià)格的主要因素

(2)嵌人式操作系統(tǒng)有很多,但(D)不是。A.LinuxB.WindowsCEC.V×Works D.WindowsXP常見(jiàn)的嵌入式操作系統(tǒng):

VxWorks,Windows

CE、uC/OS-II和嵌入式Linux。(3)V×Works是(A)于1983年開(kāi)發(fā)的一種32位嵌人式實(shí)時(shí)操作系統(tǒng)。A.WindRiverB.MicrosoftC.JeanJ.LabrosseD.LinusTorvalds說(shuō)明:VxWorks是美國(guó)WindRiver公司于1983年開(kāi)發(fā)的一種32位嵌入式實(shí)時(shí)操作系統(tǒng)。(1)ARM公司主要依靠(D)獲得利潤(rùn)。

A.生產(chǎn)芯片 B.銷售芯片 C.制定標(biāo)準(zhǔn) D.出售芯片技術(shù)授權(quán)

(2)S3C2410X是(

C)公司生產(chǎn)的嵌人式處理器。

A.

AKM

B.Sony

C.

SamsungD.Motorola

(3)S3C2410X選用的內(nèi)核是(

A)公司設(shè)計(jì)的。

A.

ARM

B.

Sony

C.

SamsLing

D.Motorola

(4)S3C2410X采用的內(nèi)核是(B).

A.

ARM720T

B.

ARM920T

C.

ARM1020

D.

ARM9E

(5)S3C2410×芯片采用的封裝是(

B).

A.

DIP

B.BGA

C.QFP

D.PGA

(6)S3C2410X

(

C)位處理器。

A.

8

B.16C.32

D.64

(7)S3C2410X有(D)位通道的I/O口。

A.8

B.64

C.100D.117

(8)S3C2410X有(C)個(gè)外部中斷源。

A.

8

B.16

C.24D.32

(9)S3C2410X將系統(tǒng)的存儲(chǔ)空間分成(C

)

(bank).

A.

2

B.4

C.8D.166

(10)S3C2410×能管理的最大存儲(chǔ)空間是(B

)。

A.512MBB.1GB

C.2GB

D.4GB

(1)GCC軟件是(B

)

A.調(diào)試器B.編譯器C.文本編輯器D.連接器

(2)GDB軟件是(A)A.調(diào)試器B.編譯器C.文本編輯器D.連接器

(3)如果生成通用計(jì)算機(jī)上(系統(tǒng)是Linux操作系統(tǒng))能夠執(zhí)行的程序,則使用的C編譯是(C)

A.TC

B.VC

C.GCC

D.Arm-linu

X-gcc

(4)GCC用于指定頭文件目錄的選項(xiàng)是(D)

A.-oB.-L

C.-g

D.-I

(5)make有許多預(yù)定義變量,表示“目標(biāo)完整名稱”的是(A

)

A.

$@

B.

$^

C.$<

D.$>

(1)

minicom

(

A)

A.串口通信工具B.圖像軟件C.操作系統(tǒng)D.遠(yuǎn)程控制軟件

(2)vivi工程序分2個(gè)階段,第1階段是用(

C)語(yǔ)言編寫(xiě)的。

A.C語(yǔ)言B.機(jī)器語(yǔ)言C.匯編語(yǔ)言D.Basic語(yǔ)言

(3)vivi工程序分2個(gè)階段,第2階段是用(A)語(yǔ)言編寫(xiě)的。A.C語(yǔ)言B.機(jī)器語(yǔ)言C.匯編語(yǔ)言D.Basic語(yǔ)言

(4)內(nèi)核映像文件是(A

)

A.

zImage

B.

kernel

C.root.cramfs

D.Yaffs

(5)創(chuàng)建根文件系統(tǒng)映像文件使用的工具是(A

)A.BusyBox

B.cramls

C.Make

D.vi

(1)驅(qū)動(dòng)程序的主要功能包括3個(gè)方面,但(B)不屬于。

A.對(duì)設(shè)備初始化和釋放B.控制應(yīng)用程序

C.檢測(cè)和處理設(shè)備出現(xiàn)的錯(cuò)誤D.數(shù)據(jù)傳送

(2)驅(qū)動(dòng)程序主要由3部分組成,但(

D)不屬于。

A.自動(dòng)配置和初始化子程序B.服務(wù)于I/0請(qǐng)求的子程序C.中斷服務(wù)子程序D.服務(wù)于CPU子程序

(3)字符設(shè)備提供給應(yīng)用程序的人口點(diǎn)有很多,但(C

)不是。A.ioctl

B.read

C.main

D.open

(4)Linux系統(tǒng)通常將設(shè)備分為3類,但(

A)不屬于

A.輸人設(shè)備B.字符設(shè)備C.塊設(shè)備D.網(wǎng)絡(luò)設(shè)備

(5)Linux系統(tǒng)用(C)字母表示字符設(shè)備。

A.AB.BC.C

D.D

(6)設(shè)備文件包括了較多信息,但沒(méi)有包括(D).

A.設(shè)備類型B.主設(shè)備號(hào)C.次設(shè)備號(hào)D.驅(qū)動(dòng)程序名稱(1)通常可以將計(jì)算機(jī)分為兩類,即通用計(jì)算機(jī)和__嵌入式計(jì)算機(jī)_______。(2)嵌人式系統(tǒng)硬件可分為_(kāi)_微處理器_、_外圍電路_和_外部設(shè)備__等3部分。(3)嵌人式系統(tǒng)軟件可分為板級(jí)支持包、_實(shí)時(shí)操控系統(tǒng)_、應(yīng)用編程接口和應(yīng)用程序等4部分(4)根據(jù)結(jié)構(gòu)和功能特點(diǎn)不同,嵌人式處理器可分嵌入式處理器、微控制器和數(shù)字信號(hào)處理器等3類。(1)ARM微處理器目前包括_ARM7、ARM9_、ARM9E_、ARM10E__、ARM11__、等(2)RISC的意思是精簡(jiǎn)指令集。(3)S3C2410x

是_Samsung_公司生產(chǎn)的嵌人式處理器,它采用了ARM公司的

內(nèi)核,芯片內(nèi)部還設(shè)計(jì)了__IIC____線,并集成了一些外圍設(shè)備控制電路。

(4)S3C2410x采用BGA封裝,主要解決因_顯卡布線_____帶來(lái)的問(wèn)題。

(5)S3C2410x使用了兩組電壓供電,內(nèi)核采用__1.8_v___供電,存儲(chǔ)器和I/O采用__3.3v___供電(6)S3C2410x將系統(tǒng)的存儲(chǔ)空間分成___8___組(bank),每組的大小為_(kāi)128____MB,共___1___GB。

(7)UP-2410S實(shí)驗(yàn)箱硬件使用的MCU是__s3c2410____;內(nèi)存是__64MB____;Flash是__64MB____。(1)Linux下,動(dòng)態(tài)鏈接庫(kù)文件是以__.SO_結(jié)尾的,靜態(tài)鏈接庫(kù)文件是以__.a____結(jié)尾的。動(dòng)態(tài)鏈接庫(kù)是在_程序運(yùn)行過(guò)程中_____動(dòng)態(tài)加載的,靜態(tài)鏈接庫(kù)是在編譯過(guò)程中靜態(tài)加載的。

(2)GCC指定庫(kù)文件目錄選項(xiàng)的字母是__L____。指定頭文件目錄選項(xiàng)的字母_I_____。指定輸出文件名選項(xiàng)的字母是__O____(3)為了方便文件的編輯,在編輯Makefile時(shí),可以使用變量。引用變量時(shí),只需在變量前面加上__$____符。

(4)Makefile文件預(yù)定定義變量有很多,列舉3個(gè)預(yù)定定義變量:__$@____,__$_∧__和_$<_____。

(5)Makefile文件預(yù)定定義變量“$@”表示_目標(biāo)文件的完整名稱_____,“$^”表示_所有不重復(fù)的依賴文件,以空格隔開(kāi)_____,“$<”表示_第一個(gè)依賴文件的名稱_____。(1)當(dāng)宿主機(jī)使用Linux操作系統(tǒng)的minicom操作實(shí)驗(yàn)箱時(shí),宿主機(jī)和實(shí)驗(yàn)箱之間是利用__串____口來(lái)傳輸數(shù)據(jù)。(2)配置minicom時(shí),一般參數(shù)為波特率__115200____,數(shù)據(jù)位__8____位,停止位___1___位,奇偶校驗(yàn)位__無(wú)____,軟硬件控制流為_(kāi)__無(wú)___。

(3)對(duì)嵌人式系統(tǒng)Flash存儲(chǔ)器燒寫(xiě)可以通過(guò)__編程口____、__串口____和__網(wǎng)絡(luò)接口____和等不同方式。

(4)在構(gòu)建一個(gè)嵌人式系統(tǒng),最先被燒寫(xiě)到Flash存儲(chǔ)器中的軟件是Bootload_。

(5)JTAG仿真器有兩種功能,即__程序仿真調(diào)試____和_程序燒寫(xiě)_____。

(6)嵌人式Linux的內(nèi)核映像文件是zImage_,根映像文件是_root.cramfs_____。

(7)大多數(shù)Bootloader程序包括兩種不同的操作模式,即_啟動(dòng)加載模式_____和___下載___模式。

(8)Bootloader程序有stagel和stage2,它們分別是用__匯編語(yǔ)言____和____C__語(yǔ)言來(lái)編寫(xiě)的。

(9)流行的LinuxBootloader有_U-Boot_____、_Blob__和_ARMBoot_____。

(10)在嵌人式Linux系統(tǒng)中,創(chuàng)建根文件系統(tǒng)的工具是__BusyBox____。

(11)開(kāi)始操作實(shí)驗(yàn)箱,當(dāng)出現(xiàn)提示PressReturnstarttheLINUXnow,anyotherkeyforvivi時(shí),按Enter鍵,則進(jìn)入vivi的_啟動(dòng)加載_____模式。(1)驅(qū)動(dòng)程序運(yùn)行在_內(nèi)核態(tài)_____,應(yīng)用程序運(yùn)行在用戶態(tài)。

(2)

Linux系統(tǒng)的設(shè)備一般分為三類,即_字符設(shè)備_____、__塊設(shè)備____和網(wǎng)絡(luò)設(shè)備。

(3)在Linu“系統(tǒng)中,設(shè)備號(hào)包括兩部分,即_主設(shè)備號(hào)_____和次設(shè)備號(hào)設(shè)備號(hào)。

(4)Linux驅(qū)動(dòng)程序的編譯方法有兩種,即_靜態(tài)編譯__和_動(dòng)態(tài)編譯_____。

(5)Linux系統(tǒng)中,用于加載模塊化驅(qū)動(dòng)程序的命令是__insmod____。4.程序題

(1)

分析下列每條語(yǔ)句,并說(shuō)明程序?qū)崿F(xiàn)的功能。

CMP

R0,

#0

//判斷R0是否等于0

MOVEQ

R1,

#0

//當(dāng)R0等于0,則R1等于0

MOVGT

R1,#1

//當(dāng)R0為正數(shù)時(shí),則R1等于1

此功能碼段可以判別R0中的值為正數(shù)還是0。

(2)

寫(xiě)一條ARM指令,分別完成下列操作。

R0

=

16

MOV

RO,

#16

R0

=

R1

/

16

MOV

RO,R1,LSR#4

R1

=

R2

*

4

ADD

R1,R2.R2.LSL#1

R0

=

-

R0

RSB

RO,RO,#0

(3)

寫(xiě)出實(shí)現(xiàn)下列操作的ARM指令。

當(dāng)Z=1時(shí),將存儲(chǔ)器地址為R1的字?jǐn)?shù)據(jù)讀入寄存器R0。

MOVEQ

R0,

[R1]

當(dāng)Z=1時(shí),將存儲(chǔ)器地址為R1+R2的字?jǐn)?shù)據(jù)讀入寄存器R0。

LDREQ

R0,

[R1,R2]

將存儲(chǔ)器地址為R1-4的字?jǐn)?shù)據(jù)讀入寄存器R0。

LDR

R0,[R1,#-4]

將存儲(chǔ)器地址為R1+R6的字?jǐn)?shù)據(jù)讀入寄存器R0,并將新地址R1+R6

寫(xiě)入R1。LDR

R0,[R1,R6]!

(4)

寫(xiě)出下列指令所實(shí)現(xiàn)的操作。

LDR

R2

,[R3,#-2]!

將存儲(chǔ)器地址為R3-2的字?jǐn)?shù)據(jù)讀入R2,并將地址R3-2寫(xiě)入R3

LDR

R0

,[R0],R1

將存儲(chǔ)器地址為R0的字?jǐn)?shù)據(jù)讀入R0,并將地址R0+R1寫(xiě)入R0

LDR

R1

,[R0,R2,LSL

#2]!

將存儲(chǔ)器地址為R0+R2*4的字?jǐn)?shù)據(jù)讀入R1,并將地址R0+R2*4寫(xiě)入R0

STRB

R1

,[R2,#0xB0]

R0的低8位存入存儲(chǔ)器地址為

R2+0xB0字節(jié)中

LDMIA

R0

,{R1,R2,R8}

將內(nèi)存單元R0所指向的地址單元以字為單位遞減方式讀取到R1,R2,R8

中,低地址編號(hào)的字?jǐn)?shù)據(jù)內(nèi)存單元對(duì)應(yīng)低編號(hào)寄存器

STMDB

R0!,

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論