版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、arm9嵌入式課后答案【篇一:arm嵌入式系統(tǒng)結(jié)構(gòu)與編程習(xí)題答案(全)】ass=txt>第一章緒論1 .國內(nèi)嵌入式系統(tǒng)行業(yè)對“嵌入式系統(tǒng)”的定義是什么?如何理解?答:國內(nèi)嵌入式行業(yè)一個普遍認(rèn)同的定義是:以應(yīng)用為中心,以計算機技術(shù)為基礎(chǔ),軟硬件可裁剪,適應(yīng)應(yīng)用系統(tǒng)對功能,可靠性,成本,體積,功耗嚴(yán)格要求的專業(yè)計算機系統(tǒng)。從這個定義可以看出嵌入式系統(tǒng)是與應(yīng)用緊密結(jié)合的,它具有很強的專用性,必須結(jié)合實際系統(tǒng)需求進行合理的剪裁利用。因此有人把嵌入式系統(tǒng)比作是一個針對特定的應(yīng)用而“量身定做”的專業(yè)計算機系統(tǒng)。2 嵌入式系統(tǒng)是從何時產(chǎn)生的,簡述其發(fā)展歷程。答:從20世紀(jì)70年代單片機的出現(xiàn)到目前各式
2、各樣的嵌入式微處理器,微控制器的大規(guī)模應(yīng)用,嵌入式系統(tǒng)已經(jīng)有了30多年的發(fā)展歷史。嵌入式系統(tǒng)的出現(xiàn)最初是基于單片機的。intel公司1971年開發(fā)出第一片具有4位總線結(jié)構(gòu)的微處理器4004,可以說是嵌入式系統(tǒng)的萌芽階段。80年代初的8051是單片機歷史上值得紀(jì)念的一頁。20世紀(jì)80年代早期,出現(xiàn)了商業(yè)級的“實時操作系統(tǒng)內(nèi)核”,在實時內(nèi)核下編寫應(yīng)用軟件可以使新產(chǎn)品的沿著更快,更節(jié)省資金。20世紀(jì)90年代實時內(nèi)核發(fā)展為實時多任務(wù)操作系統(tǒng)。步入21世紀(jì)以來,嵌入式系統(tǒng)得到了極大的發(fā)展。在硬件上,mcu的性能得到了極大的提升,特別是arm技術(shù)的出現(xiàn)與完善,為嵌入式操作系統(tǒng)提供了功能強大的硬件載體,將嵌
3、入式系統(tǒng)推向了一個嶄新的階段。3 當(dāng)前最常用的源碼開放的嵌入式操作系統(tǒng)有哪些,請舉出兩例,并分析其特點。答:主要有嵌入式linux和嵌入式實時操作內(nèi)核uc/os-ii嵌入式linux操作系統(tǒng)是針對嵌入式微控制器的特點而量身定做的一種linux操作系統(tǒng),包括常用的嵌入式通信協(xié)議和常用驅(qū)動,支持多種文件系統(tǒng)。主要有以下特點:源碼開放,易于移植,內(nèi)核小,功能強大,運行穩(wěn)定,效率高等。uc/os是源碼工卡的實時嵌入式系統(tǒng)內(nèi)核,主要有以下特點:源碼公開,可移植性強,可固化,可剪裁,占先式,多任務(wù),可確定性,提供系統(tǒng)服務(wù)等。4 舉例說明嵌入式設(shè)備在工控設(shè)備中的應(yīng)用。答:由于工業(yè)控制系統(tǒng)特別強調(diào)可靠性和實時
4、性,“量身定做”的嵌入式控制系統(tǒng)恰能滿足工業(yè)控制的需求。例如:工業(yè)過程控制,數(shù)字控制機床,電網(wǎng)設(shè)備監(jiān)測,電力自動控制系統(tǒng),石油化工監(jiān)控等。5 嵌入式技術(shù)的發(fā)展趨勢有哪些?答:未來嵌入式系統(tǒng)的發(fā)展趨勢有:1.隨著信息化與數(shù)字化的發(fā)展,嵌入式設(shè)備進行網(wǎng)絡(luò)互聯(lián)是未來發(fā)展的趨勢。2.優(yōu)化嵌入式系統(tǒng)軟硬件內(nèi)核,提高系統(tǒng)運行速度,降低功耗和硬件成本。3.指令集的并行計算技術(shù)將引入嵌入式微處理器。4.嵌入式微處理器將會向多核技術(shù)發(fā)展。5.嵌入式技術(shù)將引領(lǐng)信息時代。第2章arm技術(shù)與arm體系結(jié)構(gòu)1 .簡述arm處理器內(nèi)核調(diào)試結(jié)構(gòu)原理答:arm處理器一般都帶有嵌入式追蹤宏單元etm(embeddedtrace
5、macro),它是arm公司自己推出的調(diào)試工具。arm處理器都支持基于jtag(jointtestactiongroup聯(lián)合測試行動小組)的調(diào)試方法。它利用芯片內(nèi)部的embeddedice來控制arm內(nèi)核操作,可完成單步調(diào)試和斷點調(diào)試等操作。當(dāng)cpu處理單步執(zhí)行完畢或到達斷點處時,就可以在宿主機端查看處理器現(xiàn)場數(shù)據(jù),但是它不能在cpu運行過程中對實時數(shù)據(jù)進行仿真。etm解決了上述問題,能夠在cpu運行過程中實時掃描處理器的現(xiàn)場信息,并數(shù)據(jù)送往tap(testaccessport)控制器。上圖中分為三條掃描鏈(圖中的粗實線),分別用來監(jiān)視arm核,etm,嵌入式ice的狀態(tài)。2. 分析arm7t
6、dmi-s各字母所代表的含義。答:arm7tdmi-s中arm是advancedriscmachines的縮寫7是系列號;t:支持高密度16位的thumb指令集;d:支持jtag片上調(diào)試;m:支持用于長乘法操作(64位結(jié)果)arm指令,包含快速乘法器;i:帶有嵌入式追蹤宏單元etm,用來設(shè)置斷點和觀察點的調(diào)試硬件;s:可綜合版本,意味著處理器內(nèi)核是以源代碼形式提供的。這種源代碼形式又可以編譯成一種易于eda工具使用的形式。3. arm處理器的工作模式有哪幾種,其中哪些為特權(quán)模式,哪些為異常模式,并指出處理器在什么情況下進入相應(yīng)的模式。答:arm技術(shù)的設(shè)計者將arm處理器在應(yīng)用中可能產(chǎn)生的狀態(tài)進
7、行了分類,并針對同一類型的異常狀態(tài)設(shè)定了一個固定的入口點,當(dāng)異常產(chǎn)生時,程序會自動跳轉(zhuǎn)到對應(yīng)異常入口處進行異常服務(wù)。?1用戶模式:非特權(quán)模式,也就是正常程序執(zhí)行的模式,大部分任務(wù)在這種模式下執(zhí)行。在用戶模式下,如果沒異常發(fā)生,不允許應(yīng)用程序自行改變處理器的工作模式,如果有異常發(fā)生,處理器會自動切換工作模式?2fiq模式:也稱為快速中斷模式,支持高速數(shù)據(jù)傳輸和通道處理,當(dāng)一個高優(yōu)先級(fast)中斷產(chǎn)生時將會進入這種模式。?3irq模式:也稱為普通中斷模式,:當(dāng)一個低優(yōu)先級(normal)中斷產(chǎn)生時將會進入這種模式。在這模式下按中斷的處理器方式又分為向量中斷和非向量中斷兩種。通常的中斷處理都在i
8、rq模式下進行。?4svc模式:稱之為管理模式,它是一種操作系統(tǒng)保護模式。當(dāng)復(fù)位或軟中斷指令執(zhí)行時處理器將進入這種模式。?5中止模式:當(dāng)存取異常時將會進入這種模式,用來處理存儲器故障、實現(xiàn)虛擬存儲或存儲保護。?6未定義指令異常模式:當(dāng)執(zhí)行未定義指令時會進入這種模式,主要是用來處理未定義的指令陷阱,支持硬件協(xié)處理器的軟件仿真,因為未定義指令多發(fā)生在對協(xié)處理器的操作上。?7系統(tǒng)模式:使用和user模式相同寄存器組的特權(quán)模式,用來運行特權(quán)級的操作系統(tǒng)任務(wù)。?在這7種工作模式中,除了用戶模式以外,其他6種處理器模式可以稱為特權(quán)模式,在這些模式下,程序可以訪問所有的系統(tǒng)資源,也可以任意地進行處理器模式的
9、切換。?在這6種特權(quán)模式中,除了系統(tǒng)模式外的其他5種特權(quán)模式又稱為異常模式,每種異常都對應(yīng)有自己的異常處理入口點。4. 分析程序狀態(tài)寄存器(psr)各位的功能描述,并說明c,z,n,v在什么情況下進行置位和清零。答:?條件位:?n=1-結(jié)果為負(fù),0-結(jié)果為正或0?z=1-結(jié)果為0,0-結(jié)果不為0?c=1-進位,0-借位?v=1-結(jié)果溢出,0結(jié)果沒溢出?q位:?僅arm5te/j架構(gòu)支持?指示增強型dsp指令是否溢出?中斷禁止位:?i=1:禁止irq.?f=1:禁止fiq.?tbit?僅armxt架構(gòu)支持?t=0:處理器處于arm狀態(tài)?t=1:處理器處于thumb狀態(tài)?mode位(處理器模式位)
10、:?0b10000?0b10001?0b10010?0b10011?0b10111userfiqirqsupervisorabort?0b11011?0b11111undefinedsystem5. 簡述arm處理器異常處理和程序返回的過程。答:只要正常的程序流被暫時中止,處理器就進入異常模式。例如響應(yīng)一個來自外設(shè)的中斷。在處理異常之前,arm7tdmi內(nèi)核保存當(dāng)前的處理器狀態(tài),這樣當(dāng)處理程序結(jié)束時可以恢復(fù)執(zhí)行原來的程序。如果同時發(fā)生兩個或更多異常,那么將按照固定的順序來處理異常。1. 在適當(dāng)?shù)膌r中保存下一條指令的地址2. 將cpsr復(fù)制到適當(dāng)?shù)膕psr中;3. 將cpsr模式位強制設(shè)置為與
11、異常類型相對應(yīng)的值;4. 強制pc從相關(guān)的異常向量處取指。arm7tdmi內(nèi)核在中斷異常時置位中斷禁止標(biāo)志,這樣可以防止不受控制的異常嵌套。注:異??偸窃赼rm狀態(tài)中進行處理。當(dāng)處理器處于thumb狀態(tài)時發(fā)生了異常,在異常向量地址裝入pc時,會自動切換到arm狀態(tài)。當(dāng)異常結(jié)束時,異常處理程序必須:1 .將lr中的值減去偏移量后存入pc,偏移量根據(jù)異常的類型而有所不同;2.將spsr的值復(fù)制回cpsr;3.清零在入口置位的中斷禁止標(biāo)志。注:恢復(fù)cpsr的動作會將t、f和i位自動恢復(fù)為異常發(fā)生前的值。6. arm處理器字?jǐn)?shù)據(jù)的存儲格式有哪兩種?并指出這兩種格式的區(qū)別。答:arm7tdmi處理器可以
12、將存儲器中的字以下列格式存儲?大端格式(big-endian)?小端格式(little-endian)?小端存儲器系統(tǒng):在小端格式中,高位數(shù)字存放在高位字節(jié)中。因此存儲器系統(tǒng)字節(jié)0連接到數(shù)據(jù)線70。?大端存儲器系統(tǒng):在大端格式中,高位數(shù)字存放在低位字節(jié)中。因此存儲器系統(tǒng)字節(jié)0連接到數(shù)據(jù)線3124。7. 分析帶有存儲器訪問指令(ldr)的流水線運行情況,并用圖示說明流水線的運行機制。答:存儲器訪問指令ldr流水線舉例取指的存儲器訪問和執(zhí)行的數(shù)據(jù)路徑占用都是不可同時共享的資源,對于多周期指令來說,如果指令復(fù)雜以至于不能在單個時鐘周期內(nèi)完成執(zhí)行階段,就會產(chǎn)生流水線阻塞。對存儲器的訪問指令ldr是非單
13、周期指令ldr指令的執(zhí)行,訪問存儲器,回寫寄存器(占用了3個周期)。造成了mov指令的執(zhí)行被阻斷。8. 簡述arm9的5級流水線每一級所完成的功能和實現(xiàn)的操作。答:arm920在指令操作上采用5級流水線.取指:從指令cache中讀取指令。譯碼:對指令進行譯碼,識別出是對哪個寄存器進行操作并從通用寄存器中讀取操作數(shù)。執(zhí)行:進行alu運算和移位操作,如果是對存儲器操作的指令,則在alu中計算出要訪問的存儲器地址。存儲器訪問:如果是對存儲器訪問的指令,用來實現(xiàn)數(shù)據(jù)緩沖功能(通過數(shù)據(jù)cache)。寄存器回寫:將指令運算或操作結(jié)果寫回到目標(biāo)寄存器中。9. 什么叫流水線互鎖?應(yīng)如何來解決,舉例說明。答:互
14、鎖:當(dāng)前指令的執(zhí)行需要前面指令的執(zhí)行結(jié)果,但前面的指令沒有執(zhí)行完畢,引起流水線的等待?;ユi發(fā)生時,硬件會停止指令的執(zhí)行,直到數(shù)據(jù)準(zhǔn)備好?!酒呵度胧秸n后答案】式的定義以應(yīng)用為中心、以計算機技術(shù)為基礎(chǔ),軟件硬件可裁剪,適應(yīng)應(yīng)用系統(tǒng)對功能、可靠性、成本、體積、功耗嚴(yán)格要求的專用計算機系統(tǒng)。2. 舉例說明嵌入式系統(tǒng)的“嵌入性”、“專用性”、“計算機系統(tǒng)”的基本特征。按照嵌入式系統(tǒng)的定義,嵌入式系統(tǒng)有3個基本特點,即“嵌入性”、“專用性”與“計算機”?!扒度胄浴庇稍缙谖⑿蜋C時代的嵌入式計算機應(yīng)用而來,專指計算機嵌入到對象體系中,實現(xiàn)對象體系的智能控制。當(dāng)嵌入式系統(tǒng)變成一個獨立應(yīng)用產(chǎn)品時,可將嵌入性理
15、解為內(nèi)部嵌有微處理器或計算機。“計算機”是對象系統(tǒng)智能化控制的根本保證。隨著單片機向mcu、soc發(fā)展,片內(nèi)計算機外圍電路、接口電路、控制單元日益增多,“專用計算機系統(tǒng)”演變成為“內(nèi)含微處理器”的現(xiàn)代電子系統(tǒng)。與傳統(tǒng)的電子系統(tǒng)相比較,現(xiàn)代電子系統(tǒng)由于內(nèi)含微處理器,能實現(xiàn)對象系統(tǒng)的計算機智能化控制能力?!皩S眯浴笔侵冈跐M足對象控制要求及環(huán)境要求下的軟硬件裁剪性。嵌入式系統(tǒng)的軟、硬件配置必須依據(jù)嵌入對象的要求,設(shè)計成專用的嵌入式應(yīng)用系統(tǒng)。3. 簡述嵌入式系統(tǒng)發(fā)展各階段的特點。(1)無操作系統(tǒng)階段:使用簡便、價格低廉;(2)簡單操作系統(tǒng)階段:初步具有了一定的兼容性和擴展性,內(nèi)核精巧且效率高,大大縮短
16、了開發(fā)周期,提高了開發(fā)效率。(3)實時操作系統(tǒng)階段:系統(tǒng)能夠運行在各種不同類型的微處理器上,具備了文件和目錄管理、設(shè)備管理、多任務(wù)、網(wǎng)絡(luò)、圖形用戶界面graphicuserinterface,gui)等功能,并提供了大量的應(yīng)用程序接口applicationprogramminginterface,api),從而使應(yīng)用軟件的開發(fā)變得更加簡單。(4)面向internet階段:進入21世紀(jì),internet技術(shù)與信息家電、工業(yè)控制技術(shù)等的結(jié)合日益緊密,嵌入式技術(shù)與internet技術(shù)的結(jié)合正在推動著嵌入式系統(tǒng)的飛速發(fā)展4. 簡述嵌入式系統(tǒng)的發(fā)展趨勢。(1)新的微處理器層出不窮,精簡系統(tǒng)內(nèi)核,優(yōu)化關(guān)鍵
17、算法,降低功耗和軟硬件成本。(2)linux、windowsce、palmos等嵌入式操作系統(tǒng)迅速發(fā)展。(3)嵌入式系統(tǒng)的開發(fā)成了一項系統(tǒng)工程,開發(fā)廠商不僅要提供嵌入式軟硬件系統(tǒng)本身,同時還要提供強大的硬件開發(fā)工具和軟件支持包。5. 簡述soc和ip核的區(qū)別。soc是指在單芯片上集成數(shù)字信號處理器、微控制器、存儲器、數(shù)據(jù)轉(zhuǎn)換器、接口電路等電路模塊,可以直接實現(xiàn)信號采集、轉(zhuǎn)換、存儲、處理等功能。ip核是指具有知識產(chǎn)權(quán)的、功能具體、接口規(guī)范、可在多個集成電路設(shè)計中重復(fù)使用的功能模塊,是實現(xiàn)系統(tǒng)芯片(soc)的基本構(gòu)件。6. 簡述嵌入式計算機系統(tǒng)硬件層的組成和功能。硬件層中包含嵌入式微處理器、存儲器
18、(sdram、rom、flash等)、通用設(shè)備接口和i/o接口(a/d、d/a、i/o等)。(1)嵌入式微處理器是嵌入式系統(tǒng)硬件層的核心,嵌入式微處理器將通用cpu中許多由板卡完成的任務(wù)集成到芯片內(nèi)部,從而有利于系統(tǒng)設(shè)計趨于小型化、高效率和高可靠性(2)嵌入式系統(tǒng)的存儲器包含cache、主存儲器和輔助存儲器,用來存放和執(zhí)行代碼。(3)與外界交互所需要的通用設(shè)備接口7. 簡述cache的功能與分類。( 1)cache是一種位于主存儲器和嵌入式微處理器內(nèi)核之間的快速存儲器陣列,存放的是最近一段時間微處理器使用最多的程序代碼和數(shù)據(jù)。在需要進行數(shù)據(jù)讀取操作時,微處理器盡可能的從cache中讀取數(shù)據(jù),而
19、不是從主存中讀取,減小存儲器(如主存和輔助存儲器)給微處理器內(nèi)核造成的存儲器訪問瓶頸,提高微處理器和主存之間的數(shù)據(jù)傳輸速率,使處理速度更快,實時性更強( 2)cache一般集成在嵌入式微處理器內(nèi),可分為數(shù)據(jù)cache、指令cache或混合cache,cache的存儲容量大小依不同處理器而定。8. 簡述嵌入式計算機系統(tǒng)中間層的組成和功能。中間層也稱為硬件抽象層(hardwareabstractlayer,hal)或板級支持包(boardsupportpackage,bsp),位于硬件層和軟件層之間,將系統(tǒng)上層軟件與底層硬件分離開來。bsp作為上層軟件與硬件平臺之間的接口,需要為操作系統(tǒng)提供操作和
20、控制具體硬件的方法。不同的操作系統(tǒng)具有各自的軟件層次結(jié)構(gòu),bsp需要為不同的操作系統(tǒng)提供特定的硬件接口形式。bsp使上層軟件開發(fā)人員無需關(guān)心底層硬件的具體情況,根據(jù)bsp層提供的接口即可進行開發(fā)。bsp是一個介于操作系統(tǒng)和底層硬件之間的軟件層次,包括了系統(tǒng)中大部分與硬件聯(lián)系緊密的軟件模塊。bsp一般包含相關(guān)底層硬件的初始化、數(shù)據(jù)的輸入輸出操作和硬件設(shè)備的配置等功能。9. 簡述嵌入式計算機系統(tǒng)系統(tǒng)軟件層的組成和功能。系統(tǒng)軟件層通常包含有實時多任務(wù)操作系統(tǒng)(real-timeoperationsystem,rtos)、文件系統(tǒng)、圖形用戶接口(graphicuserinterface,gui)、網(wǎng)絡(luò)
21、系統(tǒng)及通用組件模塊組成。10. 1)嵌入式操作系統(tǒng)(embeddedoperatingsystem,eos)eos負(fù)責(zé)嵌入式系統(tǒng)的軟件、硬件的資源分配、任務(wù)調(diào)度,控制協(xié)調(diào)。11. 2)文件系統(tǒng)嵌入式文件系統(tǒng)與通用操作系統(tǒng)的文件系統(tǒng)不完全相同,主要提供文件存儲、檢索和更新等功能,一般不提供保護和加密等安全機制。12. )圖形用戶接口(gui)gui使用戶可以通過窗口、菜單、按鍵等方式來方便地操作計算機或者嵌入式系統(tǒng)。13. 簡述rtos的定義與特點。rtos是指能夠在指定或者確定的時間內(nèi)完成系統(tǒng)功能和對外部或內(nèi)部、同步或異步時間做出響應(yīng)的系統(tǒng),系統(tǒng)能夠處理和存儲控制系統(tǒng)所需要的大量數(shù)據(jù)。特點:(
22、1)約束性rtos任務(wù)的約束包括時間約束、資源約束、執(zhí)行順序約束和性能約束。14. 2)可預(yù)測性【篇三:嵌入式課后答案】嵌入式系統(tǒng)?它由哪幾部分組成?有何特點?以應(yīng)用為中心,計算機技術(shù)為基礎(chǔ),軟硬件可裁減,從而能夠適應(yīng)實際應(yīng)用中對功能、可靠性、成本、體積、功耗等嚴(yán)格要求的專用計算機系統(tǒng)。嵌入式系統(tǒng)通常由嵌入式處理器、外圍設(shè)備、嵌入式操作系統(tǒng)、應(yīng)用軟件等幾大部分組成。嵌入式處理器與通用處理器的最大不同點在其大多工作在為特定用戶群設(shè)計的系統(tǒng)。外圍設(shè)備包括:存儲器、接口、人機交互。嵌入式操作系統(tǒng)的特點:軟硬件一體化,集計算機技術(shù)、微電子技術(shù)和行業(yè)技術(shù)為一體;需要操作系統(tǒng)支持,代碼小,執(zhí)行速度快;專用
23、緊湊,用途固定,成本敏感;可靠性要求高;多樣性,應(yīng)用廣泛,種類繁多。2. 嵌入式處理器分為哪幾類?低端的微控制器(microconctrollerunit,mcu)中高端的嵌入式微處理器(embeddedmicroprocessorunit,empu)通信領(lǐng)域的dsp系統(tǒng)(digitalsignalprocessor,dsp)高度集成的片上系統(tǒng)(systemonchip,soc)3. arm英文原意是什么?它是個怎樣的公司?其處理器有何特點?arm(advancedriscmachines)公司是全球領(lǐng)先的16/32位risc微處理器知識產(chǎn)權(quán)設(shè)計供應(yīng)商。arm公司通過將其高性能、低功耗、低成本
24、的risc微處理器,外圍和系統(tǒng)芯片設(shè)計技術(shù)轉(zhuǎn)讓給合作伙伴來生產(chǎn)各具特色的芯片。arm處理器的特點:小體積、低功耗、低成本而性能高。16/32位指令集。全球至多的合作伙伴。4. 什么是實時系統(tǒng)?它由哪些特征?如何分類?實時系統(tǒng)是具有實時性且能支持實時控制系統(tǒng)工作的操作系統(tǒng)。其首要任務(wù)是調(diào)動一切可利用的資源來完成實時控制任務(wù),其次才著眼于提高計算機系統(tǒng)的使用效率,其重要特點是能滿足對時間的限制和要求。實時性:實時系統(tǒng)所產(chǎn)生的結(jié)果在時間上有嚴(yán)格的要求,只有符合時間要求的結(jié)果才是正確的。并行性:要求系統(tǒng)有并行處理能力,以便能同時相應(yīng)來自不同端口的輸入信號。多路性:對多個不同的現(xiàn)場進行采集,以及對多個對
25、象和多個執(zhí)行實行控制。獨立性:每個用戶向?qū)崟r系統(tǒng)提出服務(wù)請求,相互間是獨立的。在實時控制系統(tǒng)中對信號的采集和對象控制也是獨立的??深A(yù)測性:實時系統(tǒng)的實際行為必須處在一定的限度內(nèi),而這個限度由系統(tǒng)的定義獲得??煽啃裕阂环矫嬷赶到y(tǒng)的正確性,另一方面指系統(tǒng)的健壯性,即使系統(tǒng)出現(xiàn)錯誤,仍然處于可預(yù)測狀態(tài),仍可以安全地帶錯運行和平緩降級它的性能。分類:強實時系統(tǒng)(保質(zhì)、保量、在限定時間內(nèi)完成任務(wù))、弱實時系統(tǒng)(沒有限制完成時間)、一般實時系統(tǒng)(強和弱的折中)。5. rtos由幾部分組成?它由哪些特點?與一般操作系統(tǒng)有何不同?實時內(nèi)核(主要實現(xiàn)任務(wù)管理,定時器管理,存儲器管理、任務(wù)間通信與同步,中斷管理等
26、)、網(wǎng)絡(luò)組件、文件系統(tǒng)、圖形用戶界面。特點:支持異步事件的響應(yīng);中斷和調(diào)度任務(wù)的優(yōu)先級機制;支持搶占式調(diào)度;確定的任務(wù)切換時間和中斷延遲時間;支持同步。6. 實時操作系統(tǒng)常用的任務(wù)調(diào)度算法有哪幾種?基于優(yōu)先級的調(diào)度算法:非搶占式調(diào)度,搶占式調(diào)度同一優(yōu)先級的時間輪轉(zhuǎn)調(diào)度算法(執(zhí)行一段時間無論完成與否,處理器均轉(zhuǎn)入下一個就緒的同一優(yōu)先級任務(wù))單調(diào)速率調(diào)度算法(執(zhí)行頻率越高,其優(yōu)先級越高)7. 用什么方法解決優(yōu)先級反轉(zhuǎn)問題?(1) 優(yōu)先級繼承:設(shè)c為正占用著某項共享資源的進程p以及所有正在等待占用此項資源的進程集合;找出這個集合的優(yōu)先級最高者p_h,其優(yōu)先級為p;把進程p的優(yōu)先級設(shè)置成p成。(2)
27、優(yōu)先級封頂:設(shè)c為所有可能競爭使用某項共享資源的進程的集合。事先為這個集合規(guī)定一個優(yōu)先級上限p,使得這個集合的所有優(yōu)先級都小于p;在創(chuàng)建保護該項資源的信號量或互斥量時,將p將作為一個參數(shù);每當(dāng)有進程通過這個信號量或互斥量取得對共享資源的獨占使用權(quán)時,就將此進程的優(yōu)先級暫時提高到p,一直到釋放該項資源時菜恢復(fù)對其原有的優(yōu)先級。第二章1. 嵌入式系統(tǒng)開發(fā)過程分為哪幾個階段?每個階段的特點是什么?(1) 需求分析階段:對問題的識別和分析;制定規(guī)格說明文檔;需求評審特點:采用成熟、易于二次開發(fā)的系統(tǒng)易于節(jié)省時間,從而以最短時間面世。(2) 設(shè)計階段:數(shù)據(jù)流分析-劃分任務(wù)-定義任務(wù)間接口特點:darts
28、的設(shè)計方法-是結(jié)構(gòu)化設(shè)計的擴展,劃分出任務(wù),并提供定義任務(wù)間的接口機制,適合設(shè)計多個并發(fā)執(zhí)行的任務(wù)。(3) 生成代碼階段:代碼編程-交叉編譯和鏈接-交叉調(diào)試-測試(單元和集成測試)特點:一般采用的方法是現(xiàn)在通用pc機上編程,然后通過交叉編譯、鏈接,將程序做成目標(biāo)平臺上可以運行的二進制代碼格式,最后將程序下載到目標(biāo)平臺上的特定位置,在目標(biāo)板上啟動這段二進制代碼。(4) 固化階段:嵌入式應(yīng)用軟件完成以后,編譯器要對源代碼重新編譯一次,以產(chǎn)生固化到目標(biāo)壞境的可執(zhí)行代碼,再燒到環(huán)境目標(biāo)環(huán)境的flash中。固化的可執(zhí)行代碼和用于調(diào)試的可執(zhí)行代碼有些不同。固化用的代碼在目標(biāo)文件中把調(diào)式用的信息都屏蔽掉了。
29、固化后沒有監(jiān)控器執(zhí)行硬件的啟動和初始化,這部分工作必須由固化的程序自己完成,所以啟動模塊必須包含在固化代碼中。特點:程序需要寫入到flash中固化,保證每次運行后下一次運行無誤,所以嵌入式開發(fā)相比增加了軟件的固化階段。2. 嵌入式系統(tǒng)有哪幾種調(diào)試方式?現(xiàn)在流行的哪種?使用什么接口?(1) 源程序模擬器方式:在pc機上,通過軟件手段模擬執(zhí)行為某種嵌入式處理器寫的源程序的測試工具。三級模擬功能(指令級、周期級、定時級)(2) 監(jiān)控器方式:宿主機和目標(biāo)機建立物理上的連接,通過串口、以太口等把兩臺機器相連,使之正常工作,然后在宿主機上運行調(diào)試器,目標(biāo)機運行監(jiān)控程序和被調(diào)試程序。(3) 仿真器方式:使用
30、處理器內(nèi)嵌的調(diào)試模塊接管中斷及異常處理。用戶通過設(shè)置cpu內(nèi)部的寄存器來指定哪些中斷或異常發(fā)生后處理器直接進入調(diào)試狀態(tài),而不進入操作系統(tǒng)的處理程序。jtag、ide(在線仿真器in-circuitemulator)、icd(in-circuitdebugger在線調(diào)試器)接口。通過jtag既可以對目標(biāo)系統(tǒng)進行測試,也可以對目標(biāo)系統(tǒng)的存儲單元進行編程。3. 什么是板級支持包?它一般應(yīng)完成哪些工作?板級支持包(boardsupportpackage)是操作系統(tǒng)與目標(biāo)應(yīng)用硬件環(huán)境的中間接口,它是軟件包中具有平臺依賴性的那一部分。功能:在系統(tǒng)啟動時,對硬件進行初始化;為驅(qū)動程序提供訪問硬件的手段。工作
31、:在系統(tǒng)啟動時,對硬件進行初始化進行:(1) 將系統(tǒng)代碼定位到cpu將要執(zhí)行的內(nèi)存入口處,比便硬件初始化完畢后cpu能夠執(zhí)行系統(tǒng)代碼(2) 根據(jù)不同cpu在啟動時的硬件規(guī)定,bsp要負(fù)責(zé)將cpu設(shè)置為特定狀態(tài)。(3) 對內(nèi)存進行初始化,根據(jù)系統(tǒng)的內(nèi)存配置將系統(tǒng)的內(nèi)存劃分為代碼、數(shù)據(jù)、堆棧等不同的區(qū)域。(4) 如果有特殊的啟動代碼,bsp要將控制權(quán)移交給啟動代碼。(5) 如果應(yīng)用軟件中包含一個嵌入式操作系統(tǒng),bsp要負(fù)責(zé)將操作系統(tǒng)需要的模塊加載到內(nèi)存中。(6) 如果應(yīng)用軟件中包含一個嵌入式操作系統(tǒng),bsp還要在操作系統(tǒng)初始化之前,將硬件設(shè)置為靜止?fàn)顟B(tài),以免造成操作系統(tǒng)初始化失敗。為驅(qū)動程序提供訪
32、問硬件的手段進行:(1) 將驅(qū)動程序提供的isr(中斷服務(wù)程序)掛載到中斷向量表上。(2) 創(chuàng)建驅(qū)動程序初始化所需要的設(shè)備對象,bsp將硬件設(shè)備描述為一個數(shù)據(jù)結(jié)構(gòu)。(3) 為驅(qū)動程序提供訪問硬件設(shè)備寄存器的函數(shù)。(4) 為驅(qū)動程序提供可重用性措施。只要不同的硬件系統(tǒng)bsp提供的接口相同,驅(qū)動程序就可在不同的硬件系統(tǒng)上運行。第三章1. 從技術(shù)角度講,linux是一個什么樣的操作系統(tǒng)?你認(rèn)為它由哪些不足?linux是一個類unix操作系統(tǒng),它完全是一個自由的操作系統(tǒng),它是一個單一內(nèi)核的操作系統(tǒng),這是由于linustorvalds以代碼執(zhí)行效率為自己操作系統(tǒng)的第一要務(wù),比起結(jié)構(gòu)的清晰他們更加注重功能
33、的強大和高效率,他們花大量的經(jīng)歷在優(yōu)化代碼上,而這樣以損失結(jié)構(gòu)精煉作為代價,導(dǎo)致linux中的每個部件都不能被輕易拆出,否則破壞效率。雖然linux是單一結(jié)構(gòu)但是他和unix操作系統(tǒng)不一樣unix操作系統(tǒng)所有代碼是靜態(tài)編譯的,而在linux中代碼可以動態(tài)裝入和卸載內(nèi)核中的部分代碼。linux不支持用戶態(tài)線程,linux中通過另一種方法解釋并實現(xiàn)lwp的機制。linux高效而穩(wěn)定,以獨占的方式執(zhí)行最底層的任務(wù),保證其他程序的正常運行。缺陷:只有搶占式的操作系統(tǒng)才可以成為“實時”操作系統(tǒng)。要對linux的中斷處理、進進程調(diào)度和進程搶占這3個方面進行改進。2. gpl協(xié)議的主要內(nèi)容是什么?你了解自由
34、軟件的開發(fā)模式,愿意讓大家共享你的軟件么?為什么?gpl(generalpubliclicense)通用公共許可證,gpl保證任何人有共享和修改自由軟件的自由,任何人有權(quán)取得、修改和重新發(fā)布自由軟件的源代碼,并且規(guī)定在不增加費用的條件下得到源代碼(基本的發(fā)布費除外)。開發(fā)模式是“巴扎模式”,一大批廣泛分布于世界各地的軟件愛好者,以互聯(lián)網(wǎng)為紐帶,通過bbs、新聞組及電子郵件等現(xiàn)代通信方式,同時參與一個軟件開發(fā)項目。以個初步工作的軟件雛形首先發(fā)布出來,然后大家同時開始工作,分別結(jié)合自己的實際經(jīng)驗和需要,尋找軟件中的漏洞,提出修改意見,發(fā)布在互聯(lián)網(wǎng)上,然后其他人也發(fā)現(xiàn)了漏洞,接著提出改進方案,給出補
35、丁,這個軟件像滾雪球一樣不斷完善。3. 進程和程序有什么區(qū)別?什么是進程間的互斥和同步?可執(zhí)行文件由指令和數(shù)據(jù)組成。進程就是在計算機上運行的可執(zhí)行文件針對特定的輸入數(shù)據(jù)的一個實例,同一個可執(zhí)行程序文件如果操作不同的輸入數(shù)據(jù)就是兩個不同的進程。互斥:是指某一資源同時只允許一個訪問者對其進行訪問,具有唯一性和排它性。但互斥無法限制訪問者對資源的訪問順序,即訪問是無序的。同步:是指在互斥的基礎(chǔ)上(大多數(shù)情況),通過其它機制實現(xiàn)訪問者對資源的有序訪問。在大多數(shù)情況下,同步已經(jīng)實現(xiàn)了互斥,特別是所有寫入資源的情況必定是互斥的。少數(shù)情況是指可以允許多個訪問者同時訪問資源4. 進程調(diào)度的功能是什么?linu
36、x的進程調(diào)度發(fā)生在什么情況下?linux系統(tǒng)的實時調(diào)度和普通調(diào)度有什么區(qū)別?高級、中級和低級調(diào)度作業(yè)從提交開始直到完成,往往要經(jīng)歷下述三級調(diào)度:高級調(diào)度:(high-levelscheduling)又稱為作業(yè)調(diào)度,它決定把后備作業(yè)調(diào)入內(nèi)存運行;低級調(diào)度:(low-levelscheduling)又稱為進程調(diào)度,它決定把就緒隊列的某進程獲得cpu;中級調(diào)度:(intermediate-levelscheduling)又稱為在虛擬存儲器中引入,在內(nèi)、外存對換區(qū)進行進程對換。調(diào)度發(fā)生的情況:(1) 正在執(zhí)行的進程執(zhí)行完畢。這時如果不選擇新的就緒進程執(zhí)行,將浪費處理機資源。(2)執(zhí)行中進程自己調(diào)用阻塞
37、原語將白己阻塞起來進入睡眠等狀態(tài)。(3)執(zhí)行中進程調(diào)用了p原語操作,從而因資源不足而被阻塞;或調(diào)用了v原語操作激活了等待資源的進程隊列。(4)執(zhí)行中進程提出i/o請求后被阻塞。(5)在分時系統(tǒng)中時間片已經(jīng)用完。(6)在執(zhí)行完系統(tǒng)調(diào)用等系統(tǒng)程序后返回用戶進程時,這時可看作系統(tǒng)進程執(zhí)行完畢,從而可調(diào)度選擇一新的用戶進程執(zhí)行。(7)就緒隊列中的某進程的優(yōu)先級變得高于當(dāng)前執(zhí)行進程的優(yōu)先級,從而也將引發(fā)進程調(diào)度。區(qū)別:linux根據(jù)政策從整體上區(qū)分實時進程和普通進程,因為實時進程和普通進程度調(diào)度是不同的,它們兩者之間,實時進程應(yīng)該先于普通進程而運行,然后,對于同一類型的不同進程,采用不同的標(biāo)準(zhǔn)來選擇進程
38、:對于普通進程,linux采用動態(tài)優(yōu)先調(diào)度,linux中某個進程的調(diào)度策略(policy)、優(yōu)先級(priority)等可以作為參數(shù)由用戶自己決定,具有相當(dāng)?shù)撵`活性。對于實時進程,linux采用了兩種調(diào)度策略,即fifo(先來先服務(wù)調(diào)度)和rr(時間片輪轉(zhuǎn)調(diào)度)。因為實時進程具有一定程度的緊迫性,所以衡量一個實時進程是否應(yīng)該運行,linux采用了一個比較固定的標(biāo)準(zhǔn)。有兩個優(yōu)先級,實時優(yōu)先級就是用來衡量實時進程是否值得運行的。5. linux中從用戶態(tài)進入核心態(tài)的唯一途徑是什么?從用戶態(tài)轉(zhuǎn)換為核心態(tài)的唯一途徑是中斷。cpu處于用戶態(tài)時,所運行的程序只能執(zhí)行非特權(quán)指令,如果用戶程序在用戶態(tài)下執(zhí)行特
39、權(quán)指令,將發(fā)生中斷,由操作系統(tǒng)獲得控制。操作系統(tǒng)在核心態(tài)下運行。從核心態(tài)到用戶態(tài)可以通過修改程序狀態(tài)字來實現(xiàn),這將伴隨這由操作系統(tǒng)程序到用戶程序的轉(zhuǎn)換。6. 在linux系統(tǒng)中,為什么可以像使用文件一樣操作一個設(shè)備?設(shè)備文件是linux系統(tǒng)很重要的一個特色。linux系統(tǒng)把每一個i/o設(shè)備都看成一個文件,與普通文件一樣處理,這樣可以使文件與設(shè)備的操作盡可能統(tǒng)一。從用戶的角度來看,對i/o設(shè)備的使用和一般文件的使用一樣,不必了解i/o設(shè)備的細(xì)節(jié)。設(shè)備文件可以細(xì)分為塊設(shè)備文件和字符設(shè)備文件。前者的存取是以一個個字符塊為單位的,后者則是以單個字符為單位的。7. 什么是設(shè)備驅(qū)動程序?linux系統(tǒng)中,
40、用戶怎么使用設(shè)備驅(qū)動程序?設(shè)備驅(qū)動程序在linux內(nèi)核中扮演著特殊的角色。他們是一個個獨立的“黑盒子”,是某個特定的硬件相應(yīng)一個定義良好的內(nèi)部編程接口,這些接口完全隱藏了設(shè)備的工作細(xì)節(jié)。用戶的操作通過一組標(biāo)準(zhǔn)化的調(diào)用執(zhí)行,而這些調(diào)用獨立于特定的驅(qū)動程序。將這些調(diào)用映射到作用于實際硬件的設(shè)備特有操作上,則是設(shè)備驅(qū)動程序的任務(wù)。這個編程接口能使得驅(qū)動程序獨立于內(nèi)核的其他部分而建立,必要的情況下可在運行時“插入”內(nèi)核。8. linux文件有哪些類型?linux文件類型常見的有:普通文件、目錄、字符設(shè)備文件、塊設(shè)備文件、套接口文件、符號鏈接文件普通文件:我們用ls-lh來查看某個文件的屬性,可以看到有
41、類似rw-r-r-,值得注意的是第一個符號是-,這樣的文件在linux中就是普通文件。這些文件一般是用一些相關(guān)的應(yīng)用程序創(chuàng)建。目錄:看到有類似drwxr-xr-x,這樣的文件就是目錄,目錄在linux是一個比較特殊的文件。注意它的第一個字符是d,創(chuàng)建目錄的命令可以用mkdir命令,或cp命令。字符設(shè)備文件:文件的屬性,注意前面第一個字符是c,這表示字符設(shè)備文件。比如貓等串口設(shè)備塊設(shè)備文件:文件的屬性,注意前面的第一個字符是b,這表示塊設(shè)備,比如硬盤,光驅(qū)等設(shè)備套接口文件:注意這個文件的屬性的第一個字符是s。符號鏈接文件:我們查看文件屬性時,注意第一個字符是l,這類文件是鏈接文件9. 主流的li
42、nux操作系統(tǒng)有哪些?國外封裝的linux以redhat(又稱為“紅帽linux”)、openlinux、suse(suse是歐洲最流行的linux發(fā)行版)、turbolinux(turbolinux是日本制作的linux發(fā)行版,其最大特色便是以日文版、中文簡/繁體版、英文版三種形式發(fā)行)等最為成功。國內(nèi)linux發(fā)行版做的相對比較成功是紅旗和中軟兩個版本。第四章1. arm7和arm9在流水線方面有何不同?2. arm處理器支持的數(shù)據(jù)類型有哪些?字節(jié):在arm體系結(jié)構(gòu)中字節(jié)的長度均為8位。字:在arm體系結(jié)構(gòu)中字節(jié)的長度均為32位。半字:在arm體系結(jié)構(gòu)中字節(jié)的長度均為16位3. 寫出arm使用的各種工作模式和狀態(tài)。arm微處理器的工作狀態(tài)一般有兩種,并可在兩種狀態(tài)之間切換:第一種為arm狀態(tài),此時處理器執(zhí)行32位的字對齊的arm指令;第二種為thu
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 幼兒園工作總結(jié)童年記憶永不磨滅
- 健康會所前臺工作感受
- 水處理行業(yè)助理工作總結(jié)
- 文化娛樂行業(yè)員工績效考核實踐
- 2023-2024學(xué)年浙江省杭州四中高三(下)第一次訓(xùn)練地理試卷
- 2021年江蘇省宿遷市公開招聘警務(wù)輔助人員輔警筆試自考題2卷含答案
- 2021年廣東省韶關(guān)市公開招聘警務(wù)輔助人員輔警筆試自考題2卷含答案
- 2024年安徽省合肥市公開招聘警務(wù)輔助人員輔警筆試自考題1卷含答案
- 2021年江西省鷹潭市公開招聘警務(wù)輔助人員輔警筆試自考題1卷含答案
- 《心理學(xué)與讀心術(shù)》課件
- M200a電路分析(電源、藍(lán)牙、FM)
- 七年級歷史試卷上冊可打印
- 2024-2030年全球及中國洞察引擎行業(yè)市場現(xiàn)狀供需分析及市場深度研究發(fā)展前景及規(guī)劃可行性分析研究報告
- 《東南亞經(jīng)濟與貿(mào)易》習(xí)題集、案例、答案、參考書目
- 燒烤店裝修合同范文模板
- 2024年中國櫻桃番茄種市場調(diào)查研究報告
- 數(shù)據(jù)分析基礎(chǔ)與應(yīng)用指南
- 吉林市2024-2025學(xué)年度高三第一次模擬測試 (一模)數(shù)學(xué)試卷(含答案解析)
- 自考《英語二》高等教育自學(xué)考試試題與參考答案(2024年)
- 人教版(PEP)小學(xué)六年級英語上冊全冊教案
- 廣東省廣州市海珠區(qū)2023-2024學(xué)年六年級上學(xué)期月考英語試卷
評論
0/150
提交評論