第一篇:嵌入式系統設計師考試要求
嵌入式系統設計師考試要求
通過本考試的合格人員能根據項目管理和工程技術的實際要求,按照系統總體設計規格說明書進行軟、硬件設計,編寫系統開發的規格說明書等相應的文檔;組織和指導嵌入式系統開發實施人員編寫和調試程序,并對嵌入式系統硬件設備和程序進行優化和集成測試,開發出符合系統總體設計要求的高質量嵌入式系統;具有工程師的實際工作能力和業務水平。嵌入式系統設計師考試說明
1.考試要求:
(1)掌握計算機科學基礎知識;
(2)掌握嵌入式系統的硬件、軟件知識;
(3)掌握嵌入式系統分析的方法;
(4)掌握嵌入式系統設計與開發的方法及步驟;
(5)掌握嵌入式系統實施的方法;
(6)掌握嵌入式系統運行維護知識;
(7)了解信息化基礎知識、計算機應用的基礎知識;
(8)了解信息技術標準、安全性,以及有關法律法規的基本知識;
(9)了解嵌入式技術發展趨勢;
(10)正確閱讀和理解計算機及嵌入式系統領域的英文資料。
2.通過本考試的合格人員能根據項目管理和工程技術的實際要求,按照系統總體設計規格說明書進行軟、硬件設計,編寫系統開發的規格說明書等相應的文檔;組織和指導嵌入式系統開發實施人員編寫和調試程序,并對嵌入式系統硬件設備和程序進行優化和集成測試,開發出符合系統總體設計要求的高質量嵌入式系統;具有工程師的實際工作能力和業務水平。
3.本考試設置的科目包括:
(1)嵌入式系統基礎知識,考試時間為150分鐘,筆試,選擇題;
(2)嵌入式系統設計應用技術,考試時間為150分鐘,筆試,問答題。
第二篇:嵌入式系統設計師考試經驗分享與小結
嵌入式系統設計師考試經驗分享與小結(2)
閱讀(202)評論(0)發表時間:2008年08月19日 21:26
本文地址:http://qzone.qq.com/blog/13177646-121915237
5第6題:
若內存地址區間為4000H~43FFH,每個存貯單元可存儲16位二進制數,該內存區域用4片存儲器芯片構成,則構成該內存所用的存儲器芯片的容量是(6)。
(6)A.512×16bitB.256×8bitC.256×16bitD.1024×8bit
[個人分析:
主要考查內存硬件地址安排的內容。對于嵌入式系統來說,這是一個相當重要的內容,幾乎每個嵌入式系統都需要進行FLASH和SDRAM的擴展,這就需要對內存地址的安排相當熟悉了。在2006年考卷中,第1題就考查了這方面的內容。首先計算內容空間的大小:43FFH-4000H=3FFH,其大小為1024×16bit 接著計算存儲芯片的容量:(1024×16bit)/4=256×16bit=512×8bit
根據選項提供的內容,只有256×16bit符合提綱的要求。
[參考答案:C
第7和8題:
某Web網站向CA申請了數字證書。用戶登錄該網站時,通過驗證(7),可確認該數字證書的有效性,從而(8)。
(7)A.CA的簽名B.網站的簽名
C.會話密鑰D.DES密碼
(8)A.向網站確認自己的身份B.獲取訪問網站的權限
C.和網站進行雙向認證D.驗證該網站的真偽
[個人分析:
在嵌入式系統設計師考試也會考察計算機當前發展的些技術和情況,有點像政治考試中的時事一樣,不知道我這樣說恰不恰當。在2006年就考了網絡安全控制技術、沖擊波病毒等一些內容。這部分的一些題目也會在軟件設計師和系統分析師等考卷中出現。
本人對這些內容不熟悉,只能通過網上查點資料來分析一下,不過答案應該是對的,在當年的軟件設計師的考卷中出現了這道題目,答案是參考那份試卷的標準答案的。
CA(Certificate Authority)即“認證機構”,是負責簽發證書、認證證書、管理已頒發證書的機構,是PKI的核心。CA要制定政策和具體步驟來驗證、識別用戶的身份,對用戶證書進行簽名,以確保證書持有者的身份和公鑰的擁有權。數字證書是公開密鑰體系的一種密鑰管理媒介。是一種權威的電子文檔,形同網絡環境中的一種身份證,用于證明某一主體(如組織機構、人、服務器等)的身份及其公開密鑰的合法性,又稱為數字ID。數字證書是由權威公正的第三方機構即CA中心簽發的,以數字證書為核心的加密技術可以對網絡上傳輸的信息進行加密和解密、數字簽名和簽名驗證,確保網上傳遞信息的機密性、完整性,以及交易實
體身份的真實性,簽名信息的不可否認性,從而保障網絡應用的安全性。對于第8題為什么選D,還不是很理解,期待高手的出現,給我解釋一下。
[參考答案:A、D
第9題:
實現VPN的關鍵技術主要有隧道技術、加解密技術、(9)和身份認證技術。
(9)A.入侵檢測技術B.病毒防治技術
C.安全審計技術D.密鑰管理技術
[個人分析:
PGP—Pretty Good Privacy,是一個基于RSA公匙加密體系的郵件加密軟件。可以用它對你的郵件保密以防止非授權者閱讀,它還能對你的郵件加上數字簽名從而使收信人可以確信郵件是你發來的。除了您希望的人看得到以外,沒有其它人可以解讀。一但加密後,訊息看起來是一堆無意義的亂碼。PGP 提供了極強的保護功能,即使是最先進的解碼分析技術也無法解讀加密後的文字。它讓你可以安全地和你從未見過的人們通訊,事先并不需要任何保密的渠道用來傳遞密匙。RSA(Rivest-Shamir-Adleman)算法是一種基于大數不可能質因數分解假設的公匙體系。簡單地說就是找兩個很大的質數,一個公開即公鑰,另一個不告訴任何人,即私鑰。這兩個密匙是互補的,就是說用公匙加密的密文可以用私匙解密,反過來也一樣。
假設甲要寄信給乙,他們互相知道對方的公匙。甲就用乙的公匙加密郵件寄出,乙收到后就可以用自己的私匙解密出甲的原文。由于沒別人知道乙的私匙,所以即使是甲本人也無法解密那封信,這就解決了信件保密的問題。另一方面由于每個人都知道乙的公匙,他們都可以給乙發信,那么乙就無法確信是不是甲的來信。這時候就需要用數字簽名來認證。甲用自己的私匙將上述的128位的特征值加密,附加在郵件后,再用乙的公匙將整個郵件加密。這樣這份密文被乙收到以后,乙用自己的私匙將郵件解密,得到甲的原文和簽名,乙的PGP也從原文計算出一個128位的特征值來和用甲的公匙解密簽名所得到的數比較,如果符合就說明這份郵件確實是甲寄來的。這樣兩個安全性要求都得到了滿足。
PGP是一種供大眾使用的加密軟件。電子郵件通過開放的網絡傳輸,網絡上的其他人都可以監聽或者截取郵件,來獲得郵件的內容,因而郵件的安全問題就比較突出了。保護信息不被第三者獲得,這就需要加密技術。還有一個問題就是信息認證,如何讓收信人確信郵件沒有被第三者篡改,這就需要數字簽名技術。RSA公匙體系的特點使它非常適合用來滿足上述兩個要求:保密性(Privacy)和認證性(Authentication)。
PGP還可以用來只簽名而不(使用對方公鑰)加密整個郵件,這適用于公開發表聲明時,聲明人為了證實自己的身份,可以用自己的私匙簽名。這樣就可以讓收件人能確認發信人的身份,也可以防止發信人抵賴自己的聲明。這一點在商業領域有很大的應用前途,它可以防止發信人抵賴和信件被途中篡改。
目前VPN主要采用四項技術來保證數據通信安全,這四項技術分別是隧道技術(Tunneling)、加解密技術(Encryption & Decryption)、密鑰管理技術(Key Management)、身份認證技術(Authentication)。
在當年的軟設中,也出現了這道題目。
[參考答案:D
第10題:
若某人持有盜版軟件,但他本人確實不知道該軟件是盜版的,則(10)承擔侵權責任。
(10)A.應由該軟件的持有者
B.應由該軟件的提供者
C.應由該軟件的提供者和持有者共同
D.該軟件的提供者和持有者都不
[個人分析:
考查知識產權方面的東西,這道題目不懂也蒙對的幾率也很大。在當年的軟設中,也出現了這道題目。
[參考答案:B
第11題:
(11)不屬于知識產權的范圍。
(11)A.地理標志權B.物權C.鄰接權D.商業秘密權
[個人分析:
考查知識產權方面的東西,這道題目不懂也蒙對的幾率也很大。在當年的軟設中,也出現了這道題目。可以先將A和D排除,選對的幾率有50%了。
[參考答案:B
第12題:
W3C
(12)A.XMLB.SMILC.VRMLD.SGML
[個人分析:
在當年的軟設中,也出現了這道題目,考查網絡標準的一些內容。
XML:互聯網聯合組織(W3C)創建一組規范,以便于軟件開發人員和內容創作者在網頁上組織信息,其目的不僅在于滿足不斷增長的網絡應用需求,同時還希望借此能夠確保在通過網絡進行交互合作時,具有良好的可靠性與互操作性。XML語言可以讓信息提供者根據需要,自行定義標記及屬性名,也可以包含描述法,從而使XML文件的結構可以復雜到任意程度。
SMIL:同步多媒體集成語言(Synchronized Multimedia Integration Language)的縮寫,念做smile.它是由互聯網聯合組織(W3C)規定的多媒體操縱語言。SMIL與我們網頁上用的HTML(超文本傳輸語言)的語法格式非常相似。后者主要針對普通的網絡媒體文件進行操縱(文字、圖片、聲音、動畫、視頻的機械堆砌),而前者則操縱多媒體片斷(對多媒體片斷的有機的、智能的組合)。
VRML:臺無關性。是目前Internet上基于 WWW的三維互動網站制作的主流語言。
SGML:Standard Generalized Markup Language的縮寫, 意思是標準通用標記語言。該標準定義獨立于平臺和應用的文本文檔的格式、索引和鏈接信息,為用戶提供一種類似于語法的機制,用來定義文檔的結構和指示文檔結構的標簽。SGML規定了在文檔中嵌入描述標記的標準格式,指定了描述文檔結構的標準方法,目前在WEB上使用的HTML格式便是使用固定標簽集的一種 SGML文檔。用于SGML可以支持無數的文檔結構類型,并且可以創建與特定的軟硬件無關的文檔,因此很容易與使用不同計算機系統的用戶交換文檔。
[參考答案:B
第13題:
對同一段音樂可以選用MIDI格式或WAV格式來記錄存儲。以下敘述中(13)是不正確的。
(13)A.WAV格式的音樂數據量比MIDI格式的音樂數據量大
B.記錄演唱會實況不能采用MIDI格式的音樂數據
C.WAV格式的音樂數據沒有體現音樂的曲譜信息
D.WAV格式的音樂數據和MIDI格式的音樂數據都能記錄音樂波形信息
[個人分析:
在當年的軟設中,也出現了這道題目,考查多媒體方面的內容。
WAV:WAV文件格式是一種由微軟和IBM聯合開發的用于音頻數字存儲的標準,WAVE文件作為多媒體中使用的聲波文件格式之一,它是以RIFF格式為標準的。在Windows中,把聲音文件存儲到硬盤上的擴展名為WAV。WAV記錄的是聲音的本身,所以它占的硬盤空間大的很。例如:16位的44.1KHZ的立體聲聲音一分鐘要占用大約10MB的容量,和MIDI相比就差的很遠。WAV音頻格式的優點包括:簡單的編/解碼(幾乎直接存儲來自模/數轉換器(ADC)的信號)、普遍的認同/支持以及無損耗存儲。WAV格式的主要缺點是需要音頻存儲空間。對于小的存儲限制或小帶寬應用而言,這可能是一個重要的問題。WAV格式的另外一個潛在缺陷是在32位WAV文件中的2G限制,這種限制已在為SoundForge開發的W64格式中得到了改善。
MIDI:MIDI的全稱是musICal instrument digital interface,它僅僅是一個通信標準,它是由電子樂器制造商們建立起來的,用以確定電腦音樂程序、合成器和其他電子音響的設備互相交換信息與控制信號的方法。MIDI系統實際就是一個作曲、配器、電子模擬的演奏系統。從一個MIDI設備轉送到另一個MIDI設備上去的數據就是MIDI信息。MIDI數據不是數字的音頻波形,而是音樂代碼或稱電子樂譜。
[參考答案:D
第14題:
設計制作一個多媒體地圖導航系統,使其能根據用戶需求縮放地圖并自動搜索路徑,最適合的地圖數據應該是(14)。
(14)A.真彩色圖像B.航拍圖像
C.矢量化圖形D.高清晰灰度圖像
[個人分析:
在當年的軟設中,也出現了這道題目。
能根據用戶需求縮放地圖并自動搜索路徑,A、B、D都做不到。
[參考答案:C
第15題:
在過程式程序設計(①)、數據抽象程序設計(②)、面向對象程序設計(③)、泛型(通用)程序設計(④)中,C++ 語言支持(15),C語言支持(16)。
(15)A.①B.②③C.③④D.①②③④
(16)A.①B.①③C.②③D.①②③④
[個人分析:
在當年的軟設中,也出現了這道題目。
C語言只是支持過程式的設計。
C++程序設計語言是由來自AT&T Bell Laboratories的Bjarne Stroustrup設計和實現的,它兼具Simula語言在組織與設計方面的特性以及適用于系統程序設計的C語言設施。C++最初的版本被稱作“帶類的C(C with
classes)”[Stroustrup,1980],在1980年被第一次投入使用;當時它只支持系統程序設計和數據抽象技術。支持面向對象程序設計的語言設施在1983年被加入C++;之后,面向對象設計方法和面向對象程序設計技術就逐漸進入了C++領域。在1985年,C++第一次投入商業市場。在1987至1989年間,支持范型程序設計的語言設施也被加進了C++。
[參考答案:D、A
補充2007上午題的完整答案:
OHY 20080721
原文再續書接上一會。上次給了07年嵌入式系統設計師的上午題目的一點點答案,而且還不知道對錯。這次我特意去書店對了下我自己的答案,把不對的更正了。做事有始有終,在這里我將上午題目的所有答案,借花敬佛的給有需要的人參考。更具體,更權威的資料可以去參考《2007下半年試題分析與解答(全國計算機技術與軟件專業技術資格(水平)考試指定用書)》。這本書我看過,里面有分析,還是很不錯的,唯一不好的是除了嵌入式系統設計師的題目分析以外,還包括了2007年下半年技術資格(水平)考試的其他所有試題分析,也就是你花40多塊錢,但是有很多內容你用不上,除非其他的考試你也考拉。2007年下半年上午題的標準官方答案:
(1)-(15):BABCBCADDBBBDCD
(16)-(30): ACBCCDCBCBBDCAC
(31)-(45): DCBBCDCBBCCBDDC
(46)-(60): ACBABDDCBCACBAC
(61)-(75): ADBDDBBDDABCACB
空間的其他文章:
?
?
?
?
?
?
?
? ? ? [個人日記]:狼的十大處世哲學(2009年03月01日 13:53)[項目管理]:詳細的單片機開發流程(2009年02月24日 20:55)[項目管理]:單片機產品開發流程(2009年02月24日 20:46)
第三篇:嵌入式系統設計師考試經驗分享與小結
嵌入式系統設計師考試經驗分享與小結(1)
閱讀(101)評論(2)發表時間:2008年08月19日 21:2
4本文地址:http://qzone.qq.com/blog/13177646-121915224
2注:以下純屬個人意見,錯誤在所難免,僅作參考和探討,標準答案情參考官方書籍。
注:補充更新了2007年嵌入式系統設計師上午真題的全部標準答案
引言
2007年11月3日參加了嵌入式系統設計師的考試,意外的考進了全國50名。最近受導師所托,尋找這份試題和答案。而然在網上只能找到真題卻沒有發現答案。雖然《2007下半年試題分析與解答(全國計算機技術與軟件專業技術資格(水平)考試指定用書)》這本書已經出版,里面有這部分題目的分析和解答,但是我不打算為了這次而花40多塊錢買那本書。無奈之下,只有自己硬著頭皮做了一遍。盡管考試得了不錯的成績,可是再一次在可以查閱資料的情況下做這份題目,卻花就幾乎一個下午。由此可見,知識這個東西,如果丟下一定的時間,就會慢慢被遺忘了。籍著這次機會,我將自己做題的分析過程和對考點的體會做了一個小小的總結。一方面提供一份不是標準的網上參考答案,可以和標準答案對比一下,更希望的是和讀者進行交流,指出提供答案的錯誤,提高自己的水平。另外一方面或許能給正在準備下一次嵌入式系統設計師考試的朋友一點小小的借鑒和幫助。
在我準備嵌入式系統設計師的過程中,主要參考了下面三份官方的資料:
1、嵌入式系統設計師考試大綱
2、嵌入式系統設計師教程(以下簡稱:《教程》)
3、2006年下面下半年嵌入式系統設計考試真題
在準備階段的前期,先仔細研究一下考試大綱,明確考試的內容和要求,可以大膽的猜測一下出題者思路,對大綱的內容稍微分一下類,重點復習、一般復習、一般了解等等,見仁見智。嵌入式系統設計師的考試內容太多,太廣泛了,包括嵌入式系統的一些基礎概念、計算機的基礎知識、數字邏輯電路基礎、微處理器原理和接口技術、嵌入式軟件設計、實時操作系統的各種概念和相關理論、軟件設計和項目管理、需求分析和軟件測試、系統設計和具體應用等等。如果不對這些內容進行分類排序,在有限的時間內要進行全面的復習難度比較大。曾經想把我的復習提綱和筆記整理出來供大家借鑒,可是發現自己實在太懶了。
就我這個的復習來說,首先對2006年的考試真題進行徹底的分析,每一道題目其實就是一個考點,對這些題目的提綱和選項進行分析,根據這些內容在《嵌入式系統設計師教程》中,找到對應的章節和出處,有些可能是教程外的,但是這些內容是少數。對于75道題目,我們只要把握50道就可以通過了。因此,我覺得根據真題的考點和自己總結的重點,對《嵌入式系統設計師教程》進行研讀和分析,有時間的話可以多參考一些關于ARM、單片機和操作系統的內容,我想這樣的復習應該可以順利通過嵌入式系統設計師的考試的。
在復習過程中,以《嵌入式系統設計師教程》為主,要多看,反復的看。很多東西需要理解的記住,例如操作系統的的進程調度、內存地址的計算、程序變量的內存分配、頁式存儲的虛擬地址和物理地址的計算等等,這些既是難點又是考試的重點,而然一旦你掌握了它的實現原理,那么無論題目怎么變換你都可以輕易對付的。第一遍通本細看,勾畫出相應的重點;第二遍進行研讀,記住一些必要常考的概念,理解重要的工作原理等等,并將這些東西紀錄在一個筆記本上。在晚上睡覺前或者臨考的時候,把這些紀錄的重點反復復習(我覺得這個方法效果很好,效率很高)。接著就可以快速的復習《教程》中的內容,一方面進一步加強重點知識的復習,另外一方面在鞏固重點內容的基礎上,再慢慢掌握其他內容。這樣一遍一遍,一次一次的看書復習,再研究研究真題,很自然你的考試水平就上去了。
言歸正傳,下面開始紀錄我的做題過程。由于知識、時間和精力有限,如果發現錯誤,或者有值得交流的地方,盡可評論,也可以E我:
上午題(75道選擇題)
第1和2題:
在指令系統的各種尋址方式中,獲取操作數最快的方式是_(1)_。若操作數的地址包含在指令中,則屬于__(2)__方式。
(1)A.直接尋址B.立即尋址C.寄存器尋址D.間接尋址
(2)A.直接尋址B.立即尋址C.寄存器尋址D.間接尋址
[個人分析:
尋址方式是衡量計算機性能的重要指標之一。尋址方式的多少,直接反映了機器指令系統功能的強弱。尋址方式越多,其功能越強,靈活性越大。
直接尋址:直接在指令中給出操作數真實地址的尋址方式。在MCS-51中,操作碼后面的一個字節是實際操作數的地址。例如:MOV65H, A其指令代碼為:第一個字節(F5H)為操作碼,第二個字節(65H)為指令中給出的直接地址。執行結果是把A中的內容送到內部的65H單元中。
立即尋址:由指令直接給出操作數的尋址方式。在MCS-51中,操作碼后面緊跟一個被稱為立即數的操作數。例如:MOVA, #65H其執行結果即使將立即數65H送到累加器A。
寄存器尋址:對由指令選定的工作寄存器進行讀寫操作。在MCS-51中,由指令操作碼字節的低三位指明所尋址的工作寄存器。例如:假設累加器A的內容為10H,R3的內容為4FH,則執行指令MOVA, R3其指令代碼為11101011,其中最低3位(011)為工作寄存器R3的地址。執行結果是將累加器A的內容變為4FH,R3里面的內容不變。
間接尋址:主要有寄存器間接尋址和變址間接尋址。在MCS-51的寄存器間接尋址中,將指定的寄存器內容為地址,由該地址所指定的單元內容為操作數,指令中間接尋址寄存器前面用“@”表示前綴。例如:假設內部RAM的65H單元內容(47H)送到A,可以執行指令:MOV A, @R0其中R0的內容為65H。根據上述分析,獲取操作數最快的方式應該是立即尋址,因為操作數就在指令當中。而操作數包含在指令當中的應該是直接尋址。
[參考答案:B、A
第3題:
系統響應時間和作業吞吐量是衡量計算機系統性能的重要指標。對于一個持續處理業務的系統而言,(3),表明其性能越好。
(3)A.響應時間越短,作業吞吐量越小B.響應時間越短,作業吞吐量越大
C.響應時間越長,作業吞吐量越大D.響應時間不會影響作業吞吐量
[個人分析:
響應時間是指一個業務提交到處理的時間,這個時間越短越好;而吞吐量是指單位時間里面可以處理的業務量,這個指標越大越好。
[參考答案:B
第4和5題:
每一條指令都可以分解為取指、分析和執行三步。已知取指時間t取指=4△t,分析時間t分析=3△t,執行時間t執行=5△t。如果按串行方式執行完100條指令需要(4)△t。如果按照流水線方式執行,執行完100條指令需要(5)△t。
(4)A.1190B.1195C.1200D.120
5(5)A.504B.507C.508D.510
[個人分析:
主要考查流水線技術的理解,在《教程》的23頁有相關的分析。在2006年的考卷中,第3題考查了相同的考點。
按照串行的方式,執行完一條指令才能執行下一條指令,那么執行完100條指令的時間為:(4+3+5)×100=1200
按照流水線的方式,可以同時執行多條指令。在第一條指令進行分析的時候,第二條指令已經開始取指;當第一條指令進行執行的時候,第二條指令進行分析,第三條指令取指;當第二條指令進行執行完的時候,第三條指令已經分析完成。依此類推,當第一條指令完成之后,每一個執行的周期就可以完成一條指令。因此,我們可以計算得100條指令的執行時間為:(4+3+5)+(100-1)×5=507
[參考答案:C、B
第四篇:軟考嵌入式系統設計師筆記歸納總結
軟考嵌入式系統設計師筆記
1.嵌入式系統的組成:硬件層、中間層、系統軟件層和應用軟件層
(1)硬件層:嵌入式微處理器、存儲器、通用設備接口和I/O 接口。
嵌入式核心模塊=微處理器+電源電路+時鐘電路+存儲器
Cache:位于主存和嵌入式微處理器內核之間,存放的是最近一段時間微處理器使用最多的程序代碼和數據。它的主要目標是減小存儲器給微處理器內核造成的存儲器訪問瓶頸,使處理速度更快。
(2)中間層(也稱為硬件抽象層HAL 或者板級支持包BSP):它將系統上層軟件和底層硬件分離開來,使系統上層軟件開發人員無需關系底層硬件的具體情況,根據BSP 層提供的接口開發即可。
BSP 有兩個特點:硬件相關性和操作系統相關性。
設計一個完整的BSP 需要完成兩部分工作:
A、嵌入式系統的硬件初始化和BSP 功能。
片級初始化:純硬件的初始化過程,把嵌入式微處理器從上電的默認狀態逐步設置成系統所要求的工作狀態。
板級初始化:包含軟硬件兩部分在內的初始化過程,為隨后的系統初始化和應用程序建立硬件和軟件的運行環境。
系統級初始化:以軟件為主的初始化過程,進行操作系統的初始化。
B、設計硬件相關的設備驅動。
(3)系統軟件層:由RTOS、文件系統、GUI、網絡系統及通用組件模塊組成。
RTOS 是嵌入式應用軟件的基礎和開發平臺。
(4)應用軟件:由基于實時系統開發的應用程序組成。2.嵌入式系統的定義
(1)定義:以應用為中心,以計算機技術為基礎,軟硬件可裁剪,適應應用系統對功能、可靠性、成本、體積、功耗嚴格要求的專用計算機系統。
(2)嵌入式系統發展的4 個階段:無操作系統階段、簡單操作系統階段、實時操作系統階段、面向Internet 階段。
(3)知識產權核(IP 核):具有知識產權的、功能具體、接口規范、可在多個集成電路設計中重復使用的功能模塊,是實現系統芯片(SOC)的基本構件。
(4)IP 核模塊有行為、結構和物理3 級不同程度的設計,對應描述功能行為的不同可以分為三類:軟核、固核、硬核。3.實時系統的調度
(1)調度:給定一組實時任務和系統資源,確定每個任務何時何地執行的整個過程。
(2)搶占式調度:通常是優先級驅動的調度,如uCOS。優點是實時性好、反應快,調度算法相對簡單,可以保證高優先級任務的時間約束;缺點是上下文切換多。
(3)非搶占式調度:通常是按時間片分配的調度,不允許任務在執行期間被中斷,任務一旦占用處理器就必須執行完畢或自愿放棄,如WinCE。優點是上下文切換少;缺點是處理器有效資源利用率低,可調度性不好。
(4)靜態表驅動策略:系統在運行前根據各任務的時間約束及關聯關系,采用某種搜索策略生成一張運行時刻表,指明各任務的起始運行時刻及運行時間。
(5)優先級驅動策略:按照任務優先級的高低確定任務的執行順序。
(6)實時任務分類:周期任務、偶發任務、非周期任務。
(7)實時系統的通用結構模型:數據采集任務實現傳感器數據的采集,數據處理任務處理采集的數據、并將加工后的數據送到執行機構管理任務控制機構執行。4.實時系統
(1)定義:能在指定或確定的時間內完成系統功能和對外部或內部、同步或異步時間做出響應的系統。
(2)區別:通用系統一般追求的是系統的平均響應時間和用戶的使用方便;而實時系統主要考慮的是在最壞情況下的系統行為。
(3)特點:時間約束性、可預測性、可靠性、與外部環境的交互性。
(4)硬實時(強實時):指應用的時間需求應能夠得到完全滿足,否則就造成重大安全事故,甚至造成重大的生命財產損失和生態破壞,如:航天、軍事。
(5)軟實時(弱實時):指某些應用雖然提出了時間的要求,但實時任務偶爾違反這種需求對系統運行及環境不會造成嚴重影響,如:監控系統、實時信息采集系統。
(6)任務的約束包括:時間約束、資源約束、執行順序約束和性能約束。5.嵌入式微處理器體系結構
(1)馮諾依曼結構:程序和數據共用一個存儲空間,程序指令存儲地址和數據存儲地址指向同一個存儲器的不同物理位置,采用單一的地址及數據總線,程序和數據的寬度相同。例如:8086、ARM7、MIPS?
(2)哈佛結構:程序和數據是兩個相互獨立的存儲器,每個存儲器獨立編址、獨立訪問,是一種將程序存儲和數據存儲分開的存儲器結構。例如:AVR、ARM9、ARM10?
(3)CISC 與RISC 的特點比較(參照教程22 頁)。
計算機執行程序所需要的時間P 可以用下面公式計算:
P=I×CPI×T
I:高級語言程序編譯后在機器上運行的指令數。
CPI:為執行每條指令所需要的平均周期數。
T:每個機器周期的時間。
(4)流水線的思想:在CPU 中把一條指令的串行執行過程變為若干指令的子過程在CPU 中重疊執行。
(5)流水線的指標:
吞吐率:單位時間里流水線處理機流出的結果數。如果流水線的子過程所用時間不一樣長,則吞吐率應為最長子過程的倒數。
建立時間:流水線開始工作到達最大吞吐率的時間。若m 個子過程所用時間一樣,均為t,則建立時間T=mt。
(6)信息存儲的字節順序
A、存儲器單位:字節(8 位)
B、字長決定了微處理器的尋址能力,即虛擬地址空間的大小。
C、32 位微處理器的虛擬地址空間位2^32,即4GB。
D、小端字節順序:低字節在內存低地址處,高字節在內存高地址處。
E、大端字節順序:高字節在內存低地址處,低字節在內存高地址處。
F、網絡設備的存儲順序問題取決于OSI 模型底層中的數據鏈路層。6.邏輯電路基礎
(1)根據電路是否具有存儲功能,將邏輯電路劃分為:組合邏輯電路和時序邏輯電路。
(2)組合邏輯電路:電路在任一時刻的輸出,僅取決于該時刻的輸入信號,而與輸入信號作用前電路的狀態無關。常用的邏輯電路有譯碼器和多路選擇器等。
(3)時序邏輯電路:電路任一時刻的輸出不僅與該時刻的輸入有關,而且還與該時刻電路的狀態有關。因此,時序電路中必須包含記憶元件。觸發器是構成時序邏輯電路的基礎。常用的時序邏輯電路有寄存器計數器等。
(4)真值表、布爾代數、摩根定律、門電路的概念。(教程28、29 頁)
(5)NOR(或非)和NAND(與非)的門電路稱為全能門電路,可以實現任何一種邏輯函數。
(6)譯碼器:多輸入多輸出的組合邏輯網絡。
每輸入一個n 位的二進制代碼,在m 個輸出端中最多有一個有效。
當m=2n 是,為全譯碼;當m<2n 時,為部分譯碼。
(7)由于集成電路的高電平輸出電流小,而低電平輸出電流相對比較大,采用集成門電路直接驅動LED時,較多采用低電平驅動方式。液晶七段字符顯示器LCD 利用液晶有外加電場和無外加電場時不同的光學特性來顯示字符。
(8)時鐘信號是時序邏輯的基礎,它用于決定邏輯單元中的狀態合適更新。同步是時鐘控制系統中的主要制約條件。
(9)在選用觸發器的時候,觸發方式是必須考慮的因素。觸發方式有兩種:
電平觸發方式:具有結構簡單的特點,常用來組成暫存器。
邊沿觸發方式:具有很強的抗數據端干擾能力,常用來組成寄存器、計數器等。7.總線電路及信號驅動
(1)總線是各種信號線的集合,是嵌入式系統中各部件之間傳送數據、地址和控制信息的公共通路。在同一時刻,每條通路線路上能夠傳輸一位二進制信號。按照總線所傳送的信息類型,可以分為:數據總線(DB)、地址總線(AB)和控制總線(CB)。
(2)總線的主要參數:
總線帶寬:一定時間內總線上可以傳送的數據量,一般用MByte/s 表示。
總線寬度:總線能同時傳送的數據位數(bit),即人們常說的32 位、64 位等總線寬度的概念,也叫總線位寬。總線的位寬越寬,總線每秒數據傳輸率越大,也就是總線帶寬越寬。
總線頻率:工作時鐘頻率以MHz 為單位,工作頻率越高,則總線工作速度越快,也即總線帶寬越寬。
總線帶寬= 總線位寬×總線頻率/8,單位是MBps。
常用總線:ISA 總線、PCI 總線、IIC 總線、SPI 總線、PC104 總線和CAN 總線等。
(3)只有具有三態輸出的設備才能夠連接到數據總線上,常用的三態門為輸出緩沖器。
(4)當總線上所接的負載超過總線的負載能力時,必須在總線和負載之間加接緩沖器或驅動器,最常用的是三態緩沖器,其作用是驅動和隔離。
(5)采用總線復用技術可以實現數據總線和地址總線的共用。但會帶來兩個問題:
A、需要增加外部電路對總線信號進行復用解耦,例如:地址鎖存器。
B、總線速度相對非復用總線系統低。
(6)兩類總線通信協議:同步方式、異步方式。
(7)對總線仲裁問題的解決是以優先級(優先權)的概念為基礎。8.電平轉換電路
(1)數字集成電路可以分為兩大類:雙極型集成電路(TTL)、金屬氧化物半導體(MOS)。
(2)CMOS 電路由于其靜態功耗極低,工作速度較高,抗干擾能力較強,被廣泛使用。
(3)解決TTL 與CMOS 電路接口困難的辦法是在TTL 電路輸出端與電源之間接一上拉電阻R,上拉電阻R 的取值由TTL 的高電平輸出漏電流IOH 來決定,不同系列的TTL 應選用不同的R 值。9.差錯控制編碼
(1)根據碼組的功能,可以分為檢錯碼和糾錯碼兩類。檢錯碼是指能自動發現差錯的碼,例如奇偶檢驗碼;糾錯碼是指不僅能發現差錯而且能自動糾正差錯的碼,例如循環冗余校驗碼。
(2)奇偶檢驗碼、海明碼、循環冗余校驗碼(CRC)。(教程70 到77 頁)10.嵌入式系統的度量項目
(1)性能指標:分為部件性能指標和綜合性能指標,主要包括:吞吐率、實時性和各種利用率。
(2)可靠性與安全性
可靠性是嵌入式系統最重要、最突出的基本要求,是一個嵌入式系統能正常工作的保證,一般用平均故障間隔時間MTBF 來度量。
(3)可維護性:一般用平均修復時間MTTR 表示。
(4)可用性
(5)功耗
(6)環境適應性
(7)通用性
(8)安全性
(9)保密性
(10)可擴展性
性價比中的價格,除了直接購買嵌入式系統的價格外,還應包含安裝費用、若干年的運行維修費用和軟件租用費。
11.嵌入式系統中信息表示與運算基礎
(1)進位計數制與轉換:這樣比較簡單,也應該掌握怎么樣進行換算,有出題的可能。
(2)計算機中數的表示:源碼、反碼與補碼。
正數的反碼與源碼相同,負數的反碼為該數的源碼除符號位外按位取反。
正數的補碼與源碼相同,負數的補碼為該數的反碼加一。
例如-98 的源碼:11100010B
反碼:10011101B
補碼:10011110B
(3)定點表示法:數的小數點的位置人為約定固定不變。
浮點表示法:數的小數點位置是浮動的,它由尾數部分和階數部分組成。
任意一個二進制N 總可以寫成:N=2P×S。S 為尾數,P 為階數。(4)漢字表示法(教程67、68 頁),搞清楚GB2318-80 中國標碼和機內碼的變換。
(5)語音編碼中波形量化參數(可能會出簡單的計算題目哦)
采樣頻率:一秒內采樣的次數,反映了采樣點之間的間隔大小。
人耳的聽覺上限是20kHz,因此40kHz 以上的采樣頻率足以使人滿意。
CD 唱片采用的采樣頻率是44.1kHz。
測量精度:樣本的量化等級,目前標準采樣量級有8 位和16 位兩種。
聲道數:單聲道和立體聲雙道。立體聲需要兩倍的存儲空間。12.嵌入式系統的評價方法:測量法和模型法
(1)測量法是最直接最基本的方法,需要解決兩個問題:
A、根據研究的目的,確定要測量的系統參數。
B、選擇測量的工具和方式。
(2)測量的方式有兩種:采樣方式和事件跟蹤方式。
(3)模型法分為分析模型法和模擬模型法。分析模型法是用一些數學方程去刻畫系統的模型,而模擬模型法是用模擬程序的運行去動態表達嵌入式系統的狀態,而進行系統統計分析,得出性能指標。
(4)分析模型法中使用最多的是排隊模型,它包括三個部分:輸入流、排隊規則和服務機構。
(5)使用模型對系統進行評價需要解決3 個問題:設計模型、解模型、校準和證實模型。13.1.嵌入式微處理器的基本結構
(1)嵌入式硬件系統一般由嵌入式微處理器、存儲器和輸入/輸出部分組成。
(2)嵌入式微處理器是嵌入式硬件系統的核心,通常由控制單元、算術邏輯單元和寄存器3大部分組成:
A、控制單元:主要負責取指、譯碼和取數等基本操作并發送主要的控制指令。
B、算術邏輯單元:主要處理數值型數據和進行邏輯運算工作。
C、寄存器:用于暫存臨時性的數據。
2.嵌入式微處理器的分類(根據用途)
(1)嵌入式微控制器(MCU):又稱為單片機,片上外設資源一般比較豐富,適合于控制。最大的特點是單片化,體積小,功耗和成本低,可靠性高。目前約占70%的市場份額。
(2)嵌入式微處理器(EMPU):又稱為單板機,由通用計算機中的CPU 發展而來,它的特征是具有32位以上的處理器,具有較高的性能。通常嵌入式微處理器把CPU、ROM、RAM 及I/O 等模塊做到同一個芯片上。
(3)嵌入式DSP 處理器(DSP):專門用于信號處理方面的處理器,其在系統結構和指令算法方面進行了特殊設計,使其處理速度比最快的CPU 還快10~50倍,在數字濾波、FFT、頻譜分析等方面獲得了大量的應用。
(4)嵌入式片上系統(SOC):追求產品系統最大包容的集成器件,其最大的特點是成功實現了軟硬件的無縫結合,直接在微處理器片內嵌入操作系統的代碼模塊。
3.典型8位微處理器(具有8位數據總線)的結構和特點
該部分參考《教程》86~94頁,以8051為重點,徹底搞清楚8位單片機的工作原理,外設控制、存儲分布、尋址方式以及典型應用。2007年11月下午的第一道題目就考查了8051的定時器使用、外部時鐘連接、實際應用的流程設計以及典型的尋址方式。這些考點幾乎可以在《教程》上找到,例如外部時鐘連接那個問題的答案就是《教程》89頁上面的原圖。4.典型16位微處理器的結構和特點
該部分參考《教程》94~97頁。典型的微處理器可以參考MSP430,找一本這方面的書看看關于MSP430的結構原理以及典型應用。
5.典型32位微處理器的結構和特點
該部分參考《教程》97~112頁。32位處理器采用32位的地址和數據總線,其地址空間達到了2^32=4GB。
目前主流的32位嵌入式處理器系統主要有ARM 系列、MIPS 系列、PoewrPC 系列等。ARM 微處理器體系結構目前被公認為是嵌入式應用領域領先的32位嵌入式RISC 處理器結構。按照目前的發展形式,ARM 幾乎成了嵌入式應用的代名詞。按照我個人的意見,作為嵌入式系統設計師考試,逐漸增加考查ARM 體系結構與編程方面的題目是大勢所趨。2006年沒有一道關于ARM 的題目,2007年出了少量題目,可能在2008年會繼續增加。在下午題方面,2006年考查了X86方面的應用、2007年考查了8051方面的應用,這個可能是一個過度過程,以目前ARM 在嵌入式領域的廣泛應用和普及程度,下午題目考查ARM 應用方面或者32位其他的微處理器方面的應用題目可能在不就將來的考試中就會出現。14.單片機系統的基本概念
(1)單片機組成:中央處理器、存儲器、I/O 設備。
(2)存儲器:物理實質是一組或多組具備數據輸入/輸出和數據存儲功能的集成電路,用于充當設備緩存或保存固定的程序及數據。
A、ROM(只讀存儲器):一般用于存放固定的程序或數據表格等,數據在掉電后仍然會保留下來。
B、RAM(隨機存儲器):用于暫存程序和數據、中間計算結果,或用作堆棧用等,數據在掉電后就會丟失。
(3)I/O端口:單片機與外界聯系的通道,它可以對各類外部信號(開關量、模擬量、頻率信號)進行檢測、判斷、處理,并可控制各類外部設備。現在的單片機I/O 口已經集成了更多的特性和功能,對I/O端口的功能進行了拓展和復用,例如外部中斷、ADC 檢測以及PWM 輸出等等。
(4)輸出電平:高電平電壓(輸出“1”時)和低電平電壓(輸出“0”時)
A、TTL 電平:正邏輯,5V 為邏輯正,0V 為邏輯負,例如單片機的輸出。
B、RS232電平:負邏輯,-12V 為邏輯正,+12V 為邏輯負,例如PC 的輸出。
注:因此在單片機和PC 進行通訊的時候需要一個MAX232芯片進行電平轉換。
(5)堆棧:它是一種線性的數據結構,是一個只有一個進出口的一維空間。
A、堆棧特性:后進先出(LIFO)
B、堆棧指針:用于指示棧頂的位置(地址),當發生壓棧或者出棧操作時,導致棧頂位置變化時,堆棧指針會隨之變化。
C、堆棧操作:壓棧操作(PUSH)和出棧操作(POP)。
D、堆棧類型:“向上生長”型堆棧,每次壓棧時堆棧指針加1;“向下生長”型堆棧,每次壓棧堆棧時指針減1。
E、堆棧應用:調用子程序、響應中斷時,堆棧用于保護現場;還可以用作臨時數據緩沖區來使用。
F、使用注意:堆棧溢出問題,壓棧和出棧的匹配問題。
(6)定時/計數器:實質都是計數器。用作定時器時是對單片機內部的時鐘脈沖進行計數,而在用作計數器時是對單片機外部的輸入脈沖進行計數,其作用如下:
A、計時、定時或延時控制;
B、脈沖技術;
C、測量脈沖寬度或頻率(捕獲功能)
(7)中斷:優先級更高的事件發生,打斷優先級低的時間進程。引起中斷的事件稱為中斷源。一個單片機可能支持多個中斷源,這些中斷源可以分為可屏蔽中斷和非可屏蔽中斷,而這些中斷源并不都是系統工作所需的,我們可以根據系統需求屏蔽那些不需要的中斷源。
A、中斷嵌套:當一個低級中斷尚未執行完畢,又發生了一個高級優先級的中斷,系統轉而執行高級中斷服務程序,待處理完高級中斷后再回過頭來執行低級中斷服務程序。
B、中斷響應時間是指從發出中斷請求到進入中斷處理所用的時間;中斷處理時間是指中斷處理開始到中斷處理結束的時間。
C、中斷響應過程:
a、保護現場:將當前地址、累加器ACC、狀態寄存器保存到堆棧中。
b、切換PC 指針:根據不同的中斷源所產生的中斷,切換到相應的入口地址。
c、執行中斷服務處理程序。
d、恢復現場:將保存在堆棧中的主程序地址、累加器ACC、狀態寄存器恢復。
e、中斷返回:從中斷處返回到主程序,繼續執行。
D、中斷入口地址:單片機為每個中斷源分配了不同的中斷入口地址,也稱為中斷向量。
(8)復位:通過外部電路給單片機的復位引進一個復位信號,讓系統重新開始運行。
A、復位發生時的動作:
a、PC 指針從起始位置開始執行(大多數單片機都時從0x0000處開始執行)。
b、I/O 端口設置成缺省狀態(高阻態、或者輸出低電平)。
c、部分專用控制寄存器SFR 恢復到缺省狀態。
d、普通RAM 不變(如果時上電復位,則是隨即數)。
B、兩種不同的復位啟動方式:
a、冷啟動:也叫上電復位,指在斷電狀態下給系統加電,讓系統開始正常運行。
b、熱啟動:在不斷電的狀態下,給單片機復位引進一個復位信號,讓系統重新開始。
C、兩種類型的復位電路:高電平復位和低電平復位。
D 注意事項:
a、注意復位信號的電平狀態及持續時間必須滿足系統要求。
b、注意避免復位信號抖動。
(9)時鐘電路:單片機是一種時序電路,必須提供脈沖電路才能正常工作。時鐘電路相當于單片機的心臟,它的每一次跳動(振動節拍)都控制著單片機的工作節奏。振蕩得慢時,系統工作速度就慢,振蕩得快時,系統工作速度就快(功耗也增大)。
A、振蕩周期:振蕩源的振蕩節拍。
B、機器周期:單片機完成一個基本操作需要的振蕩周期(節拍)。
C、指令周期:執行一條指令需要幾個機器周期。不同的指令需要的機器周期數不同。15.地址映射
地址映射也叫地址重定位。
邏輯地址和物理地址是完全不同的,不能用邏輯地址來直接訪問內存單元。
為了保證CPU 在執行指令的時候,可以正確地訪問內存單元,需要將用戶程序中的邏輯地址轉換為運行時由機器直接尋址的物理地址。這個過程稱為:地址映射。
地址映射由存儲管理單元MMU 來完成。
地址映射主要有兩種方式:靜態地址映射和動態地址映射。
靜態地址映射:當用戶程序被裝入內存時,直接對指令代碼進行修改,一次性地實現邏輯地址到物理地址的轉換。
動態地址映射:當用戶程序被裝入內存時,不對指令代碼做任何修改,而是在程序的運行過程中,當它需要訪問內存單元的時候,再來進行地址轉換。
在具體實現時,這項轉換工作一般是由硬件的地址映射機制來完成的。通常設置一個基地址寄存器,或者叫重定位寄存器。當一個任務被調度運行時,就把它所在分區的起始地址裝入到整個寄存器中。然后,在程序運行的過程中,當需要訪問某個內存單元時,硬件就會自動地將其中的邏輯地址加上基地址寄存器中的內容,從而得到實際的物理地址,并且按照這個物理地址區執行。
這個基地址寄存器位于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):正常程序執行模式,用于應用程序。
D、快速中斷模式(FIQ):快速中斷處理,用于高速數據傳輸和通道處理。
C、外部中斷模式(IRQ):用于通用的中斷處理。
D、管理模式(SVE):供操作系統使用的一種保護模式。
E、數據訪問中止模式(Abort):用于虛擬存儲及存儲保護。
F、未定義指令中止模式(Undefined):當未定義指令執行時進入該模式。
G、系統模式(System):用于運行特權級的操作系統任務。
除了用戶模式之外的其他6種處理器模式稱為特權模式,在這些模式下,程序可以訪問所有的系統資源,也可以任意地進行處理器模式切換,其中,除了系統模式外,其他的5種特權模式又稱為異常模式。
處理器模式可以通過軟件控制進行切換,也可以通過外部中斷或異常處理過程進行切換。大多數的用戶程序運行在用戶模式下,這時,應用程序不能訪問一些受操作系統保護的系統資源,應用程序也不能直接進行處理器模式切換。當需要進行處理器模式切換時,應用程序可以產生異常處理,在異常處理中進行處理器模式的切換。這種體系結構可以使操作系統控制整個系統的資源。
當應用程序發生異常中斷時,處理器進入相應的異常模式。在每一種異常模式種都有一組寄存器,供相應的異常處理程序使用,這樣就可以保證進入異常模式時,用戶模式下的寄存器不被破壞。系統模式并不是通過異常過程進入的,它和用戶模式具有完全一樣的寄存器,但是系統模式屬于特權模式,可以訪問所有的系統資源,也可以直接進行處理器模式切換,它主要供操作系統任務使用。17.嵌入式操作系統概述
(1)內核
內核是指操作系統中的一個組件,它包含了OS 的主要功能,即OS 的各種特性及其相
互之間的依賴關系,這些功能主要包括:
A、任務管理:對系統中運行的軟件進行描述和管理,并完成處理器資源分配和調度。
B、存儲管理:提高內存的利用率,方便用戶使用,提供足夠的存儲空間。
C、設備管理:方便設備的使用,提高CPU 和I/O 設備的利用率。
D、文件管理:解決文件資源存儲、共享、保密和保護等問題。
注:不同嵌入式操作系統的內核設計各不相同,取決于系統設計和實際需求。
(2)嵌入式操作系統分類:
A、按系統類型:商業系統、專用系統、開源系統。
B、按響應時間:硬實時系統、軟實時系統。
C、按軟件結構:單體結構(uCOS)、分層結構(MS-DOS)、微內核結構(Vxworks)。18.嵌入式軟件基礎
(1)嵌入式軟件的特點:
A、規模較小。
B、開發難度大。
C、實時性和可靠性要求高。
D、要求固化存儲。
(2)嵌入式軟件分類:
A、系統軟件:控制和管理嵌入式系統資源,如嵌入式操作系統、驅動程序、中間件等。
B、應用軟件:定義嵌入式設備的主要功能和用途,負載與用戶進行交互。
C、支撐軟件:輔助軟件開發的工具軟件。
(3)無操作系統的嵌入式軟件的兩種實現方式:
A、循環輪轉
優點:簡單、直觀、開銷小、可預測。
缺點:過于簡單,所有代碼順序執行,無法處理異步事件,缺乏并行處理能力。
B、前后臺系統(在循環輪轉的基礎上增加了中斷處理功能)
前臺(事件處理級):中斷服務程序,負載處理異步事件。
后臺(任務級):一個無限循環,負載資源分配、任務管理和系統調度。
(4)有操作系統的三大優點:
A、提高系統的可靠性。
B、提高了系統的開發效率,降低了開發成本,縮短了開發周期。
C、有利于系統的擴展與移植。
(5)設備驅動層(也叫板級支持包BSP:包含了嵌入式系統中所有與硬件相關的代碼)
大多數的嵌入式硬件設備都需要某種類型軟件的初始化和管理。這部分工作由設備驅動層來完成的,它負責直接與硬件大交道,對硬件進行管理和控制,為上層軟件提供所需的驅動支持,類似PC 系統中的BIOS 和驅動程序。19.設備管理
(1)設備管理基礎
一個I/O 單元通常由兩個部分組成:
A、機械部分:I/O 設備本身。
B、電子部分:設備控制器或設備適配器。
硬件寄存器的編址方式有三種:
A、I/O獨立編址:對于各種設備控制器中的每一個寄存器,分配一個唯一的I/O端口編號,也叫I/O 端口地址,然后用專門的I/O 指令對這些端口進行操作。這些端口地址構成的地址空間是完全獨立的,與內存地址空間沒有任何關系。
B、內存映象編址:把各種設備控制器當中的每一個寄存器都映射為一個內存單元,這內存單元專門用于I/O 操作。端口地址空間與內存地址空間是統一編址的,端口地址空間是內存地址空間的一部分。
C、混合編址:對于設備控制器當中的寄存器采用獨立編址的方法,每個寄存器有一個獨立的I/O 端口地址;而對于設備的數據緩沖區,則采用內存映象編址的方法,把他們統一到內存地址空間當中。
(2)I/O控制方式:
A、程序循環檢測:要一直占用CPU,浪費CPU 的時間。
B、中斷驅動方式:前后臺系統。
C、直接內存訪問:DMA 控制,減少了中斷的次數。20.任務管理
(1)嵌入式操作系統的任務管理可以分為:
A、單道程序技術:操作系統中,任何時候只能有一個程序在運行。
B、多道程序技術:操作系統中,允許多個程序同時存在并運行。
(2)進程
進程,簡單的說,是一個正在運行的程序。
進程與程序既有聯系又有區別,主要表現為下面結構方面:
A、程序由數據和代碼兩部分內容組成,它是一個靜態的概念。而進程是正在執行的程序,它也由兩部分組成:程序和該程序的運行上下文。它是一個動態的概念。
B、程序和進程之間并不是一一對應的。一個進程在運行的時候可以啟動一個或多個程序。反之,同一個程序也可能由多進程同時執行。
C、程序可以作為一種軟件資源長期保存,以文件的形式存放在光盤或硬盤上,而進程則是一次執行的過程,它是暫時的,是動態的產生和終止。
一個進程至少應包括三個方面:相應的程序、CPU上下文、一組系統資源。
進程有三個特性:
A、動態性:進程是正在運行的程序,而程序的運行狀態是不斷變化的。
B、獨立性:進程是系統資源的使用單位,每個進行有自己的運行上下文和內部狀態。
C、并發性:宏觀來看,系統中同時有多個進程存在,它們相互獨立地運行。
注:對于并發的理解。
在單CPU 的情況下,所謂的并發性指的是宏觀上的并發運行,而微觀上還是順序進行,各個進程輪流去使用CPU 資源。在單核CPU 中,真正的、物理上的PC 寄存器只有一個,進程在輪流執行的時候,物理PC 的取值也在不斷變化。而邏輯PC 其實就是一個內存變量。每個進程都有一個邏輯PC,當一個進程要運行的時候,就把它的邏輯PC 裝載到物理PC 中去;反之,當一個進程暫不運行的時候,就把物理PC中的值保存在它的邏輯PC 當中。
(3)線程
線程就是進程當中的一條執行流程。
進程其實包含兩個部分:資源平臺和執行流程(線程)。
在一個進程當中,或者說在一個資源平臺上,可以同時存在多個線程;可以用線程作為CPU 的基本調度單位,使得各個線程之間可以并發執行;對于同一個進程當中的各個線程來說,他們可以共享該進程的大部分資源。每個線程都有自己獨立的CPU運行上下文和棧,這是不能共享的。21.文件系統
(1)嵌入式文件系統概述
文件系統就是操作系統中用以組織、存儲、命名、使用和保護文件的一套管理機制。
常見的嵌入式文件系統有:
A、FAT:VxWorks、QNX、WindowsCE 等
B、NFS:網絡文件系統,基于遠程調用和擴展數據表示。
C、FFS:用于Flash 存儲器的文件系統。
(2)文件和目錄
A、當一個文件被創建時,必須給它指定一個名字,用戶就是通過文件名來訪問這個文件的。
B、文件命是一個有限長度的字符串,由兩部分組成:文件名和擴展名。
C、文件的邏輯結構主要有三種:無結構、簡單的記錄結構和復雜結構。現代文件系統通常采用的是無結構的形式。
D、除了文件名之外,操作系統會給每個文件附加一些其他信息,稱為文件的屬性。
E、文件的存取方法有兩種:順序存取和隨機存取。
F、目錄也稱為文件夾,它是一張表格,記錄了在該目錄下每個文件名和其他的一些管理信息。
G、在多級目錄結構中,訪問文件或目錄主要有兩種方法:絕對路徑名和相對路徑名。22.存儲器系統的層次架構
計算機系統的存儲器被組織城一個金字塔的層次結構。
自上而下為:CPU 內部寄存器、芯片內部高速緩存(cache)、芯片外部高速緩存(SRAM、SDRAM、DRAM)、主存儲器(FLASH、EEPROM)、外部存儲器(磁盤、光盤、CF 卡、SD 卡)和遠程二級存儲器(分布式文件系統、WEB 服務器),6個層次的結構。
上述設備從上而下,依次速度更慢、容量更大、訪問頻率更小,造價更便宜。22.高速緩存(cache)
工作原理(參照教程126頁,博客畫不了圖):主要利用了程序的局部性特點。
地址映象是指把主存地址空間映象到cache 的地址空間。
地址變換是指當程序或數據已經裝入到cache 后,在實際運行過程中,把主存地址如何編程cache 空間的地址。
常用的地址映象和地址變換的方式有:(教程127頁)
直接映象和變換:速度快,造價低,但有局限性,不能充分利用cache 的好處。
組相聯地址映象和變換:速度稍慢但是命中率高。
全相聯地址映象和變換:可以任意映射。
常用的cache 替換算法:輪轉法和隨機替換算法。
高速緩存的分類:
統一cache 和獨立的數據/指令cache
寫通cache 和寫回cache
讀操作分配cache 和寫操作分配cache 23.存儲管理單元(MMU)
MMU 在CPU 和物理內存之間進行地址轉換,將地址從邏輯空間映射到物理空間,這個過程稱為內存映射。
MMU 主要完成下面的工作:
A.虛擬存儲空間到物理空間的映射。
B.存儲器訪問權限的控制。
C.設置虛擬存儲空間的緩沖特性。
嵌入式系統中常常采用頁式存儲管理。為了管理這些頁引入了頁表的概念。
頁表是位于內存中的表,它的每一行對應虛擬存儲空間的一個頁,該行包含了該虛擬內存頁對應的物理內存頁的地址、該頁的訪問權限和該頁的緩沖特性等。
從虛擬地址到物理地址的變換過程就是查詢頁表的過程。
由于頁表存儲在內存中的,整個查詢過程需要付出很大的代價。根據程序局部性的特點,增加了一個小容量、高速度的存儲部件來存放當前訪問需要的地址變換條目,這個存儲部件稱為:地址轉換后備緩沖器(TLB)。
當CPU 訪問內存時,首先在TLB 中查找需要的地址變換條目,如果該條目不存在,CPU 再從內存中的頁表中查詢,并把相應的結果添加到TLB 中,更新它的內容。
嵌入式系統中虛擬存儲空間到物理空間的映射以內存塊為單位進行。即虛擬存儲空間中一塊連續的存儲空間被映射到物理存儲空間中同樣大小的一塊連續存儲空間。
在頁表和TLB 中,每一個地址變換條目實際上記錄了一個虛擬存儲空間的內存塊的基地址與物理存儲空間相對應的一個內存塊的基地址之間的對應關系。
在MMU 中實現虛擬地址到物理地址的映射是通過兩級頁表來實現的。
禁止MMU 時,所有物理地址和虛擬地址相等,即使用平板存儲模式。24.內存保護
操作系統通常利用MMU 來實現操作系統內核與應用程序之間的隔離,以及應用程序與應用程序之間的隔離。
內存保護包含兩個方面的內容:
A.防止地址越界,每個應用程序都有自己獨立的地址空間。
B.防止越權操作,每個應用程序都有自己的訪問權限。25.實模式與保護模式
在嵌入式系統中,常見的存儲管理方案可以分為兩大類:實模式和保護模式。
實模式:內存的平面使用模式。特點有:
A.不劃分“系統空間”與“用戶空間”,無須進行地址映射。
B.操作系統與應用程序之間不再有物理的邊界。
C.系統中的“任務”或“進程”,實際上全是內核線程。
在實模式下,內存布局可以分為5個段:
A.代碼段:包含操作系統和應用程序的所有代碼。
B.數據段:所有帶有初始值的全局變量。
C.BSS 段:所有未帶初始值的全局變量。
D.堆空間:動態分配的內存空間。
E.棧空間:保存上下文以及函數調用時的局部變量和形參。
在實模式存儲管理方案下,主要的工作在于堆空間的管理,即如何來管理空閑的堆空間、如何來分配內存、如何來回收內存等等。
保護模式:處理器中必須有MMU 硬件并啟用。特點有:
A.系統內核和用戶程序都有各自獨立的地址空間。
B.每個應用程序只能訪問自己的地址空間,不能去破壞操作系統和其他應用程序的代碼和數據。26.分區存儲管理
為了實現多道程序系統而采用的最簡單的內存管理。
基本思路:把整個內存劃分為兩大區域,即系統區和用戶區,然后再把用戶區劃分為若干個分區,每個任務占有其中的一個分區。這樣,在內存當中就同時保留多個任務,讓他們共享整個用戶區,從而實現多個任務的并發運行。
分區存儲管理又可以分為兩類:固定分區和可變分區。
固定分區:各個用戶分區的個數、位置和大小一旦確定后,就固定不變,不能再修改。
優點:易于實現,系統開銷較小。
缺點:內存利用率不高,分區總數固定。
可變分區:動態創建,在裝入一個程序時,系統將根據它的需求和內存空間的使用情況來決定是否分配。
優點:動態變化,非常靈活。
缺點:可能存在外碎片。
在實現可變存儲管理技術的時候,需要考慮三個方面的問題:
A.內存管理的數據結構
B.內存的分配算法
C.內存的回收算法
27.嵌入式系統的特點、分類、發展與應用,熟悉嵌入式系統的邏輯組成。
(1)特點:
專用性
隱蔽性(嵌入式系統是被包裝在內部)
資源受限(要求小型化、輕型化、低功耗及低成本,因此軟硬件資源受到限制)
高可靠性(任何誤動作都可能會產生致命的后果)
軟件固化(軟件都固化在只讀存儲器ROM中,用戶不能隨意更改其程序功能)
實時性
(2)邏輯組成
硬件:1)處理器(運算器、控制器、存儲器)
目前所有的處理器都是微處理器 中央處理器(CPU)和協助處理器(數字信號處理器DSP、圖像處理器、通信處理器)
2)存儲器(隨機存儲器RAM和只讀存儲器ROM)
RAM分為動態DRAM和靜態SRAM兩種。DRAM電路簡單、集成度高、功耗小、成本低,但速度稍慢慢;SRAM電路較復雜、集成度低、功耗較大、成本高,但工作速度很快,適合用作指令和數據的高速緩沖存儲器
RAM當關機或斷電時,其中的信息都會消失,屬于易失性存儲器
ROM屬于不易失性存儲器。分為電可擦可編程只讀存儲器(存放
固件)和閃速存儲器(Flash ROM簡稱內存)。內存的工作原理:在低
壓下,存儲的信息可讀但不可寫,這類似于ROM;在較高的電壓下,所存儲的信息可以更改和刪除,這有類似于RAM。
3)I/O設備與I/O接口
4)數據總線
軟件
(3)分類
按嵌入式系統的軟硬件技術復雜程度進行分類:
1)低端系統 采用4位或8位單片機,在工控領域和白色家電領域占主導地位,如計算器、遙控器、充電器、空調、傳真機、BP機等。
2)中端系統 采用8位/16位/32位單片機,主要用于普通手機、攝像機、錄像機、電子游戲機等。
3)高端系統采用32位/64位單片機,主要用于智能手機、調制解調器、掌上計算機、路由器、數碼相機等。
(4)發展
20世紀60年代初,第一個工人的現代嵌入式系統(阿波羅導航計算機)
20世紀60年代中期,嵌入式計算機批量生產
20世紀70年代,微處理器出現
20世紀80年代中期,外圍電路的元器件被集成到處理器芯片中,昂貴的模擬電路元件能被數字電路替代
20世紀90年代中期SOC出現,集成電路進入超深亞微米乃至納米加工時代。28.嵌入式系統的組成與微電子技術(集成電路、EDA、SoC、IP核等技術的作用和發展)
(1)集成電路IC 集成電路的制造大約需要幾百道工序,工藝復雜。集成電路是在硅襯底上制作而成的。硅襯底是將單晶硅錠經切割、研磨和拋光后制成的像鏡面一樣光滑的圓形薄片,它的厚度不足1mm,其直徑可以是6、8、12英寸甚至更大這種硅片稱為硅拋光片,用于集成電路的制造。制造集成電路的工藝技術稱為硅平面工藝,包括氧化、光刻、摻雜等多項工序。把這些工序反復交叉使用,最終在硅片上制成包含多層電路及電子元件的集成電路。集成電路的特點:體積小、重量輕、可靠性高。其工作速度主要取決于邏輯門電路的晶體管的尺寸。尺寸越小,工作頻率就越高,門電路的開關速度就越快。(2)EDA(電子信號自動化)(3)SoC芯片(片上系統)
既包含數字電路,也可以包含模擬電路,還可以包含數模混合電路和射頻電路。SoC芯片可以是一個CPU,單核SoC,也可以由多個CPU和/或DSP,即多核SoC。開發流程:
(1)總體設計
可以采用系統設計語言System C(或稱IEEE 1666,它是C++的擴充)或System Vetilog語言對SoC芯片的軟硬件作統一的描述,按照系統需求說明書確定SoC的性能能參數,并據此進行系統全局的設計。
(2)邏輯設計
將總體設計的結果用RTL(寄存器傳輸級描述語言)語言進行描述(源文件)后,在使用邏輯綜合將源文件進行綜合生成,生成最簡的布爾表達式核心好的連接關系(以類型為EDF的EDA工業標準文件表示)(3)綜合和仿真
(4)芯片制造
借助EDA中的布局布線工具(4)IP核
IC設計文件:邏輯門級,包括各種基本的門電路;寄存器傳輸級,如寄存器、譯碼器、數據轉換器;行為級,如CPU、DSP、存儲器、總線與接口電路等。核庫中的設計文件均屬于知識產權IP保護的范疇,所以稱為“知識產權核”或“IP核”。IP核是開發SoC的重要保證。按IC設計文件的類型,IP通常分為:軟核、固核、硬核。IP核的復用可以減少研發成本,縮短研發時間,是實現SoC的快速設計,盡早投放市場的有效途徑。
目前主要的CPU內核有ARM、MIPS、PowerPC、Coldfile、x86、8051等。ARM內核占所有32位嵌入式RISC處理器的90%以上。
29.嵌入式系統與數字媒體(文本、圖像和音頻/視頻等數字媒體的表示與處理)(1)文本
含義:在計算機中的文字信息,最常用的一種數字媒體。字符集及其編碼
1)西方字符的編碼
ASCII字符集和ASCII編碼,基本的ASCII字符集共128個字符,每個字符使用7個二進位(最高位為奇偶校驗位,預留位)制進行編碼。2)漢字的編碼
漢子國家編碼標準有GB2312和GB18030。每個漢字用2個字節表示。GB2312只有6763個漢字,經常不夠用。GB18030字符集與UCS/Unicode字符集基本兼容,采用不等長的編碼方法,單字節編碼表示ASCII字符,與ASCII碼兼容;雙字節表示漢字,與GB2312保持向下兼容(即GB2312中有的GB18030字符集都有)3)UCS/Unicode編碼 文本類型 1)簡單文本
只能順序閱讀。2)豐富格式文本
有插圖、對文字顏色等定義,調整頁面,文本布局,插入聲音視頻等。3)超文本
通過超鏈接實現跳轉、導航、回溯等操作(2)圖像
圖像獲取過程的核心是模擬信號的數字化,處理步驟為:
1)掃描
將畫面網格化,每個網格為一個取樣點 2)分色
將每個取樣點的顏色分解成三原色
3)取樣
測量每個取樣點的每個分量(基色)亮度值
4)量化
把模擬量使用數字量來表示,A/D轉換
數字圖像的主要參數:圖像大小(水平分辨率*豎直分辨率)、位平面數目、像素深 度、顏色模型
一幅圖像的數據量計算公式:
圖像數據量=圖像大小*像素深度/8(3)音頻/視頻
音頻/視頻信息的數字化,處理步驟為: 1)取樣
2)量化
3)編碼
數字音頻的主要參數:取樣頻率、量化位數、聲道數目、使用的壓縮編碼方法、比特率(每秒鐘的數據量)
壓縮前
波形聲音的碼率(比特率)= 取樣頻率 * 量化為數 * 聲道數(單位b/s)壓縮后
碼率 = 壓縮前碼率 / 壓縮倍數(壓縮比)
30.嵌入式系統與網絡通信技術(數字通信與計算機網絡,TCP/IP協議,互聯網接入技術等)(1)數字通信(2)計算機網絡(3)音頻/ TCP/IP協議(4)互聯網接入技術
31.ARM處理器內核的體系結構(工作狀態,工作模式,寄存器組織,異常,數據類型與存儲格式等)(1)工作狀態
一是ARM狀態,二是Thumb指令狀態及Thumb-2狀態,三是調試狀態。ARM處理器復位后開始執行代碼時總是只處于ARM狀態,如果需要,可通過下面的方法切換到Thumb狀態或Thumb-2狀態
ARM狀態切換到Thumb指令狀態:通過BX指令,將操作數寄存器的最低位設置為1即可。如果R0[0]=1,則執行BX R0指令將進入Thumb狀態
Thumb狀態切換到ARM狀態:通過BX指令,將操作數寄存器的最低位設置為0即可。如果R0[0]=0,則執行BX R0指令將進入ARM狀態。(2)七種工作模式
(3)寄存器組織
ARM處理器共有37種寄存器,包括31個通用寄存器(含PC)和6個狀態寄存器。無論何種模式,R15均作為PC使用;CPSR為當前程序狀態寄存器;R7-R0為公用的通用寄存器。所有通用寄存器均為32位結構。程序狀態寄存器的格式: 31 30 29 28 27
26??8
0
條件碼標志含義如下:
N為符號標志位,N=1為負數,N=0為正數。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=1禁止FIQ中斷,F=0允許。
T為ARM和Thumb指令切換,T=1時執行Thumb指令,否則執行ARM指令。
M4-M0為模式選擇位(4)存儲格式
大端模式:32位數據字的高字節存儲在低地址,而數據字的低字節則存放在高地址中。
小端模式:32位數據字的高字節存儲在高地址,而數據字的低字節則存放在低地址中。系統復位時,自動默認為小端模式。
例如:一個32位數據字0x12345678,存放在起始地址為0x30001000,則大端模式下0x30001000單元存放0x12,0x30001001單元存放0x34,0x30001002單元存放0x56,0x30001003單元存放0x78;而小端模式下0x30001000單元存放0x78,0x30001001單元存放0x56,0x30001002單元存放0x34,0x30001003單元存放0x12。(5)數據類型
8位、16位、32位三種數據類型(6)ARM處理器中MMU和MPU
MMU存儲器管理單元(memory management unit)功能:
1)虛擬地址到物理地址映射
2)存儲器訪問權限受限
3)虛擬存儲空間的緩沖特性設置
MPU存儲器保護單元(memory protect unit)(7)異常(7種)
32.嵌入式處理器的結構、特點與分類(不同類型的典型嵌入式處理器及其特點,嵌入式處理器分類等)
(1)不同內核嵌入式微控制器性能比較
(2)馮–諾依曼結構和哈佛結構的區別
兩者連接CPU程序存儲器和數據存儲器的方式不同 馮–諾依曼結構
CPU 程序/數據存儲器
哈佛結構
程序存儲器 CPU 數據存儲器程序總線
數據總線(3)分類
按指令集分為:復雜指令集結構CISC和精簡指令集結構RISC 按存儲機制分為:馮–諾依曼結構和哈佛結構 按字長分為:8位、16位、32位、64位結構
按不同內核系列可以分為:
51、AVR、PIC、MSP430、PowerPC、Coldfile、ARM(4)不同典型內核簡介
32.ARM處理器指令系統及匯編語言程序設計(指令格式,尋址方式,指令集,偽指令,語句格式與程序結構,ARM匯編語言與C的混合編程等)(1)指令格式
指令一般格:
{}{S} ,{,}
其中<>不可省
指令格式說明:
關于#imm8m的說明:#表示立即數,其后可以是十進制或十六進制數。
對于ARM指令集,#imm8m表示一個由8位立即數經循環右移任意偶數位次形成的32位操作數。
對于Thumb指令集,#imm8m表示一個由8位立即數經左移任意位次形成的32位操作數。尋址方式:
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內核的典型嵌入式應用系統硬件組成
典型嵌入式系統硬件由嵌入式最小硬件系統(電源電路、時鐘(晶振)電路、復位電路、JTAG測試接口)、前向通道(輸入接口)、后向通道(輸出接口)、人機交互通道(鍵盤,觸摸屏以及LED或LCD顯示輸出接口)以及相互互聯通信通道(CAN通信接口、以太網通信接口、USB通信接口)等組成。
電源電路為整個嵌入式系統提供能量,是整個系統工作的基礎,具有極其重要的位置。一般來說,如果電源電路處理得好,整個系統的故障往往能顯著減少。選擇設計電源電路是主要考慮以下因素:輸出電壓電流、輸入電壓電流(交流還是直流)、安全因素、體積限制、功耗限制、成本限制。
常用的電源模塊是交流變直流(AC-DC)模塊、直流變直流模塊(DC-DC)、低壓穩壓器(LDO)。穩壓器包括普通穩壓器和低壓差穩壓器LDO。78XX系列屬于普通穩壓器,LM2576/2596為開關穩壓芯片,CAT6219/AS2815/1117/2908等屬于低壓穩壓器。穩壓器的最大特點就是低噪聲、低成本、紋波小、精度高、電路簡單。35.基于ARM內核的典型嵌入式芯片的硬件組成1)存儲器及控制器
片內程序存儲器通常是用Flash ROM,一般配有幾KB到幾MB不等。片內數據存儲器通常使用SRAM,一般幾KB到幾百KB。2)中斷控制器
一般采用向量中斷(VIC)或嵌套向量中斷(NVIC)。Cortex-M支持嵌套的向量中斷。3)DMA控制器(直接存儲器訪問控制器)
使用DMA控制器,可將數據塊從外設傳輸至內存、從內存傳輸至外設或從內存傳輸至內存。
4)電源管理與時鐘控制器
5)GPIO接端口(General Purpose Input Output通用輸入/輸出端口)
作為輸入時具有緩沖功能,而作為輸出是具有鎖存功能,GPIO也可以作為雙向I/O使用。在ARM處理芯片中,GPIO引腳通常是多功能的,以減少引腳數,減少功耗。6)定時計數組件
主要包括看門狗定時器(WDT)監視著程序的運行狀態 Timer通用定時器
用于一般的定時
RTC可直接提供年月日時分秒,使應用系統具有獨立的日期和時間
脈沖寬度調制解調器(PWM)用于脈沖寬度的調制,比如電機控制、用于變頻調整等。7)模擬通道組件
8)互聯通信組件
36.嵌入式處理芯片的選型 1)性價比原則
性能高,價格低 2)參數選擇原則
ARM內核(指令流水線、支持Thumb/Thumb-2指令集、最高時鐘頻率的限制、最低功耗要求以及低成本要求)系統時鐘頻率(頻率越高,處理速度越快;通常ARM芯片的速度主要取決于ARM內核)芯片內部存儲器的容量
片內外圍電路(GPIO外部引腳條數、定時計數器、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.頁式存儲管理(重點)
基本思路:把物理內存劃分為許多固定大小的內存塊,稱為物理頁面;把邏輯地址空間也劃分為大小相同的塊,稱為邏輯頁面。當一個用戶程序被裝入內存時,不是以整個程序為單位,把它存放在一整塊連續的區域,而是以頁面為單位來進行分配的。對于一個大小為N 的頁面程序,需要有N 個空閑的物理頁面來把它裝載。這些物理頁面不一定是要連續的。
在頁式存儲管理中需要解決三個問題:數據結構、內存分配與回收、地址映射。
數據結構有兩個:頁表和物理頁面表。
A.頁表:給出了任務邏輯頁面號和內存中物理頁面號之間的對應關系。
B.物理頁面表:描述內存空間中,各個物理頁面的使用情況。
具體的例子請參考《教程》317頁(博客中畫不了圖,有興趣自己看)。
內存的分配過程:
A.對于一個新來的任務,計算它所需要的頁面數N,然后查看位示圖,看是否還有N 個空閑的物理頁面。
B.如果有足夠的空閑物理頁面,就去申請一個頁表,其長度為N,并把頁表的起始地址填入到該任務的控制塊中。
C.分配N 個空閑的物理頁面,把他們的變換填到頁表中,建立邏輯頁面與物理頁面直接的對應關系。
D.修改位示圖,對剛剛被占用的那些物理頁面進行標記。地址映射的基本思路:
A.邏輯地址分析:對邏輯地址,找到它所在的邏輯頁面,以及它在頁面內的偏移地址。
B.頁表查找:根據邏輯頁面號,從頁表中找出它對應的物理頁面號。
C.物理地址合成:根據物理頁面號和頁內偏移地址,最終確定物理地址。
邏輯地址分析:
頁面的大小都是2的整數次冪。對于給定的一個邏輯地址,可以直接把它的高位部分作為邏輯頁面號,把它的低位部分作為頁內偏移地址。例如,假設頁面的大小是4KB,即2的12次冪,邏輯地址為32為,那么在一個邏輯地址當中,最低12位為頁內偏移地址,而剩下的20位就是邏輯頁面號。
計算方法:
邏輯頁面號=邏輯地址/頁面大小
頁內偏移量=邏輯地址%頁面大小
頁表查找:
頁表作為操作系統的一個數據結構,通常保存在內核的地址空間中。
頁表基地址寄存器用來指向頁表的起始地址;頁表長度寄存器用來指示頁表的大小,即對于當前任務,它總共包含有多少個頁面。
物理地址合成:
假設物理頁面號為f,頁內偏移地址為offset,每個頁面大小為2n,那么相應的物理地址為:f×2n+offset。39.虛擬存儲管理
程序局部性原理:時間局限性和空間局限性。
虛擬頁式存儲管理:在頁式管理的基礎上,增加了請求調頁和頁面置換的功能。
基本思路:當一個用戶程序需要調入內存去運行時,不是將這個程序的所有頁面都裝入內存,而是只裝載部分的頁面,就可以啟動這個程序運行。在運行過程中,如果發現要執行的指令或者訪問的數據不在內存當中,就向系統發出缺頁中斷請求,然后系統在處理這個中斷請求時,就會將保存在外存中的相應頁面調入內存,從而使該程序能繼續運行。
在虛擬頁式存儲管理中,頁表包含:邏輯頁面號、物理頁面號、駐留位、保護位、修改位和訪問位。
常用的頁面置換算法:
A.最優頁面置換算法:理想化算法。
B.最近最久未使用算法:鏈表法和棧方法。尋找長時間沒有被訪問的頁面。
C.最不常用算法:每個頁面設置一個訪問計數器。
D.先進先出算法:性能比較差。
E.時鐘頁面置換算法:把頁面組成環形鏈表,類似時鐘面。
一般來說,當一個任務剛剛啟動的時候,它會不斷去訪問一些新的頁面,然后逐步建立一個比較穩定的工作集。工作集是指當前任務正在使用的邏輯頁面的集合。如果分配給一個任務的物理頁面數太少,不能包含整個的工作集,任務將會造成很多缺頁中斷,需要頻繁地進行頁面置換,這種現象稱為“抖動”。40.Flash存儲器
(1)Flash 存儲器是一種非易失性存儲器,根據結構的不同可以將其分為NOR Flash 和NAND Flash 兩種。
(2)Flash存儲器的特點:
A、區塊結構:在物理上分成若干個區塊,區塊之間相互獨立。
B、先擦后寫:Flash 的寫操作只能將數據位從1寫成0,不能從0寫成1,所以在對存儲器進行寫入之前必須先執行擦除操作,將預寫入的數據位初始化為1。擦除操作的最小單位是一個區塊,而不是單個字節。
C、操作指令:執行寫操作,它必須輸入一串特殊指令(NOR Flash)或者完成一段時序(NAND Flash)才能將數據寫入。
D、位反轉:由于Flash 的固有特性,在讀寫過程中偶爾會產生一位或幾位的數據錯誤。位反轉無法避免,只能通過其他手段對結果進行事后處理。
E、壞塊:區塊一旦損壞,將無法進行修復。對已損壞的區塊操作其結果不可預測。
(3)NOR Flash的特點:
應用程序可以直接在閃存內運行,不需要再把代碼讀到系統RAM 中運行。NOR Flash 的傳輸效率很高,在1MB~4MB 的小容量時具有很高的成本效益,但是很低的寫入和擦除速度大大影響了它的性能。
(4)NAND Flash的特點
能夠提高極高的密度單元,可以達到高存儲密度,并且寫入和擦除的速度也很快,這也是為何所有的U盤都使用NAND Flash 作為存儲介質的原因。應用NAND Flash 的困難在于閃存需要特殊的系統接口。41.RAM存儲器
(1)SRAM 的特點:
SRAM 表示靜態隨機存取存儲器,只要供電它就會保持一個值,它沒有刷新周期,由觸發器構成基本單元,集成度低,每個SRAM 存儲單元由6個晶體管組成,因此其成本較高。它具有較高速率,常用于高速緩沖存儲器。
通常SRAM 有4種引腳:
CE:片選信號,低電平有效。
R/W:讀寫控制信號。
ADDRESS:一組地址線。
DATA:用于數據傳輸的一組雙向信號線。
(2)DRAM 的特點:
DRAM 表示動態隨機存取存儲器。這是一種以電荷形式進行存儲的半導體存儲器。它的每個存儲單元由一個晶體管和一個電容器組成,數據存儲在電容器中。電容器會由于漏電而導致電荷丟失,因而DRAM器件是不穩定的。它必須有規律地進行刷新,從而將數據保存在存儲器中。
DRAM 的接口比較復雜,通常有一下引腳:
CE:片選信號,低電平有效。
R/W:讀寫控制信號。
RAS:行地址選通信號,通常接地址的高位部分。
CAS:列地址選通信號,通常接地址的低位部分。
ADDRESS:一組地址線。
DATA:用于數據傳輸的一組雙向信號線。
(3)SDRAM 的特點:
SDRAM 表示同步動態隨機存取存儲器。同步是指內存工作需要同步時鐘,內部的命令發送與數據的傳輸都以它為基準;動態是指存儲器陣列需要不斷的刷新來保證數據不丟失。它通常只能工作在133MHz的主頻。
(4)DDRAM 的特點
DDRAM 表示雙倍速率同步動態隨機存取存儲器,也稱DDR。DDRAM 是基于SDRAM 技術的,SDRAM 在一個時鐘周期內只傳輸一次數據,它是在時鐘的上升期進行數據傳輸;而DDR 內存則是一個時鐘周期內傳輸兩次次數據,它能夠在時鐘的上升期和下降期各傳輸一次數據。在133MHz 的主頻下,DDR內存帶寬可以達到133×64b/8×2=2.1GB/s。42.存儲器系統的層次架構
計算機系統的存儲器被組織成一個金字塔的層次結構。
自上而下為:CPU內部寄存器、芯片內部高速緩存(cache)、芯片外部高速緩存(SRAM、SDRAM、DRAM)、主存儲器(FLASH、EEPROM)、外部存儲器(磁盤、光盤、CF卡、SD卡)和遠程二級存儲器(分布式文件系統、WEB服務器),6個層次的結構。
上述設備從上而下,依次速度更慢、容量更大、訪問頻率更小,造價更便宜。
2、高速緩存(cache)
工作原理(參照教程126頁,博客畫不了圖):主要利用了程序的局部性特點。
地址映象是指把主存地址空間映象到cache的地址空間。
地址變換是指當程序或數據已經裝入到cache后,在實際運行過程中,把主存地址如何編程cache空間的地址。
常用的地址映象和地址變換的方式有:(教程127頁)
直接映象和變換:速度快,造價低,但有局限性,不能充分利用cache的好處。
組相聯地址映象和變換:速度稍慢但是命中率高。
全相聯地址映象和變換:可以任意映射。
常用的cache替換算法:輪轉法和隨機替換算法。
高速緩存的分類:
統一cache和獨立的數據/指令cache
寫通cache和寫回cache
讀操作分配cache和寫操作分配cache 43.I/O接口、I/O設備以及外部通信接口(GPIO、IC、SPI、UART、USB、HDMI等;鍵盤、LED、LCD、觸摸屏、傳感器等;RS-232/RS-485、CAN、以太網和常用無線通信接口)(1)GPIO(通用輸入輸出接口)
在嵌入式處理器內部,輸入具備緩沖功能,輸出具有鎖存功能。GPIO一般有三態:0態、1態、高阻狀態。
(2)集成電路互連總線接口IIC 集成電路互連總線用于連接嵌入式處理器及外圍器件,采用串行半雙工傳輸的總線標準。IIC總線具有的接口線少,控制方式簡單,器件封裝緊湊,通信速率較高(100kb/s,400kb/s,高速模式可達3.4Mb/s)等優點。IIC總線的操作時序
IIC總線只有兩條信號線,一條是數據線SDA,另一條是時鐘線SCL,所有的操作均通過這兩條信號線完成。數據線SDA上的數據必須在時鐘的高電平周期保持穩定,它的高/低電平狀態只有在SCL時鐘信號線是低電平時才能改變。1)啟動和停止條件
總線上的所有器件都不使用總線時,SCL線和SDA線各自的上拉電阻把電平拉高,使它們均處于高電平。主控制器啟動總線操作的條件是當SCL線保持高電平時SDA線有高電平轉為低電平,此時主控制器在SCL產生時鐘信號,SDA線開始傳輸數據。若SCL線為高電平時SDA由低轉為高,則總線工作停止,恢復空閑狀態 2)數據傳送格式 3)應答(ACK)信號傳送 4)讀/寫操作 5)總線仲裁 6)異常中斷條件(3)串行外設接口SPI
(4)串行異步通信接口UART(5)高清多媒體接口HDMI
(6)常用簡單輸入設備(鍵盤、觸摸屏、傳感器)(7)常用簡單輸出設備(LED、數碼管、LCD、)
(8)基于UART的RS—232/RS—485 CAN總線接口
以太網通信接口常用無線通信接口(GPS模塊、GPRS模塊、WiFi模塊、藍牙模塊、射頻無線收發模塊)43.存儲管理單元(MMU)memory management unit MMU在CPU和物理內存之間進行地址轉換,將地址從邏輯空間映射到物理空間,這個過程稱為內存映射。
MMU主要完成下面的工作:
A.虛擬存儲空間到物理空間的映射。
B.存儲器訪問權限的控制。
C.設置虛擬存儲空間的緩沖特性。
嵌入式系統中常常采用頁式存儲管理。為了管理這些頁引入了頁表的概念。
頁表是位于內存中的表,它的每一行對應虛擬存儲空間的一個頁,該行包含了該虛擬內存頁對應的物理內存頁的地址、該頁的訪問權限和該頁的緩沖特性等。
從虛擬地址到物理地址的變換過程就是查詢頁表的過程。
由于頁表存儲在內存中的,整個查詢過程需要付出很大的代價。根據程序局部性的特點,增加了一個小容量、高速度的存儲部件來存放當前訪問需要的地址變換條目,這個存儲部件稱為:地址轉換后備緩沖器(TLB)。
當CPU訪問內存時,首先在TLB中查找需要的地址變換條目,如果該條目不存在,CPU再從內存中的頁表中查詢,并把相應的結果添加到TLB中,更新它的內容。
嵌入式系統中虛擬存儲空間到物理空間的映射以內存塊為單位進行。即虛擬存儲空間中一塊連續的存儲空間被映射到物理存儲空間中同樣大小的一塊連續存儲空間。
在頁表和TLB中,每一個地址變換條目實際上記錄了一個虛擬存儲空間的內存塊的基地址與物理存儲空間相對應的一個內存塊的基地址之間的對應關系。
在MMU中實現虛擬地址到物理地址的映射是通過兩級頁表來實現的。
禁止MMU時,所有物理地址和虛擬地址相等,即使用平板存儲模式。內存保護
操作系統通常利用MMU來實現操作系統內核與應用程序之間的隔離,以及應用程序與應用程序之間的隔離。
內存保護包含兩個方面的內容:
A.防止地址越界,每個應用程序都有自己獨立的地址空間。
B.防止越權操作,每個應用程序都有自己的訪問權限。44.實模式與保護模式
在嵌入式系統中,常見的存儲管理方案可以分為兩大類:實模式和保護模式。
實模式:內存的平面使用模式。特點有:
A.不劃分“系統空間”與“用戶空間”,無須進行地址映射。
B.操作系統與應用程序之間不再有物理的邊界。
C.系統中的“任務”或“進程”,實際上全是內核線程。
在實模式下,內存布局可以分為5個段:
A.代碼段:包含操作系統和應用程序的所有代碼。
B.數據段:所有帶有初始值的全局變量。
C.BSS段:所有未帶初始值的全局變量。
D.堆空間:動態分配的內存空間。
E.棧空間:保存上下文以及函數調用時的局部變量和形參。
在實模式存儲管理方案下,主要的工作在于堆空間的管理,即如何來管理空閑的堆空間、如何來分配內存、如何來回收內存等等。
保護模式:處理器中必須有MMU硬件并啟用。特點有:
A.系統內核和用戶程序都有各自獨立的地址空間。
B.每個應用程序只能訪問自己的地址空間,不能去破壞操作系統和其他應用程序的代碼和數據。45.分區存儲管理
為了實現多道程序系統而采用的內存管理。
基本思路:把整個內存劃分為兩大區域,即系統區和用戶區,然后再把用戶區劃分為若干個分區,每個任務占有其中的一個分區。這樣,在內存當中就同時保留多個任務,讓他們共享整個用戶區,從而實現多個任務的并發運行。
分區存儲管理又可以分為兩類:固定分區和可變分區。
固定分區:各個用戶分區的個數、位置和大小一旦確定后,就固定不變,不能再修改。
優點:易于實現,系統開銷較小。
缺點:內存利用率不高,分區總數固定。
可變分區:動態創建,在裝入一個程序時,系統將根據它的需求和內存空間的使用情況來決定是否分配。
優點:動態變化,非常靈活。
缺點:可能存在外碎片。
在實現可變存儲管理技術的時候,需要考慮三個方面的問題:
A.內存管理的數據結構
B.內存的分配算法
C.內存的回收算法 46.地址映射
地址映射也叫地址重定位。
邏輯地址和物理地址是完全不同的,不能用邏輯地址來直接訪問內存單元。
為了保證CPU在執行指令的時候,可以正確地訪問內存單元,需要將用戶程序中的邏輯地址轉換為運行時由機器直接尋址的物理地址。這個過程稱為:地址映射。
地址映射由存儲管理單元MMU來完成。
地址映射主要有兩種方式:靜態地址映射和動態地址映射。
靜態地址映射:當用戶程序被裝入內存時,直接對指令代碼進行修改,一次性地實現邏輯地址到物理地址的轉換。
動態地址映射:當用戶程序被裝入內存時,不對指令代碼做任何修改,而是在程序的運行過程中,當它需要訪問內存單元的時候,再來進行地址轉換。
在具體實現時,這項轉換工作一般是由硬件的地址映射機制來完成的。通常設置一個基地址寄存器,或者叫重定位寄存器。當一個任務被調度運行時,就把它所在分區的起始地址裝入到整個寄存器中。然后,在程序運行的過程中,當需要訪問某個內存單元時,硬件就會自動地將其中的邏輯地址加上基地址寄存器中的內容,從而得到實際的物理地址,并且按照這個物理地址區執行。
這個基地址寄存器位于MMU的內部,整個地址映射過程是自動運行的。從理論上說,每訪問一次內存都要進行一次地址映射。47.頁式存儲管理(重點)
基本思路:把物理內存劃分為許多固定大小的內存塊,稱為物理頁面;把邏輯地址空間也劃分為大小相同的塊,稱為邏輯頁面。當一個用戶程序被裝入內存時,不是以整個程序為單位,把它存放在一整塊連續的區域,而是以頁面為單位來進行分配的。對于一個大小為N的頁面程序,需要有N個空閑的物理頁面來把它裝載。這些物理頁面不一定是要連續的。
在頁式存儲管理中需要解決三個問題:數據結構、內存分配與回收、地址映射。
數據結構有兩個:頁表和物理頁面表。
A.頁表:給出了任務邏輯頁面號和內存中物理頁面號之間的對應關系。
B.物理頁面表:描述內存空間中,各個物理頁面的使用情況。
具體的例子請參考《教程》317頁(博客中畫不了圖,有興趣自己看)。
內存的分配過程:
A.對于一個新來的任務,計算它所需要的頁面數N,然后查看位示圖,看是否還有N個空閑的物理頁面。
B.如果有足夠的空閑物理頁面,就去申請一個頁表,其長度為N,并把頁表的起始地址填入到該任務的控制塊中。
C.分配N個空閑的物理頁面,把他們的變換填到頁表中,建立邏輯頁面與物理頁面直接的對應關系。
D.修改位示圖,對剛剛被占用的那些物理頁面進行標記。
地址映射的基本思路:
A.邏輯地址分析:對邏輯地址,找到它所在的邏輯頁面,以及它在頁面內的偏移地址。
B.頁表查找:根據邏輯頁面號,從頁表中找出它對應的物理頁面號。
C.物理地址合成:根據物理頁面號和頁內偏移地址,最終確定物理地址。
邏輯地址分析:
頁面的大小都是2的整數次冪。對于給定的一個邏輯地址,可以直接把它的高位部分作為邏輯頁面號,把它的低位部分作為頁內偏移地址。例如,假設頁面的大小是4KB,即2的12次冪,邏輯地址為32為,那么在一個邏輯地址當中,最低12位為頁內偏移地址,而剩下的20位就是邏輯頁面號。
計算方法:
邏輯頁面號=邏輯地址/頁面大小
頁內偏移量=邏輯地址%頁面大小
頁表查找:
頁表作為操作系統的一個數據結構,通常保存在內核的地址空間中。
頁表基地址寄存器用來指向頁表的起始地址;頁表長度寄存器用來指示頁表的大小,即對于當前任務,它總共包含有多少個頁面。
物理地址合成:
假設物理頁面號為f,頁內偏移地址為offset,每個頁面大小為2n,那么相應的物理地址為:f×2n+offset。48.虛擬存儲管理
程序局部性原理:時間局限性和空間局限性。
虛擬頁式存儲管理:在頁式管理的基礎上,增加了請求調頁和頁面置換的功能。
基本思路:當一個用戶程序需要調入內存去運行時,不是將這個程序的所有頁面都裝入內存,而是只裝載部分的頁面,就可以啟動這個程序運行。在運行過程中,如果發現要執行的指令或者訪問的數據不在內存當中,就向系統發出缺頁中斷請求,然后系統在處理這個中斷請求時,就會將保存在外存中的相應頁面調入內存,從而使該程序能繼續運行。
在虛擬頁式存儲管理中,頁表包含:邏輯頁面號、物理頁面號、駐留位、保護位、修改位和訪問位。
常用的頁面置換算法:
A.最優頁面置換算法:理想化算法。
B.最近最久未使用算法:鏈表法和棧方法。尋找長時間沒有被訪問的頁面。
C.最不常用算法:每個頁面設置一個訪問計數器。
D.先進先出算法:性能比較差。
E.時鐘頁面置換算法:把頁面組成環形鏈表,類似時鐘面。
一般來說,當一個任務剛剛啟動的時候,它會不斷去訪問一些新的頁面,然后逐步建立一個比較穩定的工作集。工作集是指當前任務正在使用的邏輯頁面的集合。如果分配給一個任務的物理頁面數太少,不能包含整個的工作集,任務將會造成很多缺頁中斷,需要頻繁地進行頁面置換,這種現象稱為“抖動”。49.嵌入式系統軟件 .嵌入式系統的軟件組成與實時操作系統(嵌入式系統軟件組成,嵌入式操作系統的發展,實時系統與實時操作系統,微內核與宏內核,嵌入式操作系統的仿真平臺等).板級支持軟件包(BSP)和引導加載程序Bootloader(硬件抽象層HAL,BSP 的功能和移植,Bootloader 的執行過程,U-boot 及其移植等).嵌入式Linux 操作系統(嵌入式Linux 的發展和自由軟件,嵌入式Linux 內核的結構、系統調用接口,常見嵌入式Linux 等).嵌入式操作系統μC/OS-II(基本特點、代碼結構、任務管理與調度、任務通信、中斷處理、移植等)50.嵌入式系統的開發
1.嵌入式系統的開發過程和工具(開發步驟,交叉開發平臺和工具,系統的調試工具等)
2.系統開發工具軟件(ADS、RVDS的特點與使用,GCC的常用命令與參數)
3.以S3C2410/S3C2440為背景的應用系統開發(硬件接口及部件的綜合使用;無操作系統環境下的系統開發;μC/OS-II環境下的系統開發)51.嵌入式系統的定義
(1)定義:以應用為中心,以計算機技術為基礎,軟硬件可裁剪,適應應用系統對功能、可靠性、成本、體積、功耗嚴格要求的專用計算機系統。
(2)嵌入式系統發展的4 個階段:無操作系統階段、簡單操作系統階段、實時操作系統階段、面向Internet 階段。
(3)知識產權核(IP 核):具有知識產權的、功能具體、接口規范、可在多個集成電路設計中重復使用的功能模塊,是實現系統芯片(SOC)的基本構件。
(4)IP 核模塊有行為、結構和物理3 級不同程度的設計,對應描述功能行為的不同可以分為三類:軟核、固核、硬核。
52.嵌入式系統的組成:硬件層、中間層、系統軟件層和應用軟件層
(1)硬件層:嵌入式微處理器、存儲器、通用設備接口和I/O 接口。
嵌入式核心模塊=微處理器+電源電路+時鐘電路+存儲器
Cache:位于主存和嵌入式微處理器內核之間,存放的是最近一段時間微處理器使用最多的程序代碼和數據。它的主要目標是減小存儲器給微處理器內核造成的存儲器訪問瓶頸,使處理速度更快。
(2)中間層(也稱為硬件抽象層HAL 或者板級支持包BSP):它將系統上層軟件和底層硬件分離開來,使系統上層軟件開發人員無需關系底層硬件的具體情況,根據BSP 層提供的接口開發即可。
BSP 有兩個特點:硬件相關性和操作系統相關性。
設計一個完整的BSP 需要完成兩部分工作:
A、嵌入式系統的硬件初始化和BSP 功能。
片級初始化:純硬件的初始化過程,把嵌入式微處理器從上電的默認狀態逐步設置成系統所要求的工作狀態。
板級初始化:包含軟硬件兩部分在內的初始化過程,為隨后的系統初始化和應用程序建立硬件和軟件的運行環境。
系統級初始化:以軟件為主的初始化過程,進行操作系統的初始化。
B、設計硬件相關的設備驅動。
(3)系統軟件層:由RTOS、文件系統、GUI、網絡系統及通用組件模塊組成。
RTOS 是嵌入式應用軟件的基礎和開發平臺。
(4)應用軟件:由基于實時系統開發的應用程序組成。53.實時系統
(1)定義:能在指定或確定的時間內完成系統功能和對外部或內部、同步或異步時間做出響應的系統。
(2)區別:通用系統一般追求的是系統的平均響應時間和用戶的使用方便;而實時系統主要考慮的是在最壞情況下的系統行為。
(3)特點:時間約束性、可預測性、可靠性、與外部環境的交互性。
(4)硬實時(強實時):指應用的時間需求應能夠得到完全滿足,否則就造成重大安全事故,甚至造成重大的生命財產損失和生態破壞,如:航天、軍事。
(5)軟實時(弱實時):指某些應用雖然提出了時間的要求,但實時任務偶爾違反這種需求對系統運行及環境不會造成嚴重影響,如:監控系統、實時信息采集系統。
第五篇:系統架構設計師考試心得
系統架構設計師http://
系統架構設計師考試心得
去年參加了系統架構設計師的考試,考試還算比較順利,順利通過了國家分數線,獲得了資格證書。除去考試不說,在準備考試的這段時間里了解了一下架構設計的主要工作,和做架構設計的理論知識和一些成熟的架構方案,對自己以后的實際工作有很大的幫助。下面總結一下我的備考經驗。
【前期準備】
花了一個月的時間基本就是學習基礎知識,其實好多大學的課程都已經學習過了,無奈畢業以后就基本不怎么看書了,忘了很多,不過比起從頭來學還是輕松了很多,O(∩_∩)O哈哈~。
參考書籍:
《系統架構設計師考試全程指導》和《系統架構設計師教程》這兩本書基礎知識基本上涵蓋齊全了,后一本書可以粗略看一次,了解一下架構設計師需要的主要背景理論知識,前一本書推薦看兩次,第一次算是過一下主要的理論知識點,能記住多少算多少,第二次順便做一下課后的習題,實際上題目也沒幾道,每個章節也才不到20道題目,便于加深理解,同時重點記憶一些關鍵的知識點。
【中期準備】
10月份到11月份這一個月基本上就是熟悉考試的題型,了解一下考試題目是什么樣子的,主要考什么,哪些是重點,案例分析題目怎么解答等等。
參考書籍:
《系統架構設計師考試考點突破、案例分析、試題實戰一本通》和《系統架構設計師考試歷年試題分析與解答》可以看一下歷年的考題,相信大家考試也都不少了,最具有參考價值的題目仍舊是歷年的真題,雖說系統架構師自從09年
系統架構設計師http://
才開始,但是通過本書試著做一些題目,了解一下歷年考過的知識,和簡答題目的方法,尤其是下午的案例分析題,難度相對比較高,可以重點學習一下回答這類題目的方法。
【后期準備】
11月份,考試前夕,這段時間主要是知識總結和準備論文方面的工作。架構知識涉及面太廣,不可能面面俱到,所有的知識都非常熟悉,必要的背景知識相信通過前段時間的學習,基本也就OK了,現在重點是論文設計了。一來,論文的字數比較多,2個小時的考試時間,寫3000字的論文,還要扣除包括審題,概要什么的時間花費,練習練習動手寫作能力還是非常重要的。如果提前能練練手的話,相信語言的組織了,字跡的工整程度了,都能提高不少。二來,選擇自己在近兩年時間內做過的印象最深的一個項目,從項目的整體角度考慮,需求分析了,架構設計了,軟件測試了,認為能夠以宏觀角度概括的,都可以整理一下,這都是用來寫作的素材。三來,就是細化自己在項目中所做的工作,不要泛泛而談,舉實例出來,提出解決方案,這就是論文的論據。
其實論文這塊,題目本身比較靈活,結合自己的實際項目經驗來寫,相對來說容易許多,內容也不會顯得太空洞。同時可以網上參考一下歷年的優秀論文,了解一下開頭怎么寫,中間內容怎么寫,結尾怎么寫,使文章讀起來整體有一氣呵成的感覺,免得寫的不著邊際,跑題了。
【總結】
總的來說,基礎知識還是要花大工夫的,畢竟涉及的知識面比較廣泛,操作系統了,網絡了,數據庫了,信息系統了,軟件架構設計了,知識產權了等等。有些是了解的,有些是要重點掌握的,在復習基礎知識的時候可以歸類記憶。
系統架構設計師http://
再者,要多了解一下當前互聯網產業的熱門技術,畢竟做架構設計工作也是與時俱進的,現在都有好多的成熟架構解決方案,平時多了解和積累一些。
最后,也最重要,在實際的項目中把所積累的知識運用一下,不僅對自己做設計工作有好處,同時對考試來說,案例分析和論文設計也就比較容易上手了,不然的話,那就真是紙上談兵了。考試的時候無從下手,不容易答題。
這算是自己考架構設計師的一點心得體會,難免有不足之處,相信大家只要認真準備了,考試還是比較容易過的,重要的是自己在工作中做架構設計的時候也能得心應手,靈活做設計,最后也預祝大家都能考個好成績!!