第一篇:軟考嵌入式系統(tǒng)設計師筆記歸納總結
軟考嵌入式系統(tǒng)設計師筆記
1.嵌入式系統(tǒng)的組成:硬件層、中間層、系統(tǒng)軟件層和應用軟件層
(1)硬件層:嵌入式微處理器、存儲器、通用設備接口和I/O 接口。
嵌入式核心模塊=微處理器+電源電路+時鐘電路+存儲器
Cache:位于主存和嵌入式微處理器內核之間,存放的是最近一段時間微處理器使用最多的程序代碼和數(shù)據(jù)。它的主要目標是減小存儲器給微處理器內核造成的存儲器訪問瓶頸,使處理速度更快。
(2)中間層(也稱為硬件抽象層HAL 或者板級支持包BSP):它將系統(tǒng)上層軟件和底層硬件分離開來,使系統(tǒng)上層軟件開發(fā)人員無需關系底層硬件的具體情況,根據(jù)BSP 層提供的接口開發(fā)即可。
BSP 有兩個特點:硬件相關性和操作系統(tǒng)相關性。
設計一個完整的BSP 需要完成兩部分工作:
A、嵌入式系統(tǒng)的硬件初始化和BSP 功能。
片級初始化:純硬件的初始化過程,把嵌入式微處理器從上電的默認狀態(tài)逐步設置成系統(tǒng)所要求的工作狀態(tài)。
板級初始化:包含軟硬件兩部分在內的初始化過程,為隨后的系統(tǒng)初始化和應用程序建立硬件和軟件的運行環(huán)境。
系統(tǒng)級初始化:以軟件為主的初始化過程,進行操作系統(tǒng)的初始化。
B、設計硬件相關的設備驅動。
(3)系統(tǒng)軟件層:由RTOS、文件系統(tǒng)、GUI、網(wǎng)絡系統(tǒng)及通用組件模塊組成。
RTOS 是嵌入式應用軟件的基礎和開發(fā)平臺。
(4)應用軟件:由基于實時系統(tǒng)開發(fā)的應用程序組成。2.嵌入式系統(tǒng)的定義
(1)定義:以應用為中心,以計算機技術為基礎,軟硬件可裁剪,適應應用系統(tǒng)對功能、可靠性、成本、體積、功耗嚴格要求的專用計算機系統(tǒng)。
(2)嵌入式系統(tǒng)發(fā)展的4 個階段:無操作系統(tǒng)階段、簡單操作系統(tǒng)階段、實時操作系統(tǒng)階段、面向Internet 階段。
(3)知識產(chǎn)權核(IP 核):具有知識產(chǎn)權的、功能具體、接口規(guī)范、可在多個集成電路設計中重復使用的功能模塊,是實現(xiàn)系統(tǒng)芯片(SOC)的基本構件。
(4)IP 核模塊有行為、結構和物理3 級不同程度的設計,對應描述功能行為的不同可以分為三類:軟核、固核、硬核。3.實時系統(tǒng)的調度
(1)調度:給定一組實時任務和系統(tǒng)資源,確定每個任務何時何地執(zhí)行的整個過程。
(2)搶占式調度:通常是優(yōu)先級驅動的調度,如uCOS。優(yōu)點是實時性好、反應快,調度算法相對簡單,可以保證高優(yōu)先級任務的時間約束;缺點是上下文切換多。
(3)非搶占式調度:通常是按時間片分配的調度,不允許任務在執(zhí)行期間被中斷,任務一旦占用處理器就必須執(zhí)行完畢或自愿放棄,如WinCE。優(yōu)點是上下文切換少;缺點是處理器有效資源利用率低,可調度性不好。
(4)靜態(tài)表驅動策略:系統(tǒng)在運行前根據(jù)各任務的時間約束及關聯(lián)關系,采用某種搜索策略生成一張運行時刻表,指明各任務的起始運行時刻及運行時間。
(5)優(yōu)先級驅動策略:按照任務優(yōu)先級的高低確定任務的執(zhí)行順序。
(6)實時任務分類:周期任務、偶發(fā)任務、非周期任務。
(7)實時系統(tǒng)的通用結構模型:數(shù)據(jù)采集任務實現(xiàn)傳感器數(shù)據(jù)的采集,數(shù)據(jù)處理任務處理采集的數(shù)據(jù)、并將加工后的數(shù)據(jù)送到執(zhí)行機構管理任務控制機構執(zhí)行。4.實時系統(tǒng)
(1)定義:能在指定或確定的時間內完成系統(tǒng)功能和對外部或內部、同步或異步時間做出響應的系統(tǒng)。
(2)區(qū)別:通用系統(tǒng)一般追求的是系統(tǒng)的平均響應時間和用戶的使用方便;而實時系統(tǒng)主要考慮的是在最壞情況下的系統(tǒng)行為。
(3)特點:時間約束性、可預測性、可靠性、與外部環(huán)境的交互性。
(4)硬實時(強實時):指應用的時間需求應能夠得到完全滿足,否則就造成重大安全事故,甚至造成重大的生命財產(chǎn)損失和生態(tài)破壞,如:航天、軍事。
(5)軟實時(弱實時):指某些應用雖然提出了時間的要求,但實時任務偶爾違反這種需求對系統(tǒng)運行及環(huán)境不會造成嚴重影響,如:監(jiān)控系統(tǒng)、實時信息采集系統(tǒng)。
(6)任務的約束包括:時間約束、資源約束、執(zhí)行順序約束和性能約束。5.嵌入式微處理器體系結構
(1)馮諾依曼結構:程序和數(shù)據(jù)共用一個存儲空間,程序指令存儲地址和數(shù)據(jù)存儲地址指向同一個存儲器的不同物理位置,采用單一的地址及數(shù)據(jù)總線,程序和數(shù)據(jù)的寬度相同。例如:8086、ARM7、MIPS?
(2)哈佛結構:程序和數(shù)據(jù)是兩個相互獨立的存儲器,每個存儲器獨立編址、獨立訪問,是一種將程序存儲和數(shù)據(jù)存儲分開的存儲器結構。例如:AVR、ARM9、ARM10?
(3)CISC 與RISC 的特點比較(參照教程22 頁)。
計算機執(zhí)行程序所需要的時間P 可以用下面公式計算:
P=I×CPI×T
I:高級語言程序編譯后在機器上運行的指令數(shù)。
CPI:為執(zhí)行每條指令所需要的平均周期數(shù)。
T:每個機器周期的時間。
(4)流水線的思想:在CPU 中把一條指令的串行執(zhí)行過程變?yōu)槿舾芍噶畹淖舆^程在CPU 中重疊執(zhí)行。
(5)流水線的指標:
吞吐率:單位時間里流水線處理機流出的結果數(shù)。如果流水線的子過程所用時間不一樣長,則吞吐率應為最長子過程的倒數(shù)。
建立時間:流水線開始工作到達最大吞吐率的時間。若m 個子過程所用時間一樣,均為t,則建立時間T=mt。
(6)信息存儲的字節(jié)順序
A、存儲器單位:字節(jié)(8 位)
B、字長決定了微處理器的尋址能力,即虛擬地址空間的大小。
C、32 位微處理器的虛擬地址空間位2^32,即4GB。
D、小端字節(jié)順序:低字節(jié)在內存低地址處,高字節(jié)在內存高地址處。
E、大端字節(jié)順序:高字節(jié)在內存低地址處,低字節(jié)在內存高地址處。
F、網(wǎng)絡設備的存儲順序問題取決于OSI 模型底層中的數(shù)據(jù)鏈路層。6.邏輯電路基礎
(1)根據(jù)電路是否具有存儲功能,將邏輯電路劃分為:組合邏輯電路和時序邏輯電路。
(2)組合邏輯電路:電路在任一時刻的輸出,僅取決于該時刻的輸入信號,而與輸入信號作用前電路的狀態(tài)無關。常用的邏輯電路有譯碼器和多路選擇器等。
(3)時序邏輯電路:電路任一時刻的輸出不僅與該時刻的輸入有關,而且還與該時刻電路的狀態(tài)有關。因此,時序電路中必須包含記憶元件。觸發(fā)器是構成時序邏輯電路的基礎。常用的時序邏輯電路有寄存器計數(shù)器等。
(4)真值表、布爾代數(shù)、摩根定律、門電路的概念。(教程28、29 頁)
(5)NOR(或非)和NAND(與非)的門電路稱為全能門電路,可以實現(xiàn)任何一種邏輯函數(shù)。
(6)譯碼器:多輸入多輸出的組合邏輯網(wǎng)絡。
每輸入一個n 位的二進制代碼,在m 個輸出端中最多有一個有效。
當m=2n 是,為全譯碼;當m<2n 時,為部分譯碼。
(7)由于集成電路的高電平輸出電流小,而低電平輸出電流相對比較大,采用集成門電路直接驅動LED時,較多采用低電平驅動方式。液晶七段字符顯示器LCD 利用液晶有外加電場和無外加電場時不同的光學特性來顯示字符。
(8)時鐘信號是時序邏輯的基礎,它用于決定邏輯單元中的狀態(tài)合適更新。同步是時鐘控制系統(tǒng)中的主要制約條件。
(9)在選用觸發(fā)器的時候,觸發(fā)方式是必須考慮的因素。觸發(fā)方式有兩種:
電平觸發(fā)方式:具有結構簡單的特點,常用來組成暫存器。
邊沿觸發(fā)方式:具有很強的抗數(shù)據(jù)端干擾能力,常用來組成寄存器、計數(shù)器等。7.總線電路及信號驅動
(1)總線是各種信號線的集合,是嵌入式系統(tǒng)中各部件之間傳送數(shù)據(jù)、地址和控制信息的公共通路。在同一時刻,每條通路線路上能夠傳輸一位二進制信號。按照總線所傳送的信息類型,可以分為:數(shù)據(jù)總線(DB)、地址總線(AB)和控制總線(CB)。
(2)總線的主要參數(shù):
總線帶寬:一定時間內總線上可以傳送的數(shù)據(jù)量,一般用MByte/s 表示。
總線寬度:總線能同時傳送的數(shù)據(jù)位數(shù)(bit),即人們常說的32 位、64 位等總線寬度的概念,也叫總線位寬。總線的位寬越寬,總線每秒數(shù)據(jù)傳輸率越大,也就是總線帶寬越寬。
總線頻率:工作時鐘頻率以MHz 為單位,工作頻率越高,則總線工作速度越快,也即總線帶寬越寬。
總線帶寬= 總線位寬×總線頻率/8,單位是MBps。
常用總線:ISA 總線、PCI 總線、IIC 總線、SPI 總線、PC104 總線和CAN 總線等。
(3)只有具有三態(tài)輸出的設備才能夠連接到數(shù)據(jù)總線上,常用的三態(tài)門為輸出緩沖器。
(4)當總線上所接的負載超過總線的負載能力時,必須在總線和負載之間加接緩沖器或驅動器,最常用的是三態(tài)緩沖器,其作用是驅動和隔離。
(5)采用總線復用技術可以實現(xiàn)數(shù)據(jù)總線和地址總線的共用。但會帶來兩個問題:
A、需要增加外部電路對總線信號進行復用解耦,例如:地址鎖存器。
B、總線速度相對非復用總線系統(tǒng)低。
(6)兩類總線通信協(xié)議:同步方式、異步方式。
(7)對總線仲裁問題的解決是以優(yōu)先級(優(yōu)先權)的概念為基礎。8.電平轉換電路
(1)數(shù)字集成電路可以分為兩大類:雙極型集成電路(TTL)、金屬氧化物半導體(MOS)。
(2)CMOS 電路由于其靜態(tài)功耗極低,工作速度較高,抗干擾能力較強,被廣泛使用。
(3)解決TTL 與CMOS 電路接口困難的辦法是在TTL 電路輸出端與電源之間接一上拉電阻R,上拉電阻R 的取值由TTL 的高電平輸出漏電流IOH 來決定,不同系列的TTL 應選用不同的R 值。9.差錯控制編碼
(1)根據(jù)碼組的功能,可以分為檢錯碼和糾錯碼兩類。檢錯碼是指能自動發(fā)現(xiàn)差錯的碼,例如奇偶檢驗碼;糾錯碼是指不僅能發(fā)現(xiàn)差錯而且能自動糾正差錯的碼,例如循環(huán)冗余校驗碼。
(2)奇偶檢驗碼、海明碼、循環(huán)冗余校驗碼(CRC)。(教程70 到77 頁)10.嵌入式系統(tǒng)的度量項目
(1)性能指標:分為部件性能指標和綜合性能指標,主要包括:吞吐率、實時性和各種利用率。
(2)可靠性與安全性
可靠性是嵌入式系統(tǒng)最重要、最突出的基本要求,是一個嵌入式系統(tǒng)能正常工作的保證,一般用平均故障間隔時間MTBF 來度量。
(3)可維護性:一般用平均修復時間MTTR 表示。
(4)可用性
(5)功耗
(6)環(huán)境適應性
(7)通用性
(8)安全性
(9)保密性
(10)可擴展性
性價比中的價格,除了直接購買嵌入式系統(tǒng)的價格外,還應包含安裝費用、若干年的運行維修費用和軟件租用費。
11.嵌入式系統(tǒng)中信息表示與運算基礎
(1)進位計數(shù)制與轉換:這樣比較簡單,也應該掌握怎么樣進行換算,有出題的可能。
(2)計算機中數(shù)的表示:源碼、反碼與補碼。
正數(shù)的反碼與源碼相同,負數(shù)的反碼為該數(shù)的源碼除符號位外按位取反。
正數(shù)的補碼與源碼相同,負數(shù)的補碼為該數(shù)的反碼加一。
例如-98 的源碼:11100010B
反碼:10011101B
補碼:10011110B
(3)定點表示法:數(shù)的小數(shù)點的位置人為約定固定不變。
浮點表示法:數(shù)的小數(shù)點位置是浮動的,它由尾數(shù)部分和階數(shù)部分組成。
任意一個二進制N 總可以寫成:N=2P×S。S 為尾數(shù),P 為階數(shù)。(4)漢字表示法(教程67、68 頁),搞清楚GB2318-80 中國標碼和機內碼的變換。
(5)語音編碼中波形量化參數(shù)(可能會出簡單的計算題目哦)
采樣頻率:一秒內采樣的次數(shù),反映了采樣點之間的間隔大小。
人耳的聽覺上限是20kHz,因此40kHz 以上的采樣頻率足以使人滿意。
CD 唱片采用的采樣頻率是44.1kHz。
測量精度:樣本的量化等級,目前標準采樣量級有8 位和16 位兩種。
聲道數(shù):單聲道和立體聲雙道。立體聲需要兩倍的存儲空間。12.嵌入式系統(tǒng)的評價方法:測量法和模型法
(1)測量法是最直接最基本的方法,需要解決兩個問題:
A、根據(jù)研究的目的,確定要測量的系統(tǒng)參數(shù)。
B、選擇測量的工具和方式。
(2)測量的方式有兩種:采樣方式和事件跟蹤方式。
(3)模型法分為分析模型法和模擬模型法。分析模型法是用一些數(shù)學方程去刻畫系統(tǒng)的模型,而模擬模型法是用模擬程序的運行去動態(tài)表達嵌入式系統(tǒng)的狀態(tài),而進行系統(tǒng)統(tǒng)計分析,得出性能指標。
(4)分析模型法中使用最多的是排隊模型,它包括三個部分:輸入流、排隊規(guī)則和服務機構。
(5)使用模型對系統(tǒng)進行評價需要解決3 個問題:設計模型、解模型、校準和證實模型。13.1.嵌入式微處理器的基本結構
(1)嵌入式硬件系統(tǒng)一般由嵌入式微處理器、存儲器和輸入/輸出部分組成。
(2)嵌入式微處理器是嵌入式硬件系統(tǒng)的核心,通常由控制單元、算術邏輯單元和寄存器3大部分組成:
A、控制單元:主要負責取指、譯碼和取數(shù)等基本操作并發(fā)送主要的控制指令。
B、算術邏輯單元:主要處理數(shù)值型數(shù)據(jù)和進行邏輯運算工作。
C、寄存器:用于暫存臨時性的數(shù)據(jù)。
2.嵌入式微處理器的分類(根據(jù)用途)
(1)嵌入式微控制器(MCU):又稱為單片機,片上外設資源一般比較豐富,適合于控制。最大的特點是單片化,體積小,功耗和成本低,可靠性高。目前約占70%的市場份額。
(2)嵌入式微處理器(EMPU):又稱為單板機,由通用計算機中的CPU 發(fā)展而來,它的特征是具有32位以上的處理器,具有較高的性能。通常嵌入式微處理器把CPU、ROM、RAM 及I/O 等模塊做到同一個芯片上。
(3)嵌入式DSP 處理器(DSP):專門用于信號處理方面的處理器,其在系統(tǒng)結構和指令算法方面進行了特殊設計,使其處理速度比最快的CPU 還快10~50倍,在數(shù)字濾波、FFT、頻譜分析等方面獲得了大量的應用。
(4)嵌入式片上系統(tǒng)(SOC):追求產(chǎn)品系統(tǒng)最大包容的集成器件,其最大的特點是成功實現(xiàn)了軟硬件的無縫結合,直接在微處理器片內嵌入操作系統(tǒng)的代碼模塊。
3.典型8位微處理器(具有8位數(shù)據(jù)總線)的結構和特點
該部分參考《教程》86~94頁,以8051為重點,徹底搞清楚8位單片機的工作原理,外設控制、存儲分布、尋址方式以及典型應用。2007年11月下午的第一道題目就考查了8051的定時器使用、外部時鐘連接、實際應用的流程設計以及典型的尋址方式。這些考點幾乎可以在《教程》上找到,例如外部時鐘連接那個問題的答案就是《教程》89頁上面的原圖。4.典型16位微處理器的結構和特點
該部分參考《教程》94~97頁。典型的微處理器可以參考MSP430,找一本這方面的書看看關于MSP430的結構原理以及典型應用。
5.典型32位微處理器的結構和特點
該部分參考《教程》97~112頁。32位處理器采用32位的地址和數(shù)據(jù)總線,其地址空間達到了2^32=4GB。
目前主流的32位嵌入式處理器系統(tǒng)主要有ARM 系列、MIPS 系列、PoewrPC 系列等。ARM 微處理器體系結構目前被公認為是嵌入式應用領域領先的32位嵌入式RISC 處理器結構。按照目前的發(fā)展形式,ARM 幾乎成了嵌入式應用的代名詞。按照我個人的意見,作為嵌入式系統(tǒng)設計師考試,逐漸增加考查ARM 體系結構與編程方面的題目是大勢所趨。2006年沒有一道關于ARM 的題目,2007年出了少量題目,可能在2008年會繼續(xù)增加。在下午題方面,2006年考查了X86方面的應用、2007年考查了8051方面的應用,這個可能是一個過度過程,以目前ARM 在嵌入式領域的廣泛應用和普及程度,下午題目考查ARM 應用方面或者32位其他的微處理器方面的應用題目可能在不就將來的考試中就會出現(xiàn)。14.單片機系統(tǒng)的基本概念
(1)單片機組成:中央處理器、存儲器、I/O 設備。
(2)存儲器:物理實質是一組或多組具備數(shù)據(jù)輸入/輸出和數(shù)據(jù)存儲功能的集成電路,用于充當設備緩存或保存固定的程序及數(shù)據(jù)。
A、ROM(只讀存儲器):一般用于存放固定的程序或數(shù)據(jù)表格等,數(shù)據(jù)在掉電后仍然會保留下來。
B、RAM(隨機存儲器):用于暫存程序和數(shù)據(jù)、中間計算結果,或用作堆棧用等,數(shù)據(jù)在掉電后就會丟失。
(3)I/O端口:單片機與外界聯(lián)系的通道,它可以對各類外部信號(開關量、模擬量、頻率信號)進行檢測、判斷、處理,并可控制各類外部設備。現(xiàn)在的單片機I/O 口已經(jīng)集成了更多的特性和功能,對I/O端口的功能進行了拓展和復用,例如外部中斷、ADC 檢測以及PWM 輸出等等。
(4)輸出電平:高電平電壓(輸出“1”時)和低電平電壓(輸出“0”時)
A、TTL 電平:正邏輯,5V 為邏輯正,0V 為邏輯負,例如單片機的輸出。
B、RS232電平:負邏輯,-12V 為邏輯正,+12V 為邏輯負,例如PC 的輸出。
注:因此在單片機和PC 進行通訊的時候需要一個MAX232芯片進行電平轉換。
(5)堆棧:它是一種線性的數(shù)據(jù)結構,是一個只有一個進出口的一維空間。
A、堆棧特性:后進先出(LIFO)
B、堆棧指針:用于指示棧頂?shù)奈恢?地址),當發(fā)生壓棧或者出棧操作時,導致棧頂位置變化時,堆棧指針會隨之變化。
C、堆棧操作:壓棧操作(PUSH)和出棧操作(POP)。
D、堆棧類型:“向上生長”型堆棧,每次壓棧時堆棧指針加1;“向下生長”型堆棧,每次壓棧堆棧時指針減1。
E、堆棧應用:調用子程序、響應中斷時,堆棧用于保護現(xiàn)場;還可以用作臨時數(shù)據(jù)緩沖區(qū)來使用。
F、使用注意:堆棧溢出問題,壓棧和出棧的匹配問題。
(6)定時/計數(shù)器:實質都是計數(shù)器。用作定時器時是對單片機內部的時鐘脈沖進行計數(shù),而在用作計數(shù)器時是對單片機外部的輸入脈沖進行計數(shù),其作用如下:
A、計時、定時或延時控制;
B、脈沖技術;
C、測量脈沖寬度或頻率(捕獲功能)
(7)中斷:優(yōu)先級更高的事件發(fā)生,打斷優(yōu)先級低的時間進程。引起中斷的事件稱為中斷源。一個單片機可能支持多個中斷源,這些中斷源可以分為可屏蔽中斷和非可屏蔽中斷,而這些中斷源并不都是系統(tǒng)工作所需的,我們可以根據(jù)系統(tǒng)需求屏蔽那些不需要的中斷源。
A、中斷嵌套:當一個低級中斷尚未執(zhí)行完畢,又發(fā)生了一個高級優(yōu)先級的中斷,系統(tǒng)轉而執(zhí)行高級中斷服務程序,待處理完高級中斷后再回過頭來執(zhí)行低級中斷服務程序。
B、中斷響應時間是指從發(fā)出中斷請求到進入中斷處理所用的時間;中斷處理時間是指中斷處理開始到中斷處理結束的時間。
C、中斷響應過程:
a、保護現(xiàn)場:將當前地址、累加器ACC、狀態(tài)寄存器保存到堆棧中。
b、切換PC 指針:根據(jù)不同的中斷源所產(chǎn)生的中斷,切換到相應的入口地址。
c、執(zhí)行中斷服務處理程序。
d、恢復現(xiàn)場:將保存在堆棧中的主程序地址、累加器ACC、狀態(tài)寄存器恢復。
e、中斷返回:從中斷處返回到主程序,繼續(xù)執(zhí)行。
D、中斷入口地址:單片機為每個中斷源分配了不同的中斷入口地址,也稱為中斷向量。
(8)復位:通過外部電路給單片機的復位引進一個復位信號,讓系統(tǒng)重新開始運行。
A、復位發(fā)生時的動作:
a、PC 指針從起始位置開始執(zhí)行(大多數(shù)單片機都時從0x0000處開始執(zhí)行)。
b、I/O 端口設置成缺省狀態(tài)(高阻態(tài)、或者輸出低電平)。
c、部分專用控制寄存器SFR 恢復到缺省狀態(tài)。
d、普通RAM 不變(如果時上電復位,則是隨即數(shù))。
B、兩種不同的復位啟動方式:
a、冷啟動:也叫上電復位,指在斷電狀態(tài)下給系統(tǒng)加電,讓系統(tǒng)開始正常運行。
b、熱啟動:在不斷電的狀態(tài)下,給單片機復位引進一個復位信號,讓系統(tǒng)重新開始。
C、兩種類型的復位電路:高電平復位和低電平復位。
D 注意事項:
a、注意復位信號的電平狀態(tài)及持續(xù)時間必須滿足系統(tǒng)要求。
b、注意避免復位信號抖動。
(9)時鐘電路:單片機是一種時序電路,必須提供脈沖電路才能正常工作。時鐘電路相當于單片機的心臟,它的每一次跳動(振動節(jié)拍)都控制著單片機的工作節(jié)奏。振蕩得慢時,系統(tǒng)工作速度就慢,振蕩得快時,系統(tǒng)工作速度就快(功耗也增大)。
A、振蕩周期:振蕩源的振蕩節(jié)拍。
B、機器周期:單片機完成一個基本操作需要的振蕩周期(節(jié)拍)。
C、指令周期:執(zhí)行一條指令需要幾個機器周期。不同的指令需要的機器周期數(shù)不同。15.地址映射
地址映射也叫地址重定位。
邏輯地址和物理地址是完全不同的,不能用邏輯地址來直接訪問內存單元。
為了保證CPU 在執(zhí)行指令的時候,可以正確地訪問內存單元,需要將用戶程序中的邏輯地址轉換為運行時由機器直接尋址的物理地址。這個過程稱為:地址映射。
地址映射由存儲管理單元MMU 來完成。
地址映射主要有兩種方式:靜態(tài)地址映射和動態(tài)地址映射。
靜態(tài)地址映射:當用戶程序被裝入內存時,直接對指令代碼進行修改,一次性地實現(xiàn)邏輯地址到物理地址的轉換。
動態(tài)地址映射:當用戶程序被裝入內存時,不對指令代碼做任何修改,而是在程序的運行過程中,當它需要訪問內存單元的時候,再來進行地址轉換。
在具體實現(xiàn)時,這項轉換工作一般是由硬件的地址映射機制來完成的。通常設置一個基地址寄存器,或者叫重定位寄存器。當一個任務被調度運行時,就把它所在分區(qū)的起始地址裝入到整個寄存器中。然后,在程序運行的過程中,當需要訪問某個內存單元時,硬件就會自動地將其中的邏輯地址加上基地址寄存器中的內容,從而得到實際的物理地址,并且按照這個物理地址區(qū)執(zhí)行。
這個基地址寄存器位于MMU 的內部,整個地址映射過程是自動運行的。從理論上說,每訪問一次內存都要進行一次地址映射。16.ARM體系結構的基本概念
(1)ARM:Advanced RISC Machine。
(2)ARM體系結構中支持兩種指令集:ARM 指令集和Thumb 指令集。
(3)ARM內核有T、D、M、I四個功能模塊:
A、T 模塊:表示16位Thumb,可以在兼顧性能的同時減少代碼尺寸。
B、D 模塊:表示Debug,內核中放置了用于調試的結構,通常為一個邊界掃描鏈JTAG。
C、M 模塊:表示8位乘法器。
D、I 模塊:表示EmbeddedICE Logic,用于實時斷點觀測及變量觀測的邏輯電路部分。
(4)ARM處理器有7種運行模式:
A、用戶模式(User):正常程序執(zhí)行模式,用于應用程序。
D、快速中斷模式(FIQ):快速中斷處理,用于高速數(shù)據(jù)傳輸和通道處理。
C、外部中斷模式(IRQ):用于通用的中斷處理。
D、管理模式(SVE):供操作系統(tǒng)使用的一種保護模式。
E、數(shù)據(jù)訪問中止模式(Abort):用于虛擬存儲及存儲保護。
F、未定義指令中止模式(Undefined):當未定義指令執(zhí)行時進入該模式。
G、系統(tǒng)模式(System):用于運行特權級的操作系統(tǒng)任務。
除了用戶模式之外的其他6種處理器模式稱為特權模式,在這些模式下,程序可以訪問所有的系統(tǒng)資源,也可以任意地進行處理器模式切換,其中,除了系統(tǒng)模式外,其他的5種特權模式又稱為異常模式。
處理器模式可以通過軟件控制進行切換,也可以通過外部中斷或異常處理過程進行切換。大多數(shù)的用戶程序運行在用戶模式下,這時,應用程序不能訪問一些受操作系統(tǒng)保護的系統(tǒng)資源,應用程序也不能直接進行處理器模式切換。當需要進行處理器模式切換時,應用程序可以產(chǎn)生異常處理,在異常處理中進行處理器模式的切換。這種體系結構可以使操作系統(tǒng)控制整個系統(tǒng)的資源。
當應用程序發(fā)生異常中斷時,處理器進入相應的異常模式。在每一種異常模式種都有一組寄存器,供相應的異常處理程序使用,這樣就可以保證進入異常模式時,用戶模式下的寄存器不被破壞。系統(tǒng)模式并不是通過異常過程進入的,它和用戶模式具有完全一樣的寄存器,但是系統(tǒng)模式屬于特權模式,可以訪問所有的系統(tǒng)資源,也可以直接進行處理器模式切換,它主要供操作系統(tǒng)任務使用。17.嵌入式操作系統(tǒng)概述
(1)內核
內核是指操作系統(tǒng)中的一個組件,它包含了OS 的主要功能,即OS 的各種特性及其相
互之間的依賴關系,這些功能主要包括:
A、任務管理:對系統(tǒng)中運行的軟件進行描述和管理,并完成處理器資源分配和調度。
B、存儲管理:提高內存的利用率,方便用戶使用,提供足夠的存儲空間。
C、設備管理:方便設備的使用,提高CPU 和I/O 設備的利用率。
D、文件管理:解決文件資源存儲、共享、保密和保護等問題。
注:不同嵌入式操作系統(tǒng)的內核設計各不相同,取決于系統(tǒng)設計和實際需求。
(2)嵌入式操作系統(tǒng)分類:
A、按系統(tǒng)類型:商業(yè)系統(tǒng)、專用系統(tǒng)、開源系統(tǒng)。
B、按響應時間:硬實時系統(tǒng)、軟實時系統(tǒng)。
C、按軟件結構:單體結構(uCOS)、分層結構(MS-DOS)、微內核結構(Vxworks)。18.嵌入式軟件基礎
(1)嵌入式軟件的特點:
A、規(guī)模較小。
B、開發(fā)難度大。
C、實時性和可靠性要求高。
D、要求固化存儲。
(2)嵌入式軟件分類:
A、系統(tǒng)軟件:控制和管理嵌入式系統(tǒng)資源,如嵌入式操作系統(tǒng)、驅動程序、中間件等。
B、應用軟件:定義嵌入式設備的主要功能和用途,負載與用戶進行交互。
C、支撐軟件:輔助軟件開發(fā)的工具軟件。
(3)無操作系統(tǒng)的嵌入式軟件的兩種實現(xiàn)方式:
A、循環(huán)輪轉
優(yōu)點:簡單、直觀、開銷小、可預測。
缺點:過于簡單,所有代碼順序執(zhí)行,無法處理異步事件,缺乏并行處理能力。
B、前后臺系統(tǒng)(在循環(huán)輪轉的基礎上增加了中斷處理功能)
前臺(事件處理級):中斷服務程序,負載處理異步事件。
后臺(任務級):一個無限循環(huán),負載資源分配、任務管理和系統(tǒng)調度。
(4)有操作系統(tǒng)的三大優(yōu)點:
A、提高系統(tǒng)的可靠性。
B、提高了系統(tǒng)的開發(fā)效率,降低了開發(fā)成本,縮短了開發(fā)周期。
C、有利于系統(tǒng)的擴展與移植。
(5)設備驅動層(也叫板級支持包BSP:包含了嵌入式系統(tǒng)中所有與硬件相關的代碼)
大多數(shù)的嵌入式硬件設備都需要某種類型軟件的初始化和管理。這部分工作由設備驅動層來完成的,它負責直接與硬件大交道,對硬件進行管理和控制,為上層軟件提供所需的驅動支持,類似PC 系統(tǒng)中的BIOS 和驅動程序。19.設備管理
(1)設備管理基礎
一個I/O 單元通常由兩個部分組成:
A、機械部分:I/O 設備本身。
B、電子部分:設備控制器或設備適配器。
硬件寄存器的編址方式有三種:
A、I/O獨立編址:對于各種設備控制器中的每一個寄存器,分配一個唯一的I/O端口編號,也叫I/O 端口地址,然后用專門的I/O 指令對這些端口進行操作。這些端口地址構成的地址空間是完全獨立的,與內存地址空間沒有任何關系。
B、內存映象編址:把各種設備控制器當中的每一個寄存器都映射為一個內存單元,這內存單元專門用于I/O 操作。端口地址空間與內存地址空間是統(tǒng)一編址的,端口地址空間是內存地址空間的一部分。
C、混合編址:對于設備控制器當中的寄存器采用獨立編址的方法,每個寄存器有一個獨立的I/O 端口地址;而對于設備的數(shù)據(jù)緩沖區(qū),則采用內存映象編址的方法,把他們統(tǒng)一到內存地址空間當中。
(2)I/O控制方式:
A、程序循環(huán)檢測:要一直占用CPU,浪費CPU 的時間。
B、中斷驅動方式:前后臺系統(tǒng)。
C、直接內存訪問:DMA 控制,減少了中斷的次數(shù)。20.任務管理
(1)嵌入式操作系統(tǒng)的任務管理可以分為:
A、單道程序技術:操作系統(tǒng)中,任何時候只能有一個程序在運行。
B、多道程序技術:操作系統(tǒng)中,允許多個程序同時存在并運行。
(2)進程
進程,簡單的說,是一個正在運行的程序。
進程與程序既有聯(lián)系又有區(qū)別,主要表現(xiàn)為下面結構方面:
A、程序由數(shù)據(jù)和代碼兩部分內容組成,它是一個靜態(tài)的概念。而進程是正在執(zhí)行的程序,它也由兩部分組成:程序和該程序的運行上下文。它是一個動態(tài)的概念。
B、程序和進程之間并不是一一對應的。一個進程在運行的時候可以啟動一個或多個程序。反之,同一個程序也可能由多進程同時執(zhí)行。
C、程序可以作為一種軟件資源長期保存,以文件的形式存放在光盤或硬盤上,而進程則是一次執(zhí)行的過程,它是暫時的,是動態(tài)的產(chǎn)生和終止。
一個進程至少應包括三個方面:相應的程序、CPU上下文、一組系統(tǒng)資源。
進程有三個特性:
A、動態(tài)性:進程是正在運行的程序,而程序的運行狀態(tài)是不斷變化的。
B、獨立性:進程是系統(tǒng)資源的使用單位,每個進行有自己的運行上下文和內部狀態(tài)。
C、并發(fā)性:宏觀來看,系統(tǒng)中同時有多個進程存在,它們相互獨立地運行。
注:對于并發(fā)的理解。
在單CPU 的情況下,所謂的并發(fā)性指的是宏觀上的并發(fā)運行,而微觀上還是順序進行,各個進程輪流去使用CPU 資源。在單核CPU 中,真正的、物理上的PC 寄存器只有一個,進程在輪流執(zhí)行的時候,物理PC 的取值也在不斷變化。而邏輯PC 其實就是一個內存變量。每個進程都有一個邏輯PC,當一個進程要運行的時候,就把它的邏輯PC 裝載到物理PC 中去;反之,當一個進程暫不運行的時候,就把物理PC中的值保存在它的邏輯PC 當中。
(3)線程
線程就是進程當中的一條執(zhí)行流程。
進程其實包含兩個部分:資源平臺和執(zhí)行流程(線程)。
在一個進程當中,或者說在一個資源平臺上,可以同時存在多個線程;可以用線程作為CPU 的基本調度單位,使得各個線程之間可以并發(fā)執(zhí)行;對于同一個進程當中的各個線程來說,他們可以共享該進程的大部分資源。每個線程都有自己獨立的CPU運行上下文和棧,這是不能共享的。21.文件系統(tǒng)
(1)嵌入式文件系統(tǒng)概述
文件系統(tǒng)就是操作系統(tǒng)中用以組織、存儲、命名、使用和保護文件的一套管理機制。
常見的嵌入式文件系統(tǒng)有:
A、FAT:VxWorks、QNX、WindowsCE 等
B、NFS:網(wǎng)絡文件系統(tǒng),基于遠程調用和擴展數(shù)據(jù)表示。
C、FFS:用于Flash 存儲器的文件系統(tǒng)。
(2)文件和目錄
A、當一個文件被創(chuàng)建時,必須給它指定一個名字,用戶就是通過文件名來訪問這個文件的。
B、文件命是一個有限長度的字符串,由兩部分組成:文件名和擴展名。
C、文件的邏輯結構主要有三種:無結構、簡單的記錄結構和復雜結構。現(xiàn)代文件系統(tǒng)通常采用的是無結構的形式。
D、除了文件名之外,操作系統(tǒng)會給每個文件附加一些其他信息,稱為文件的屬性。
E、文件的存取方法有兩種:順序存取和隨機存取。
F、目錄也稱為文件夾,它是一張表格,記錄了在該目錄下每個文件名和其他的一些管理信息。
G、在多級目錄結構中,訪問文件或目錄主要有兩種方法:絕對路徑名和相對路徑名。22.存儲器系統(tǒng)的層次架構
計算機系統(tǒng)的存儲器被組織城一個金字塔的層次結構。
自上而下為:CPU 內部寄存器、芯片內部高速緩存(cache)、芯片外部高速緩存(SRAM、SDRAM、DRAM)、主存儲器(FLASH、EEPROM)、外部存儲器(磁盤、光盤、CF 卡、SD 卡)和遠程二級存儲器(分布式文件系統(tǒng)、WEB 服務器),6個層次的結構。
上述設備從上而下,依次速度更慢、容量更大、訪問頻率更小,造價更便宜。22.高速緩存(cache)
工作原理(參照教程126頁,博客畫不了圖):主要利用了程序的局部性特點。
地址映象是指把主存地址空間映象到cache 的地址空間。
地址變換是指當程序或數(shù)據(jù)已經(jīng)裝入到cache 后,在實際運行過程中,把主存地址如何編程cache 空間的地址。
常用的地址映象和地址變換的方式有:(教程127頁)
直接映象和變換:速度快,造價低,但有局限性,不能充分利用cache 的好處。
組相聯(lián)地址映象和變換:速度稍慢但是命中率高。
全相聯(lián)地址映象和變換:可以任意映射。
常用的cache 替換算法:輪轉法和隨機替換算法。
高速緩存的分類:
統(tǒng)一cache 和獨立的數(shù)據(jù)/指令cache
寫通cache 和寫回cache
讀操作分配cache 和寫操作分配cache 23.存儲管理單元(MMU)
MMU 在CPU 和物理內存之間進行地址轉換,將地址從邏輯空間映射到物理空間,這個過程稱為內存映射。
MMU 主要完成下面的工作:
A.虛擬存儲空間到物理空間的映射。
B.存儲器訪問權限的控制。
C.設置虛擬存儲空間的緩沖特性。
嵌入式系統(tǒng)中常常采用頁式存儲管理。為了管理這些頁引入了頁表的概念。
頁表是位于內存中的表,它的每一行對應虛擬存儲空間的一個頁,該行包含了該虛擬內存頁對應的物理內存頁的地址、該頁的訪問權限和該頁的緩沖特性等。
從虛擬地址到物理地址的變換過程就是查詢頁表的過程。
由于頁表存儲在內存中的,整個查詢過程需要付出很大的代價。根據(jù)程序局部性的特點,增加了一個小容量、高速度的存儲部件來存放當前訪問需要的地址變換條目,這個存儲部件稱為:地址轉換后備緩沖器(TLB)。
當CPU 訪問內存時,首先在TLB 中查找需要的地址變換條目,如果該條目不存在,CPU 再從內存中的頁表中查詢,并把相應的結果添加到TLB 中,更新它的內容。
嵌入式系統(tǒng)中虛擬存儲空間到物理空間的映射以內存塊為單位進行。即虛擬存儲空間中一塊連續(xù)的存儲空間被映射到物理存儲空間中同樣大小的一塊連續(xù)存儲空間。
在頁表和TLB 中,每一個地址變換條目實際上記錄了一個虛擬存儲空間的內存塊的基地址與物理存儲空間相對應的一個內存塊的基地址之間的對應關系。
在MMU 中實現(xiàn)虛擬地址到物理地址的映射是通過兩級頁表來實現(xiàn)的。
禁止MMU 時,所有物理地址和虛擬地址相等,即使用平板存儲模式。24.內存保護
操作系統(tǒng)通常利用MMU 來實現(xiàn)操作系統(tǒng)內核與應用程序之間的隔離,以及應用程序與應用程序之間的隔離。
內存保護包含兩個方面的內容:
A.防止地址越界,每個應用程序都有自己獨立的地址空間。
B.防止越權操作,每個應用程序都有自己的訪問權限。25.實模式與保護模式
在嵌入式系統(tǒng)中,常見的存儲管理方案可以分為兩大類:實模式和保護模式。
實模式:內存的平面使用模式。特點有:
A.不劃分“系統(tǒng)空間”與“用戶空間”,無須進行地址映射。
B.操作系統(tǒng)與應用程序之間不再有物理的邊界。
C.系統(tǒng)中的“任務”或“進程”,實際上全是內核線程。
在實模式下,內存布局可以分為5個段:
A.代碼段:包含操作系統(tǒng)和應用程序的所有代碼。
B.數(shù)據(jù)段:所有帶有初始值的全局變量。
C.BSS 段:所有未帶初始值的全局變量。
D.堆空間:動態(tài)分配的內存空間。
E.棧空間:保存上下文以及函數(shù)調用時的局部變量和形參。
在實模式存儲管理方案下,主要的工作在于堆空間的管理,即如何來管理空閑的堆空間、如何來分配內存、如何來回收內存等等。
保護模式:處理器中必須有MMU 硬件并啟用。特點有:
A.系統(tǒng)內核和用戶程序都有各自獨立的地址空間。
B.每個應用程序只能訪問自己的地址空間,不能去破壞操作系統(tǒng)和其他應用程序的代碼和數(shù)據(jù)。26.分區(qū)存儲管理
為了實現(xiàn)多道程序系統(tǒng)而采用的最簡單的內存管理。
基本思路:把整個內存劃分為兩大區(qū)域,即系統(tǒng)區(qū)和用戶區(qū),然后再把用戶區(qū)劃分為若干個分區(qū),每個任務占有其中的一個分區(qū)。這樣,在內存當中就同時保留多個任務,讓他們共享整個用戶區(qū),從而實現(xiàn)多個任務的并發(fā)運行。
分區(qū)存儲管理又可以分為兩類:固定分區(qū)和可變分區(qū)。
固定分區(qū):各個用戶分區(qū)的個數(shù)、位置和大小一旦確定后,就固定不變,不能再修改。
優(yōu)點:易于實現(xiàn),系統(tǒng)開銷較小。
缺點:內存利用率不高,分區(qū)總數(shù)固定。
可變分區(qū):動態(tài)創(chuàng)建,在裝入一個程序時,系統(tǒng)將根據(jù)它的需求和內存空間的使用情況來決定是否分配。
優(yōu)點:動態(tài)變化,非常靈活。
缺點:可能存在外碎片。
在實現(xiàn)可變存儲管理技術的時候,需要考慮三個方面的問題:
A.內存管理的數(shù)據(jù)結構
B.內存的分配算法
C.內存的回收算法
27.嵌入式系統(tǒng)的特點、分類、發(fā)展與應用,熟悉嵌入式系統(tǒng)的邏輯組成。
(1)特點:
專用性
隱蔽性(嵌入式系統(tǒng)是被包裝在內部)
資源受限(要求小型化、輕型化、低功耗及低成本,因此軟硬件資源受到限制)
高可靠性(任何誤動作都可能會產(chǎn)生致命的后果)
軟件固化(軟件都固化在只讀存儲器ROM中,用戶不能隨意更改其程序功能)
實時性
(2)邏輯組成
硬件:1)處理器(運算器、控制器、存儲器)
目前所有的處理器都是微處理器 中央處理器(CPU)和協(xié)助處理器(數(shù)字信號處理器DSP、圖像處理器、通信處理器)
2)存儲器(隨機存儲器RAM和只讀存儲器ROM)
RAM分為動態(tài)DRAM和靜態(tài)SRAM兩種。DRAM電路簡單、集成度高、功耗小、成本低,但速度稍慢慢;SRAM電路較復雜、集成度低、功耗較大、成本高,但工作速度很快,適合用作指令和數(shù)據(jù)的高速緩沖存儲器
RAM當關機或斷電時,其中的信息都會消失,屬于易失性存儲器
ROM屬于不易失性存儲器。分為電可擦可編程只讀存儲器(存放
固件)和閃速存儲器(Flash ROM簡稱內存)。內存的工作原理:在低
壓下,存儲的信息可讀但不可寫,這類似于ROM;在較高的電壓下,所存儲的信息可以更改和刪除,這有類似于RAM。
3)I/O設備與I/O接口
4)數(shù)據(jù)總線
軟件
(3)分類
按嵌入式系統(tǒng)的軟硬件技術復雜程度進行分類:
1)低端系統(tǒng) 采用4位或8位單片機,在工控領域和白色家電領域占主導地位,如計算器、遙控器、充電器、空調、傳真機、BP機等。
2)中端系統(tǒng) 采用8位/16位/32位單片機,主要用于普通手機、攝像機、錄像機、電子游戲機等。
3)高端系統(tǒng)采用32位/64位單片機,主要用于智能手機、調制解調器、掌上計算機、路由器、數(shù)碼相機等。
(4)發(fā)展
20世紀60年代初,第一個工人的現(xiàn)代嵌入式系統(tǒng)(阿波羅導航計算機)
20世紀60年代中期,嵌入式計算機批量生產(chǎn)
20世紀70年代,微處理器出現(xiàn)
20世紀80年代中期,外圍電路的元器件被集成到處理器芯片中,昂貴的模擬電路元件能被數(shù)字電路替代
20世紀90年代中期SOC出現(xiàn),集成電路進入超深亞微米乃至納米加工時代。28.嵌入式系統(tǒng)的組成與微電子技術(集成電路、EDA、SoC、IP核等技術的作用和發(fā)展)
(1)集成電路IC 集成電路的制造大約需要幾百道工序,工藝復雜。集成電路是在硅襯底上制作而成的。硅襯底是將單晶硅錠經(jīng)切割、研磨和拋光后制成的像鏡面一樣光滑的圓形薄片,它的厚度不足1mm,其直徑可以是6、8、12英寸甚至更大這種硅片稱為硅拋光片,用于集成電路的制造。制造集成電路的工藝技術稱為硅平面工藝,包括氧化、光刻、摻雜等多項工序。把這些工序反復交叉使用,最終在硅片上制成包含多層電路及電子元件的集成電路。集成電路的特點:體積小、重量輕、可靠性高。其工作速度主要取決于邏輯門電路的晶體管的尺寸。尺寸越小,工作頻率就越高,門電路的開關速度就越快。(2)EDA(電子信號自動化)(3)SoC芯片(片上系統(tǒng))
既包含數(shù)字電路,也可以包含模擬電路,還可以包含數(shù)模混合電路和射頻電路。SoC芯片可以是一個CPU,單核SoC,也可以由多個CPU和/或DSP,即多核SoC。開發(fā)流程:
(1)總體設計
可以采用系統(tǒng)設計語言System C(或稱IEEE 1666,它是C++的擴充)或System Vetilog語言對SoC芯片的軟硬件作統(tǒng)一的描述,按照系統(tǒng)需求說明書確定SoC的性能能參數(shù),并據(jù)此進行系統(tǒng)全局的設計。
(2)邏輯設計
將總體設計的結果用RTL(寄存器傳輸級描述語言)語言進行描述(源文件)后,在使用邏輯綜合將源文件進行綜合生成,生成最簡的布爾表達式核心好的連接關系(以類型為EDF的EDA工業(yè)標準文件表示)(3)綜合和仿真
(4)芯片制造
借助EDA中的布局布線工具(4)IP核
IC設計文件:邏輯門級,包括各種基本的門電路;寄存器傳輸級,如寄存器、譯碼器、數(shù)據(jù)轉換器;行為級,如CPU、DSP、存儲器、總線與接口電路等。核庫中的設計文件均屬于知識產(chǎn)權IP保護的范疇,所以稱為“知識產(chǎn)權核”或“IP核”。IP核是開發(fā)SoC的重要保證。按IC設計文件的類型,IP通常分為:軟核、固核、硬核。IP核的復用可以減少研發(fā)成本,縮短研發(fā)時間,是實現(xiàn)SoC的快速設計,盡早投放市場的有效途徑。
目前主要的CPU內核有ARM、MIPS、PowerPC、Coldfile、x86、8051等。ARM內核占所有32位嵌入式RISC處理器的90%以上。
29.嵌入式系統(tǒng)與數(shù)字媒體(文本、圖像和音頻/視頻等數(shù)字媒體的表示與處理)(1)文本
含義:在計算機中的文字信息,最常用的一種數(shù)字媒體。字符集及其編碼
1)西方字符的編碼
ASCII字符集和ASCII編碼,基本的ASCII字符集共128個字符,每個字符使用7個二進位(最高位為奇偶校驗位,預留位)制進行編碼。2)漢字的編碼
漢子國家編碼標準有GB2312和GB18030。每個漢字用2個字節(jié)表示。GB2312只有6763個漢字,經(jīng)常不夠用。GB18030字符集與UCS/Unicode字符集基本兼容,采用不等長的編碼方法,單字節(jié)編碼表示ASCII字符,與ASCII碼兼容;雙字節(jié)表示漢字,與GB2312保持向下兼容(即GB2312中有的GB18030字符集都有)3)UCS/Unicode編碼 文本類型 1)簡單文本
只能順序閱讀。2)豐富格式文本
有插圖、對文字顏色等定義,調整頁面,文本布局,插入聲音視頻等。3)超文本
通過超鏈接實現(xiàn)跳轉、導航、回溯等操作(2)圖像
圖像獲取過程的核心是模擬信號的數(shù)字化,處理步驟為:
1)掃描
將畫面網(wǎng)格化,每個網(wǎng)格為一個取樣點 2)分色
將每個取樣點的顏色分解成三原色
3)取樣
測量每個取樣點的每個分量(基色)亮度值
4)量化
把模擬量使用數(shù)字量來表示,A/D轉換
數(shù)字圖像的主要參數(shù):圖像大小(水平分辨率*豎直分辨率)、位平面數(shù)目、像素深 度、顏色模型
一幅圖像的數(shù)據(jù)量計算公式:
圖像數(shù)據(jù)量=圖像大小*像素深度/8(3)音頻/視頻
音頻/視頻信息的數(shù)字化,處理步驟為: 1)取樣
2)量化
3)編碼
數(shù)字音頻的主要參數(shù):取樣頻率、量化位數(shù)、聲道數(shù)目、使用的壓縮編碼方法、比特率(每秒鐘的數(shù)據(jù)量)
壓縮前
波形聲音的碼率(比特率)= 取樣頻率 * 量化為數(shù) * 聲道數(shù)(單位b/s)壓縮后
碼率 = 壓縮前碼率 / 壓縮倍數(shù)(壓縮比)
30.嵌入式系統(tǒng)與網(wǎng)絡通信技術(數(shù)字通信與計算機網(wǎng)絡,TCP/IP協(xié)議,互聯(lián)網(wǎng)接入技術等)(1)數(shù)字通信(2)計算機網(wǎng)絡(3)音頻/ TCP/IP協(xié)議(4)互聯(lián)網(wǎng)接入技術
31.ARM處理器內核的體系結構(工作狀態(tài),工作模式,寄存器組織,異常,數(shù)據(jù)類型與存儲格式等)(1)工作狀態(tài)
一是ARM狀態(tài),二是Thumb指令狀態(tài)及Thumb-2狀態(tài),三是調試狀態(tài)。ARM處理器復位后開始執(zhí)行代碼時總是只處于ARM狀態(tài),如果需要,可通過下面的方法切換到Thumb狀態(tài)或Thumb-2狀態(tài)
ARM狀態(tài)切換到Thumb指令狀態(tài):通過BX指令,將操作數(shù)寄存器的最低位設置為1即可。如果R0[0]=1,則執(zhí)行BX R0指令將進入Thumb狀態(tài)
Thumb狀態(tài)切換到ARM狀態(tài):通過BX指令,將操作數(shù)寄存器的最低位設置為0即可。如果R0[0]=0,則執(zhí)行BX R0指令將進入ARM狀態(tài)。(2)七種工作模式
(3)寄存器組織
ARM處理器共有37種寄存器,包括31個通用寄存器(含PC)和6個狀態(tài)寄存器。無論何種模式,R15均作為PC使用;CPSR為當前程序狀態(tài)寄存器;R7-R0為公用的通用寄存器。所有通用寄存器均為32位結構。程序狀態(tài)寄存器的格式: 31 30 29 28 27
26??8
0
條件碼標志含義如下:
N為符號標志位,N=1為負數(shù),N=0為正數(shù)。Z為全0標志位,運算結果為0,則Z=1,否則Z=0; C為進借位標志,有進/借位時C=1,否則C=0.V為溢出標志,加減法運算結果溢出時V=1,否則V=0.Q為增強的DSP運算指令溢出標志,溢出時Q=1,否則Q=0.控制位含義如下:
I為中斷禁止控制位,I=1禁止IRQ中斷,I=0,允許中斷。
F為禁止快速中斷FIQ的控制位,F(xiàn)=1禁止FIQ中斷,F(xiàn)=0允許。
T為ARM和Thumb指令切換,T=1時執(zhí)行Thumb指令,否則執(zhí)行ARM指令。
M4-M0為模式選擇位(4)存儲格式
大端模式:32位數(shù)據(jù)字的高字節(jié)存儲在低地址,而數(shù)據(jù)字的低字節(jié)則存放在高地址中。
小端模式:32位數(shù)據(jù)字的高字節(jié)存儲在高地址,而數(shù)據(jù)字的低字節(jié)則存放在低地址中。系統(tǒng)復位時,自動默認為小端模式。
例如:一個32位數(shù)據(jù)字0x12345678,存放在起始地址為0x30001000,則大端模式下0x30001000單元存放0x12,0x30001001單元存放0x34,0x30001002單元存放0x56,0x30001003單元存放0x78;而小端模式下0x30001000單元存放0x78,0x30001001單元存放0x56,0x30001002單元存放0x34,0x30001003單元存放0x12。(5)數(shù)據(jù)類型
8位、16位、32位三種數(shù)據(jù)類型(6)ARM處理器中MMU和MPU
MMU存儲器管理單元(memory management unit)功能:
1)虛擬地址到物理地址映射
2)存儲器訪問權限受限
3)虛擬存儲空間的緩沖特性設置
MPU存儲器保護單元(memory protect unit)(7)異常(7種)
32.嵌入式處理器的結構、特點與分類(不同類型的典型嵌入式處理器及其特點,嵌入式處理器分類等)
(1)不同內核嵌入式微控制器性能比較
(2)馮–諾依曼結構和哈佛結構的區(qū)別
兩者連接CPU程序存儲器和數(shù)據(jù)存儲器的方式不同 馮–諾依曼結構
CPU 程序/數(shù)據(jù)存儲器
哈佛結構
程序存儲器 CPU 數(shù)據(jù)存儲器程序總線
數(shù)據(jù)總線(3)分類
按指令集分為:復雜指令集結構CISC和精簡指令集結構RISC 按存儲機制分為:馮–諾依曼結構和哈佛結構 按字長分為:8位、16位、32位、64位結構
按不同內核系列可以分為:
51、AVR、PIC、MSP430、PowerPC、Coldfile、ARM(4)不同典型內核簡介
32.ARM處理器指令系統(tǒng)及匯編語言程序設計(指令格式,尋址方式,指令集,偽指令,語句格式與程序結構,ARM匯編語言與C的混合編程等)(1)指令格式
指令一般格:
{}{S} ,{,}
其中<>不可省
指令格式說明:
關于#imm8m的說明:#表示立即數(shù),其后可以是十進制或十六進制數(shù)。
對于ARM指令集,#imm8m表示一個由8位立即數(shù)經(jīng)循環(huán)右移任意偶數(shù)位次形成的32位操作數(shù)。
對于Thumb指令集,#imm8m表示一個由8位立即數(shù)經(jīng)左移任意位次形成的32位操作數(shù)。尋址方式:
33.典型ARM處理器內核(ARM9,Cortex-A,Cortex-M,Cortex-R等的技術特點與應用領域)(1)Cortex-A系列是面向高端嵌入式應用的處理器核:具有MMU、Cache、最快頻率、最高性能、合理功耗。
(2)Cortex-R系列是面向實時控制的處理器:具有MPU、Cache、實時響應、合理性能、較低功耗。(3)Cortex-M系列是面向低端微控制器的處理器,沒有MMU但有MPU,極高性價比、最低成本,極低功耗。
34.嵌入式硬件組成與嵌入式處理芯片(組成,特點,類型,ARM的AMBA總線,嵌入式處理芯片的選型)
基于ARM內核的典型嵌入式應用系統(tǒng)硬件組成
典型嵌入式系統(tǒng)硬件由嵌入式最小硬件系統(tǒng)(電源電路、時鐘(晶振)電路、復位電路、JTAG測試接口)、前向通道(輸入接口)、后向通道(輸出接口)、人機交互通道(鍵盤,觸摸屏以及LED或LCD顯示輸出接口)以及相互互聯(lián)通信通道(CAN通信接口、以太網(wǎng)通信接口、USB通信接口)等組成。
電源電路為整個嵌入式系統(tǒng)提供能量,是整個系統(tǒng)工作的基礎,具有極其重要的位置。一般來說,如果電源電路處理得好,整個系統(tǒng)的故障往往能顯著減少。選擇設計電源電路是主要考慮以下因素:輸出電壓電流、輸入電壓電流(交流還是直流)、安全因素、體積限制、功耗限制、成本限制。
常用的電源模塊是交流變直流(AC-DC)模塊、直流變直流模塊(DC-DC)、低壓穩(wěn)壓器(LDO)。穩(wěn)壓器包括普通穩(wěn)壓器和低壓差穩(wěn)壓器LDO。78XX系列屬于普通穩(wěn)壓器,LM2576/2596為開關穩(wěn)壓芯片,CAT6219/AS2815/1117/2908等屬于低壓穩(wěn)壓器。穩(wěn)壓器的最大特點就是低噪聲、低成本、紋波小、精度高、電路簡單。35.基于ARM內核的典型嵌入式芯片的硬件組成1)存儲器及控制器
片內程序存儲器通常是用Flash ROM,一般配有幾KB到幾MB不等。片內數(shù)據(jù)存儲器通常使用SRAM,一般幾KB到幾百KB。2)中斷控制器
一般采用向量中斷(VIC)或嵌套向量中斷(NVIC)。Cortex-M支持嵌套的向量中斷。3)DMA控制器(直接存儲器訪問控制器)
使用DMA控制器,可將數(shù)據(jù)塊從外設傳輸至內存、從內存?zhèn)鬏斨镣庠O或從內存?zhèn)鬏斨羶却妗?/p>
4)電源管理與時鐘控制器
5)GPIO接端口(General Purpose Input Output通用輸入/輸出端口)
作為輸入時具有緩沖功能,而作為輸出是具有鎖存功能,GPIO也可以作為雙向I/O使用。在ARM處理芯片中,GPIO引腳通常是多功能的,以減少引腳數(shù),減少功耗。6)定時計數(shù)組件
主要包括看門狗定時器(WDT)監(jiān)視著程序的運行狀態(tài) Timer通用定時器
用于一般的定時
RTC可直接提供年月日時分秒,使應用系統(tǒng)具有獨立的日期和時間
脈沖寬度調制解調器(PWM)用于脈沖寬度的調制,比如電機控制、用于變頻調整等。7)模擬通道組件
8)互聯(lián)通信組件
36.嵌入式處理芯片的選型 1)性價比原則
性能高,價格低 2)參數(shù)選擇原則
ARM內核(指令流水線、支持Thumb/Thumb-2指令集、最高時鐘頻率的限制、最低功耗要求以及低成本要求)系統(tǒng)時鐘頻率(頻率越高,處理速度越快;通常ARM芯片的速度主要取決于ARM內核)芯片內部存儲器的容量
片內外圍電路(GPIO外部引腳條數(shù)、定時計數(shù)器、LCD液晶顯示控制器、多核處理器、ADC、通信接口)
37.常用ARM嵌入式處理芯片
1)NXP的典型ARM芯片
2)TI的典型ARM芯片
3)Samsung的典型ARM芯片
4)Atmel的典型ARM芯片
5)ST的典型ARM芯片
6)Freescale的典型ARM芯片
7)Nuvoton的典型ARM芯片
8)Intel的典型ARM芯片
9)其他ARM芯片廠家 38.頁式存儲管理(重點)
基本思路:把物理內存劃分為許多固定大小的內存塊,稱為物理頁面;把邏輯地址空間也劃分為大小相同的塊,稱為邏輯頁面。當一個用戶程序被裝入內存時,不是以整個程序為單位,把它存放在一整塊連續(xù)的區(qū)域,而是以頁面為單位來進行分配的。對于一個大小為N 的頁面程序,需要有N 個空閑的物理頁面來把它裝載。這些物理頁面不一定是要連續(xù)的。
在頁式存儲管理中需要解決三個問題:數(shù)據(jù)結構、內存分配與回收、地址映射。
數(shù)據(jù)結構有兩個:頁表和物理頁面表。
A.頁表:給出了任務邏輯頁面號和內存中物理頁面號之間的對應關系。
B.物理頁面表:描述內存空間中,各個物理頁面的使用情況。
具體的例子請參考《教程》317頁(博客中畫不了圖,有興趣自己看)。
內存的分配過程:
A.對于一個新來的任務,計算它所需要的頁面數(shù)N,然后查看位示圖,看是否還有N 個空閑的物理頁面。
B.如果有足夠的空閑物理頁面,就去申請一個頁表,其長度為N,并把頁表的起始地址填入到該任務的控制塊中。
C.分配N 個空閑的物理頁面,把他們的變換填到頁表中,建立邏輯頁面與物理頁面直接的對應關系。
D.修改位示圖,對剛剛被占用的那些物理頁面進行標記。地址映射的基本思路:
A.邏輯地址分析:對邏輯地址,找到它所在的邏輯頁面,以及它在頁面內的偏移地址。
B.頁表查找:根據(jù)邏輯頁面號,從頁表中找出它對應的物理頁面號。
C.物理地址合成:根據(jù)物理頁面號和頁內偏移地址,最終確定物理地址。
邏輯地址分析:
頁面的大小都是2的整數(shù)次冪。對于給定的一個邏輯地址,可以直接把它的高位部分作為邏輯頁面號,把它的低位部分作為頁內偏移地址。例如,假設頁面的大小是4KB,即2的12次冪,邏輯地址為32為,那么在一個邏輯地址當中,最低12位為頁內偏移地址,而剩下的20位就是邏輯頁面號。
計算方法:
邏輯頁面號=邏輯地址/頁面大小
頁內偏移量=邏輯地址%頁面大小
頁表查找:
頁表作為操作系統(tǒng)的一個數(shù)據(jù)結構,通常保存在內核的地址空間中。
頁表基地址寄存器用來指向頁表的起始地址;頁表長度寄存器用來指示頁表的大小,即對于當前任務,它總共包含有多少個頁面。
物理地址合成:
假設物理頁面號為f,頁內偏移地址為offset,每個頁面大小為2n,那么相應的物理地址為:f×2n+offset。39.虛擬存儲管理
程序局部性原理:時間局限性和空間局限性。
虛擬頁式存儲管理:在頁式管理的基礎上,增加了請求調頁和頁面置換的功能。
基本思路:當一個用戶程序需要調入內存去運行時,不是將這個程序的所有頁面都裝入內存,而是只裝載部分的頁面,就可以啟動這個程序運行。在運行過程中,如果發(fā)現(xiàn)要執(zhí)行的指令或者訪問的數(shù)據(jù)不在內存當中,就向系統(tǒng)發(fā)出缺頁中斷請求,然后系統(tǒng)在處理這個中斷請求時,就會將保存在外存中的相應頁面調入內存,從而使該程序能繼續(xù)運行。
在虛擬頁式存儲管理中,頁表包含:邏輯頁面號、物理頁面號、駐留位、保護位、修改位和訪問位。
常用的頁面置換算法:
A.最優(yōu)頁面置換算法:理想化算法。
B.最近最久未使用算法:鏈表法和棧方法。尋找長時間沒有被訪問的頁面。
C.最不常用算法:每個頁面設置一個訪問計數(shù)器。
D.先進先出算法:性能比較差。
E.時鐘頁面置換算法:把頁面組成環(huán)形鏈表,類似時鐘面。
一般來說,當一個任務剛剛啟動的時候,它會不斷去訪問一些新的頁面,然后逐步建立一個比較穩(wěn)定的工作集。工作集是指當前任務正在使用的邏輯頁面的集合。如果分配給一個任務的物理頁面數(shù)太少,不能包含整個的工作集,任務將會造成很多缺頁中斷,需要頻繁地進行頁面置換,這種現(xiàn)象稱為“抖動”。40.Flash存儲器
(1)Flash 存儲器是一種非易失性存儲器,根據(jù)結構的不同可以將其分為NOR Flash 和NAND Flash 兩種。
(2)Flash存儲器的特點:
A、區(qū)塊結構:在物理上分成若干個區(qū)塊,區(qū)塊之間相互獨立。
B、先擦后寫:Flash 的寫操作只能將數(shù)據(jù)位從1寫成0,不能從0寫成1,所以在對存儲器進行寫入之前必須先執(zhí)行擦除操作,將預寫入的數(shù)據(jù)位初始化為1。擦除操作的最小單位是一個區(qū)塊,而不是單個字節(jié)。
C、操作指令:執(zhí)行寫操作,它必須輸入一串特殊指令(NOR Flash)或者完成一段時序(NAND Flash)才能將數(shù)據(jù)寫入。
D、位反轉:由于Flash 的固有特性,在讀寫過程中偶爾會產(chǎn)生一位或幾位的數(shù)據(jù)錯誤。位反轉無法避免,只能通過其他手段對結果進行事后處理。
E、壞塊:區(qū)塊一旦損壞,將無法進行修復。對已損壞的區(qū)塊操作其結果不可預測。
(3)NOR Flash的特點:
應用程序可以直接在閃存內運行,不需要再把代碼讀到系統(tǒng)RAM 中運行。NOR Flash 的傳輸效率很高,在1MB~4MB 的小容量時具有很高的成本效益,但是很低的寫入和擦除速度大大影響了它的性能。
(4)NAND Flash的特點
能夠提高極高的密度單元,可以達到高存儲密度,并且寫入和擦除的速度也很快,這也是為何所有的U盤都使用NAND Flash 作為存儲介質的原因。應用NAND Flash 的困難在于閃存需要特殊的系統(tǒng)接口。41.RAM存儲器
(1)SRAM 的特點:
SRAM 表示靜態(tài)隨機存取存儲器,只要供電它就會保持一個值,它沒有刷新周期,由觸發(fā)器構成基本單元,集成度低,每個SRAM 存儲單元由6個晶體管組成,因此其成本較高。它具有較高速率,常用于高速緩沖存儲器。
通常SRAM 有4種引腳:
CE:片選信號,低電平有效。
R/W:讀寫控制信號。
ADDRESS:一組地址線。
DATA:用于數(shù)據(jù)傳輸?shù)囊唤M雙向信號線。
(2)DRAM 的特點:
DRAM 表示動態(tài)隨機存取存儲器。這是一種以電荷形式進行存儲的半導體存儲器。它的每個存儲單元由一個晶體管和一個電容器組成,數(shù)據(jù)存儲在電容器中。電容器會由于漏電而導致電荷丟失,因而DRAM器件是不穩(wěn)定的。它必須有規(guī)律地進行刷新,從而將數(shù)據(jù)保存在存儲器中。
DRAM 的接口比較復雜,通常有一下引腳:
CE:片選信號,低電平有效。
R/W:讀寫控制信號。
RAS:行地址選通信號,通常接地址的高位部分。
CAS:列地址選通信號,通常接地址的低位部分。
ADDRESS:一組地址線。
DATA:用于數(shù)據(jù)傳輸?shù)囊唤M雙向信號線。
(3)SDRAM 的特點:
SDRAM 表示同步動態(tài)隨機存取存儲器。同步是指內存工作需要同步時鐘,內部的命令發(fā)送與數(shù)據(jù)的傳輸都以它為基準;動態(tài)是指存儲器陣列需要不斷的刷新來保證數(shù)據(jù)不丟失。它通常只能工作在133MHz的主頻。
(4)DDRAM 的特點
DDRAM 表示雙倍速率同步動態(tài)隨機存取存儲器,也稱DDR。DDRAM 是基于SDRAM 技術的,SDRAM 在一個時鐘周期內只傳輸一次數(shù)據(jù),它是在時鐘的上升期進行數(shù)據(jù)傳輸;而DDR 內存則是一個時鐘周期內傳輸兩次次數(shù)據(jù),它能夠在時鐘的上升期和下降期各傳輸一次數(shù)據(jù)。在133MHz 的主頻下,DDR內存帶寬可以達到133×64b/8×2=2.1GB/s。42.存儲器系統(tǒng)的層次架構
計算機系統(tǒng)的存儲器被組織成一個金字塔的層次結構。
自上而下為:CPU內部寄存器、芯片內部高速緩存(cache)、芯片外部高速緩存(SRAM、SDRAM、DRAM)、主存儲器(FLASH、EEPROM)、外部存儲器(磁盤、光盤、CF卡、SD卡)和遠程二級存儲器(分布式文件系統(tǒng)、WEB服務器),6個層次的結構。
上述設備從上而下,依次速度更慢、容量更大、訪問頻率更小,造價更便宜。
2、高速緩存(cache)
工作原理(參照教程126頁,博客畫不了圖):主要利用了程序的局部性特點。
地址映象是指把主存地址空間映象到cache的地址空間。
地址變換是指當程序或數(shù)據(jù)已經(jīng)裝入到cache后,在實際運行過程中,把主存地址如何編程cache空間的地址。
常用的地址映象和地址變換的方式有:(教程127頁)
直接映象和變換:速度快,造價低,但有局限性,不能充分利用cache的好處。
組相聯(lián)地址映象和變換:速度稍慢但是命中率高。
全相聯(lián)地址映象和變換:可以任意映射。
常用的cache替換算法:輪轉法和隨機替換算法。
高速緩存的分類:
統(tǒng)一cache和獨立的數(shù)據(jù)/指令cache
寫通cache和寫回cache
讀操作分配cache和寫操作分配cache 43.I/O接口、I/O設備以及外部通信接口(GPIO、IC、SPI、UART、USB、HDMI等;鍵盤、LED、LCD、觸摸屏、傳感器等;RS-232/RS-485、CAN、以太網(wǎng)和常用無線通信接口)(1)GPIO(通用輸入輸出接口)
在嵌入式處理器內部,輸入具備緩沖功能,輸出具有鎖存功能。GPIO一般有三態(tài):0態(tài)、1態(tài)、高阻狀態(tài)。
(2)集成電路互連總線接口IIC 集成電路互連總線用于連接嵌入式處理器及外圍器件,采用串行半雙工傳輸?shù)目偩€標準。IIC總線具有的接口線少,控制方式簡單,器件封裝緊湊,通信速率較高(100kb/s,400kb/s,高速模式可達3.4Mb/s)等優(yōu)點。IIC總線的操作時序
IIC總線只有兩條信號線,一條是數(shù)據(jù)線SDA,另一條是時鐘線SCL,所有的操作均通過這兩條信號線完成。數(shù)據(jù)線SDA上的數(shù)據(jù)必須在時鐘的高電平周期保持穩(wěn)定,它的高/低電平狀態(tài)只有在SCL時鐘信號線是低電平時才能改變。1)啟動和停止條件
總線上的所有器件都不使用總線時,SCL線和SDA線各自的上拉電阻把電平拉高,使它們均處于高電平。主控制器啟動總線操作的條件是當SCL線保持高電平時SDA線有高電平轉為低電平,此時主控制器在SCL產(chǎn)生時鐘信號,SDA線開始傳輸數(shù)據(jù)。若SCL線為高電平時SDA由低轉為高,則總線工作停止,恢復空閑狀態(tài) 2)數(shù)據(jù)傳送格式 3)應答(ACK)信號傳送 4)讀/寫操作 5)總線仲裁 6)異常中斷條件(3)串行外設接口SPI
(4)串行異步通信接口UART(5)高清多媒體接口HDMI
(6)常用簡單輸入設備(鍵盤、觸摸屏、傳感器)(7)常用簡單輸出設備(LED、數(shù)碼管、LCD、)
(8)基于UART的RS—232/RS—485 CAN總線接口
以太網(wǎng)通信接口常用無線通信接口(GPS模塊、GPRS模塊、WiFi模塊、藍牙模塊、射頻無線收發(fā)模塊)43.存儲管理單元(MMU)memory management unit MMU在CPU和物理內存之間進行地址轉換,將地址從邏輯空間映射到物理空間,這個過程稱為內存映射。
MMU主要完成下面的工作:
A.虛擬存儲空間到物理空間的映射。
B.存儲器訪問權限的控制。
C.設置虛擬存儲空間的緩沖特性。
嵌入式系統(tǒng)中常常采用頁式存儲管理。為了管理這些頁引入了頁表的概念。
頁表是位于內存中的表,它的每一行對應虛擬存儲空間的一個頁,該行包含了該虛擬內存頁對應的物理內存頁的地址、該頁的訪問權限和該頁的緩沖特性等。
從虛擬地址到物理地址的變換過程就是查詢頁表的過程。
由于頁表存儲在內存中的,整個查詢過程需要付出很大的代價。根據(jù)程序局部性的特點,增加了一個小容量、高速度的存儲部件來存放當前訪問需要的地址變換條目,這個存儲部件稱為:地址轉換后備緩沖器(TLB)。
當CPU訪問內存時,首先在TLB中查找需要的地址變換條目,如果該條目不存在,CPU再從內存中的頁表中查詢,并把相應的結果添加到TLB中,更新它的內容。
嵌入式系統(tǒng)中虛擬存儲空間到物理空間的映射以內存塊為單位進行。即虛擬存儲空間中一塊連續(xù)的存儲空間被映射到物理存儲空間中同樣大小的一塊連續(xù)存儲空間。
在頁表和TLB中,每一個地址變換條目實際上記錄了一個虛擬存儲空間的內存塊的基地址與物理存儲空間相對應的一個內存塊的基地址之間的對應關系。
在MMU中實現(xiàn)虛擬地址到物理地址的映射是通過兩級頁表來實現(xiàn)的。
禁止MMU時,所有物理地址和虛擬地址相等,即使用平板存儲模式。內存保護
操作系統(tǒng)通常利用MMU來實現(xiàn)操作系統(tǒng)內核與應用程序之間的隔離,以及應用程序與應用程序之間的隔離。
內存保護包含兩個方面的內容:
A.防止地址越界,每個應用程序都有自己獨立的地址空間。
B.防止越權操作,每個應用程序都有自己的訪問權限。44.實模式與保護模式
在嵌入式系統(tǒng)中,常見的存儲管理方案可以分為兩大類:實模式和保護模式。
實模式:內存的平面使用模式。特點有:
A.不劃分“系統(tǒng)空間”與“用戶空間”,無須進行地址映射。
B.操作系統(tǒng)與應用程序之間不再有物理的邊界。
C.系統(tǒng)中的“任務”或“進程”,實際上全是內核線程。
在實模式下,內存布局可以分為5個段:
A.代碼段:包含操作系統(tǒng)和應用程序的所有代碼。
B.數(shù)據(jù)段:所有帶有初始值的全局變量。
C.BSS段:所有未帶初始值的全局變量。
D.堆空間:動態(tài)分配的內存空間。
E.棧空間:保存上下文以及函數(shù)調用時的局部變量和形參。
在實模式存儲管理方案下,主要的工作在于堆空間的管理,即如何來管理空閑的堆空間、如何來分配內存、如何來回收內存等等。
保護模式:處理器中必須有MMU硬件并啟用。特點有:
A.系統(tǒng)內核和用戶程序都有各自獨立的地址空間。
B.每個應用程序只能訪問自己的地址空間,不能去破壞操作系統(tǒng)和其他應用程序的代碼和數(shù)據(jù)。45.分區(qū)存儲管理
為了實現(xiàn)多道程序系統(tǒng)而采用的內存管理。
基本思路:把整個內存劃分為兩大區(qū)域,即系統(tǒng)區(qū)和用戶區(qū),然后再把用戶區(qū)劃分為若干個分區(qū),每個任務占有其中的一個分區(qū)。這樣,在內存當中就同時保留多個任務,讓他們共享整個用戶區(qū),從而實現(xiàn)多個任務的并發(fā)運行。
分區(qū)存儲管理又可以分為兩類:固定分區(qū)和可變分區(qū)。
固定分區(qū):各個用戶分區(qū)的個數(shù)、位置和大小一旦確定后,就固定不變,不能再修改。
優(yōu)點:易于實現(xiàn),系統(tǒng)開銷較小。
缺點:內存利用率不高,分區(qū)總數(shù)固定。
可變分區(qū):動態(tài)創(chuàng)建,在裝入一個程序時,系統(tǒng)將根據(jù)它的需求和內存空間的使用情況來決定是否分配。
優(yōu)點:動態(tài)變化,非常靈活。
缺點:可能存在外碎片。
在實現(xiàn)可變存儲管理技術的時候,需要考慮三個方面的問題:
A.內存管理的數(shù)據(jù)結構
B.內存的分配算法
C.內存的回收算法 46.地址映射
地址映射也叫地址重定位。
邏輯地址和物理地址是完全不同的,不能用邏輯地址來直接訪問內存單元。
為了保證CPU在執(zhí)行指令的時候,可以正確地訪問內存單元,需要將用戶程序中的邏輯地址轉換為運行時由機器直接尋址的物理地址。這個過程稱為:地址映射。
地址映射由存儲管理單元MMU來完成。
地址映射主要有兩種方式:靜態(tài)地址映射和動態(tài)地址映射。
靜態(tài)地址映射:當用戶程序被裝入內存時,直接對指令代碼進行修改,一次性地實現(xiàn)邏輯地址到物理地址的轉換。
動態(tài)地址映射:當用戶程序被裝入內存時,不對指令代碼做任何修改,而是在程序的運行過程中,當它需要訪問內存單元的時候,再來進行地址轉換。
在具體實現(xiàn)時,這項轉換工作一般是由硬件的地址映射機制來完成的。通常設置一個基地址寄存器,或者叫重定位寄存器。當一個任務被調度運行時,就把它所在分區(qū)的起始地址裝入到整個寄存器中。然后,在程序運行的過程中,當需要訪問某個內存單元時,硬件就會自動地將其中的邏輯地址加上基地址寄存器中的內容,從而得到實際的物理地址,并且按照這個物理地址區(qū)執(zhí)行。
這個基地址寄存器位于MMU的內部,整個地址映射過程是自動運行的。從理論上說,每訪問一次內存都要進行一次地址映射。47.頁式存儲管理(重點)
基本思路:把物理內存劃分為許多固定大小的內存塊,稱為物理頁面;把邏輯地址空間也劃分為大小相同的塊,稱為邏輯頁面。當一個用戶程序被裝入內存時,不是以整個程序為單位,把它存放在一整塊連續(xù)的區(qū)域,而是以頁面為單位來進行分配的。對于一個大小為N的頁面程序,需要有N個空閑的物理頁面來把它裝載。這些物理頁面不一定是要連續(xù)的。
在頁式存儲管理中需要解決三個問題:數(shù)據(jù)結構、內存分配與回收、地址映射。
數(shù)據(jù)結構有兩個:頁表和物理頁面表。
A.頁表:給出了任務邏輯頁面號和內存中物理頁面號之間的對應關系。
B.物理頁面表:描述內存空間中,各個物理頁面的使用情況。
具體的例子請參考《教程》317頁(博客中畫不了圖,有興趣自己看)。
內存的分配過程:
A.對于一個新來的任務,計算它所需要的頁面數(shù)N,然后查看位示圖,看是否還有N個空閑的物理頁面。
B.如果有足夠的空閑物理頁面,就去申請一個頁表,其長度為N,并把頁表的起始地址填入到該任務的控制塊中。
C.分配N個空閑的物理頁面,把他們的變換填到頁表中,建立邏輯頁面與物理頁面直接的對應關系。
D.修改位示圖,對剛剛被占用的那些物理頁面進行標記。
地址映射的基本思路:
A.邏輯地址分析:對邏輯地址,找到它所在的邏輯頁面,以及它在頁面內的偏移地址。
B.頁表查找:根據(jù)邏輯頁面號,從頁表中找出它對應的物理頁面號。
C.物理地址合成:根據(jù)物理頁面號和頁內偏移地址,最終確定物理地址。
邏輯地址分析:
頁面的大小都是2的整數(shù)次冪。對于給定的一個邏輯地址,可以直接把它的高位部分作為邏輯頁面號,把它的低位部分作為頁內偏移地址。例如,假設頁面的大小是4KB,即2的12次冪,邏輯地址為32為,那么在一個邏輯地址當中,最低12位為頁內偏移地址,而剩下的20位就是邏輯頁面號。
計算方法:
邏輯頁面號=邏輯地址/頁面大小
頁內偏移量=邏輯地址%頁面大小
頁表查找:
頁表作為操作系統(tǒng)的一個數(shù)據(jù)結構,通常保存在內核的地址空間中。
頁表基地址寄存器用來指向頁表的起始地址;頁表長度寄存器用來指示頁表的大小,即對于當前任務,它總共包含有多少個頁面。
物理地址合成:
假設物理頁面號為f,頁內偏移地址為offset,每個頁面大小為2n,那么相應的物理地址為:f×2n+offset。48.虛擬存儲管理
程序局部性原理:時間局限性和空間局限性。
虛擬頁式存儲管理:在頁式管理的基礎上,增加了請求調頁和頁面置換的功能。
基本思路:當一個用戶程序需要調入內存去運行時,不是將這個程序的所有頁面都裝入內存,而是只裝載部分的頁面,就可以啟動這個程序運行。在運行過程中,如果發(fā)現(xiàn)要執(zhí)行的指令或者訪問的數(shù)據(jù)不在內存當中,就向系統(tǒng)發(fā)出缺頁中斷請求,然后系統(tǒng)在處理這個中斷請求時,就會將保存在外存中的相應頁面調入內存,從而使該程序能繼續(xù)運行。
在虛擬頁式存儲管理中,頁表包含:邏輯頁面號、物理頁面號、駐留位、保護位、修改位和訪問位。
常用的頁面置換算法:
A.最優(yōu)頁面置換算法:理想化算法。
B.最近最久未使用算法:鏈表法和棧方法。尋找長時間沒有被訪問的頁面。
C.最不常用算法:每個頁面設置一個訪問計數(shù)器。
D.先進先出算法:性能比較差。
E.時鐘頁面置換算法:把頁面組成環(huán)形鏈表,類似時鐘面。
一般來說,當一個任務剛剛啟動的時候,它會不斷去訪問一些新的頁面,然后逐步建立一個比較穩(wěn)定的工作集。工作集是指當前任務正在使用的邏輯頁面的集合。如果分配給一個任務的物理頁面數(shù)太少,不能包含整個的工作集,任務將會造成很多缺頁中斷,需要頻繁地進行頁面置換,這種現(xiàn)象稱為“抖動”。49.嵌入式系統(tǒng)軟件 .嵌入式系統(tǒng)的軟件組成與實時操作系統(tǒng)(嵌入式系統(tǒng)軟件組成,嵌入式操作系統(tǒng)的發(fā)展,實時系統(tǒng)與實時操作系統(tǒng),微內核與宏內核,嵌入式操作系統(tǒng)的仿真平臺等).板級支持軟件包(BSP)和引導加載程序Bootloader(硬件抽象層HAL,BSP 的功能和移植,Bootloader 的執(zhí)行過程,U-boot 及其移植等).嵌入式Linux 操作系統(tǒng)(嵌入式Linux 的發(fā)展和自由軟件,嵌入式Linux 內核的結構、系統(tǒng)調用接口,常見嵌入式Linux 等).嵌入式操作系統(tǒng)μC/OS-II(基本特點、代碼結構、任務管理與調度、任務通信、中斷處理、移植等)50.嵌入式系統(tǒng)的開發(fā)
1.嵌入式系統(tǒng)的開發(fā)過程和工具(開發(fā)步驟,交叉開發(fā)平臺和工具,系統(tǒng)的調試工具等)
2.系統(tǒng)開發(fā)工具軟件(ADS、RVDS的特點與使用,GCC的常用命令與參數(shù))
3.以S3C2410/S3C2440為背景的應用系統(tǒng)開發(fā)(硬件接口及部件的綜合使用;無操作系統(tǒng)環(huán)境下的系統(tǒng)開發(fā);μC/OS-II環(huán)境下的系統(tǒng)開發(fā))51.嵌入式系統(tǒng)的定義
(1)定義:以應用為中心,以計算機技術為基礎,軟硬件可裁剪,適應應用系統(tǒng)對功能、可靠性、成本、體積、功耗嚴格要求的專用計算機系統(tǒng)。
(2)嵌入式系統(tǒng)發(fā)展的4 個階段:無操作系統(tǒng)階段、簡單操作系統(tǒng)階段、實時操作系統(tǒng)階段、面向Internet 階段。
(3)知識產(chǎn)權核(IP 核):具有知識產(chǎn)權的、功能具體、接口規(guī)范、可在多個集成電路設計中重復使用的功能模塊,是實現(xiàn)系統(tǒng)芯片(SOC)的基本構件。
(4)IP 核模塊有行為、結構和物理3 級不同程度的設計,對應描述功能行為的不同可以分為三類:軟核、固核、硬核。
52.嵌入式系統(tǒng)的組成:硬件層、中間層、系統(tǒng)軟件層和應用軟件層
(1)硬件層:嵌入式微處理器、存儲器、通用設備接口和I/O 接口。
嵌入式核心模塊=微處理器+電源電路+時鐘電路+存儲器
Cache:位于主存和嵌入式微處理器內核之間,存放的是最近一段時間微處理器使用最多的程序代碼和數(shù)據(jù)。它的主要目標是減小存儲器給微處理器內核造成的存儲器訪問瓶頸,使處理速度更快。
(2)中間層(也稱為硬件抽象層HAL 或者板級支持包BSP):它將系統(tǒng)上層軟件和底層硬件分離開來,使系統(tǒng)上層軟件開發(fā)人員無需關系底層硬件的具體情況,根據(jù)BSP 層提供的接口開發(fā)即可。
BSP 有兩個特點:硬件相關性和操作系統(tǒng)相關性。
設計一個完整的BSP 需要完成兩部分工作:
A、嵌入式系統(tǒng)的硬件初始化和BSP 功能。
片級初始化:純硬件的初始化過程,把嵌入式微處理器從上電的默認狀態(tài)逐步設置成系統(tǒng)所要求的工作狀態(tài)。
板級初始化:包含軟硬件兩部分在內的初始化過程,為隨后的系統(tǒng)初始化和應用程序建立硬件和軟件的運行環(huán)境。
系統(tǒng)級初始化:以軟件為主的初始化過程,進行操作系統(tǒng)的初始化。
B、設計硬件相關的設備驅動。
(3)系統(tǒng)軟件層:由RTOS、文件系統(tǒng)、GUI、網(wǎng)絡系統(tǒng)及通用組件模塊組成。
RTOS 是嵌入式應用軟件的基礎和開發(fā)平臺。
(4)應用軟件:由基于實時系統(tǒng)開發(fā)的應用程序組成。53.實時系統(tǒng)
(1)定義:能在指定或確定的時間內完成系統(tǒng)功能和對外部或內部、同步或異步時間做出響應的系統(tǒng)。
(2)區(qū)別:通用系統(tǒng)一般追求的是系統(tǒng)的平均響應時間和用戶的使用方便;而實時系統(tǒng)主要考慮的是在最壞情況下的系統(tǒng)行為。
(3)特點:時間約束性、可預測性、可靠性、與外部環(huán)境的交互性。
(4)硬實時(強實時):指應用的時間需求應能夠得到完全滿足,否則就造成重大安全事故,甚至造成重大的生命財產(chǎn)損失和生態(tài)破壞,如:航天、軍事。
(5)軟實時(弱實時):指某些應用雖然提出了時間的要求,但實時任務偶爾違反這種需求對系統(tǒng)運行及環(huán)境不會造成嚴重影響,如:監(jiān)控系統(tǒng)、實時信息采集系統(tǒng)。
第二篇:嵌入式系統(tǒng)設計師考試要求
嵌入式系統(tǒng)設計師考試要求
通過本考試的合格人員能根據(jù)項目管理和工程技術的實際要求,按照系統(tǒng)總體設計規(guī)格說明書進行軟、硬件設計,編寫系統(tǒng)開發(fā)的規(guī)格說明書等相應的文檔;組織和指導嵌入式系統(tǒng)開發(fā)實施人員編寫和調試程序,并對嵌入式系統(tǒng)硬件設備和程序進行優(yōu)化和集成測試,開發(fā)出符合系統(tǒng)總體設計要求的高質量嵌入式系統(tǒng);具有工程師的實際工作能力和業(yè)務水平。嵌入式系統(tǒng)設計師考試說明
1.考試要求:
(1)掌握計算機科學基礎知識;
(2)掌握嵌入式系統(tǒng)的硬件、軟件知識;
(3)掌握嵌入式系統(tǒng)分析的方法;
(4)掌握嵌入式系統(tǒng)設計與開發(fā)的方法及步驟;
(5)掌握嵌入式系統(tǒng)實施的方法;
(6)掌握嵌入式系統(tǒng)運行維護知識;
(7)了解信息化基礎知識、計算機應用的基礎知識;
(8)了解信息技術標準、安全性,以及有關法律法規(guī)的基本知識;
(9)了解嵌入式技術發(fā)展趨勢;
(10)正確閱讀和理解計算機及嵌入式系統(tǒng)領域的英文資料。
2.通過本考試的合格人員能根據(jù)項目管理和工程技術的實際要求,按照系統(tǒng)總體設計規(guī)格說明書進行軟、硬件設計,編寫系統(tǒng)開發(fā)的規(guī)格說明書等相應的文檔;組織和指導嵌入式系統(tǒng)開發(fā)實施人員編寫和調試程序,并對嵌入式系統(tǒng)硬件設備和程序進行優(yōu)化和集成測試,開發(fā)出符合系統(tǒng)總體設計要求的高質量嵌入式系統(tǒng);具有工程師的實際工作能力和業(yè)務水平。
3.本考試設置的科目包括:
(1)嵌入式系統(tǒng)基礎知識,考試時間為150分鐘,筆試,選擇題;
(2)嵌入式系統(tǒng)設計應用技術,考試時間為150分鐘,筆試,問答題。
第三篇:軟考網(wǎng)絡規(guī)劃設計師論文
網(wǎng)絡規(guī)劃設計師 http:// 軟考網(wǎng)絡規(guī)劃設計師論文范文
網(wǎng)絡規(guī)劃設計師論文該怎么寫?準備參加2016年網(wǎng)絡規(guī)劃設計師考試的你是否對這個問題感到一籌莫展?小編為大家提供一篇論范文供大家參考,希望對大家有所幫助。
論某中小型企業(yè)的網(wǎng)絡規(guī)劃與設計方案
【摘要】
本文以網(wǎng)絡工程設計與規(guī)劃為題,闡述了如何規(guī)劃與設計一個常德市某中小型企業(yè)網(wǎng)絡的具體實現(xiàn)步驟,通過網(wǎng)絡需求收集以及對網(wǎng)絡層次、拓撲、流量、地址、路由、安全等方面進行分析為最終的網(wǎng)絡設計方案構建提供決策的依據(jù)。
【正文】 引言
網(wǎng)絡飛速的發(fā)展,滲透了各行各業(yè)。在今天的時代大環(huán)境中,企業(yè)只有在技術上領先才能在競爭中擁有優(yōu)勢地位。電子商務、電子郵件、光纖寬帶、局域網(wǎng)技術、等不斷技術不斷出現(xiàn),除了現(xiàn)有的這些應用,一些新的應用方式也逐步出現(xiàn)。比如VOIP電話、遠程視頻會議等用于提高工作效率的方式。因此,作為企業(yè)來說,需要一個更加集成化一體化的網(wǎng)絡解決方案,它不僅符合時代的潮流,而且能夠有效地提高工作效率。
網(wǎng)絡方案設計
本方案為某中小型企業(yè)的網(wǎng)絡規(guī)劃,主樓建筑共8層,地下一層,網(wǎng)絡規(guī)劃設計師 http:// 裙樓3層。建筑主樓的功能是辦公樓,裙樓作為會堂使用。本系統(tǒng)的功能是為辦公人員提供局域網(wǎng)使用以及實現(xiàn)辦公樓的信息數(shù)據(jù)的共享和傳輸。
結合整個實際應用和發(fā)展要求,在進行網(wǎng)絡系統(tǒng)改造設計時,主要應遵循以下原則:
1.高性能:網(wǎng)絡要求具有數(shù)據(jù)、圖像、語音等多媒體實時同步通訊能力。網(wǎng)絡系統(tǒng)可以提供足夠的網(wǎng)絡帶寬和多種類型的服務。
2.高可靠性:網(wǎng)絡系統(tǒng)需要保證連續(xù)運行的工作時間以及足夠有效的防火墻。同時,在核心層采用雙機容災設置,降低了由系統(tǒng)故障引起的停滯時間。可靠性還充分考慮網(wǎng)絡系統(tǒng)的性價比,使整個網(wǎng)絡具有一定的容錯能力,減少單點故障。
3.標準化:所有網(wǎng)絡設備都符合有關國際標準以保證不同廠家網(wǎng)絡設備之間的互操作性和網(wǎng)絡系統(tǒng)的開放性。
4.高可用度和冗余:系統(tǒng)的關鍵部件具有熱插拔功能,可保證在部件的更換或增加時不影響網(wǎng)絡正常運行。
5.易管理性:網(wǎng)絡系統(tǒng)中的網(wǎng)絡設備需要便于管理和后期的維護,并且在操作上不能太過復雜,當出現(xiàn)故障時,應能夠及時的被發(fā)現(xiàn)和解除。
網(wǎng)絡系統(tǒng)規(guī)劃設計
目前網(wǎng)絡系統(tǒng)拓撲結構有四種分析:
(一)星型拓撲結構
(二)總線拓撲結構
網(wǎng)絡規(guī)劃設計師 http://
(三)環(huán)型拓撲結構
(四)樹型拓撲結構
根據(jù)上表中各個網(wǎng)絡結構特點的對比以及現(xiàn)實的需求,本項目中網(wǎng)絡結構選擇分層集中式網(wǎng)絡結構或者星型分級網(wǎng)絡結構。根據(jù)本系統(tǒng)的具體情況,可以采用三級星型網(wǎng)絡結構。三級星型網(wǎng)絡結構比較易于集中式的管理。因此,采用該種網(wǎng)絡結構的網(wǎng)絡系統(tǒng)更加便于平時的管理和后期的維護,用戶端的網(wǎng)絡設備由于故障停止運行并不會引起整個網(wǎng)絡的癱瘓。然而,此種網(wǎng)絡結構方式要求網(wǎng)絡中心管理設備具有很高的可靠性,因為它決定了整個系統(tǒng)每個用戶端的運行狀況。
二級星型結構如下: 網(wǎng)絡系統(tǒng)設計如下:
A.主干網(wǎng)匯接各子網(wǎng),形成中心交換; B.子網(wǎng)通過高速交換鏈路連接到主干網(wǎng); C.實行全網(wǎng)范圍的集中VLANs劃分與管理; D.核心網(wǎng)絡采用雙機熱備容災方式; E.在網(wǎng)絡中心進行集中控制和管理;
F.桌面機連接到基層網(wǎng)段上,服務器、工作站連接到高層網(wǎng)絡; G.流量劃分層次,跨越基層網(wǎng)段的流量匯接到工作組子網(wǎng),跨越工作組子網(wǎng)的流量匯接到主干;
H.在完善的網(wǎng)絡基礎之上,系統(tǒng)提供基本的Internet服務。本項目計算機網(wǎng)絡總體上分為兩個層次的結構:核心層,接入層。
網(wǎng)絡規(guī)劃設計師 http:// 核心層:核心層主要為網(wǎng)絡系統(tǒng)提供一條高帶寬、高容量、高可靠性的高速信息公路,為監(jiān)控數(shù)據(jù)查看與存儲提供高速的數(shù)據(jù)交換通路。該層由兩臺核心交換機互為熱備構成,提供若干個千兆以太網(wǎng)絡光纖端口以及第三層路由交換功能。
接入層:接入層提供了連接各信息點的匯集功能,通過本層將各信息點匯總連接到核心層,由核心層實現(xiàn)信息交換。接入層由各樓層的交換機構成,各樓層交換機與核心交換機之間以雙千兆光纖連接,每一臺接入交換機分別兩臺核心交換機,以保證網(wǎng)絡鏈路的高可靠性。
結論
如今計算機網(wǎng)絡的發(fā)展,網(wǎng)絡化、智能化建筑的概念逐步成為人們選擇辦公場所和衡量居住環(huán)境是否方便的一個重要因素,本論文設計主要是根據(jù)現(xiàn)今的企業(yè)發(fā)展,本文以網(wǎng)絡工程設計與規(guī)劃為題,闡述了如何規(guī)劃與設計一個大中型網(wǎng)絡的具體實現(xiàn)步驟,通過網(wǎng)絡需求收集以及對網(wǎng)絡層次、拓撲、地址、路由、安全等方面進行分析為最終的網(wǎng)絡設計方案構建提供決策的依據(jù)。
第四篇:軟考系統(tǒng)架構設計師下午試題加答案(一)
系統(tǒng)架構設計師http://
軟考系統(tǒng)架構設計師下午試題加答案
(一)2016年下半年軟考系統(tǒng)架構設計師考試將于11月12日舉行。大家都準備好了嗎?下面由希賽小編為大家整理了一些系統(tǒng)架構設計師試題,希望對大家有所幫助。
試題一
閱讀以下軟件架構設計的敘述,根據(jù)要求回答問題。[說明]某大型電子商務企業(yè)的主要業(yè)務之一是網(wǎng)上書城,其主要功能是通過Internet為用戶提供各種圖書信息的在線查詢、瀏覽及訂購相關圖書等多種服務。PH軟件公司承接了該大型網(wǎng)上書城系統(tǒng)的升級改造開發(fā)任務。該軟件公司的領域專家對需求進行深入分析后,得到的部分系統(tǒng)需求如下。
1用戶可能頻繁地進行書目查詢操作,網(wǎng)上書城需要返回眾多符合條件的書目并且分頁顯示,而且可能每次查詢的內容都不一樣。
2網(wǎng)站管理員需要批量對相關書目信息進行修改,并且將更新信息記錄到數(shù)據(jù)庫。
3隨著該網(wǎng)上書城知名度的不斷提升,每天的業(yè)務量非常多,網(wǎng)站的用戶訪問量越來越大,因此對業(yè)務有持續(xù)性要求,且要求有限的資源更加合理地規(guī)劃和使用。
4隨著該企業(yè)業(yè)務規(guī)模的不斷擴展,網(wǎng)上書城并購了多家其他同類的網(wǎng)上書城,需要將后臺異構數(shù)據(jù)庫系統(tǒng)進行整合。
該軟件公司的系統(tǒng)架構師經(jīng)過多方的研究和論證,集體提出了采用層次式架構風格設計該大型網(wǎng)上書城系統(tǒng),包括表現(xiàn)層、業(yè)務邏輯層和數(shù)據(jù)訪問層。
1、[問題1]
系統(tǒng)架構設計師http://
數(shù)據(jù)訪問層負責與應用中的各種數(shù)據(jù)源打交道,并將它們整合起來,為業(yè)務邏輯層提供統(tǒng)一的數(shù)據(jù)服務。請對該大型網(wǎng)上書城的4個需求進行分析,結合你的系統(tǒng)架構經(jīng)驗,將表2—12中每個需求適合選用的數(shù)據(jù)訪問模式及選擇理由填充完整。
2、[問題2]
業(yè)務邏輯的千變萬化,使信息系統(tǒng)的開發(fā)和維護都變得越來越困難,如何構建靈活高度可擴展性的業(yè)務層便成為亟待解決的問題。結合你的系統(tǒng)架構經(jīng)驗,請用200字以內的文字說明該網(wǎng)上書城業(yè)務邏輯層采用業(yè)務容器(BusinessContainer)架構方式的優(yōu)點。
3、[問題3]
該網(wǎng)上書城表示層框架的設計,采用基于XML的界面管理技術,實現(xiàn)靈活的界面配置、界面動態(tài)生成和界面定制。結合你的系統(tǒng)架構經(jīng)驗,請用350字以內的文字說明基于XML的界面管理技術的基本思想及其主要組成部分的功能。
參考答案
1、在層次式架構風格中,數(shù)據(jù)訪問層(數(shù)據(jù)持久層)主要負責和應用中的各種數(shù)據(jù)源(如DB2、Oracle等關系型數(shù)據(jù)源、XML數(shù)據(jù)及其他類型的非關系型
系統(tǒng)架構設計師http://
數(shù)據(jù)、Web服務,以及各種特別的遺留系統(tǒng)等)打交道,并將它們整合起來,為業(yè)務邏輯層提供統(tǒng)一的數(shù)據(jù)服務。架構師在不同的應用場合下可能會選擇不同的數(shù)據(jù)訪問模式,并且還會不斷地推陳出新,這里不會也不可能窮盡所有的數(shù)據(jù)訪問模式,而只是列舉了其中最為典型的幾個。在線訪問模式、DataAccessObject模式、DataTransferObject模式、離線數(shù)據(jù)模式,以及對象/關系映射(Object/RelationMapping)模式是數(shù)據(jù)訪問層設計中典型的數(shù)據(jù)訪問模式。各種數(shù)據(jù)訪問模式的說明如表2—15所示。
系統(tǒng)架構設計師http://
依題意,在網(wǎng)上書城系統(tǒng)應用中,第1個系統(tǒng)需求是用戶根據(jù)檢查條件查詢相關的書目,返回符合條件的書目列表(可能內容非常多,數(shù)據(jù)量較大),而且可能每次查詢的內容都不一樣。通常,針對用戶書目查詢這一業(yè)務應用,如果查詢返回的數(shù)據(jù)量并不是很大,同時也不頻繁,則可以考慮采用在線訪問的模式;如果返回的數(shù)據(jù)量較大(比如返回眾多符合條件的書目并且分頁顯示)而且較為頻繁,則需要考慮在線訪問模式和離線數(shù)據(jù)模式相結合,通過離線數(shù)據(jù)的緩存來提高查詢性能。
第2個系統(tǒng)需求是網(wǎng)站管理員可能需要批量對相關書目信息進行修改,并且需要將更新的信息返回至數(shù)據(jù)庫。此類數(shù)據(jù)應用的特點表現(xiàn)為,與數(shù)據(jù)庫交互的次數(shù)并不頻繁,但是每次操作的數(shù)據(jù)量相對較大;同時,也希望能夠使得本地操作有較好的交互體驗。針對這種應用情況,往往適合采用離線數(shù)據(jù)訪問的模式,DTO模式也是不錯的選擇。如果該網(wǎng)上書城應用系統(tǒng)采用的是IBMWebSphere平臺,則可以使用SDO技術,或者使用Java中的CachedRowSet技術;如果
系統(tǒng)架構設計師http://
采用的是基于微軟的應用系統(tǒng)平臺,則可以采用ADO.NET技術。
第3個系統(tǒng)需求是一個關于“多用戶并發(fā)訪問”的需求,如何讓網(wǎng)上書城應用系統(tǒng)能夠處理大規(guī)模的并發(fā)用戶訪問是一個很復雜的問題,涉及應用的架構、采用的軟件、相應的配置和應用程序的調優(yōu)等方面的問題。對于數(shù)據(jù)訪問層設計,一個常見的方法是使用連接池的模式,以便能夠處理更多的用戶請求。如果在網(wǎng)上書城應用系統(tǒng)中使用了IBMWebSphereApplicationServer(或BEAWebLogic、Tomcat等)應用服務器,則這些應用服務器都提供了連接池的機制。
第4個系統(tǒng)需求是一個關于“整合異構數(shù)據(jù)源”的需求,因為有了新的、不同類型的數(shù)據(jù)庫系統(tǒng)的加入,需要和舊的數(shù)據(jù)庫系統(tǒng)進行整合。后臺數(shù)據(jù)系統(tǒng)種類繁多,配置復雜的情況是隨處可見的。可能這個網(wǎng)上書城在剛剛起步的時候只是用了MSSQLServer2000來作為后臺數(shù)據(jù)源。后來隨著業(yè)務的增加,又有了新的Oracle(或DB2)系統(tǒng)。除此之外,可能還有很多諸如XML文檔等需要和已有的系統(tǒng)集成起來,這些都是令人頭痛的問題。在很多實際項目中,經(jīng)常需要軟件開發(fā)公司花很大的力氣開發(fā)一些導入/導出工具來集成此類數(shù)據(jù),而現(xiàn)在已經(jīng)有了專門的產(chǎn)品來完成這些任務。例如,IBMWebSphereInformationIntegration等產(chǎn)品就可以用來支持各種關系型數(shù)據(jù)源及非關系型數(shù)據(jù)源的數(shù)據(jù)整合。
2、業(yè)務邏輯層框架位于系統(tǒng)架構的中間層,是實現(xiàn)系統(tǒng)功能的核心組件。業(yè)務邏輯層采用業(yè)務容器(BusinessContainer)架構方式,便于系統(tǒng)功能的開發(fā)、代碼重用和管理。業(yè)務層采用業(yè)務容器的方式存在于整個系統(tǒng)當中,可以大大地降低業(yè)務層和相鄰各層的耦合。表示層和業(yè)務層的交流是通過業(yè)務請求來實現(xiàn)
系統(tǒng)架構設計師http:// 的,表示層代碼只需要將業(yè)務參數(shù)傳遞給業(yè)務容器,之后就不需要業(yè)務層多余的干預,所有業(yè)務代碼均是在業(yè)務容器中運行。如此一來,可以有效地防止業(yè)務層代碼滲透到表示層,從而實現(xiàn)了業(yè)務層相對于表示層的透明化。
3、基于XML的界面管理技術的基本思想是,用XML生成配置文件及界面所需的元數(shù)據(jù),按不同需求生成界面元素及軟件界面。
該技術包括界面配置、界面動態(tài)生成和界面定制3部分。
界面配置是對用戶界面的靜態(tài)定義,通過讀取配置文件的初始值對界面配置。由界面配置對軟件功能進行裁剪、重組和擴充,以實現(xiàn)特殊需求。
界面定制是對用戶界面的動態(tài)修改過程,在軟件運行過程中,用戶可按需求和使用習慣,對界面元素(如菜單、工具欄、鍵盤命令)的屬性(如文字、圖標、大小、位置等)進行修改。軟件運行結束,界面定制的結果被保存。
系統(tǒng)通過DOMAPI讀取XML配置文件的表示層信息(初始界面大小、位置等),通過自定義的數(shù)據(jù)存取類讀取數(shù)據(jù)庫中的數(shù)據(jù)層信息,在運行時循環(huán)生成界面元素,動態(tài)生成界面。界面配置和定制模塊在軟件運行前后,通過修改相應的配置文件,就可以達到更改界面內容的目標。
基于XML的界面管理技術實現(xiàn)的管理信息系統(tǒng),實現(xiàn)了用戶界面描述信息與功能實現(xiàn)代碼的分離,可針對不同用戶需求進行界面配置和定制,能適應一定程度內的數(shù)據(jù)庫結構改動,只需對XML文件稍加修改,即可實現(xiàn)系統(tǒng)的移植。
試題二
閱讀以下關于系統(tǒng)安全性和數(shù)據(jù)存儲系統(tǒng)架構的敘述,根據(jù)要求回答問題。
[說明]
系統(tǒng)架構設計師http://
某市行政審批服務中心大樓內涉及幾類網(wǎng)絡,分別為因特網(wǎng)(Internet)、市電子政務專網(wǎng)、市電子政務外網(wǎng)、市行政審批服務中心大樓內局域網(wǎng)和各部門業(yè)務專網(wǎng)。行政審批服務中心網(wǎng)絡建設工作組計劃以市電子政務專網(wǎng)為基礎,建設市級行政審批服務中心專網(wǎng)(骨干萬兆、桌面千兆)。在大樓內部署5套獨立鏈路,分別用于連接政務外網(wǎng)、政務專網(wǎng)、大樓內局域網(wǎng)、因特網(wǎng)和涉密部門內網(wǎng)。行政審批服務中心網(wǎng)絡結構(部分)如圖2—8所示。
4、[問題1]
在圖2—8所示的數(shù)據(jù)交換區(qū)中,數(shù)據(jù)交換服務器通過雙鏈路連接至交換機。在數(shù)據(jù)交換服務器業(yè)務的峰值時段,一條鏈路只能傳送總業(yè)務量的90%,因而需要兩條鏈路同時工作,才能完成數(shù)據(jù)交換服務器的全部傳送請求。非峰值
系統(tǒng)架構設計師http://
時段約占整個工作時間的60%,只需要一條鏈路工作就可以傳送全部業(yè)務。假定每條鏈路的可用性為0.9,請計算這兩條鏈路系統(tǒng)(數(shù)據(jù)交換區(qū)中虛線橢圓區(qū)域)的平均可用性(注:請簡要列出計算過程)
5、[問題2]
電子政務安全體系是一個立體的三維防護體系,圖2—8中的安全接入平臺橫跨了行政審批服務中心大樓內所涉及的5個網(wǎng)絡系統(tǒng),需要全系統(tǒng)統(tǒng)一考慮其的IT安全措施和手段。結合你的系統(tǒng)架構經(jīng)驗,請給出該安全接入平臺在系統(tǒng)安全架構方面的主要考慮要點。
6、[問題3]針對該行政審批服務中心數(shù)據(jù)存儲系統(tǒng)建設,架構師郭工建議使用FCSAN/IPSAN提供數(shù)據(jù)安全和快速數(shù)據(jù)訪問。請用300字以內的文字,簡述郭工所提建議中的FCSAN和IPSAN的差別。
參考答案
4、可用性是指網(wǎng)絡或網(wǎng)絡設備(如服務器等)可用于執(zhí)行預期任務時間所占總量的百分比。依題意,試題中只要求計算圖2—8數(shù)據(jù)交換區(qū)中虛線橢圓區(qū)域內兩條鏈路系統(tǒng)的平均可用性,因此可以暫不考慮這兩條鏈路兩端交換機端口及網(wǎng)卡的可用性(或者可將這兩條鏈路兩端交換機端口及網(wǎng)卡的可用性假設為1.0)。
由于每條鏈路的可用性A=0.9,則兩條鏈路同時工作時的可用性為A×A=0.9×0.9=0.81,恰好只有一條鏈路可以工作時的可用性為A×(1-A)+(1-A)×A=2A×(1-A)2=2×0.9×(1-0.9)2=0.18。
由于在數(shù)據(jù)交換服務器業(yè)務的峰值時段,一條鏈路只能傳送總業(yè)務量的90%,需要兩條鏈路同時工作,此時這兩條鏈路系統(tǒng)的可用性Af可表示為:Af=(兩條鏈路的處理能力)×(兩條鏈路同時工作時的可用性)+(一條鏈路的處理
系統(tǒng)架構設計師http://
能力)×(只有一條鏈路工作時的可用性)。因此在峰值時段,這兩條鏈路系統(tǒng)的可用性為A峰值時段=1.0×0.81+0.9×0.18=0.972。
在非峰值時段,只需要一條鏈路工作就可以傳送全部業(yè)務,此時這兩條鏈路系統(tǒng)的可用性為A非峰值時段=1.0×0.81+1.0×0.18=0.99。由于非峰值時段約占整個工作時間的60%,即峰值時段約占整個工作時間的40%,因此這兩條鏈路系統(tǒng)的平均可用性為Af=0.4×A峰值時段+0.6×A非峰值時段=0.4×0.972+0.6×0.99=0.9828。
5、電子政務安全體系是一個立體的三維防護體系,其設計出發(fā)點是:
①政務內網(wǎng)(或政務專網(wǎng)等涉密內網(wǎng))系統(tǒng)必須保證萬無一失;
②政務外網(wǎng)系統(tǒng)做到適度安全,合理平衡系統(tǒng)運行效率和系統(tǒng)安全;
③因特網(wǎng)(Internet)公共服務系統(tǒng)以適用、實用為主。在圖2—8所示的行政審批服務中心部分網(wǎng)絡結構圖中,政務專網(wǎng)和經(jīng)審批通過的涉密部門內網(wǎng)主要用于涉密信息的處理、傳輸和存儲。這兩個網(wǎng)絡系統(tǒng)的建設重點是防止泄密,因此應嚴格按照國家對于涉密信息系統(tǒng)的要求,采取安全措施進行建設和實施。其主要的安全措施包括加密、訪問控制、權限控制和身份鑒別等。
政務外網(wǎng)和大樓內局域網(wǎng)主要完成大多數(shù)非敏感的政務管理和服務功能。這兩個網(wǎng)絡系統(tǒng)的主要用戶是公務員,因此安全重點在于防止與控制公務員異常活動,抵抗和防護來自外部網(wǎng)絡的攻擊。除了涉密信息外,大量的電子政務信息都匯聚和存放在這兩個網(wǎng)絡系統(tǒng)內。確保數(shù)據(jù)安全是這兩個系統(tǒng)安全的核心內容,具體而言主要包括以下內容。
(1)數(shù)據(jù)訪問范圍的控制。這兩個網(wǎng)絡系統(tǒng)中處理保存的數(shù)據(jù)主要是大量反映社會狀態(tài)的內部信息,必須確保這些信息只能在這兩個網(wǎng)絡系統(tǒng)中流轉,確保
系統(tǒng)架構設計師http://
只在指定的職能部門及相關人員之間流動和處理。
(2)數(shù)據(jù)完整性的保護。這兩個網(wǎng)絡系統(tǒng)中處理保存的大量數(shù)據(jù)是電子政務業(yè)務部門履行管理和服務職能所必需的,數(shù)據(jù)是否準確直接影響政府的決策和國家政務的執(zhí)行,確保數(shù)據(jù)完整性和準確性是這兩個網(wǎng)絡系統(tǒng)安全最重要的工作之一。
(3)系統(tǒng)可用性的保障。這兩個網(wǎng)絡系統(tǒng)是政府公務員直接使用的網(wǎng)絡,其可用性的降低和破壞將直接影響政府的運行效率,必須保證該系統(tǒng)不會因信息安全事故造成系統(tǒng)停止工作。
Internet公共服務網(wǎng)主要是提供電子政務系統(tǒng)與公眾的出入口,其安全重點在于確保出入口的安全,防止攻擊者通過該網(wǎng)絡系統(tǒng)進入電子政務系統(tǒng),同時確保圖2-8中對外服務平臺中相關服務器的高度可用性。
在圖2—8中,安全接入平臺橫跨了以上5個網(wǎng)絡系統(tǒng),需要全系統(tǒng)統(tǒng)一考慮其的IT安全措施和手段,具體考慮要點如下。
(1)網(wǎng)絡系統(tǒng)對接和信息交換的安全。在圖2—8中,政務專網(wǎng)和涉密部門內網(wǎng)要通過網(wǎng)閘之類的安全設備與政務外網(wǎng)實現(xiàn)物理隔離,實現(xiàn)了純數(shù)據(jù)擺渡,有效地抵抗利用網(wǎng)絡協(xié)議的攻擊,為政務內網(wǎng)建立起可靠的邊界保護。政務外網(wǎng)與:Internet服務網(wǎng)之間可以通過防火墻之類的安全設備實現(xiàn)邏輯隔離。在政務專網(wǎng)和政務外網(wǎng)分別安裝內、外數(shù)據(jù)交換服務器,這些服務器都采用雙網(wǎng)卡配置,一塊網(wǎng)卡接政務內(外)網(wǎng)和另一塊接網(wǎng)閘。政務專網(wǎng)與涉密部門內網(wǎng)之間、涉密部門內網(wǎng)與政務外網(wǎng)之間也做類似的數(shù)據(jù)交換服務器配置,使得這些數(shù)據(jù)交換服務器成為不同網(wǎng)絡之間數(shù)據(jù)傳輸?shù)奈ㄒ煌ǖ溃瑥亩M一步加強各個網(wǎng)絡系統(tǒng)之間信息交互的安全性。
系統(tǒng)架構設計師http://
(2)信息中加帶密級和敏感度標記。例如,政務外網(wǎng)與政務內網(wǎng)所有的應用數(shù)據(jù)都必須帶有信息密級范圍和敏感度標識的標記。原則上,不同范圍的信息、不同密級的信息不能夠自由交換,系統(tǒng)中應專門設置專用的信息內容檢查和權限控制管理設施,用于對系統(tǒng)內信息的流轉進行控制和處理。因此在政務外網(wǎng)和政務內網(wǎng)應分別建立起基于公鑰證書的認證服務器,由其為內、外網(wǎng)各自的數(shù)據(jù)交換服務器進行認證,并用認證所產(chǎn)生的會話密鑰對所有通過本服務器通道的數(shù)據(jù)進行標識,從而保證了通道數(shù)據(jù)的完整性(不可篡改,更不能發(fā)送未經(jīng)標記的數(shù)據(jù))。結合數(shù)據(jù)擺渡和認證標記技術,在安全接入平臺的底層建立了安全的數(shù)據(jù)擺渡機制。
(3)嚴格定義交換的數(shù)據(jù)。例如,對于政務外網(wǎng)與政務內網(wǎng)的信息交換和交流,只可以采用應用數(shù)據(jù)交換的方式,并且要求應用數(shù)據(jù)必須嚴格定義,原則上不能夠交換可用做程序(或類似功能)的數(shù)據(jù)。
(4)設置訪問控制。例如,對于政務外網(wǎng)與Internet服務網(wǎng)的信息交換和交流,可以采用網(wǎng)絡層信息交換,設置訪問控制的方式進行,典型措施是防火墻。此外還可以考慮使用應用層安全系統(tǒng)和權限控制系統(tǒng)。例如,采用融合公鑰技術或Kerberos認證協(xié)議的認證方案,即采用公鑰技術作為認證的手段,結合Kerberos協(xié)議的會話密鑰分發(fā)機制,在分發(fā)會話密鑰的同時,分發(fā)用戶的屬性證書。該方案具有公鑰體系的強認證特性,避免了Kerberos認證體系中的中心數(shù)據(jù)庫的脆弱性,同時可在單一的一個協(xié)議中完成認證和授權雙重功能。并在方案中結合KMI技術,采用屬性證書的方式表示RBAC的訪問控制屬性,而形成一個單一的單點登錄授權體系。
(5)公務員權限管理系統(tǒng)。公務員統(tǒng)一的權限管理中心對電子政務所涉及的
系統(tǒng)架構設計師http://
所有公務員用戶的權限進行統(tǒng)一管理,支持電子政務工程所涉及的所有應用系統(tǒng)。安全接入平臺的安全服務包括登錄服務、授權服務和審計服務。平臺上運行的應用軟件利用登錄服務向平臺認證,并通過授權服務向平臺的其他服務(包括應用軟件向平臺注冊的服務)取得授權。
(6)用戶管理系統(tǒng)。電子政務信息系統(tǒng)的用戶管理分為3類用戶的管理:①自然人用戶的管理;②法人用戶的管理;③公務員用戶的管理。前兩類用戶的管理是基于相應的職能部門數(shù)據(jù)庫(如居民可與戶口、社保等系統(tǒng)統(tǒng)一),應全系統(tǒng)統(tǒng)一管理;公務員用戶的管理則需要另外建設。公務員統(tǒng)一管理系統(tǒng)需要同時支持政務內網(wǎng)和政務外網(wǎng)等相關網(wǎng)絡系統(tǒng)上的應用。
(7)安全資源管理中心。安全資源管理中心是用于對電子政務所涉及的所有安全技術手段進行管理的中心,該中心負責所有信息安全相關設備,軟件的配置,安全事件的記錄和管理,設備故障的發(fā)現(xiàn)和處置,所有安全相關策略、參數(shù)及數(shù)據(jù)的自動升級、維護和發(fā)布。例如,通過安裝流量監(jiān)測和監(jiān)管服務器,實現(xiàn)對接入平臺運行情況進行安全監(jiān)測與審計,對接入平臺及業(yè)務信息進行注冊管理、各種安全策略管理、流量監(jiān)測、統(tǒng)計分析和安全審計等。
6、存儲區(qū)域網(wǎng)絡(SAN)是一個由存儲設備和系統(tǒng)部件構成的網(wǎng)絡。所有的通信都在一個與應用網(wǎng)絡隔離的單獨的網(wǎng)絡上完成,可以被用來集中和共享存儲資源。實現(xiàn)SAN的硬件基礎設施的是光纖通道,用光纖通道構筑的SAN由3部分構成,分別為存儲和備份設備(包括磁帶庫、磁盤陣列和光盤庫等)、光纖通道網(wǎng)絡連接部件(包括主機總線適配卡(HBA)、驅動程序、光纜(線)、集線器、交換機、光纖通道與SCSI間的橋接器(Bridge)等),以及應用和管理軟件(包括備份軟件、存儲資源管理軟件和設備管理軟件)。SAN置于LAN之下,而不涉及LAN。
系統(tǒng)架構設計師http://
利用SAN不僅可以提供大容量的存儲數(shù)據(jù),而且地域上可以分散,并緩解了大量數(shù)據(jù)傳輸對局域網(wǎng)的影響。SAN的結構允許任何服務器連接到任何存儲陣列,不管數(shù)據(jù)放置在哪里,服務器都可以直接存取所需的數(shù)據(jù)。
相對于傳統(tǒng)的存儲架構,SAN不必宕機或中斷與服務器的連接即可增加存儲,還可以集中管理數(shù)據(jù),從而降低總體擁有成本。利用協(xié)議技術,SAN可以有效地傳輸數(shù)據(jù)塊。通過支持在存儲和服務器之間傳輸海量數(shù)據(jù)塊,SAN提供了數(shù)據(jù)備份的有效方式。SAN分為FCSAN、IPSAN和IBSAN等。其中,F(xiàn)CSAN使用專用光纖通道設備,IPSAN使用通用的IP網(wǎng)絡及設備,因此FCSAN與IPSAN相比傳輸速度高,但價格比IPSAN高。
從應用上來說,相對于IPSAN,F(xiàn)CSAN可以承接更多的并發(fā)訪問用戶數(shù)。當并發(fā)訪問存儲的用戶數(shù)不多時,F(xiàn)CSAN與IPSAN兩者的性能相差無幾。但一旦外接用戶數(shù)呈大規(guī)模增長趨勢,F(xiàn)CSAN就顯示出其在穩(wěn)定性、安全性及高性能等方面的優(yōu)勢。在穩(wěn)定性方面,由于FCSAN使用高效的光纖通道協(xié)議,因此大部分功能都是基于硬件來實現(xiàn)的。例如,后端存儲子系統(tǒng)的存儲虛擬通過帶有高性能處理器的專用RAID控制器來實現(xiàn),中間的數(shù)據(jù)交換層通過專用的高性能ASIC來進行基于硬件級的交換處理,在主機端通過帶有ASIC芯片的專用HBA來進行數(shù)據(jù)信息的處理。因此在大量減少主機處理開銷的同時,也提高了整個FCSAN的穩(wěn)定性。在安全性方面,F(xiàn)CSAN是服務器后端的專用局域網(wǎng)絡,安全性比較高。采用IPSAN可以將SAN為服務器提供的共享特性及IP網(wǎng)絡的易用性很好地結合在一起,且為用戶提供了類似于服務器本地存儲的高性能體驗。iSCSI是實現(xiàn)IPSAN最重要的技術。在iSCSI出現(xiàn)之前,IP網(wǎng)絡與塊模式(主要是光纖通道)是兩種完全不兼容的技術。由于iSCSI是運行在TCP/IP之上的塊模
系統(tǒng)架構設計師http://
式協(xié)議,它將IP網(wǎng)絡與塊模式的優(yōu)勢很好地結合起來,使得lPSAN的成本低于FCSAN。基于iSCSI標準的IPSAN提供Initiator與目標端兩方面的身份驗證(使用CHAP、SRP、Kerberos和SPKM),能夠阻止未經(jīng)授權的訪問,只允許那些可信賴的節(jié)點進行訪問,可通過IPSec確保其數(shù)據(jù)的安全性。
由于IP技術的普及和發(fā)展,利用iSCSI技術搭建的IPSAN可以隨著網(wǎng)絡延伸至全球任意一個角落,從根本上解決了信息孤島的問題。甚至可以通過IPSAN來連接各個FCSAN的孤島,因此IPSAN比FCSAN具有更好的伸展性。
如需了解更多系統(tǒng)架構設計師資訊,請看希賽軟考學院!
第五篇:嵌入式系統(tǒng)相關知識點總結
嵌入式系統(tǒng)的定義及特點
定義:嵌入式系統(tǒng)是以應用為中心、以計算機技術為基礎,軟、硬件可裁剪,適應于應用系統(tǒng)對功能、可靠性、成本、體積、功耗等方面有特殊要求的專用計算機系統(tǒng)。
特點:(1)嵌入式系統(tǒng)是面向特定應用的。嵌入式系統(tǒng)中的CPU是專門為特定應用設計的,具有低功耗、體積小、集成度高等特點,能夠把通用CPU中許多由板卡完成的任務集成在芯片內部,從而有利于整個系統(tǒng)設計趨于小型化。
(2)嵌入式系統(tǒng)涉及先進的計算機技術、半導體技術、電子技術、通信和軟件等各個行業(yè)。是一個技術密集、資金密集、高度分散、不斷創(chuàng)新的知識集成系統(tǒng)。
(3)嵌入式系統(tǒng)的硬件和軟件都必須具備高度可定制性。
(4)嵌入式系統(tǒng)的生命周期相當長。嵌入式系統(tǒng)和具體應用有機地結合在一起,其升級換代也是和具體產(chǎn)品同步進行的。
(5)嵌入式系統(tǒng)本身并不具備在其上進行進一步開發(fā)的能力。在設計完成以后,用戶如果需要修改其中的程序功能,必須借助于一套專門的開發(fā)工具和環(huán)境。
(6)為了提高執(zhí)行速度和系統(tǒng)可靠性,嵌入式系統(tǒng)中的軟件一般都固化在存儲器芯片或單片機中,而不是存貯于磁盤等載體中。
特點也可答:1.系統(tǒng)內核小。2.專用性強。3.系統(tǒng)精簡。4.高實時性的系統(tǒng)軟件(OS)是嵌入式軟件的基本要求。5.嵌入式軟件開發(fā)要想走向標準化,就必須使用多任務的操作系統(tǒng)。6.嵌入式系統(tǒng)開發(fā)需要開發(fā)工具和環(huán)境。7.嵌入式系統(tǒng)與具體應用有機結合在一起,升級換代也是同步進行,所以具有較長的生命周期。8.為了提高運行速度和系統(tǒng)可靠性,嵌入式系統(tǒng)中的軟件一般都固化在存儲器芯片中。
操作系統(tǒng)在嵌入式系統(tǒng)中所起的作用(四個)
嵌入式操作系統(tǒng)(嵌入式linux學習)的功能
嵌入式操作系統(tǒng)除具備了一般操作系統(tǒng)(嵌入式linux系統(tǒng))最基本的功能,如任務調度、同步機制、中斷處理、文件處理等外,還有以下兩個方面的功能:
1.構成一個易于編程的虛擬機平臺
嵌入式操作系統(tǒng)構成一個虛擬機平臺,EOS把底層的硬件細節(jié)封裝起來,為運行在它上面的軟件(如中間件軟件和各種應用軟件)提供了一個抽象的編程接口。軟件開發(fā)在這個編程接口的上進行,而不直接與機器硬件層打交道。
2.系統(tǒng)資源的管理者
嵌入式操作系統(tǒng)是一個系統(tǒng)資源的管理者,負責管理系統(tǒng)當中的各種軟硬件資源,如處理器、內存、各種I/O設備、文件和數(shù)據(jù)等,使得整個系統(tǒng)能夠高效、可靠地運轉。
嵌入式操作系統(tǒng)負責嵌入式系統(tǒng)的全部軟、硬件資源的分配、調度、控制、協(xié)調并發(fā)活動。它必須體現(xiàn)其所在系統(tǒng)的特征,能夠通過裝卸某些模塊來達到系統(tǒng)所要求的功能。
嵌入式操作系統(tǒng)是嵌入式系統(tǒng)應用的核心.嵌入式操作系統(tǒng),大大地提高了嵌入式系統(tǒng)硬件工作效率,并為應用軟件開發(fā)提供了極大的便利。
操作系統(tǒng)的作用主要體現(xiàn)在兩方面:
1.屏蔽硬件物理特性和操作細節(jié),為用戶使用計算機提供了便利 2.有效管理系統(tǒng)資源,提高系統(tǒng)資源使用效率
Linux與嵌入式使用的uclinux操作系統(tǒng)的關系
Linux與UNIX系統(tǒng)兼容,開放源代碼。現(xiàn)在廣泛應用于服務器領域。而更大的影響在于它正逐漸的應用于嵌入式設備。uClinux正是在這種氛圍下產(chǎn)生的。所以uClinux就是Micro-Control-Linux,字面上的理解就是“針對微控制領域而設計的Linux系統(tǒng)”。
uClinux是針對控制領域的嵌入式linux操作系統(tǒng),它從Linux 2.0/2.4內核派生而來,沿襲了主流Linux的絕大部分特性。uClinux同標準Linux的最大區(qū)別就在于內存管理。標準Linux是針對有MMU的處理器設計的。在這種處理器上,虛擬地址被送到MMU,MMU把虛擬地址映射為物理地址。通過賦予每個任務不同的虛擬—物理地址轉換映射,支持不同任務之間的保護。對于uCLinux來說,其設計針對沒有MMU的處理器,不能使用處理器的虛擬內存管理技術,仍然采用存儲器的分頁管理。
什么是內核?
內核是操作系統(tǒng)最基本的部分。它是為眾多應用程序提供對計算機硬件的安全訪問的一部分軟件,這種訪問是有限的,并且內核決定一個程序在什么時候對某部分硬件操作多長時間。內核,是一個操作系統(tǒng)的核心。是基于硬件的第一層軟件擴充,提供操作系統(tǒng)的最基本的功能,是操作系統(tǒng)工作的基礎,它負責管理系統(tǒng)的進程、內存、設備驅動程序、文件和網(wǎng)絡系統(tǒng),決定著系統(tǒng)的性能和穩(wěn)定性。
什么是Bootlonder? 答案一搜狗百科:啟動程序(英語:boot loader,也稱啟動加載器,引導程序)位于電腦或其他計算機應用上,是指引導操作系統(tǒng)啟動的程序。引導程序啟動方式及程序視應用機型種類而不同。BIOS開機完成后,bootloader就接手初始化硬件設備、創(chuàng)建存儲器空間的映射,以便為操作系統(tǒng)內核準備好正確的軟硬件環(huán)境。BootLoader是依賴于硬件而實現(xiàn)的,特別是在嵌入式領域,為嵌入式系統(tǒng)建立一個通用的BootLoader是很困難的。
答案二百度百科:Boot Loader 是在操作系統(tǒng)內核運行之前運行的一段小程序。通過這段小程序,我們可以初始化硬件設備、建立內存空間的映射圖,從而將系統(tǒng)的軟硬件環(huán)境帶到一個合適的狀態(tài),以便為最終調用操作系統(tǒng)內核準備好正確的環(huán)境。通常,Boot Loader 是嚴重地依賴于硬件而實現(xiàn)的,特別是在嵌入式世界。因此,在嵌入式世界里建立一個通用的 Boot Loader 幾乎是不可能的。盡管如此,我們仍然可以對 Boot Loader 歸納出一些通用的概念來,以指導用戶特定的 Boot Loader 設計與實現(xiàn)。
使用帶uclinux操作系統(tǒng)的嵌入式系統(tǒng)應該注意什么問題?
uClinux的內存管理
uClinux同標準Linux的最大區(qū)別就在于內存管理。對于uCLinux來說,其設計針對沒有MMU的處理器,不能使用處理器的虛擬內存管理技術,仍采用存儲器的分頁管理,系統(tǒng)在啟動時把實際存儲器進行分頁。在加載應用程序時程序分頁加載。這一點影響了系統(tǒng)工作的很多方面。
uClinux系統(tǒng)對于內存的訪問是直接的,所有程序中訪問的地址都是實際的物理地址。操作系統(tǒng)對內存空間沒有保護,各個進程實際上共享一個運行空間。由于應用程序加載時必須分配連續(xù)的地址空間,而針對不同硬件平臺的可一次成塊,分配內存大小限制是不同,所以開發(fā)人員在開發(fā)應用程序時必須考慮內存的分配情況并關注應用程序需要運行空間的大小。另外由于采用實存儲器管理策略,用戶程序同內核以及其它用戶程序在一個地址空間,程序開發(fā)時要保證不侵犯其它程序的地址空間,以使得程序不至于破壞系統(tǒng)的正常工作,或導致其它程序的運行異常。
從內存的訪問角度來看,開發(fā)人員的權利增大了(開發(fā)人員在編程時可以訪問任意的地址空間),但與此同時系統(tǒng)的安全性也大為下降。uClinux的多進程處理
uClinux沒有MMU管理存儲器,在實現(xiàn)多個進程時(fork調用生成子進程)需要實現(xiàn)數(shù)據(jù)保護。uClinux的這種多進程實現(xiàn)機制同它的內存管理緊密相關。uClinux針對沒有mmu處理器開發(fā),所以被迫使用一種flat方式的內存管理模式,啟動新的應用程序時系統(tǒng)必須為應用程序分配存儲空間,并立即把應用程序加載到內存。缺少了MMU的內存重映射機制,uClinux必須在可執(zhí)行文件加載階段對可執(zhí)行文件reloc處理,使得程序執(zhí)行時能夠直接使用物理內存。
編程實現(xiàn)五個點的中值濾波和均值濾波
clear all;t=0:0.01:1;f2=5;%生成一個正弦信號y; y1=1*sin(2*pi*f2*t);%y1=square(2*pi*f2*t);%向y中加入噪聲信號生成x;x1=y1+0.1*randn(1,101);figure(1)subplot(2,1,1);plot(t,y1,'r');title('生成一個正弦信號y');grid;legend y;subplot(2,1,2);plot(t, x1,'r');title('向y中加入噪聲信號生成x');grid;legend x;X=1:length(x1)for X=1:length(x1)z2=smooth(x1,5);%M=5時的均值濾波 end for X=1:length(x1)figure(2)plot(t,z1,'r');title('M=5時的均值濾波處理后的信號');grid;legend y;for X=1:length(x1)L2= median(x1,5);end figure(3)plot(t,L2,'r');title('M=5時的中值濾波處理后的信號');grid;legend y;