欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      嵌入式Linux考試習題總結5篇

      時間:2019-05-15 00:18:06下載本文作者:會員上傳
      簡介:寫寫幫文庫小編為你整理了多篇相關的《嵌入式Linux考試習題總結》,但愿對你工作學習有幫助,當然你在寫寫幫文庫還可以找到更多《嵌入式Linux考試習題總結》。

      第一篇:嵌入式Linux考試習題總結

      第1章

      1.嵌入式系統(tǒng)是指操作系統(tǒng)和功能軟件集成于計算機硬件系統(tǒng)之中。嵌入式系統(tǒng)一般有3個主要的組成部分:硬件、實時操作系統(tǒng)以及應用軟件。

      2.嵌入式系統(tǒng)的三要素是嵌入、專用、計算機;即以應用為中心、以計算機技術為基礎、軟件硬件可裁剪、適應應用系統(tǒng)對功能、可靠性、成本、體積、功耗嚴格要求的專用計算機系統(tǒng)。

      3.目前國際較為知名的有:VxWorks、NeutrinoRTOS、Nucleus Plus、OS/

      9、VRTX、LynuxOS,RTLinux、BlueCat RT等。

      4.嵌入式系統(tǒng)一般由硬件層、中間層、軟件層和功能層組成。其作用分別如下:

      (1)硬件層 :由嵌入式微處理器、外圍電路和外設組成。操作系統(tǒng)和應用程序都可以固化在ROM或者Flash中。為方便使用,有的模塊在此基礎上增加了LCD、鍵盤、USB接口,以及其他一些功能的擴展電路。

      (2)中間層 :硬件層與軟件層之間為中間層,其作用將系統(tǒng)軟件與底層硬件部分隔離,使得系統(tǒng)的底層設備驅動程序與硬件無關;

      (3)軟件層 :主要是操作系統(tǒng),有的還包括文件系統(tǒng)、圖形用戶接口和網(wǎng)絡系統(tǒng)等。操作系統(tǒng)是一個標準的內(nèi)核,將中斷、I/O、定時器等資源都封裝起來,以方便用戶使用。(4)功能層 :由基于操作系統(tǒng)開發(fā)的應用程序組成,用來完成對被控對象的控制功能。5.非占先式調(diào)度法也稱作合作型多任務(cooperative multitasking),各個任務彼此合作共享一個CPU。中斷服務可以使一個高優(yōu)先級的任務由掛起狀態(tài)變?yōu)榫途w狀態(tài)。但中斷服務以后控制權還是回到原來被中斷了的那個任務,直到該任務主動放棄CPU的使用權時,那個高優(yōu)先級的任務才能獲得CPU的使用權。當系統(tǒng)響應時間很重要時,要使用占先式(preemptive)內(nèi)核。最高優(yōu)先級的任務一旦就緒,總能得到CPU的控制權。當一個運行著的任務使一個比它優(yōu)先級高的任務進入了就緒態(tài),當前任務的CPU使用權就被剝奪了。6.在實時系統(tǒng)中,如果系統(tǒng)在指定的時間內(nèi)未能實現(xiàn)某個確定的任務,會導致系統(tǒng)的全面失敗,這樣的系統(tǒng)被稱硬實時系統(tǒng)。在弱實時系統(tǒng)中,超時卻不會發(fā)生致命的錯誤。其實時性的要求比硬實時系統(tǒng)要差一些。

      7.嵌入式系統(tǒng)的設計步驟及各部分的主要工作如下。(1)需求分析階段,羅列出用戶的需求;

      (2)體系結構設計階段,描述系統(tǒng)的功能如何實現(xiàn);

      (3)詳細設計階段,進行硬件系統(tǒng)與軟件系統(tǒng)的分類劃分,以決定哪些功能用硬件實現(xiàn),哪些用軟件實現(xiàn);

      (4)系統(tǒng)集成,把系統(tǒng)的軟件、硬件和執(zhí)行裝置集成在一起,進行調(diào)試,發(fā)現(xiàn)并改進在設計過程中的錯誤;

      (5)系統(tǒng)測試,對設計好的系統(tǒng)進行測試,看其是否滿足給定的要求。8.Linux作為嵌入式操作系統(tǒng)的優(yōu)勢主要有以下幾點:

      (1)可應用于多種硬件平臺。

      (2)Linux的高度模塊化使添加部件非常容易。

      (3)Linux是一個和Unix相似、以內(nèi)核為基礎的、具有完全的內(nèi)存訪問控制,支持大量硬件的一種通用操作系統(tǒng)。

      (4)Linux可以隨意地配置,不需要任何的許可證或商家的合作關系。

      (5)Linux帶有Unix用戶熟悉的完善的開發(fā)工具。其強大的語言編譯器GCC,C++等也可以很容易得到,不但成熟完善,而且使用方便。9. Linux執(zhí)行進程調(diào)度一般是在以下情況發(fā)生的:(1)正在執(zhí)行的進程運行完畢;

      (2)正在執(zhí)行的進程調(diào)用阻塞原語將自己阻塞起來進入等待狀態(tài);(3)正在執(zhí)行的進程調(diào)用了P原語操作,從而因資源不足而被阻塞;(4)執(zhí)行中的進程提出I/O請求后被阻塞;(5)系統(tǒng)分配的時間片已經(jīng)用完;

      (6)就緒隊列中的某個進程的優(yōu)先級變得高于當前運行進程的優(yōu)先級。

      第4章

      1、Linux 內(nèi)核的編譯菜單有好幾個版本,運行:

      (1)make config:進入命令行,可以一行一行的配置,但使用不十分方便。

      (2)make menuconfig:大多數(shù)開發(fā)人員使用的Linux 內(nèi)核編譯菜單,使用方便。

      (3)make xconfig:在2.4.X 以及以前版本中xconfig 菜單是基于TCL/TK 的圖形庫的。

      2、在完成內(nèi)核的裁減之后,內(nèi)核的編譯就只要執(zhí)行以下幾條命令: make clean

      編譯內(nèi)核之前先把環(huán)境給清理干凈。make dep

      編譯相關依賴文件 make zImage

      創(chuàng)建內(nèi)核鏡像文件 make modules 創(chuàng)建內(nèi)核模塊。

      make install

      把相關文件拷貝到默認的目錄。

      3、此命令是裝載壓縮映像文件zImage到flash存儲器中,地址是kernel分區(qū),并采用xmodem傳輸協(xié)議。

      4、此命令是設置網(wǎng)卡1的地址192.168.1.1,掩碼為255.255.255.0,不寫netmask參數(shù)則默認為255.255.255.0。

      5、此命令將nfs服務的共享目錄sharedir加載到/mnt/nfs。

      6、此命令是裝載根文件系統(tǒng)root.cramfs到flash存儲器中,地址是根文件系統(tǒng)分區(qū),并采用xmodem傳輸協(xié)議。

      7、這個命令的操作同時進行了分區(qū)和格式化,0~128K存放vivi,128K~192K存放VIVI控制臺指令,192K~1216K存放kernel,1216K~4288K存放root,其余部分存放應用程序。

      第6章

      1.使用虛擬地址尋址整個系統(tǒng)的主存和輔存的方式在現(xiàn)代操作系統(tǒng)中被稱為虛擬內(nèi)存。虛擬內(nèi)存的管理方法使系統(tǒng)既可以運行體積比物理內(nèi)存還要大的應用程序,也可以實現(xiàn)“按需調(diào)頁”策略,既滿足了程序的運行速度,又節(jié)約了物理內(nèi)存空間。2.進程內(nèi)存區(qū)域涉及到5種數(shù)據(jù)段,即:

      ①代碼段:代碼段是用來存放可執(zhí)行文件的操作指令。

      ②數(shù)據(jù)段:數(shù)據(jù)段用來存放可執(zhí)行文件中已初始化全局變量。③BSS段:BSS段包含了程序中未初始化的全局變量。④堆(heap):用于存放進程運行中被動態(tài)分配的內(nèi)存段,它的大小并不固定,可動態(tài)擴張或縮減。

      ⑤棧:棧是用戶存放程序臨時創(chuàng)建的局部變量。3.在Linux系統(tǒng)中,內(nèi)核在最高級執(zhí)行,也稱為“系統(tǒng)態(tài)”,在這一級任何操作都可以執(zhí)行。而應用程序則執(zhí)行在最低級,即所謂的“用戶態(tài)”。在這一級處理器禁止對硬件的直接訪問和對內(nèi)存的未授權訪問。模塊是在所謂的“內(nèi)核空間”中運行的,而應用程序則是在“用戶空間”中運行的。它們分別引用不同的內(nèi)存映射,也就是程序代碼使用不同的“地址空間”。4.共享內(nèi)存區(qū)域是被多個進程共享的一部分物理內(nèi)存。如果多個進程都把該內(nèi)存區(qū)域映射到自己的虛擬地址空間,則這些進程就都可以直接訪問該共享內(nèi)存區(qū)域,從而可以通過該區(qū)域進行通信。共享內(nèi)存是進程間共享數(shù)據(jù)的一種最快的方法,一個進程向共享內(nèi)存區(qū)域寫入了數(shù)據(jù),共享這個內(nèi)存區(qū)域的所有進程就可以立刻看到其中的內(nèi)容。5.內(nèi)存管理利用虛擬文件系統(tǒng)支持交換,交換進程(swapd)定期由調(diào)度程序調(diào)度,這也是內(nèi)存管理依賴于進程調(diào)度的唯一原因。當一個進程存取的內(nèi)存映射被換出時,內(nèi)存管理向文件系統(tǒng)發(fā)出請求,同時,掛起當前正在運行的進程。

      第9章

      1.參考答案:

      Mutex互斥量,用于操作某個臨界資源時對該資源上鎖,以實現(xiàn)互斥地對獨占資源的使用。Semophore信號燈,信號燈內(nèi)有一計數(shù)器,可以用于對多個同類資源的分配。當資源用完時,申請資源的線程會在信號量上睡眠,有線程釋放資源時,再將該線程喚醒繼續(xù)運行。

      Condition條件變量,條件變量用于等待信號。當一個線程需要等待某個信號時,就可到條件變量上等待,當信號具備時,系統(tǒng)會喚醒該線程繼續(xù)運行。2.參考答案:

      本地:共享內(nèi)存+信號量,適合于大量數(shù)據(jù)傳輸。Linux支持系統(tǒng)V和POSIX的共享內(nèi)存和信號量。(5分)

      遠程:Socket+應用協(xié)議。適合于跨網(wǎng)絡的(大量)數(shù)據(jù)傳輸。Linux支持BSD的socket。應用層協(xié)議需要自行設計。(5分)

      3.答案要點:程序是編譯后形成的可執(zhí)行代碼,是靜止的。進程是程序的一次執(zhí)行,是活動的。線程是進程的可執(zhí)行單元,同一進程的不同線程共享進程的資源和地址空間。4.兩種實現(xiàn)方法,一種是繼承Thread,另外一種是實現(xiàn)接口Runnable。

      同步的實現(xiàn)方法有兩種,分別是synchronized, wait與notify。用synchronized可以對一段代碼、一個對象及一個方法進行加鎖。用wait與notify可以使對象處于等待及喚醒方式導致同步,因為每個對象都直接或間接的繼承了Object類。

      5、什么是BootLoader?主要有幾種工作模式及主要功能是什么? 答:

      Bootloader就是操作系統(tǒng)內(nèi)核運行的一段小程序,完成進行初始化系統(tǒng)硬件設置的任務,(2分)

      分為啟動加載模式和下載模式。(1啟動加載模式

      啟動加載(Boot laoding)模式是指 Bootloader 從目標機上的某個固態(tài)存儲設備上將操作系統(tǒng)加載到 RAM 中運行,整個過程并沒有用戶的介入。(2分)(2)下載模式

      在下載模式下,目標機上的 Bootloader 將先通過串口連接或網(wǎng)絡連接等通信手段從宿主機下載文件。(2分)

      6、簡述Bootloader有何作用? 答案要點:(1)首先,bootloader是在特定硬件平臺運行的程序,嚴重依賴于硬件平臺,需要移植;(2)是系統(tǒng)上電之后,第一個運行的程序,系統(tǒng)在上電或復位時通常都從地址 0x0 處開始執(zhí)行,而在這個地址處安排的通常就是系統(tǒng)的 Boot Loader 程序;(3)bootloader程序的設計目標是啟動嵌入式操作系統(tǒng),嵌入式操作系統(tǒng)的啟動需要一定的條件,這些條件由bootloader來滿足;(4)Bootloader一般具有對存儲器和網(wǎng)絡接口操作的功能;如擦除、讀寫Flash,通過USB、串口下載文件等

      第二篇:嵌入式linu學習心得

      嵌入式Linux學習心得

      1、Linux命令

      ls:查看目錄-l以列表方式查看;ls –l 與ll的功能一樣 pwd: 查看當前的目錄

      cd:改變當前操作目錄cd /直接跳到根目錄 cd..回到上一級目錄 cat: 打印顯示當前文件的內(nèi)容信息

      mkdir:創(chuàng)建目錄

      fdisk: 查看硬盤分區(qū)信息,-l以列表方式查看

      ->代表是鏈接文件,類似window下的快捷方式。

      cp: 復制命令,例子cp 文件名 /home/dir/

      mv: 移動或改名,如mv sonf.confsonf.txt(改名)移動:mv sonf.conf / rm:刪除命令,如rm –f test.c;如刪除目錄rm –fr d

      man:查看某個命令的幫助,man 命令

      2、各系統(tǒng)目錄的功能

      drw—r—w--:d代表是目錄,drw代表當前用戶的權限,r代表組用戶的權限,w代表其它用戶的權限。x代表有執(zhí)行權限。

      /boot/gruff.conf: 啟動引導程序

      /dev:brw—rw--:b代表是塊設備。Linux設備有三種,塊設備(b開頭)、字符設備(c開頭)、網(wǎng)絡設備。had代表第一個硬盤,hdb代表第二個硬盤。Hdb2代表第二塊硬盤的第二個分區(qū)。3,67代表主設備為3,從設備為67./etc:存放的是系統(tǒng)的配置文件。Inittab文件存放不同啟動方式下必須啟動的進程。Inittab文件中有6個啟動level,wait中對應著6個level的目錄,respawn代表當一個進程被意外終止了,但會自動啟動的進程,如守護進程。rc.d目錄中存放了一個rc.sysinit文件,里面存放系統(tǒng)初始化配置信息。/etc還有一個vsftpd里面存放tcp、ftp的配置。

      /home : 用戶目錄,存放用戶的文件,/lib:存放庫文件,后綴為so的文件代表動態(tài)鏈接庫。

      /lost+found:系統(tǒng)意外終止,存放一些可以找回的文件。

      /mnt:掛載外部設備,如掛載光驅:mount –t /dev/cdrom/mnt/cdrom,如

      果在雙系統(tǒng)中,要查看windows中D盤的文件,首先應該將D盤的文件映射過來,mount –t /dev/hda2/mnt/windows/d

      /opt:用戶安裝的應用程序

      /proc:是系統(tǒng)運行的映射,比較重要。里面的文件數(shù)字代表進程號。每個進程號目錄下包含進程的基本信息。還有其他信息,如cpuinfo等,內(nèi)核支持的文件系統(tǒng)filesystem等。系統(tǒng)支持的中斷interrupts,iomen代表內(nèi)存分配情況。ioport存放IO端口號。還有分區(qū)信息,modole信息,狀態(tài)信息,版本信息

      對于Linux的設備驅動程序,有兩種加載模式,一種是直接加載進linux內(nèi)核,一種是以模塊的方式加載到內(nèi)核。

      /sbin: 系統(tǒng)管理的一些工具。如poweroff關機工具。

      /usr: 安裝系統(tǒng)時很多文件放在此目錄下面,包含一些更新等,include包含的頭文件,lib 是Linux的庫文件,src包含Linux2.4的內(nèi)核源碼

      /var:存放是臨時變量

      3、

      第三篇:嵌入式考試總結

      嵌入式系統(tǒng)定義:以應用為中心、以計算機技術為基礎、軟件硬件可裁剪、適應應用系統(tǒng)對功能、可靠性、成本、體積、功耗嚴格要求的專用計算機系統(tǒng)。

      嵌入式系統(tǒng)應用:工業(yè)控制火控系統(tǒng)、飛行控制系統(tǒng)、測試儀器、醫(yī)療設備、游戲機 應用發(fā)展階段:無操作系統(tǒng)的嵌入算法階段、簡單監(jiān)控式的實時操作系統(tǒng)階段、通用的嵌入式網(wǎng)絡實時操作系統(tǒng)階段

      嵌入式系統(tǒng)已經(jīng)有了近30年的發(fā)展歷史,它是硬件和軟件交替發(fā)展的雙螺旋式發(fā)展

      嵌入式系統(tǒng)特點:1 面向特定應用、2 可裁減、3.處理器體系結構和類型多樣化。4.大多都有實時操作系統(tǒng)。5 一般有實時性要求。6資源比較少。7 軟件固化在存儲器芯片中。8 通常要求功耗小。9 集成度高。10嵌入式系統(tǒng)本身不具備自舉開發(fā)能力 嵌入式系統(tǒng)的組成:硬件平臺、板級支持包(BSP)、操作系統(tǒng)、應用程序 嵌入式系統(tǒng)硬件平臺:嵌入式處理器、存儲器件、外設接口

      嵌入式CPU的特點:1 對實時多任務操作系統(tǒng)具有很強的支持能力。2具有功能很強的存儲區(qū)保護功能。3 處理器結構可擴展。4 低功耗。嵌入式CPU的分類:嵌入式微控制器(EMCU)、嵌入式微處理器(EMPU)、嵌入式DSP處理器(EDSP)、嵌入式片上系統(tǒng)(ESoC)

      MCU(MicroController Unit)MCU芯片內(nèi)集成了ROM/EEPOM、RAM、總線、總線邏輯、I/O等必要功能和外設。已有20多年的歷史。如51,98/96。

      與MPU比,單片化、體積小,功耗、成本低,可靠性高,能節(jié)省系統(tǒng)開支、降低出錯概率和減少高頻干擾適合控制系統(tǒng)。

      發(fā)展:內(nèi)核化(內(nèi)核 +IP、內(nèi)核 +FPGA、內(nèi)核+外圍模塊)、專用化(接口單片機、網(wǎng)絡單片機、射頻單片機、數(shù)采單片機、電力線載波…)

      DSP(Digital Signal Processor)專用于信號處理,采用哈佛體系結構,指令系統(tǒng)特殊,具有較高的編譯效率和指令執(zhí)行速度。如數(shù)字濾波、快速傅立葉變換和離散余弦變換等DSP算法。

      MPU(MicroProcessor Unit)由CPU演變而來,32位以上。與通用CPU比,MPU只保留與應用相關的功能和硬件,除去冗余的功能部分,實現(xiàn)最少的功耗和資源,滿足嵌入式需求。與工業(yè)控制計算機比,MPU體積小,重量輕,成本低,可靠性高。常見的嵌入式處理器核:ARM、MIPS、PowerPC、68K、x86 SoC(System on Chip)是嵌入式系統(tǒng)多種形式的統(tǒng)一歸宿SOC最大的特點,成功實現(xiàn)軟硬件無縫結合,直接在處理器芯片內(nèi)嵌入操作系統(tǒng)的代碼模塊。SOC具有極高的綜合性。由于絕大部分系統(tǒng)構件都是在系統(tǒng)內(nèi)部,整個系統(tǒng)特別簡潔,不僅減少了功耗和體積,并且提高了可靠性,和設計效率。降低內(nèi)部工作電壓,減少芯片功耗;減少芯片引腳數(shù)目,簡化制造過程;簡化外圍驅動單元,優(yōu)化處理速度; 優(yōu)化內(nèi)部電路結構,降低系統(tǒng)噪聲

      馮.諾伊曼結構,也稱普林斯頓結構、程序指令存儲器和數(shù)據(jù)存儲器合并在一起的存儲器結構。程序指令存儲地址和數(shù)據(jù)存儲地址指向同一個存儲器的不同物理位置,因此程序指令和數(shù)據(jù)的寬度相同,如英特爾公司的8086中央處理器的程序指令和數(shù)據(jù)都是16位寬。

      哈佛結構:程序指令存儲和數(shù)據(jù)存儲分開的存儲器結構。程序指令存儲和數(shù)據(jù)存儲分開,可以使指令和數(shù)據(jù)有不同的數(shù)據(jù)寬度,如Microchip公司的PIC16芯片的程序指令是14位寬度,而數(shù)據(jù)是8位寬度。中央處理器首先到程序指令存儲器中讀取程序指令內(nèi)容,解碼后得到數(shù)據(jù)地址,再到相應的數(shù)據(jù)存儲器中讀取數(shù)據(jù),并進行下一步的操作(通常是執(zhí)行)。CISC:復雜指令集 特點是指令數(shù)量龐大臃腫,具有大量的指令和尋址方式每個指令不管執(zhí)行頻度高低都處于同一個優(yōu)先級,程序員的編程工作相對容易。但它的致命弊端是執(zhí)行效率低下,處理器的晶體管被大量低效的指令所占據(jù),資源利用率頗為低下。

      RISC:精簡指令集 8/2原則:80%的程序只使用20%的指令大多數(shù)程序只使用少量的指令就能夠運行。在通道中只包含最有用的指令 確保數(shù)據(jù)通道快速執(zhí)行每一條指令使CPU硬件結構設計變得更為簡單嵌入式處理器采用RISC 指令流水:執(zhí)行指令的過程:(1)取指令(Fetch)(2)譯碼(Decode)(3)取操作數(shù)(Fetch Operant)(4)執(zhí)行指令(Execute)(5)寫回(Write Back)采用指令流水線技術,提高處理器的執(zhí)行效率

      嵌入式處理器的技術指標 :1.功能:集成的存儲器、外設、接口等的種類和數(shù)量;2.字長:字長指數(shù)據(jù)總線位數(shù);3.處理速度:4.尋址能力:尋址能力取決于地址總線的寬度;5.功耗:工作功耗、待機功耗等,功耗與頻率,功耗與電壓;6.溫度:民用、工業(yè)用、軍用、航天等級別。民用范圍為0℃~70℃

      嵌入式處理器的選擇:

      1、技術指標原則:首要考慮功能,其次考慮對其他芯片的支持情況,再次考慮處理器的字長、尋址空間、主頻、功耗等;

      2、熟悉原則: 降低開發(fā)風險和難度;

      3、成本原則:處理器成本和額外成本;

      4、支持工具原則:選擇合適的軟件開發(fā)工具;

      5、整體原則:全盤考慮處理器和其他部件或軟件的兼容和約束

      嵌入式處理器的發(fā)展方向:

      1、多核結構:在一個處理器中集成兩個或多個完整的CPU核;提升處理器的并行性能??s短核間的互連和通信延遲。多核結構簡單,易于優(yōu)化設計。

      2、更低的功耗:功耗更小,工作方式:等待、暫停、休眠、空閑、節(jié)電等;

      3、更先進的工藝和更小的封裝;

      4、更寬的工作電壓范圍:3.3~5.5 V 2.2~6 V。最低工作電壓1.8 V。ARM(Advanced RISC Machines)公司是全球領先的16/32位RISC微處理器知識產(chǎn)權設計供應商

      ARM優(yōu)點:全新設計的RISC結構的32位處理器;因為是全新的設計,開始就是32位,沒有歷史遺留問題(比如x86)。所以,更便于對處理器結構進行優(yōu)化;價格低廉;ARM公司不生產(chǎn)芯片,專心研究處理器內(nèi)核的解決方案;低功耗

      ARM架構:32位ALU31個;32位通用寄存器及6位狀態(tài)寄存器;32X8位乘法器;32X32位桶型移位寄存器;指令譯碼及控制邏輯;指令流水線;數(shù)據(jù)地址寄存器 ARM的流水線結構:一條指令的執(zhí)行可分成若干階段:(1)取指,從存儲器中取出指令(FETCH)(2)譯碼,指令譯碼(DEC)(3)取操作數(shù),如從寄存器讀?。≧EG)(4)執(zhí)行計算(ALU)(5)存儲器訪問,操作數(shù)與存儲器有關(Mem)(6)結果寫回寄存器(RES)

      程序執(zhí)行時間:T(proc)=N(inst)*CPI/f(clk)T(proc):程序執(zhí)行時間N(inst):一個程序的指令CPI:執(zhí)行一條指令的平均周期f(clk):處理器的時鐘周期,減少程序執(zhí)行時間的關鍵是減少CPI 流水線除了加深流水線的深度和加快時鐘頻率來提高流水線的效率和吞吐率外,還要解決:結構相關:在流水線中重疊執(zhí)行的指令,產(chǎn)生資源沖突。ARM中采用I-Cache,D-Cache,ALU采用單獨加法器計算地址;數(shù)據(jù)相關:一條指令需要前面指令的執(zhí)行結果。定向技術(將ALU結果直接送到ALU輸入)、流水線互鎖(通過硬件檢測,暫停至定向技術可以解決)、編譯器優(yōu)化;控制相關:分支指令時。指令預測、計算分支轉移成功的PC值

      ARM存儲結構:ARM架構處理器的存儲器尋址空間有4GB;有的帶有I-CACHE和D-CACHE;片內(nèi)不帶RAM和ROM。系統(tǒng)需要的RAM、ROM(包括FLASH)都通過總線外接;由于存儲器尋址空間達4GB,有的片內(nèi)帶有MMU;允許外接 PCMCIA 存儲器的分類:與CPU的聯(lián)系:主存:直接和CPU交換信息;輔存:不能直接和CPU交換信息。按存儲元件使用的材料:半導體存儲器(常作主存);磁存儲器(磁帶,磁盤);光存儲器(光盤)。(對半導體存儲器)按讀寫工作方式可分:RAM(隨機存儲器),ROM(只讀存儲器)存儲器技術指標:1.存儲容量,2.存取速度3.易失性4.只讀性5.功耗6.可靠性7.價格 存儲空間的組織:實際存儲器由多種類型和容量的存儲芯片組成。合理安排每個存儲芯片的地址范圍。存儲空間的組織問題實質(zhì)是地址譯碼電路的設計問題。地址譯碼的過程包括兩個步驟:先選中某個存儲芯片(稱為片選),其次選中片內(nèi)的某個單元(稱為片內(nèi)尋址)。片選過程:由譯碼電路對高位地址進行譯碼后產(chǎn)生的片選信號;片內(nèi)尋址:由地址譯碼電路對低位地址進行譯碼實現(xiàn)存儲單元尋址。常用的片選方法:線選法、全譯碼法、部分譯碼法和混合譯碼法等。

      RAM是一種可讀可寫的內(nèi)存,在上電的情況下才能保持在存儲器中。(1)存放當前正在執(zhí)行的程序和數(shù)據(jù)。(2)存放I/O緩沖數(shù)據(jù)(3)作為中斷服務程序中保護現(xiàn)場信息的堆棧 ROM分類:(1)掩膜型ROM:內(nèi)容在芯片生產(chǎn)出來之前指定。(2)PROM:一次性編程的只讀存儲器,OTP(Once Time Program)。(3)EPROM:可以修改ROM中的數(shù)據(jù),即重復燒錄。紫外線照射。4)E2PROM:斷電情況下保存數(shù)據(jù),又能在應用系統(tǒng)中在線修改

      Flash存儲器概述:Flash存儲器就是俗稱的閃存,它是一種非易失性存儲芯片,F(xiàn)lash存儲器具有高密度、低價格、非易失性、快速(讀取速度較快)及可用電擦除可編程等特點。Flash存儲器被廣泛應用于各類移動存儲器卡、U盤、數(shù)碼相機記憶卡、記憶棒等。

      Flash存儲器分類:Flash存儲器主要有NOR Flash存儲器和NAND Flash存儲器兩類。NOR Flash:基于Intel公司所開發(fā)的架構,可以隨機讀取任意單元的內(nèi)容,讀取速度較快。寫入和擦除的速度較低,以塊(Block)為單位進行數(shù)據(jù)的讀/寫。最大優(yōu)點是可以直接從Flash中運行程序,缺點是工藝復雜,價格也比較貴。

      NAND Flash:基于東芝公司(Toshiba)所開發(fā)的結構通過I/O指令的方式進行讀取,因此需要通過驅動程序來讀取。存儲容量較大、成本較低,常用來制作記憶卡。存儲空間是按照塊和頁(Page)的概念來組織的。

      接口的功能:外設識別和尋址,速度匹配和緩沖,時序匹配,信息格式匹配和信息類型轉換等。接口的結構:接口一般由數(shù)據(jù)存儲(緩沖)電路,控制命令邏輯電路,狀態(tài)設置和存儲電路構成 接口數(shù)據(jù)傳輸?shù)姆绞剑?.程序查詢方式。2.中斷方式。3.DMA。

      接口設計的過程:接口設計首先在硬件上分析接口兩側情況.然后考慮CPU總線與I/O設備之間信號的轉換.合理選用I/O接口芯片.進行硬件連接.最后進行接口驅動程序分析與設計??偩€:是各種信號線的集合,是嵌入式系統(tǒng)中各部件之間傳輸數(shù)據(jù)、地址和控制信息的公共通路.總線的主要參數(shù):總線帶寬、總線位寬、總線工作頻率等幾個.常用的總線:USB總線.I2C總線.DMA總線.SPI總線.I2S總線.CAN總線.RS232C/485總線.IEEE1394總線等

      電路:電路是由若干相互連接、相互作用的基本電子器件組成的具有特定功能的電子系統(tǒng) 電路原理圖:描述元器件或芯片引腳的邏輯連接的圖紙,由元器件、連接、標號等組成。印制電路板(Print Circuit Board,PCB)描述元器件或芯片引腳的物理連接的圖紙

      采用嵌入式操作系統(tǒng)的必要性:1提高系統(tǒng)的可靠性2提高開發(fā)效率,縮短開發(fā)周期3能充分發(fā)揮32位CPU的多任務潛力

      嵌入式操作系統(tǒng)的特點:具備一般操作系統(tǒng)的基本功能,如任務調(diào)度、同步機制、中斷處理和內(nèi)存管理等外,還有以下特點:(1)可拆裝性(2)支持實時性(3)統(tǒng)一的接口(4)操作方便簡單(5)提供強大的網(wǎng)絡功能(6)強穩(wěn)定性、弱交互性(7)固化代碼(8)更好的硬件適應性

      實時系統(tǒng)主要衡量指標:響應時間(Response Time)控制應用中最重要;生存時間(Survival Time)在此時間內(nèi)數(shù)據(jù)有效;吞吐量(Throughout)一定時間內(nèi)系統(tǒng)可以處理事件的總數(shù) 實時操作系統(tǒng)的分類:一.速度分,強實時系統(tǒng)、一般實時系統(tǒng)、弱實時系統(tǒng).二.確定性分,硬實時系統(tǒng)、軟實時系統(tǒng).三.軟件結構分,1、單線程程序(1)循環(huán)輪詢:特點:對簡單系統(tǒng)易于實現(xiàn)、沒有中斷,不會出現(xiàn)隨機性問題、應用領域有限、對大量I/O服務的應用實現(xiàn)困難、大的程序不便調(diào)試,適合慢速系統(tǒng)(2)有限狀態(tài)機:特點:小系統(tǒng)易于實現(xiàn)、可以執(zhí)行快速、只通過輸出功能改變機器的響應、應用領域有限、不能保證確定性、大系統(tǒng)難于調(diào)試。(3)事件驅動系統(tǒng),事件驅動系統(tǒng)是能對外部時間直接響應的系統(tǒng)。包括前后臺、實時多任務、多處理器。是RTOS的主要形式。四.開放性分

      1、商用系統(tǒng):特點:充分滿足了模塊化設計的要求,可把程序按照模塊化的要求自然分解成若干獨立的任務。啟動監(jiān)控任務程序,提高了系統(tǒng)的可靠性。良好的開發(fā)工具,提高了開發(fā)效率。特殊設計,避免系統(tǒng)崩潰。產(chǎn)品不斷升級。

      2、專用系統(tǒng),一些專業(yè)廠家為本公司產(chǎn)品特制的OS,不提供應用開發(fā)者使用。如CISCO的網(wǎng)絡產(chǎn)品的EPOC等。特點:操作系統(tǒng)功能較弱。針對性強、安全性高

      3、開放系統(tǒng),如:各類嵌入式LINUX(RT LINU、μCLINUX)、μC/OS等。特點:源碼公開、功能簡單、技術支持差、系統(tǒng)穩(wěn)定性差、對開發(fā)者要求高。

      典型的RTOS包括:

      1、RTOS基本內(nèi)核:RTOS基礎和核心。包括任務管理、中斷管理、基本的通信管理和內(nèi)存管理。其中對外設的管理只提供中斷管理,不提供具體的操作。

      2、擴展內(nèi)核:方便用戶使用的擴展,建立在基本內(nèi)核上。如GUI、TCP/IP、瀏覽器、電源管理、文件管理

      3、設備驅動接口:在內(nèi)核和IO間,定義軟硬件的界線,方便RTOS移植和升級。有的統(tǒng)一于RTOS基本內(nèi)核。

      4、API RTOS與通用操作系統(tǒng)的(GPOS)比較:基本設計原則 :GPOS盡量縮短系統(tǒng)的平均響應時間并提高系統(tǒng)的吞吐率,在單位時間內(nèi)為盡可能多的用戶請求提供服務。RTOS:采用各種算法和策略,始終保證系統(tǒng)行為的可預測性(predictability),即在系統(tǒng)運行的任何時刻,在任何情況下,實時操作系統(tǒng)的資源調(diào)配策略都能為爭奪資源(包括CPU、內(nèi)存、網(wǎng)絡帶寬等)的多個實時任務合理地分配資源,使每個實時任務的實時性要求都能得到滿足。與通用操作系統(tǒng)不同,實時操作系統(tǒng)注重的不是系統(tǒng)的平均表現(xiàn),而是要求每個實時任務在最壞情況下都要滿足其實時性要求.任務調(diào)度策略:GPOS:基于優(yōu)先級的搶先式調(diào)度策略,對于優(yōu)先級相同的進程則采用時間片輪轉調(diào)度方式,用戶進程可以通過系統(tǒng)調(diào)用動態(tài)地調(diào)整自己的優(yōu)先級,操作系統(tǒng)也可根據(jù)情況調(diào)整某些進程的優(yōu)先級。RTOS :采用固定優(yōu)先級搶先式調(diào)度方式,進程的優(yōu)先級是固定不變的,并且該優(yōu)先級是在運行前通過某種優(yōu)先級分配策略來指定的。內(nèi)存管理:GPOS:虛存管理機制 RTOS:在原有虛存管理機制的基礎上增加頁面鎖。得到 了虛存管理機制為軟件開發(fā)帶來的好處,又提高了系統(tǒng)的可預測性。缺點是由于TLB等機制的設計也是按照注重平均表現(xiàn)的原則進行的,因此系統(tǒng)的可預測性并不能完全得到保障,采用靜態(tài)內(nèi)存劃分的方式,為每個實時任務劃分固定的內(nèi)存區(qū)域。這種方式的優(yōu)點是系統(tǒng)具有較好的可預測性,缺點是靈活性不夠好。中斷處理 GPOS:中斷處理程序的優(yōu)先級被設定為高于任何用戶進程。RTOS:一種是除時鐘中斷外,屏蔽所有其它中斷,中斷處理程序變?yōu)橹芷谛缘妮喸儾僮?,這些操作由核心態(tài)的設備驅動程序或由用戶態(tài)的設備支持庫來完成。優(yōu)點:充分保證了系統(tǒng)的可預測性。缺點:對環(huán)境變化的響應可能不如上述中斷處理方式快,另外輪詢操作在一定程度上降低了CPU的有效利用率。另一種是對于采用輪詢方式無法滿足需求的外部事件,采用中斷方式,其它時間仍然采用輪詢方式。此時中斷處理程序與所以其它任務一樣擁有優(yōu)先級,調(diào)度器根據(jù)優(yōu)先級對處于就緒態(tài)的任務和中斷處理程序統(tǒng)一進行處理器調(diào)度。這種方式使外部事件的響應速度加快,并避免了上述中斷方式帶來第二個問題,但第一個問題仍然存在。共享資源的互斥訪問 GPOS:采用信號量機制來解決共享資源的互斥訪問 RTOS:對傳統(tǒng)的信號量機制進行了一些擴展,引入了如優(yōu)先級繼承協(xié)議、優(yōu)先級頂置協(xié)議以及Stack Resource Policy等機制,較好地解決了優(yōu)先級倒置的問題。系統(tǒng)調(diào)用以及系統(tǒng)內(nèi)部操作的時間開銷 進程通過系統(tǒng)調(diào)用得到操作系統(tǒng)提供的服務,操作系統(tǒng)通過內(nèi)部操作(如上下文切換等)來完成一些內(nèi)部管理工作。為保證系統(tǒng)的可預測性,實時操作系統(tǒng)中的所有系統(tǒng)調(diào)用以及系統(tǒng)內(nèi)部操作的時間開銷都應是有界的,并且該界限是一個具體的量化數(shù)值。而在通用操作系統(tǒng)中對這些時間開銷則未做如此限制

      系統(tǒng)的可重入性 在通用操作系統(tǒng)中,核心態(tài)系統(tǒng)調(diào)用往往是不可重入的,當一低優(yōu)先級任務調(diào)用核心態(tài)系統(tǒng)調(diào)用時,在該時間段內(nèi)到達的高優(yōu)先級任務必須等到低優(yōu)先級的系統(tǒng)調(diào)用完成才能獲得CPU,這就降低了系統(tǒng)的可預測性。因此,實時操作系統(tǒng)中的核心態(tài)系統(tǒng)調(diào)用往往設計為可重入的。

      輔助工具 實時操作系統(tǒng)額外提供了一些輔助工具,如實時任務在最壞情況下的執(zhí)行時間估算工具、系統(tǒng)的實時性驗證工具等,可幫助工程師進行系統(tǒng)的實時性驗證工作。

      操作系統(tǒng)的移植:嵌入式操作系統(tǒng)還有一個特點是,針對不同的平臺,系統(tǒng)不是直接可用的,一般需要經(jīng)過針對專門平臺的移植操作系統(tǒng)才能正常工作。嵌入式操作系統(tǒng)移植的目的是指使操作系統(tǒng)能在某個微處理器或微控制器上運行

      操作系統(tǒng)的移植大體可以分為三個層次:結構層次的移植。如果待移植處理器的結構不同于任何已經(jīng)支持的處理器結構。平臺層次的移植。如果待移植處理器是某種操作系統(tǒng)已支持體系的處理器。板級移植。如果所用處理器已被操作系統(tǒng)支持,就只需要板級移植了。包括驅動程序的編寫和環(huán)境變量設置等內(nèi)容等

      Windows CE系統(tǒng)架構:Windows CE屬于比較典型的微內(nèi)核操作系統(tǒng)。在內(nèi)核中僅僅實現(xiàn)進程、線程、調(diào)度及內(nèi)存管理等最基本的模塊,而把圖形系統(tǒng)、文件系統(tǒng)及設備驅動程序等等都作為單獨的用戶進程來實現(xiàn)

      WinCE系統(tǒng)包括四層結構:應用程序、WinCE內(nèi)核映像、板級支持包(BSP)、硬件平臺。BSP(Board Support Packet——板級支持包)是介于底層硬件和上層軟件之間的底層軟件開發(fā)包,它主要的功能是給上層提供統(tǒng)一接口,同時屏蔽各種硬件底層的差異,以及提供操作系統(tǒng)的驅動及硬件驅動。簡單的說,就是BSP包含了所有與硬件有關的代碼,為操作系統(tǒng)提供了硬件平臺無關性

      BSP組成:是一個包括啟動程序Bootloader、OEM適配層程序(OAL)、標準開發(fā)板(SDB)和相關硬件設備的驅動程序和配置文件的軟件包。

      WinCE BSP組成:OEM改編層,Bootloader,設備驅動,配置文件

      Windows CE開發(fā)環(huán)境搭建:1安裝ActiveSync4.5用于連接WindowsCE設備和安裝桌面Windows的PC機的工具2安裝Visual Studio 2005開發(fā)套件3安裝Visual Studio 2005 SP1 4安裝目標設備SDK:Windows Mobile 6 professional SDK,Windows Mobile 6 professional image(CHS)

      嵌入式系統(tǒng)的開發(fā)模式:嵌入式的開發(fā)與通用計算機系統(tǒng)的開發(fā)的最大不同是嵌入式系統(tǒng)采用交叉開發(fā)的架構。首先,利用主機系統(tǒng)上豐富的資源及良好的開發(fā)環(huán)境開發(fā)和仿真調(diào)試目標系統(tǒng)上的軟件。然后通過接口將交叉編譯的目標代碼傳輸?shù)侥繕讼到y(tǒng)上,并用交叉調(diào)試器在監(jiān)控程序或實時內(nèi)核/操作系統(tǒng)的支持下進行實時分析和調(diào)度。最后,目標系統(tǒng)在特定的環(huán)境下運行

      嵌入式系統(tǒng)交叉開發(fā)環(huán)境:指用于嵌入式軟件開發(fā)的所有工具軟件的集合,一般包括文本編輯器,交叉編譯器,交叉調(diào)試器,仿真器,下載器等,由宿主機和目標機組成,宿主機與目標機之間在物理連接的基礎上建立起邏輯連接。

      嵌入式開發(fā)環(huán)境的建立:1根據(jù)目標系統(tǒng)的處理器體系結構選擇合適的工具和仿真器2根據(jù)目標系統(tǒng)上的接口資源,選擇合適的開發(fā)主機和目標系統(tǒng)的聯(lián)系方式3選擇合適的開發(fā)主機操作系統(tǒng)(WINDOWS,LINUX)4在目標機和主機系統(tǒng)安裝相應開發(fā)工具,建立開發(fā)環(huán)境5嵌入式軟件開發(fā)工具根據(jù)不同的階段分類:需求分析工具,軟件設計工具,編碼調(diào)試工具,測試工具,配置管理工具、維護工具等。

      嵌入式軟件開發(fā)工具根據(jù)嵌入式軟件開發(fā)分類:與嵌入式QS相關的開發(fā)工具,用于開發(fā):基于嵌入式OS的應用,部分驅動程序等;與嵌入式QS無關的開發(fā)工具,用于開發(fā):基本的驅動程序,輔助硬件調(diào)試程序,系統(tǒng)軟件等

      交叉調(diào)試器:調(diào)試程序和被調(diào)試程序運行在不同機器上的調(diào)試器。調(diào)試器通過某種方式能控制目標機上被調(diào)試程序的運行方式。通過調(diào)試器能查看和修改目標機上的內(nèi)存、寄存器以及被調(diào)試程序中的變量等。典型的交叉調(diào)試器方法:Crash and Burn,ROM Moniter。ROM Emulator,In Circuit E mulator,On Chip Debugging ROM Moniter:ROM Monitor是被固化且運行在目標機上的一段程序,負責監(jiān)控目標機上被調(diào)試程序的運行,與宿主機端的調(diào)試器一起完成對應用程序的調(diào)試。調(diào)試器與ROM Monitor之間的通信遵循遠程調(diào)試協(xié)議。

      ROM Monitor能配合調(diào)試器完成:程序映像下載;對目標機系統(tǒng)內(nèi)存的讀寫;對寄存器的讀寫;設置和清除不同類型的斷點;單步執(zhí)行指令;復位系統(tǒng)等調(diào)試功能

      調(diào)試過程(1)啟動目標機,監(jiān)控器掌握對目標機的控制,等待和調(diào)試器建立連接;(2)啟動調(diào)試器,并和監(jiān)控器建立起通信連接;(3)使用調(diào)試器將應用程序下載到目標機上的RAM空間中;(4)使用調(diào)試器進行調(diào)試,發(fā)出各種調(diào)試命令,監(jiān)控器解釋并執(zhí)行這些命令,通過目標機上的各種異常來獲取對目標機的控制,將命令執(zhí)行結果回傳給調(diào)試器;(5)如果程序有問題,在調(diào)試器的幫助下定位錯誤;修改之后再重新編譯鏈接并下載程序,開始新的調(diào)試,如此反復直至程序正確運行為止。

      ROM Emulator:ROM Emulator是一種用于替代目標機上的ROM芯片的設備,即ROM仿真器。利用這種設備,目標機可以沒有ROM芯片,但目標機的CPU可以讀取ROM Emulator設備上ROM芯片的內(nèi)容:ROM Emulator設備上的ROM芯片的地址可以實時地映射到目標機的ROM地址空間,從而仿真(Emulation)目標機的ROM。

      ICE(In-Circuit Emulator)是一種用于替代目標機上CPU的設備,即在線仿真器。它比一般的CPU有更多的引出線,能夠將內(nèi)部的信號輸出到被控制的目標機。ICE上的Memory也可以被映射到用戶的程序空間,這樣即使目標機不存在的情形下也可以進行代碼的調(diào)試。連接ICE和目標機時,一般是將目標機的CPU取下,而將ICE的CPU引出線接到目標機的CPU插槽。用ICE進行調(diào)試時,在Host端運行的調(diào)試器通過ICE來控制目標機上運行的程序。適用于:調(diào)試實時的應用系統(tǒng);調(diào)試設備驅動程序;對硬件進行功能和性能的測試;實時性能分析

      OCD(On Chip Debugging)是CPU芯片提供的一種調(diào)試功能(片上調(diào)試),可以認為是一種廉價的ICE功能:OCD的價格只有ICE的20%,但提供了ICE 80%的功能。調(diào)試方法:1)將CPU的模式分為一般模式和調(diào)試模式2)一般模式下,CPU從內(nèi)存讀取指令執(zhí)行3)調(diào)試模式下,CPU首先從調(diào)試端口讀取指令,通過調(diào)試端口可以控制CPU進入和退出調(diào)試模式;Host端的調(diào)試器可以直接向目標機發(fā)送要執(zhí)行的指令,讀寫目標機的內(nèi)存和各種寄存器,控制目標程序的運行以及完成各種復雜的調(diào)試功能。

      軟件仿真器調(diào)試的特點:優(yōu)點:最大好處就是可以不用真正的目標機,可以在目標機環(huán)境并不存在的條件下開發(fā)目標機上的應用系統(tǒng),并且在調(diào)試時可以利用Host資源提供更詳細的錯誤診斷信息。缺點:和實際的運行環(huán)境差別很大;設備模擬的局限性較大;實時特性較差;對Host的資源要求較高。適用范圍:對時間特性沒有嚴格要求、沒有特殊外設、只需要驗證邏輯正確的應用程序

      嵌入式軟件測試工具:能夠用來輔助測試的工具,主要用來支持測試人員的工作。一般有內(nèi)存分析工具,性能分析工具,覆蓋分析工具,缺陷跟蹤工具等。

      軟硬件分開設計存在問題:缺少統(tǒng)一的軟硬件表示方法;劃分依靠先驗定義;不能夠驗證整個系統(tǒng);通過HW/SW邊界時很難發(fā)現(xiàn)不兼容問題;缺少成熟的設計流程;上市時間問題;描述更改變得困難

      軟硬件協(xié)同設計定義:軟硬件共同設計目的是為硬件和軟件的協(xié)同描述,驗證和綜合提供一種集成環(huán)境

      軟硬件協(xié)同設計的基本需求:統(tǒng)一的軟硬件描述方式;交互式軟硬件劃分技術 ;完整的軟硬件模型基礎;正確的驗證方法 軟件硬件協(xié)同設計的設計流程:用HDL語言和C語言進行系統(tǒng)描述并進行模擬仿真和系統(tǒng)功能驗證;對軟硬件實現(xiàn)進行功能劃分,分別用語言進行設計并將其綜合起來進行功能驗證和性能預測等仿真確認(協(xié)調(diào)模擬仿真);如無問題則進行軟件和硬件詳細設計;最后系統(tǒng)測試 軟件硬件協(xié)同設計的特點:縮短開發(fā)周期;取得更好的設計效果;滿足苛刻的設計限制 ; 這種平臺的推出將不僅包含芯片本身,還必須包含完整的開發(fā)系統(tǒng)和典型應用實例,而供應商提供的服務和技術支持也當然要成為產(chǎn)品不可分割的一部分 缺點:典型的手動劃分(manual Partition);固定應用領域(carefully very specialized);逐漸增長的評估需求支持很弱(no abstract models);主要強調(diào)性能;模型的連貫性在設計重用中不被支持;商業(yè)系統(tǒng)更強調(diào)協(xié)同驗證(co-verification)方面(more achievable goal)

      嵌入式系統(tǒng)典型的接口(RS232RS484USB、同步串口及其他串口、I2C、I2S、AC97、LAN等的應用特點): RS232:采用RS232的三根線進行通信。接口為D型的9針陽性的插頭。低速紅外異步通信接口,支持使用紅外的雙向無線通信,提供發(fā)送編碼器和接收解碼器,支持IrDAV1.11的物理鏈路。不支持IR LED驅動器和接收放大器。支持半雙工,最高波特率115.2Kb/s。藍牙 I2C總線接口:由PHILIPS創(chuàng)建的雙線方式串行總線.雙向數(shù)據(jù)線用于輸入輸出,雙向時鐘線用于控制和采樣,每個設備有一個地址,采用主從方式通信。實現(xiàn)主機與外設間通信.允許多主機,此時采用裁決控制器。I2C單元是處理器內(nèi)部總線上的設備。USB:Host控制器基于PCI,提高了系統(tǒng)性能,即插即用,無需手動設置地址、中斷……熱插撥,系統(tǒng)不需重啟便可工作.易于擴展,理論上可連接多達127個設備,但一般都只限于連接兩三個設備,真正組網(wǎng)后的系統(tǒng)穩(wěn)定因素需要探討.USB2.0以低成本實現(xiàn)高達480Mb/s的傳輸率(USB1.0的全速設備可達12Mb/s)接口標準統(tǒng)一、端口供電 AC97控制器:支持AC97 V2.實現(xiàn)話音數(shù)字化

      內(nèi)部集成電路聲音控制器(I2S)用于數(shù)字立體聲的規(guī)程 多媒體卡控制器(MMC)

      Boot Loader技術:嵌入式系統(tǒng)中的 OS 啟動加載程序.引導加載程序(包括固化在固件(firmware)中的boot代碼,和Boot Loader兩大部分,是系統(tǒng)加電后運行的第一段軟件代碼).相對于操作系統(tǒng)內(nèi)核來說,它是一個硬件抽象層,系統(tǒng)的加載啟動任務就完全由 Boot Loader 來完成,在操作系統(tǒng)內(nèi)核運行之前運行一段小程序

      功能:初始化硬件設備,建立內(nèi)存空間的映射圖,調(diào)整系統(tǒng)軟硬件環(huán)境,以便操作系統(tǒng)內(nèi)核啟動

      不通用:依賴于硬件,依賴于具體的板級配置 不同的 CPU有不同的Boot Loader 多階段的 Boot Loader:提供更為復雜的功能,以及更好的可移植性,從固態(tài)存儲設備上啟動的 Boot Loader 大多都是 2 階段的啟動過程,啟動過程可以分為 stage 1和stage2兩部分 兩種不同的操作模式:一.啟動加載模式:自主(Autonomous)模式,從目標機上的某個固態(tài)存儲設備上將操作系統(tǒng)加載到 RAM 中運行,Boot Loader 的正常工作模式

      二.下載模式:通過串口連接或網(wǎng)絡連接等通信手段從主機(Host)下載文件,如:下載內(nèi)核映像和根文件系統(tǒng)映像等。從主機下載的文件通常首先被 Boot Loader 保存到目標機的 RAM 中,然后再被 BootLoader 寫到目標機上的FLASH 類固態(tài)存儲設備中。通常在第一次安裝內(nèi)核與根文件系統(tǒng)時被使用系統(tǒng)更新也會使用 Boot Loader 的這種工作模式,通常都會向它的終端用戶提供一個簡單的命令行接口

      第四篇:嵌入式Linux實時操作系統(tǒng)習題總結

      第1章

      1.嵌入式系統(tǒng)是指操作系統(tǒng)和功能軟件集成于計算機硬件系統(tǒng)之中。嵌入式系統(tǒng)一般有3個主要的組成部分:硬件、實時操作系統(tǒng)以及應用軟件。

      2.嵌入式系統(tǒng)的三要素是嵌入、專用、計算機;即以應用為中心、以計算機技術為基礎、軟件硬件可裁剪、適應應用系統(tǒng)對功能、可靠性、成本、體積、功耗嚴格要求的專用計算機系統(tǒng)。

      3.目前國際較為知名的有:VxWorks、NeutrinoRTOS、Nucleus Plus、OS/

      9、VRTX、LynuxOS,RTLinux、BlueCat RT等。

      4.嵌入式系統(tǒng)一般由硬件層、中間層、軟件層和功能層組成。其作用分別如下:

      (1)硬件層 :由嵌入式微處理器、外圍電路和外設組成。操作系統(tǒng)和應用程序都可以固化在ROM或者Flash中。為方便使用,有的模塊在此基礎上增加了LCD、鍵盤、USB接口,以及其他一些功能的擴展電路。

      (2)中間層 :硬件層與軟件層之間為中間層,其作用將系統(tǒng)軟件與底層硬件部分隔離,使得系統(tǒng)的底層設備驅動程序與硬件無關;

      (3)軟件層 :主要是操作系統(tǒng),有的還包括文件系統(tǒng)、圖形用戶接口和網(wǎng)絡系統(tǒng)等。操作系統(tǒng)是一個標準的內(nèi)核,將中斷、I/O、定時器等資源都封裝起來,以方便用戶使用。(4)功能層 :由基于操作系統(tǒng)開發(fā)的應用程序組成,用來完成對被控對象的控制功能。5.非占先式調(diào)度法也稱作合作型多任務(cooperative multitasking),各個任務彼此合作共享一個CPU。中斷服務可以使一個高優(yōu)先級的任務由掛起狀態(tài)變?yōu)榫途w狀態(tài)。但中斷服務以后控制權還是回到原來被中斷了的那個任務,直到該任務主動放棄CPU的使用權時,那個高優(yōu)先級的任務才能獲得CPU的使用權。當系統(tǒng)響應時間很重要時,要使用占先式(preemptive)內(nèi)核。最高優(yōu)先級的任務一旦就緒,總能得到CPU的控制權。當一個運行著的任務使一個比它優(yōu)先級高的任務進入了就緒態(tài),當前任務的CPU使用權就被剝奪了。6.在實時系統(tǒng)中,如果系統(tǒng)在指定的時間內(nèi)未能實現(xiàn)某個確定的任務,會導致系統(tǒng)的全面失敗,這樣的系統(tǒng)被稱硬實時系統(tǒng)。在弱實時系統(tǒng)中,超時卻不會發(fā)生致命的錯誤。其實時性的要求比硬實時系統(tǒng)要差一些。

      7.嵌入式系統(tǒng)的設計步驟及各部分的主要工作如下。(1)需求分析階段,羅列出用戶的需求;

      (2)體系結構設計階段,描述系統(tǒng)的功能如何實現(xiàn);

      (3)詳細設計階段,進行硬件系統(tǒng)與軟件系統(tǒng)的分類劃分,以決定哪些功能用硬件實現(xiàn),哪些用軟件實現(xiàn);

      (4)系統(tǒng)集成,把系統(tǒng)的軟件、硬件和執(zhí)行裝置集成在一起,進行調(diào)試,發(fā)現(xiàn)并改進在設計過程中的錯誤;

      (5)系統(tǒng)測試,對設計好的系統(tǒng)進行測試,看其是否滿足給定的要求。8.Linux作為嵌入式操作系統(tǒng)的優(yōu)勢主要有以下幾點:

      (1)可應用于多種硬件平臺。

      (2)Linux的高度模塊化使添加部件非常容易。

      (3)Linux是一個和Unix相似、以內(nèi)核為基礎的、具有完全的內(nèi)存訪問控制,支持大量硬件的一種通用操作系統(tǒng)。

      (4)Linux可以隨意地配置,不需要任何的許可證或商家的合作關系。

      (5)Linux帶有Unix用戶熟悉的完善的開發(fā)工具。其強大的語言編譯器GCC,C++等也可以很容易得到,不但成熟完善,而且使用方便。9. Linux執(zhí)行進程調(diào)度一般是在以下情況發(fā)生的:(1)正在執(zhí)行的進程運行完畢;

      (2)正在執(zhí)行的進程調(diào)用阻塞原語將自己阻塞起來進入等待狀態(tài);(3)正在執(zhí)行的進程調(diào)用了P原語操作,從而因資源不足而被阻塞;(4)執(zhí)行中的進程提出I/O請求后被阻塞;(5)系統(tǒng)分配的時間片已經(jīng)用完;

      (6)就緒隊列中的某個進程的優(yōu)先級變得高于當前運行進程的優(yōu)先級。

      第4章

      1、Linux 內(nèi)核的編譯菜單有好幾個版本,運行:

      (1)make config:進入命令行,可以一行一行的配置,但使用不十分方便。

      (2)make menuconfig:大多數(shù)開發(fā)人員使用的Linux 內(nèi)核編譯菜單,使用方便。

      (3)make xconfig:在2.4.X 以及以前版本中xconfig 菜單是基于TCL/TK 的圖形庫的。

      2、在完成內(nèi)核的裁減之后,內(nèi)核的編譯就只要執(zhí)行以下幾條命令: make clean

      編譯內(nèi)核之前先把環(huán)境給清理干凈。make dep

      編譯相關依賴文件 make zImage

      創(chuàng)建內(nèi)核鏡像文件 make modules 創(chuàng)建內(nèi)核模塊。

      make install

      把相關文件拷貝到默認的目錄。

      3、此命令是裝載壓縮映像文件zImage到flash存儲器中,地址是kernel分區(qū),并采用xmodem傳輸協(xié)議。

      4、此命令是設置網(wǎng)卡1的地址192.168.1.1,掩碼為255.255.255.0,不寫netmask參數(shù)則默認為255.255.255.0。

      5、此命令將nfs服務的共享目錄sharedir加載到/mnt/nfs。

      6、此命令是裝載根文件系統(tǒng)root.cramfs到flash存儲器中,地址是根文件系統(tǒng)分區(qū),并采用xmodem傳輸協(xié)議。

      7、這個命令的操作同時進行了分區(qū)和格式化,0~128K存放vivi,128K~192K存放VIVI控制臺指令,192K~1216K存放kernel,1216K~4288K存放root,其余部分存放應用程序。

      第6章

      1.使用虛擬地址尋址整個系統(tǒng)的主存和輔存的方式在現(xiàn)代操作系統(tǒng)中被稱為虛擬內(nèi)存。虛擬內(nèi)存的管理方法使系統(tǒng)既可以運行體積比物理內(nèi)存還要大的應用程序,也可以實現(xiàn)“按需調(diào)頁”策略,既滿足了程序的運行速度,又節(jié)約了物理內(nèi)存空間。2.進程內(nèi)存區(qū)域涉及到5種數(shù)據(jù)段,即:

      ①代碼段:代碼段是用來存放可執(zhí)行文件的操作指令。

      ②數(shù)據(jù)段:數(shù)據(jù)段用來存放可執(zhí)行文件中已初始化全局變量。③BSS段:BSS段包含了程序中未初始化的全局變量。④堆(heap):用于存放進程運行中被動態(tài)分配的內(nèi)存段,它的大小并不固定,可動態(tài)擴張或縮減。

      ⑤棧:棧是用戶存放程序臨時創(chuàng)建的局部變量。3.在Linux系統(tǒng)中,內(nèi)核在最高級執(zhí)行,也稱為“系統(tǒng)態(tài)”,在這一級任何操作都可以執(zhí)行。而應用程序則執(zhí)行在最低級,即所謂的“用戶態(tài)”。在這一級處理器禁止對硬件的直接訪問和對內(nèi)存的未授權訪問。模塊是在所謂的“內(nèi)核空間”中運行的,而應用程序則是在“用戶空間”中運行的。它們分別引用不同的內(nèi)存映射,也就是程序代碼使用不同的“地址空間”。4.共享內(nèi)存區(qū)域是被多個進程共享的一部分物理內(nèi)存。如果多個進程都把該內(nèi)存區(qū)域映射到自己的虛擬地址空間,則這些進程就都可以直接訪問該共享內(nèi)存區(qū)域,從而可以通過該區(qū)域進行通信。共享內(nèi)存是進程間共享數(shù)據(jù)的一種最快的方法,一個進程向共享內(nèi)存區(qū)域寫入了數(shù)據(jù),共享這個內(nèi)存區(qū)域的所有進程就可以立刻看到其中的內(nèi)容。5.內(nèi)存管理利用虛擬文件系統(tǒng)支持交換,交換進程(swapd)定期由調(diào)度程序調(diào)度,這也是內(nèi)存管理依賴于進程調(diào)度的唯一原因。當一個進程存取的內(nèi)存映射被換出時,內(nèi)存管理向文件系統(tǒng)發(fā)出請求,同時,掛起當前正在運行的進程。

      第9章

      1.參考答案:

      Mutex互斥量,用于操作某個臨界資源時對該資源上鎖,以實現(xiàn)互斥地對獨占資源的使用。Semophore信號燈,信號燈內(nèi)有一計數(shù)器,可以用于對多個同類資源的分配。

      Condition條件變量,條件變量用于等待信號。當一個線程需要等待某個信號時,就可到條件變量上等待,當信號具備時,系統(tǒng)會喚醒該線程繼續(xù)運行。2.參考答案:

      本地:共享內(nèi)存+信號量,適合于大量數(shù)據(jù)傳輸。Linux支持系統(tǒng)V和POSIX的共享內(nèi)存和信號量。(5分)

      遠程:Socket+應用協(xié)議。適合于跨網(wǎng)絡的(大量)數(shù)據(jù)傳輸。Linux支持BSD的socket。應用層協(xié)議需要自行設計。(5分)

      3.答案要點:程序是編譯后形成的可執(zhí)行代碼,是靜止的。進程是程序的一次執(zhí)行,是活動的。線程是進程的可執(zhí)行單元,同一進程的不同線程共享進程的資源和地址空間。4.兩種實現(xiàn)方法,一種是繼承Thread,另外一種是實現(xiàn)接口Runnable。

      同步的實現(xiàn)方法有兩種,分別是synchronized, wait與notify。用synchronized可以對一段代碼、一個對象及一個方法進行加鎖。用wait與notify可以使對象處于等待及喚醒方式導致同步,因為每個對象都直接或間接的繼承了Object類。

      5、什么是BootLoader?主要有幾種工作模式及主要功能是什么? 答:

      Bootloader就是操作系統(tǒng)內(nèi)核運行的一段小程序,完成進行初始化系統(tǒng)硬件設置的任務,(2分)

      分為啟動加載模式和下載模式。(1啟動加載模式

      啟動加載(Boot laoding)模式是指 Bootloader 從目標機上的某個固態(tài)存儲設備上將操作系統(tǒng)加載到 RAM 中運行,整個過程并沒有用戶的介入。(2分)(2)下載模式

      在下載模式下,目標機上的 Bootloader 將先通過串口連接或網(wǎng)絡連接等通信手段從宿主機下載文件。(2分)

      6、簡述Bootloader有何作用?

      答案要點:(1)首先,bootloader是在特定硬件平臺運行的程序,嚴重依賴于硬件平臺,需要移植;(2)是系統(tǒng)上電之后,第一個運行的程序,系統(tǒng)在上電或復位時通常都從地址 0x0 處開始執(zhí)行,而在這個地址處安排的通常就是系統(tǒng)的 Boot Loader 程序;(3)bootloader程序的設計目標是啟動嵌入式操作系統(tǒng),嵌入式操作系統(tǒng)的啟動需要一定的條件,這些條件由bootloader來滿足;(4)Bootloader一般具有對存儲器和網(wǎng)絡接口操作的功能;如擦除、讀寫Flash,通過USB、串口下載文件等

      第五篇:嵌入式考試筆試

      基于雙核處理器的視頻觀瞄設備,同時實現(xiàn)標清分辨率的紅外和可見光兩路模擬復合信號采集和處理,且由兩個內(nèi)核中的CoreA完成紅外通道視頻信號處理,CoreB完成可見光通道視頻處理,系統(tǒng)需要按照嵌入式系統(tǒng)模式實現(xiàn)“通道關聯(lián)”實時紅外信號檢測與目標型號判別。

      要求:

      1.畫出實現(xiàn)此功能的硬件流程圖和軟件流程圖

      2.程序會用到數(shù)據(jù)結構和數(shù)據(jù)傳輸流程

      3.在多任務情況下,進程和線程的區(qū)別與聯(lián)系。以及如何保持同步

      4.影響實時性的主要參數(shù),以及如何改善。

      解:

      12數(shù)據(jù)結構會用到乒乓雙緩沖

      3進程是具有一定獨立功能的程序關于某個數(shù)據(jù)集合上的一次運行活動,進程是系統(tǒng)進行資源分配和調(diào)度的一個獨立單位。

      線程是進程的一個實體,是CPU調(diào)度和分派的基本單位,它是比進程更小的能獨立運行的基本單位.線程自己基本上不擁有系統(tǒng)資源,只擁有一點在運行中必不可少的資源(如程序計數(shù)器,一組寄存器和棧),但是它可與同屬一個進程的其他的線程共享進程所擁有的全部資源.聯(lián)系:線程是一個更加接近于執(zhí)行體的概念,它可以與同進程中的其他線程共享數(shù)據(jù),但擁有自己的??臻g,擁有獨立的執(zhí)行序列。

      區(qū)別:進程和線程的主要差別在于它們是不同的操作系統(tǒng)資源管理方式。進程有獨立的地址空間,一個進程崩潰后,在保護模式下不會對其它進程產(chǎn)生影響,而線程只是一個進程中的不同執(zhí)行路徑。線程有自己的堆棧和局部變量,但線程之間沒有單獨的地址空間,一個線程死掉就等于整個進程死掉,所以多進程的程序要比多線程的程序健壯,但在進程切換時,耗費資源較大,效率要差一些。

      多任務下的同步:在多任務操作系統(tǒng)下,要保持線程和進程的同步利用:1臨界區(qū)2互斥鎖3信號量4事件機制

      4.所謂的實時性,也就是從系統(tǒng)發(fā)生到系統(tǒng)響應的時間?;蛘?,更廣泛一點,也就是從用戶輸入一個信息到系統(tǒng)處理完以后,返回給用戶的這個反應時間。影響實時性一般有一下幾個方面:

      1>中斷響應時間

      2>RTOS進程調(diào)度響應時間

      3>任務切換時間

      4>應用程序響應時間

      改善:

      中斷的響應時間是有處理器決定的,可以有系統(tǒng)設置來改善?;蛘邔ふ腋玫奶幚砥?。

      對于進程調(diào)度本身,有很多經(jīng)典的算法,可參考操作系統(tǒng)的理論部分,有些算法的實時性稍高,但整體性就稍差,有些則相反,可以選擇高效的進程調(diào)度策略,來提高進程響應速度。另外,盡量減少系統(tǒng)的進程數(shù),進程越少,處理器的負擔越小,響應就越快。進程中屏蔽中斷的地方就越少,則整體響應時間就越快。

      采用搶占式內(nèi)核處理形式

      提高應用程序的執(zhí)行效率

      下載嵌入式Linux考試習題總結5篇word格式文檔
      下載嵌入式Linux考試習題總結5篇.doc
      將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
      點此處下載文檔

      文檔為doc格式


      聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻自行上傳,本網(wǎng)站不擁有所有權,未作人工編輯處理,也不承擔相關法律責任。如果您發(fā)現(xiàn)有涉嫌版權的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進行舉報,并提供相關證據(jù),工作人員會在5個工作日內(nèi)聯(lián)系你,一經(jīng)查實,本站將立刻刪除涉嫌侵權內(nèi)容。

      相關范文推薦

        嵌入式總結

        一、嵌入式系統(tǒng)原理與應用課程總結 這個學期我學習了《嵌入式原理與應用》這門課程,雖然這個學期馬上就要結束了,對嵌入式的學習也要告一段落了,但是我覺得收獲還是很大的。學......

        嵌入式工程師考試題目

        筆試題(60分鐘)姓名: 成績: 嵌入式系統(tǒng) 1. 2. 3. 4. 5. 簡述什么是嵌入式系統(tǒng)。 簡述ARM的版本及特點。 簡述INTEL XSCALE架構的主要組成。 簡述INTEL PXA255的邏輯結構。 簡述你了解的嵌......

        嵌入式復習總結

        一:嵌入式系統(tǒng)概述 1嵌入式定義 2嵌入式與通用計算機 A.嵌入式系統(tǒng)具有應用針對性 B.嵌入式系統(tǒng)硬件一般對擴展能力要求不高 C.嵌入式一般采用專門針對嵌入式應用設計的處理......

        嵌入式Linux總結

        1.虛擬機64位,正確配置交叉編譯工具和環(huán)境變量后arm-linux-gcc–v 出錯 64位系統(tǒng)運行32位的unicore需要32位運行庫 sudo apt-get install lsb-core(驗證) sudo apt-get install......

        嵌入式 知識點總結

        1、嵌入式系統(tǒng)的特點: (1).嵌入式系統(tǒng)的個性化很強,軟件系統(tǒng)和硬件在不同的應用中均有差異; (2).由通用計算機系統(tǒng)發(fā)展而來,根據(jù)應用對軟硬件進行裁剪; (3).高的可靠性,強的實用性......

        嵌入式學習心得總結

        嵌入式學習心得總結(精選多篇) 嵌入式學習心得總結 4月10號,為期一個階段的linux開發(fā)基礎培訓課程圓滿結束,回首這些天所留下的點點滴滴,感觸深深,學習上知識點的積累,靈活運用的......

        嵌入式培訓總結

        篇一:嵌入式培訓報告 學號: 創(chuàng)新生產(chǎn)實習報 學院 電信學院 專業(yè) 班級 學生 實習時間 年12月日至月 告 摘要 嵌入式系統(tǒng)是一種專用的計算機系統(tǒng),作為裝置或設備的一部分。通......

        實習總結嵌入式

        實習總結 就在昨天3月9日,學校規(guī)定實習時間已經(jīng)到期了。從上個月的13日到現(xiàn)在已經(jīng)近一個月,雖然與公司的實習時間還沒有結束,但是為了完成學校交待的任務,在此對這段時間的實習......