


版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、arm9嵌入式系統課后答案【篇一:嵌入式習題答案】什么是嵌入式系統?請列舉幾個常見的嵌入式系統。答:根據國際電氣和電子工程師協會(ieee)的定義,嵌入式系統是控制、監視或者輔助設備、機器和生產線運行的裝置(devicesusedtocontrol,monitor,orassisttheoperationofequipment,machineryorplants)。這主要是從產品的應用角度加以定義的,由此可以看出嵌入式系統是軟件和硬件的綜合體,可以涵蓋機械等附屬裝置。目前被我國科學家普遍認同的定義是:嵌入式系統是以應用為中心,以計算機技術為基礎,軟硬件可裁減,對功能、可靠性、成本、體積、功耗要
2、求嚴格的專用計算機系統。常見的嵌入式系統:手機,dvd,路由器,核磁共振儀,全自動洗衣機。2.嵌入式系統與通用計算機有哪些區別?答:(1)以應用為中心;(2)以計算機技術為基礎(3)軟件和硬件可裁減(4)對系統性能要求嚴格(5)軟件的固件化(6)需要專用的開發工具3.嵌入式系統的發展分為哪幾個階段?答:第一階段:無操作系統的嵌入算法階段。第二階段:以嵌入式cpu為基礎,以簡單操作系統為核心的嵌入式系統。第三階段:以嵌入式操作系統為標志的嵌入式系統。第四階段:以基于internet為標志的嵌入式系統。4. 請列舉嵌入式系統的主要應用領域。答:(1)工業控制領域(2)交通運輸領域(3)消費電子產品
3、(4)家電領域(5)通信領域(6)商業和金融領域(7)環境監測領域(8)醫療領域(9)建筑領域(10)軍事國防領域(11)航天航空領域第二章習題答案1. 簡述簡單嵌入式系統與復雜嵌入式系統的主要區別。答:簡單嵌入式系統很早就已經存在,這類嵌入式系統因為軟硬件復雜度都很低,一般不使用操作系統,例如常用的單片機系統。對于復雜的嵌入式系統,它的開發模式發生了極大的改變。一個復雜的嵌入式系統不僅硬件系統的開發比單片機復雜了許多,更重要的是在該系統中采用了嵌入式操作系統,其應用軟件的開發轉變為使用操作系統標準接口的計算機工程領域的應用軟件開發。復雜嵌入式系統具有更強大的功能,但是簡單的嵌入式并不會隨著復
4、雜的嵌入式系統出現而消亡。2. 簡述嵌入式系統的體系結構。答:嵌入式系統從組成上看,可分為嵌入式硬件系統與嵌入式軟件系統兩大部分。嵌入式硬件層由嵌入式微處理器、嵌入式存儲器系統、通用設備和i/o接口等組成。嵌入式系統的軟件層分為嵌入式操作系統和嵌入式應用軟件兩大部分。3.嵌入式處理器分為哪幾類?答:嵌入式處理器可分為以下四種:嵌入式微控制器(microcontrollerunit,mcu),嵌入式微處理器(embeddedmicroprocessorunit,empu),嵌入式dsp處理器(embeddeddigitalsignalprocessor,edsp)和嵌入式片上系統(systemo
5、nchip,soc)。4.arm中常用的嵌入式存儲器都有哪些?答:arm系統的存儲器可以分為片內存儲器和片外存儲器。片內一般以ram或sram為主。片外通常以flash和sdram為主。嵌入式系統中常用的幾種內存有flash、sram、sdram、ddrsdram等。5. 嵌入式系統中常用的外設接口都有哪些?答:串行接口uart,usb接口,irda紅外線接口,spi(串行外圍設備接口),i2c總線接口,can總線接口,ethernet(以太網接口)等。6. 嵌入式系統中常用的輸入輸出設備都有哪些?答:嵌入式系統中輸入形式一般包括觸摸屏、語音識別、按鍵、鍵盤和虛擬鍵盤。輸出設備主要有lcd顯示
6、和語音輸出。7. 簡述嵌入式操作系統的特點,請列舉幾個常見的嵌入式操作系統。8. 簡述嵌入式系統開發的特點。答:需要交叉開發工具和環境,軟硬件協同設計,嵌入式系統開發人員以應用專家為主,軟件要求固態化存儲,軟件代碼高質量、高可靠性,系統軟件的高實時性9. 簡述嵌入式系統的開發周期。答:10. 簡述嵌入式系統的開發與通常pc機上的軟件開發有什么區另u。答:系統軟件開發模式可以分為兩類:本地開發模式和交叉開發模式。嵌入式系統的開發與通常pc機上的軟件開發有很大的區別,原有的pc機的軟件開發過程從編寫程序、編譯和運行等過程全在同一個pc機平臺上完成,屬于本地開發(native);嵌入式開發的程序編寫
7、和編譯與原來一樣還在pc機(host)上完成,但編譯產生的結果要在嵌入式目標平臺(target)上運行。通常將這種在主機上開發編譯,在目標平臺上調試運行的開發模式稱為交叉開發。同樣運行在主機上的編譯器(例如gcc)編譯程序產生目標機上運行的可執行程序的編譯過程稱為交叉編譯。嵌入式系統采用這種交叉開發、交叉編譯的開發環境主要是因為嵌入式系統是種專用的計算機系統,采用量體裁衣量身定制的方法制造。11. 簡述宿主機/目標機的開發模式。答:交叉開發環境是指編譯、鏈接和調試嵌入式應用軟件的環境,它與運行嵌入式應用軟件的環境有所不同,通常采用宿主機/目標機模式。宿主機(host)一般采用一臺通用計算機(如
8、pc機或者工作站),它通過串口(serial)或者以太網(ethernet)接口與目標機通信。宿主機的軟硬件資源比較豐富,不但包括功能強大的操作系統(如windows和linux),而且還有各種各樣優秀的開發工具(如windriver的tornado、microsoft的embeddedvisualc+等),能夠大大提高嵌入式應用軟件的開發速度和效率。目標機(target)一般在嵌入式應用軟件的開發和調試期間使用,用來區別與嵌入式系統通信的宿主機。目標機可以是嵌入式應用軟件的實際運行環境,也可以是能夠替代實際運行環境的仿真系統,但軟硬件資源通常都比較有限。嵌入式系統的交叉開發環境一般包括交叉編
9、譯器、交叉調試器和系統仿真器(emulator),其中交叉編譯器用于在宿主機上生成能在目標機上運行的代碼,而交叉調試器和系統仿真器則用于在宿主機與目標機間完成嵌入式軟件的調試。第三章習題答案1.簡述arm處理器的特點。答:arm處理器采用risc架構,具有risc的一般特點:?采用大量的寄存器,指令執行速度更快;?尋址方式靈活簡單,執行效率高;?采用固定長度的指令格式;?大多數數據操作都在寄存器中進行,通過load/store的體系結構在內存和寄存器之間傳遞數據。因此arm處理器的內核很小,功耗也就很低。arm處理器還采用了一些特別的技術,在保證高性能的同時盡量減小芯片體積,降低芯片的功耗。這
10、些技術包括:?在同一條數據處理指令中包含算術邏輯處理單元處理和移位處理;?使用地址自動增加(減少)來優化程序中循環處理;?load/store指令可以批量傳輸數據,從而提高傳輸數據的效率;?所有指令都可以根據前面指令執行結果,決定是否執行,以提高指令執行的效率;?支持thumb(16位)/arm(32位)雙指令集,能很好地兼容8位/16位器件。2.嵌入式risc處理器arm7tdmi中tdmi的基本含義分另U是什么?答:t:支持16位壓縮指令集thumb。d:支持jtag調試器,可片上debug。m:支持64位長乘法指令i:嵌入式跟蹤宏單元(ice)。3. 常用的arm處理器系列都有哪些?答:
11、arm處理器目前應用比較多的是arm7系列、arm9系列、arm9e系列、arm10e系列、securcore系列、intel的strongarm、xscale等多個系列,最新的系列是arm11系列。4. arm處理器一般支持的的數據類型都有哪些?答:8位有符號字節類型數據;8位無符號字節類型數據;16位有符號半字類型數據;16位無符號半字類型數據;32位有符號字類型數據;32位無符號字類型數據。5. 什么是大端模式?什么是小端模式?請舉例說明它們的區別。所謂的大端模式,是指數據的低位保存在內存的高地址中,而數據的高位保存在內存的低地址中。所謂的小端模式,是指數據的低位保存在內存的低地址中,而
12、數據的高位保存在內存的高地址中。若寄存器1=0x12345678,分別按小端模式和大端模式存儲在0x2000字單元中,下圖分別為在兩種模式下內存的存儲內容。請簡述arm7tdmi采用哪幾級流水線結構,并說明在arm狀態下各階段指令地址的關系。答:arm7架構采用了三級流水線,分為取指(fetch),譯碼(decode)和執行(execute)。程序計數器r15(pc)總是指向取指的指令,而不是指向正在執行的指令或者正在譯碼的指令。對于arm狀態下指令,pc值=當前程序執行位置。7.簡述arm和thumb狀態的區別,舉例說明使用什么指令從arm狀態轉換為thumb狀態。答:arm狀態:處理器執行
13、32位的字對齊的arm指令;thumb狀態:處理器執行16位的半字對齊的thumb指令。arm指令集和thumb指令集均有切換處理器狀態的指令bx。從arm狀態轉換到thumb狀態:8. adrr0,tstart+1bxr0arm處理器有哪些工作模式?哪些是特權模式?哪些是異常模式?答:arm體系結構支持7種工作模式(processormodes),分另U為用戶模式(usr)、快中斷模式(fiq)、中斷模式(irq)、管理模式(svc)、數據訪問終止模式(abt)、系統模式(sys)、及未定義指令中止模式(und)。除去用戶模式外的其他6種處理器工作模式稱為特權模式(privilegedmod
14、es)。除去用戶模式和系統模式以外的5種處理器工作模式稱為異常模式(exceptionmodes)arm處理器共有多少個寄存器?在所有工作模式下,哪些寄存器都指向同一個物理寄存器?答:arm處理器含有37個物理上獨立的寄存器,其中包括31個通用寄存器和6個狀態寄存器。r0-r12寄存器在所有工作模式下都指向同一個物理寄存器。9. 簡述cpsr寄存器控制位的作用。答:(1)中斷禁止位i、f:i=1禁止irq中斷;f=1禁止fiq中斷。(2)t標志位:該位反映處理器的運行狀態。當該位為1時,程序運行于thumb狀態,當該位為0時,表示運行于arm狀態。(3)運行模式位m4:0:m0、m1、m2、m
15、3、m4是模式位。這些位決定了處理器的運行模式。arm的異常中斷包含哪些類型?它們的優先級順序是怎樣的?它們的異常向量地址是多少?答:【篇二:arm嵌入式系統課后習題(部分)答案】式系統從大的方面分為(嵌入式系統硬件平臺)和(嵌入式軟件)兩大部分。1.2驅動層程序一般包括(硬件抽象層hal)、(板級支持包bsp)和(設備驅動程序)。1.3嵌入式系統核心是嵌入式處理器,可分為(嵌入式微處理器)、(嵌入式微控制器)、嵌入式dsp處理器和(嵌入式片上系統soc)4大類。2.2arm7tdmi處理器分為(arm)和(thumb)兩種操作狀態。2.3arm狀態下,sp寄存器指的是(r13)、lr寄存器指
16、的是(r14)、pc寄存器指的是(r15).2.4arm處理器支持的數據類型中,字節為(8)位、半字為(16)位、字為(32)位。3.1arm7tdmi(-s)指令集包括(arm)指令集和(thumb)指令集。3.2ldr指令用于從(存儲器)中將一個32位的字數據傳送到(目的寄存器)中。3.3指出下面各條指令的尋址方式。subr0,r1,r2;尋址方式:(寄存器尋址)。subsr0,r0,#1;尋址方式:(立即尋址)。movr0,r2,lsl#3;尋址方式:(寄存器移位尋址)。swpr1,r1,r2;尋址方式:(寄存器間接尋址)。ldrr2,r3,#0x0c;尋址方式:(基址尋址)。4.3ar
17、m匯編語言源程序中語句一般有(指令)、(偽指令)、(偽操作)和宏指令組成。6.1對flash存儲器的編程可通過(jtag仿真/調試器)、(isp)和(iap)3重方法來實現。6.2異常向量表可以來自4個不同的存儲器區域,分別是(片內flash)、(片內sram)、(bootblock)和片外存儲器。6.3lpc2000系列的定時器主要用于3個方面:(對內部事件進行計數的間隔定時器)、(通過捕獲輸入實現脈寬解調器)、(自由運行的定時器)。二選擇題1.1可以表示微控制器的縮略詞是(b)a.mpub.mcuc.wdtd.spi1.2rom類存儲器包括(abd)a.norflashb.epromc.s
18、m1.3不屬于arm的系列是(d)a.mcs-96b.80c51c.lpc2000d.80x862.2arm7處理器系列采用(a)級流水線。a.3b.5c.6d.82.3下面arm處理器模式中屬于特權模式的有(bcd)a.用戶模式b.中斷模式c.系統模式d.管理模式3.2ldm(或stm)指令允許一條指令最多傳送(c)個寄存器。a.4b.8c.16d.243.3bl指令限制在當前指令的(b)地址范圍。4.2arm匯編程序所支持的變量有(abc)a.數字變量b.邏輯變量c.字符變量d.字符串變量4.3匯編語言程序用到c語言程序變量的情況實質上是一個引用不同文件定義的變量問題。解決
19、這個問題的辦法就是使用關鍵字(b).atpcsb.importc.exportd.code32.1一個異常向量表實際占用了(c)個字的存儲單元。.4b.8c.16d.64.3lpc200系列arm7微控制器的uart接收器fifo觸發器可設置為(abcd)個字節。a.1b.4c.8d.14三簡答題1.1什么是嵌入式系統?列舉幾個熟悉的嵌入式系統的產品。答:嵌入式系統是以應用為中心,以計算機技術為基礎,并且軟硬件可裁剪,適用于應用系統對功能、可靠性、成本、體積、功耗有嚴格要求的專用計算機系統。常見的有汽車、手機、mp3等等。1.2嵌入式系統由哪幾部分組成?答:嵌入式系統從大的方面分嵌入式系統硬件
20、平臺和嵌入式軟件兩大部分,其中軟件部分又具體分為若干層次。對于包含有操作系統的嵌入式系統來講,嵌入式系統軟件結構包含4個層次:設備驅動層、實時操作系統rtos層、應用程序接口api層、應用程序層。1.3簡述嵌入式系統的特點。答:系統內核小;專用性強;系統精簡;軟件固化;嵌入式軟件開發要想走向標準化,就必須使用多任務的操作系統;嵌入式系統開發需要開發工具和環境。2.1簡述arm可以工作的幾種模式。答:arm體系結構支持7種處理器模式:用戶模式、快中斷模式、中斷模式、管理模式、中止模式、未定義模式和系統模式。(除用戶模式外,其他模式均為特權模式)2.2arm7內部有多少個寄存器?答:在arm7td
21、mi處理器內部有37個用戶可見的32位寄存器,其中31個通用寄存器,6個狀態寄存器。2.3描述一下如何禁止irq和fiq的中斷?答:在一個特權模式下,都可通過置位cpsr中的i位來禁止irq。在一個特權模式中,可通過置位cpsr中的f標志來禁止fiq異常。2.4請描述arm7tdmi進入異?;蛲顺霎惓r內核有何操作?答:當異常發生時,arm處理器盡可能完成當前指令(除了復位異常)后,再去處理異常,并執彳了如下動作: 進入與特定的異常相應的操作模式;將引起異常指令的下一條指令的地址保存到新模式的r14中;將cpsr的原值保存到新模式的spsr中;通過設置cpsr的第7位來禁止irq;如果異常為快
22、中斷,則要設置cpsr的第6位禁止快中斷;給pc強制賦向量地址值。退出異常時: 將lr中的值減去偏移量后移入pc,偏移量根據異常的類型而有所不同;將spsr的值復制回cpsr;清零在入口置位的中斷禁止標志。(p28)指令長度及數據類型arm微處理器的指令長度可以是32位(在arm狀態下),也可以是16位(在thmb狀態下)。裝載/保存指令可以對字節、半字和字進行操作,當裝載字節或半字時自動實現零擴展或符合擴展。arm處理器支持下列數據類型:字節(1字節=8位);半字(半個字=16位,必須分配為占用2字節(b);字(1個字=32位,必須分配為占用4字節)(p29)流水線使用3個階段,因此指令分3
23、個階段執行:答:取指:從存儲器裝載一條指令;譯碼:識別將要被執行的指令;執行:處理指令并將結果寫回寄存器。3.2描述b、bl、bx指令的區別。3.4編寫一段arm匯編程序,實現數據塊復制,將r0指向的8個字的連續數據保存到r1指向的一段連續的內存單元。答:4.4匯編代碼中如何調用c代碼中定義的函數?答:首先,為保證程序調用時參數的正確傳遞,匯編語言程序的設計要遵守atpcs。其次,在c語言程序中,不需要使用任何關鍵字來聲明被匯編語言程序調用的c語言子程序。但是在匯編語言程序調用c語言程序之前,需要在匯編語言程序中使用import偽指令對其進行聲明。匯編語言通過bl指令進行調用。6.1lpc20
24、00處理器是如何實現引腳多功能的?答【篇三:嵌入式課后答案】嵌入式系統?它由哪幾部分組成?有何特點?以應用為中心,計算機技術為基礎,軟硬件可裁減,從而能夠適應實際應用中對功能、可靠性、成本、體積、功耗等嚴格要求的專用計算機系統。嵌入式系統通常由嵌入式處理器、外圍設備、嵌入式操作系統、應用軟件等幾大部分組成。嵌入式處理器與通用處理器的最大不同點在其大多工作在為特定用戶群設計的系統。外圍設備包括:存儲器、接口、人機交互。嵌入式操作系統的特點:軟硬件一體化,集計算機技術、微電子技術和行業技術為一體;需要操作系統支持,代碼小,執行速度快;專用緊湊,用途固定,成本敏感;可靠性要求高;多樣性,應用廣泛,種
25、類繁多。2. 嵌入式處理器分為哪幾類?低端的微控制器(microconctrollerunit,mcu)中高端的嵌入式微處理器(embeddedmicroprocessorunit,empu)通信領域的dsp系統(digitalsignalprocessor,dsp)3. 高度集成的片上系統(systemonchip,soc)arm英文原意是什么?它是個怎樣的公司?其處理器有何特點?arm(advancedriscmachines)公司是全球領先的16/32位risc微處理器知識產權設計供應商。arm公司通過將其高性能、低功耗、低成本的risc微處理器,外圍和系統芯片設計技術轉讓給合作伙伴來生
26、產各具特色的芯片。arm處理器的特點:小體積、低功耗、低成本而性能高。16/32位指令集。全球至多的合作伙伴。4. 什么是實時系統?它由哪些特征?如何分類?實時系統是具有實時性且能支持實時控制系統工作的操作系統。其首要任務是調動一切可利用的資源來完成實時控制任務,其次才著眼于提高計算機系統的使用效率,其重要特點是能滿足對時間的限制和要求。實時性:實時系統所產生的結果在時間上有嚴格的要求,只有符合時間要求的結果才是正確的。并行性:要求系統有并行處理能力,以便能同時相應來自不同端口的輸入信號。多路性:對多個不同的現場進行采集,以及對多個對象和多個執行實行控制。獨立性:每個用戶向實時系統提出服務請求
27、,相互間是獨立的。在實時控制系統中對信號的采集和對象控制也是獨立的??深A測性:實時系統的實際行為必須處在一定的限度內,而這個限度由系統的定義獲得。可靠性:一方面指系統的正確性,另一方面指系統的健壯性,即使系統出現錯誤,仍然處于可預測狀態,仍可以安全地帶錯運行和平緩降級它的性能。分類:強實時系統(保質、保量、在限定時間內完成任務)、弱實時系統(沒有限制完成時間)、一般實時系統(強和弱的折中)。5. rtos由幾部分組成?它由哪些特點?與一般操作系統有何不同?實時內核(主要實現任務管理,定時器管理,存儲器管理、任務間通信與同步,中斷管理等)、網絡組件、文件系統、圖形用戶界面。特點:支持異步事件的響
28、應;中斷和調度任務的優先級機制;支持搶占式調度;確定的任務切換時間和中斷延遲時間;支持同步。6. 實時操作系統常用的任務調度算法有哪幾種?7. 基于優先級的調度算法:非搶占式調度,搶占式調度同一優先級的時間輪轉調度算法(執行一段時間無論完成與否,處理器均轉入下一個就緒的同一優先級任務)單調速率調度算法(執行頻率越高,其優先級越高)用什么方法解決優先級反轉問題?(1)優先級繼承:設c為正占用著某項共享資源的進程p以及所有正在等待占用此項資源的進程集合;找出這個集合的優先級最高者p_h,其優先級為p'把進程p的優先級設置成p成'。(2)優先級封頂:設c為所有可能競爭使用某項共享資源
29、的進程的集臺。事先為這個集合規定一個優先級上限p',使得這個集合的所有優先級都小于p'在創建保護該項資源的信號量或互斥量時,將p將'作為一個參數;每當有進程通過這個信號量或互斥量取得對共享資源的獨占使用權時,就將此進程的優先級暫時提高到p'一直到釋放該項資源時菜恢復對其原有的優先級。1. 第二章嵌入式系統開發過程分為哪幾個階段?每個階段的特點是什么?需求分析階段:對問題的識別和分析;制定規格說明文檔;需求評審特點:采用成熟、易于二次開發的系統易于節省時間,從而以最短時間面世。(2) 設計階段:數據流分析-劃分任務-定義任務間接口特點:darts的設計方法-是結構
30、化設計的擴展,劃分出任務,并提供定義任務間的接口機制,適合設計多個并發執行的任務。(3) 生成代碼階段:代碼編程-交叉編譯和鏈接-交叉調試-測試(單元和集成測試)特點:一般采用的方法是現在通用pc機上編程,然后通過交叉編譯、鏈接,將程序做成目標平臺上可以運行的二進制代碼格式,最后將程序下載到目標平臺上的特定位置,在目標板上啟動這段二進制代碼。固化階段:嵌入式應用軟件完成以后,編譯器要對源代碼重新編譯一次,以產生固化到目標壞境的可執行代碼,再燒到環境目標環境的flash中。固化的可執行代碼和用于調試的可執行代碼有些不同。固化用的代碼在目標文件中把調式用的信息都屏蔽掉了。固化后沒有監控器執行硬件的
31、啟動和初始化,這部分工作必須由固化的程序自己完成,所以啟動模塊必須包含在固化代碼中。特點:程序需要寫入到flash中固化,保證每次運行后下一次運行無誤,所以嵌入式開發相比增加了軟件的固化階段。2. 嵌入式系統有哪幾種調試方式?現在流行的哪種?使用什么接口?源程序模擬器方式:在pc機上,通過軟件手段模擬執行為某種嵌入式處理器寫的源程序的測試工具。三級模擬功能(指令級、周期級、定時級)監控器方式:宿主機和目標機建立物理上的連接,通過串口、以太口等把兩臺機器相連,使之正常工作,然后在宿主機上運行調試器,目標機運行監控程序和被調試程序。仿真器方式:使用處理器內嵌的調試模塊接管中斷及異常處理。用戶通過設
32、置cpu內部的寄存器來指定哪些中斷或異常發生后處理器直接進入調試狀態,而不進入操作系統的處理程序。jtag、ide(在線仿真器in-circuitemulator)、icd(in-circuitdebugger在線調試器)接口。通過jtag既可以對目標系統進行測試,也可以對目標系統的存儲單元進行編程。3. 什么是板級支持包?它一般應完成哪些工作?板級支持包(boardsupportpackage)是操作系統與目標應用硬件環境的中間接口,它是軟件包中具有平臺依賴性的那一部分。功能:在系統啟動時,對硬件進行初始化;為驅動程序提供訪問硬件的手段。工作:在系統啟動時,對硬件進行初始化進行:(1) 將系
33、統代碼定位到cpu將要執行的內存入口處,比便硬件初始化完畢后cpu能夠執行系統代碼根據不同cpu在啟動時的硬件規定,bsp要負責將cpu設置為特定狀態。對內存進行初始化,根據系統的內存配置將系統的內存劃分為代碼、數據、堆棧等不同的區域。(2) 如果有特殊的啟動代碼,bsp要將控制權移交給啟動代碼。如果應用軟件中包含一個嵌入式操作系統,bsp要負責將操作系統需要的模塊加載到內存中。如果應用軟件中包含一個嵌入式操作系統,bsp還要在操作系統初始化之前,將硬件設置為靜止狀態,以免造成操作系統初始化失敗。為驅動程序提供訪問硬件的手段進行:將驅動程序提供的isr(中斷服務程序)掛載到中斷向量表上。創建驅
34、動程序初始化所需要的設備對象,bsp將硬件設備描述為一個數據結構。(2) 為驅動程序提供訪問硬件設備寄存器的函數。為驅動程序提供可重用性措施。只要不同的硬件系統bsp提供的接口相同,驅動程序就可在不同的硬件系統上運行。1. 第三章從技術角度講,linux是一個什么樣的操作系統?你認為它由哪些不足?linux是一個類unix操作系統,它完全是一個自由的操作系統,它是一個單一內核的操作系統,這是由于linustorvalds以代碼執行效率為自己操作系統的第一要務,比起結構的清晰他們更加注重功能的強大和高效率,他們花大量的經歷在優化代碼上,而這樣以損失結構精煉作為代價,導致linux中的每個部件都不
35、能被輕易拆出,否則破壞效率。雖然linux是單一結構但是他和unix操作系統不一樣unix操作系統所有代碼是靜態編譯的,而在linux中代碼可以動態裝入和卸載內核中的部分代碼。linux不支持用戶態線程,linux中通過另一種方法解釋并實現lwp的機制。linux高效而穩定,以獨占的方式執行最底層的任務,保證其他程序的正常運行。缺陷:只有搶占式的操作系統才可以成為實時”操作系統。要對linux的中斷處理、進進程調度和進程搶占這3個方面進行改進。gpl主議的主要內容是什么?你了解自由軟件的開發模式,愿意讓大家共享你的軟件么?為什么?gpl(generalpubliclicense)通用公共許可證
36、,gpl保證任何人有共享和修改自由軟件的自由,任何人有權取得、修改和重新發布自由軟件的源代碼,并且規定在不增加費用的條件下得到源代碼(基本的發布費除外)。開發模式是巴扎模式”,一大批廣泛分布于世界各地的軟件愛好者以互聯網為紐帶,通過bbs、新聞組及電子郵件等現代通信方式,同時參與一個軟件開發項目。以個初步工作的軟件雛形首先發布出來,然后大家同時開始工作,分別結合自己的實際經驗和需要,尋找軟件中的漏洞,提出修改意見,發布在互聯網上,然后其他人也發現了漏洞,接著提出改進方案,給出補丁,這個軟件像滾雪球一樣不斷完善。2. 進程和程序有什么區別?什么是進程間的互斥和同步?可執行文件由指令和數據組成。進
37、程就是在計算機上運行的可執行文件針對特定的輸入數據的一個實例,同一個可執行程序文件如果操作不同的輸入數據就是兩個不同的進程。互斥:是指某一資源同時只允許一個訪問者對其進行訪問,具有唯一性和排它性。但互斥無法限制訪問者對資源的訪問順序,即訪問是無序的。同步:是指在互斥的基礎上(大多數情況),通過其它機制實現訪問者對資源的有序訪問。在大多數情況下,同步已經實現了互斥,特別是所有寫入資源的情況必定是互斥的。少數情況是指可以允許多個訪問者同時訪問資源3. 進程調度的功能是什么?linux的進程調度發生在什么情況下?linux系統的實時調度和普通調度有什么區別?高級、中級和低級調度作業從提交開始直到完成
38、,往往要經歷下述三級調度:高級調度:(high-levelscheduling)又稱為作業調度,它決定把后備作業調入內存運行;低級調度:(low-levelscheduling)又稱為進程調度,它決定把就緒隊列的某進程獲得cpu;中級調度:(intermediate-levelscheduling)又稱為在虛擬存儲器中引入,在內、外存對換區進行進程對換。調度發生的情況:(1)正在執行的進程執行完畢。這時如果不選擇新的就緒進程執行,將浪費處理機資源。執行中進程自己調用阻塞原語將白己阻塞起來進入睡眠等狀態。(3) 執行中進程調用了p原語操作,從而因資源不足而被阻塞;或調用了v原語操作激活了等待資源
39、的進程隊列。(4) 執行中進程提出i/o請求后被阻塞。(5) 在分時系統中時間片已經用完。(6) 在執行完系統調用等系統程序后返回用戶進程時,這時可看作系統進程執行完畢,從而可調度選擇一新的用戶進程執行。就緒隊列中的某進程的優先級變得高于當前執行進程的優先級,從而也將引發進程調度。區別:linux根據政策從整體上區分實時進程和普通進程,因為實時進程和普通進程度調度是不同的,它們兩者之間,實時進程應該先于普通進程而運行,然后,對于同一類型的不同進程,采用不同的標準來選擇進程:對于普通進程,linux采用動態優先調度,linux中某個進程的調度策略(policy)、優先級(priority)等可以
40、作為參數由用戶自己決定,具有相當的靈活性。對于實時進程,linux采用了兩種調度策略,即fifo(先來先服務調度)和rr(時間片輪轉調度)。因為實時進程具有一定程度的緊迫性,所以衡量一個實時進程是否應該運行,linux采用了一個比較固定的標準。有兩個優先級,實時優先級就是用來衡量實時進程是否值得運行的。4. linux中從用戶態進入核心態的唯一途徑是什么?從用戶態轉換為核心態的唯一途徑是中斷。cpu處于用戶態時,所運行的程序只能執行非特權指令,如果用戶程序在用戶態下執行特權指令,將發生中斷,由操作系統獲得控制。操作系統在核心態下運行。從核心態到用戶態可以通過修改程序狀態字來實現,這將伴隨這由操
41、作系統程序到用戶程序的轉換。5. 在linux系統中,為什么可以像使用文件一樣操作一個設備?設備文件是linux系統很重要的一個特色。linux系統把每一個i/o設備都看成一個文件,與普通文件一樣處理,這樣可以使文件與設備的操作盡可能統一。從用戶的角度來看,對i/o設備的使用和一般文件的使用一樣,不必了解i/o設備的細節。設備文件可以細分為塊設備文件和字符設備文件。前者的存取是以一個個字符塊為單位的,后者則是以單個字符為單位的。什么是設備驅動程序?linux系統中,用戶怎么使用設備驅動程序?設備驅動程序在linux內核中扮演著特殊的角色。他們是一個個獨立的黑盒子”,是某個特定的硬件相應一個定義
42、良好的內部編程接口,這些接口完全隱藏了設備的工作細節。用戶的操作通過一組標準化的調用執行,而這些調用獨立于特定的驅動程序。將這些調用映射到作用于實際硬件的設備特有操作上,則是設備驅動程序的任務。這個編程接口能使得驅動程序獨立于內核的其他部分而建立,必要的情況下可在運行時插入”內核。6. linux文件有哪些類型?linux文件類型常見的有:普通文件、目錄、字符設備文件、塊設備文件、套接口文件、符號鏈接文件普通文件:我們用ls-lh來查看某個文件的屬性,可以看到有類似-rw-r-r-,值得注意的是第一個符號是-,這樣的文件在linux中就是普通文件。這些文件一般是用一些相關的應用程序創建。目錄:
43、看到有類似drwxr-xr-x,這樣的文件就是目錄,目錄在linux是一個比較特殊的文件。注意它的第一個字符是d,創建目錄的命令可以用mkdir命令,或cp命令。字符設備文件:文件的屬性,注意前面第一個字符是c,這表示字符設備文件。比如貓等串口設備塊設備文件:文件的屬性,注意前面的第一個字符是b,這表示塊設備,比如硬盤,光驅等設備套接口文件:注意這個文件的屬性的第一個字符是s。7. 符號鏈接文件:我們查看文件屬性時,注意第一個字符是1,這類文件是鏈接文件主流的linux操作系統有哪些?國外封裝的linux以redhat(又稱為紅帽linux”、)openlinux、suse(suse是歐洲最流行的linux發行版)、turbolinux(turbolinux是日本制作的linux發行版,其最大特色便是以日文版、中文簡/繁體版、英文版三種形式發行)等最為成功。國內linux發行版做的相對比較成功是紅旗和中軟兩個版本。1. 第四章arm7和arm9在流水線方面有何不同?2. arm處理器支持的數據類型有哪些?字節:在arm體系結構中字節的長度均為8位。字:在arm體系結構中字節的長度均為32位。3. 半字:在arm體系結構中字節的長度均為
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2023-2024學年山東省濟寧市高二下學期期末考試數學試題(解析版)
- 電子產品質量保證協議書
- 使用化療藥物管理制度
- 人造石產品質量省監督抽查實施細則
- 供水公司現場管理制度
- 供水日常維修管理制度
- 供水調壓調度管理制度
- 供熱公司檔案管理制度
- 供熱客服安全管理制度
- 供熱除塵車間管理制度
- 《醫療機構重大事故隱患判定清單(試行)》知識培訓
- 浙江省杭州市2024年中考英語真題(含答案)
- 《陸上風電場工程設計概算編制規定及費用標準》(NB-T 31011-2019)
- 曬紋資料大全
- 《硅酸鹽物理化學》word版
- 羽毛球社團教案(共17頁)
- 下肢靜脈曲張診斷及治療進展PPT學習教案
- 化工企業41條禁令
- 2019-2020學年北京市海淀區上地實驗小學北師大版四年級下冊期末考試數學試卷
- 裝修管理規則-城市綜合體---成都租戶指引
- 玻璃幕墻清洗施工方案最新完整
評論
0/150
提交評論