嵌入式系統(tǒng)組織架構與設計_第1頁
嵌入式系統(tǒng)組織架構與設計_第2頁
嵌入式系統(tǒng)組織架構與設計_第3頁
嵌入式系統(tǒng)組織架構與設計_第4頁
嵌入式系統(tǒng)組織架構與設計_第5頁
已閱讀5頁,還剩176頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

2024/1/26嵌入式系統(tǒng)組織架構與設計1嵌入式系統(tǒng)組織架構與設計98.02.192024/1/26嵌入式系統(tǒng)組織架構與設計2課程大綱第一章嵌入式系統(tǒng)概述第二章嵌入式系統(tǒng)作業(yè)環(huán)境與系統(tǒng)開發(fā)流程第三章嵌入式系統(tǒng)Xscale微架構之系統(tǒng)結構第四章Xscale指令系統(tǒng)第五章Xscale-PXA270應用處理器結構和運用方法實作PXA270結構與特性時脈與電源管理系統(tǒng)整合單元LCD控制UART控制USB控制GPIO控制2024/1/26嵌入式系統(tǒng)組織架構與設計3嵌入式系統(tǒng)組織架構與設計-

第一章嵌入式系統(tǒng)概述98.02.192024/1/26嵌入式系統(tǒng)組織架構與設計4第一章課程大綱嵌入式系統(tǒng)概述嵌入式系統(tǒng)特性嵌入式系統(tǒng)體系架構嵌入式系統(tǒng)之發(fā)展嵌入式系統(tǒng)軟體Linux作業(yè)系統(tǒng)WinCE作業(yè)系統(tǒng)嵌入式系統(tǒng)開發(fā)平臺嵌入式系統(tǒng)硬體IntelXscaleSOC系列IntelXscale實驗平臺2024/1/26嵌入式系統(tǒng)組織架構與設計5前言「碩大便是美」正好與IA(InformationAppliance)求「小而美、小而省」是背道而馳。半導體電子發(fā)展趨勢是符合「摩爾定律」資訊載具上之資訊軟體研發(fā),具有量身訂做之特性,已從電腦中心設計(范紐曼結構)之時代轉向以消費者中心(3C)的設計。多產業(yè)標準並存之網路架構以及互動性、相容性高之系統(tǒng)軟體變成為研發(fā)廠商開發(fā)之首要目標:節(jié)省人力本錢配合嵌入式系統(tǒng)多功能化求新、求變2024/1/26嵌入式系統(tǒng)組織架構與設計6計算機科學(ComputerScience)ComputerScience電腦科學是一門包含各種各樣與計算和資訊處理相關主題的系統(tǒng)學科,從籠統(tǒng)的演算法分析、方式化語法等等,到更具體的主題如程式設計語言、程式設計、軟體和硬體等。作為一門學科,它與數(shù)學、電腦程式設計、軟體工程和電腦工程有顯著的不同,卻通常被混淆,儘管這些學科之間存在不同程度的交叉和覆蓋。中國算盤(abacus),遠古就應用在計算上。資訊理論資訊理論2024/1/26嵌入式系統(tǒng)組織架構與設計7計算機科學(ComputerScience)Computerscience,orcomputingscienceItisthestudyofthetheoreticalfoundationsofinformationandcomputationandtheirimplementationandapplicationincomputersystems.Computation:Itisageneraltermforanytypeofinformationprocessingthatcanberepresentedmathematically.Computationisaprocessfollowingawell-definedmodelthatisunderstoodandcanbeexpressedinanalgorithm,protocol,networktopology,etc.2024/1/26嵌入式系統(tǒng)組織架構與設計8計算機科學(ComputerScience)Information:Generallyspeaking,theconceptofinformationiscloselyrelatedtonotionsofconstraint,communication,control,data,form,instruction,knowledge,meaning,mentalstimulus,pattern,perception,andrepresentation.Informationisthewritingofknowldgeofanysubject.Informationisthestateofasystemofinterest.Messageistheinformationmaterialized.TheASCIIcodesfortheword"Wikipedia"representedinbinary,thenumeralsystemmostcommonlyusedforencodingcomputerinformation.2024/1/26嵌入式系統(tǒng)組織架構與設計9InformationprocessingmaymorespecificallybedefinedintermsbyClaudeE.Shannonastheconversionoflatentinformationintomanifestinformation[citationneeded].Latentandmanifestinformationisdefinedthroughthetermsofequivocation(remaininguncertainty,whatvaluethesenderhasactuallychosen),dissipation(uncertaintyofthesenderwhatthereceiverhasactuallyreceived)andtransformation(savedeffortofquestioning-equivocationminusdissipation)[citationneeded].PracticalInformationProcessingcanbedescribedasacycle,wheredata(whichmayhavenoinherentmeaningtotheobserver)isconvertedintoinformation(whichdoeshavemeaningtotheobserver).Thisconversiontakesoneofthreeforms:Computationutilizesmathematics(specificallyarithmetics)tocreatetheinformationfromdata.Example:acashregister(eithermechanicalordigital)usesadditiontoconverttheindividualitemprices(data)intothetotalamountowedtothestore(information).Transductionistheconversionofonetypeofenergyintoanothertype.Example:Amechanicalspeakerconvertsanelectricsignal(data)intosoundwaves(information).Translationistheconversionofastringofsymbolsfromonesetintoanother.Example:apersonfluenttwolanguagescouldrewriteadocumentthatiswritteninalanguagethattheobserverdoesnotunderstand(data)intoalanguagethattheobserverdoesunderstand(information).NotethattranslationistheonlyInformationprocessingformthatcannotyetbeperformedpurelybyamachine.Itrequiresanorganicbrain(someelectroniccomputerprogramscan'translate'butinrealitytheyareusingcomplexprograms,whichactuallyrelysolelyoncomputationtocompletetheprocess).2024/1/26嵌入式系統(tǒng)組織架構與設計10計算機科學(ComputerScience)計算機科學研討的課題:電腦程式能做什麼和不能做什麼〔可計算性〕如何使程式更高效的執(zhí)行特定任務〔演算法和複雜性理論〕程式如何存取不同類型的資料〔資料結構和資料庫〕程式如何顯得更具有智慧〔人工智慧〕;人類如何與程式溝通〔人機互動和人機界面〕2024/1/26嵌入式系統(tǒng)組織架構與設計11計算機科學(ComputerScience)電腦(計算機)科學的大部分研討是基於“杜林機〞(TuringMachine)和“馮·范紐曼電腦〞(JohnvonNeumann)的,它們是絕大多數(shù)實際機器的計算模型。西元1937年,亞蘭杜林〔AlanTuring〕提出了TuringMachine的概念。TuringMachineTuringmachinesareextremelybasicabstractsymbol-manipulatingdeviceswhich,despitetheirsimplicity,canbeadaptedtosimulatethelogicofanycomputerthatcouldpossiblybeconstructed.Thoughtheywereintendedtobetechnicallyfeasible,Turingmachineswerenotmeanttobeapracticalcomputingtechnology,butathoughtexperimentaboutthelimitsofmechanicalcomputation;thustheywerenotactuallyconstructed.Studyingtheirabstractpropertiesyieldsmanyinsightsintocomputerscienceandcomplexitytheory.2024/1/26嵌入式系統(tǒng)組織架構與設計12計算機科學(ComputerScience)TuringMachine艾倫?杜林的“通用電腦器〞(“universalcomputingmachine〞)是由他(1936-1937)為他的多用途單機器〔電腦器〕模型命名,這模型可以“運行〞任何恣意〔但well-formed〕指令序列〔稱為"quintuples"〕。這模型被一些人例如Davis(2000)認為是“存儲程式電腦〞的原點。每臺圖靈機從它的字母表得到字串計算一確定的固定偏可計算函數(shù)。從外觀上它的行為就像一臺運用固定程式的電腦。儘管如此,我們可以把任何杜林機的動作表格編碼到一條字串。2024/1/26嵌入式系統(tǒng)組織架構與設計13計算機科學(ComputerScience)VonNeumannorStoredprogramComputer最早的電腦器僅內涵固定用途的程式,通常是為了簡化或教育目的。例如一個計算器僅有固定的數(shù)學計算程式,它不能拿來當作文書處理軟體,更不能拿來玩遊戲。假想象要改變此機器的程式,則必須更改線路、更改結構甚至重新設計此機器。范紐曼結構型電腦,則是以儲存程式型電腦的概念改變了這一切。藉由創(chuàng)造一組指令集結構,並將所謂的運算轉化成一串程式指令的執(zhí)行細節(jié),讓此機器更有彈性。借著將指令當成一種特別型態(tài)的靜態(tài)資料,一臺儲存程式型電腦可輕易改變其程式,並在程式控制下改變其運算內容。2024/1/26嵌入式系統(tǒng)組織架構與設計14計算機的通用架構西元1945年「范紐曼方式」〔vonNeumannModel〕最主要的精神在於「儲存程式」〔storedprogram〕的概念2024/1/26嵌入式系統(tǒng)組織架構與設計15uProcessor架構-Intel80386為例Blockdiagramofthei3862024/1/26嵌入式系統(tǒng)組織架構與設計16計算機科學(ComputerScience)計算機系統(tǒng)層次結構從功能上看,現(xiàn)代電腦系統(tǒng)可分為五個層次級別,每一層都能進行程式設計。微程式設計級這一級是由硬體直接實現(xiàn)的,是電腦系統(tǒng)最底層的硬體系統(tǒng)。由機器硬體直接執(zhí)行微指令。只需採用微程式設計的電腦系統(tǒng),才有這一級。假設某一個應用程式直接用微指令來編寫,那麼可在這一級上運行應用程式。普通機器級也稱為機器語言級,它由微程式解釋機器指令系統(tǒng)。這一級也是硬體級,是軟體系統(tǒng)和硬體系統(tǒng)之間的紐帶。硬體系統(tǒng)的操作由此級控制,軟體系統(tǒng)的各種程式,必須轉換成此級的方式才干執(zhí)行。2024/1/26嵌入式系統(tǒng)組織架構與設計17計算機科學(ComputerScience)作業(yè)系統(tǒng)級

由作業(yè)系統(tǒng)程式實現(xiàn)。這些作業(yè)系統(tǒng)由機器指令和廣義指令組成,廣義指令是作業(yè)系統(tǒng)定義和解釋的軟體指令,所以這一級也稱為混合級。電腦系統(tǒng)中硬體和軟體資源由此級管理和統(tǒng)一調度,它支撐著其他系統(tǒng)軟體和應用軟體,使電腦能夠自動運行,發(fā)揮高效率的特性。

組合語言級給程式人員提供一種符號方式語言,以減少程式編寫的複雜性。這一級由組合語言程式支持和執(zhí)行。假設應用程式採用組合語言編寫,則機器必須要有這一級的功能;假設應用程式不採用組合語言編寫,則這一級可以不要。

高階語言級導向用戶,為方便用戶編寫應用程式而設置的。這一級由各種高階語言編譯程序支持和執(zhí)行。2024/1/26嵌入式系統(tǒng)組織架構與設計18計算機科學(ComputerScience)電腦系統(tǒng)各層次之間的關係非常緊密,上層是下層的擴展,下層是上層的基礎除第一級外,其他各級都得到它下面級的支持,同時也遭到運行在下面各級上的程式的援助。第一級到第三級編寫程式採用的語言,根本是二進位數(shù)字字化語言,機器執(zhí)行和解釋容易。第四、五兩級編寫程式所採用的語言是符號語言,用英文字母和符號來表示程式,因此便於大多數(shù)不瞭解硬體的人們運用電腦。2024/1/26嵌入式系統(tǒng)組織架構與設計19計算機系統(tǒng)層次結構Ring0Ring1Ring2Ring3Ring4Ring5Ring6Ring0:硬體邏輯Ring1:程序控制Ring2:作業(yè)系統(tǒng)(OS)Ring3:匯編程序Ring4:高級語言匯編或解釋程序Ring5:應用程序Ring6:應用系統(tǒng)羅及模型2024/1/26嵌入式系統(tǒng)組織架構與設計20計算機系統(tǒng)層次結構2024/1/26嵌入式系統(tǒng)組織架構與設計21計算機科學(ComputerScience)ComputerScience與資訊工程(InformationEngineering)西元1962年,史丹佛大學和普渡大學成立了全球最早的計算機科學系〔computersciencedepartments〕臺灣最早的計算機科學系:交通大學計算機與控制工程系(1970)臺灣最早命名為資訊工程系的則是臺灣大學(1977)交大的計工系也於1988年更名為資訊工程系現(xiàn)在幾乎全球各主流大學,都設立了計算機科學的相關科系,足以顯示計算機一日千里的進展2024/1/26嵌入式系統(tǒng)組織架構與設計22摩爾定律是由英特爾〔Intel〕創(chuàng)始人之一戈登·摩爾〔GordonMoore〕提出來的。其內容為:積體電路上可容納的電晶體數(shù)目,約每隔18個月便會添加一倍,性能也將提升一倍,而價格下降一半;或者說,每一美圓所能買到的電腦性能,將每隔18個月翻兩倍以上。[1]這一定律提示了資訊技術進步的速度。計算機科學(ComputerScience)2024/1/26嵌入式系統(tǒng)組織架構與設計23第一章課程大綱嵌入式系統(tǒng)概述嵌入式系統(tǒng)特性嵌入式系統(tǒng)體系架構嵌入式系統(tǒng)之發(fā)展嵌入式系統(tǒng)軟體Linux作業(yè)系統(tǒng)WinCE作業(yè)系統(tǒng)嵌入式系統(tǒng)開發(fā)平臺嵌入式系統(tǒng)硬體IntelXscaleSOC系列IntelXscale實驗平臺2024/1/26嵌入式系統(tǒng)組織架構與設計24嵌入式系統(tǒng)概述嵌入式系統(tǒng)特性何謂嵌入式系統(tǒng)?何謂系統(tǒng):根據(jù)一個固定之計畫、一個程式或一系列的規(guī)則,處理執(zhí)行一個或多個任務之方法,系統(tǒng)也可以是根據(jù)計畫或程式來整合一切硬體的協(xié)同任務。例如:手錶、洗衣機、汽車電子、電腦(含OS)嵌入式系統(tǒng)是在一些大型系統(tǒng)內,由硬體與軟體所構成的一個元件,處理一些不需由人們來操作且特定之一些功能。大多是以電腦為基礎之系統(tǒng)(Computer-Based)的應用程式或產品。內含軟體(OS、AP)於ROM之中的單一微電腦機板,執(zhí)行特種功能。交融驗腦軟/硬體技術、通訊技術與半導體微電子技術,是資訊技術IT(InformationTechnology)之最終產品。2024/1/26嵌入式系統(tǒng)組織架構與設計25嵌入式系統(tǒng)概述嵌入式系統(tǒng)特性何謂嵌入式系統(tǒng)?從應用之層面,根據(jù)IEEE的定義:嵌入式系統(tǒng)是「控制、監(jiān)視或者輔助裝置、機器和設備執(zhí)行之裝置」,亦可說是軟體與硬體之綜合體。「以應用為中心、以電腦技術為基礎、軟體硬體可隨需求而更新、適應應用系統(tǒng)對功能、可靠性、本錢、體積、功耗嚴格要求之專用電腦系統(tǒng)」。當今稱嵌入式系統(tǒng)是針對具有作業(yè)系統(tǒng)之嵌入式系統(tǒng)2024/1/26嵌入式系統(tǒng)組織架構與設計26嵌入式系統(tǒng)概述嵌入式系統(tǒng)特性配合特定應用之特殊設計用戶導向、產品導向、應用導向,與應用緊密結合。高效率、穩(wěn)定之系統(tǒng)先進之電腦、半導體和電子等技術交融一體。產品壽命長與實際系統(tǒng)需求緊密結合,與具體產品同步升級、更新。不易被竊取和高平安性嵌入式系統(tǒng)本身不具有自主開發(fā)之才干,普通運用者無法對其中功能進行修正,必須有一套開發(fā)工具與環(huán)境才干進行開發(fā),如硬體模擬之ICE或軟體模擬之ADS(ARM?DeveloperSuite?)、RealViewDeveloperSuite等。容易操作微型化2024/1/26嵌入式系統(tǒng)組織架構與設計27嵌入式系統(tǒng)概述嵌入式系統(tǒng)體系架構早期應用於軍事、航空航太為主,逐漸轉移工業(yè)控制、汽車電子、通訊及家用消費等領域。嵌入式系統(tǒng)主要區(qū)分硬體與軟體二部分,其架構可分為四個部份:處理器中心記憶體輸入與輸出嵌入式作業(yè)系統(tǒng)與應用軟體(與普通性之PC有極大之區(qū)別)結合特定功能之應用嵌入式作業(yè)系統(tǒng)存入FLASH或EEPROMBootloaderVs.BIOS2024/1/26嵌入式系統(tǒng)組織架構與設計28第一章課程大綱嵌入式系統(tǒng)概述嵌入式系統(tǒng)特性嵌入式系統(tǒng)體系架構嵌入式系統(tǒng)之發(fā)展嵌入式系統(tǒng)軟體Linux作業(yè)系統(tǒng)WinCE作業(yè)系統(tǒng)嵌入式系統(tǒng)開發(fā)平臺嵌入式系統(tǒng)硬體IntelXscaleSOC系列IntelXscale實驗平臺2024/1/26嵌入式系統(tǒng)組織架構與設計29嵌入式系統(tǒng)概述嵌入式系統(tǒng)體系架構重要名詞解釋uprocessorSOCICEMIPSPIPELINE結構作業(yè)系統(tǒng)指令主頻MMC2024/1/2630嵌入式系統(tǒng)概述嵌入式系統(tǒng)體系架構嵌入式系統(tǒng)架構圖嵌入式系統(tǒng)採用“量身訂作〞的方式,把所需求之功能嵌入至各種應用系統(tǒng)中,隨應用方式之不同,區(qū)分:IP〔IntellectualProperty〕級--系統(tǒng)級晶片SOC〔SystomonChip〕的方式晶片級-目前嵌入式系統(tǒng)最常見的方式模組級-常出現(xiàn)在工業(yè)控制和儀器儀表中2024/1/2631嵌入式系統(tǒng)概述嵌入式系統(tǒng)體系架構IP〔IntellectualProperty〕級--系統(tǒng)級晶片SOC在一個矽晶片上實現(xiàn)一個更為複雜系統(tǒng)各種通用處理器中心將成為SoC設計的標準庫,成為VLSI設計中一種標準的器件,可以用標準的VHDL等語言描畫,並儲存在元件庫中。除個別無法集成的元件以外,整個嵌入式系統(tǒng)大部分均可集成到一塊或幾塊晶片中應用系統(tǒng)電路板將變得很簡潔,對於減小體積和功率耗費、提高可靠性非常有利。SOC可以分為通用和專用兩類:專用SOC通常用於某類系統(tǒng)中,而不為普通用戶所知。通用型SOC如:ARM系列晶片元件。2024/1/2632嵌入式系統(tǒng)概述嵌入式系統(tǒng)體系架構晶片級嵌入式微控制器(MicrocontrollerUnit,MCU)又稱單晶片,就是將整個電腦系統(tǒng)匯集到一塊晶片中是以某一種微處理器內核為中心,晶片內部整合。ROM/EPROM、RAM、匯流排、匯流排邏輯、定時/計數(shù)器、WatchDog、I/O、串列埠、脈寬調變輸出、類比轉數(shù)位(A/D)、數(shù)位轉類比(D/A)、FlashRAM、EEPROM等各種必要功能和週邊設備。為適應不同的應用需求,一個單晶片系列具有許多種衍生產品,每種衍生產品的處理器內中心都是一樣的,不同的是記憶體和週邊設備的配置與封裝。最大特點是單晶片化,體積大幅減小,因此使功率耗費和本錢下降、可靠性提高。是目前嵌入式系統(tǒng)工業(yè)的主流。微控制器晶片上週邊設備資源通常比較豐富,適合於控制用途,因此稱之為微控制器。市佔率約70%的嵌入式市場。2024/1/26嵌入式系統(tǒng)組織架構與設計33嵌入式系統(tǒng)概述嵌入式系統(tǒng)體系架構嵌入式DSP處理器(EmbeddedDigitalSignalProcessor,EDSP)系統(tǒng)結構和指令進行了特殊的設計,使其適合於執(zhí)行DSP演算法,提高編譯效率和指令執(zhí)行速度。DSP應用正從以普通指令實現(xiàn)DSP功能的通用單晶片中,過渡到採用嵌入式DSP處理器。2024/1/2634嵌入式系統(tǒng)概述嵌入式系統(tǒng)體系架構模組級-常出現(xiàn)在工業(yè)控制和儀器儀表中基礎就是通用電腦中的中央處理器(CPU)裝配在專門設計的電路板上,只保管和嵌入式應用相關的母板功能在任務溫度、抗電磁干擾、可靠性等方面普通都做了各種加強。具有體積小、分量輕、本錢低、可靠性高的優(yōu)點在電路板上必須包括ROM、RAM、匯流排界面、和各種週邊設備,因此降低了系統(tǒng)的可靠性,技術嚴密性也較差嵌入式微處理器及其記憶體、匯流排、週邊設備等安裝在一塊電路板上,亦稱之為單板電腦。2024/1/26嵌入式系統(tǒng)組織架構與設計35嵌入式系統(tǒng)概述嵌入式系統(tǒng)體系架構ARM簡介「AdvanceRISCMachine,ARM」是一個公司名,已可說是微處理器之通稱,例如:SONYARM公司是專門RISC技術晶片設計開發(fā)公司,作為之是產權供應商,不從事晶片生產,賣轉讓設計許可。ARM微處理器之應用領域:工業(yè)控制無線通訊網路應用消費類電子影像與平安類產品2024/1/26嵌入式系統(tǒng)組織架構與設計36嵌入式系統(tǒng)概述嵌入式系統(tǒng)體系架構ARM微處理器之特點體積小、低功耗、低本錢、高性能援助16/32位元等級之微處理器大量運用微處理器,指令執(zhí)行速度快大多數(shù)指令操作是在暫存器中執(zhí)行。定址方式靈活簡單,執(zhí)行效率高。指令長度固定2024/1/2637嵌入式系統(tǒng)概述嵌入式系統(tǒng)體系架構ARM微處理器系列通用型:ARM7、ARM9、ARM9E、ARM10EIntel的StrongARM、Xscale等。專用型:SecurCoreARM提供一系列方案:CPU內核

小型、快速、低能耗、ARM指令集Thumb指令集之整合式RISC內核,採用多層管線(Pipeline)架構,以增進處理效能。體系擴展

Thumb:以16位元系統(tǒng)的本錢,提供32位元RISC性能,特別留意的是它所需的記憶體容量非常小。嵌入式ICE調校

由於整合了類似於ICE的CPU內核調校技術,所以原型設計和系統(tǒng)晶片的調校得到了極大的簡化。微處理器Thumb指令集是ARM指令集之一個子集,允許指令編碼為16為元之長度,其優(yōu)勢是節(jié)省系統(tǒng)儲存之空間。Thumb指令集可援助ARM指令,Thumb的編碼程式亦可對應至ARM編碼程式。期付程式亦可相互呼叫運用。2024/1/26嵌入式系統(tǒng)組織架構與設計382024/1/26嵌入式系統(tǒng)組織架構與設計39嵌入式系統(tǒng)概述嵌入式系統(tǒng)體系架構ARM7微處理器具有嵌入式ICE-RT邏輯,除錯開發(fā)方便極低的功耗,適合對功耗要求嚴格的應用,如攜帶型產品;能夠提供0.9MIPS/MHz的三級流水線結構;程式密度高並相容16位元的Thumb指令集;對作業(yè)系統(tǒng)的援助廣泛,包括WindowsCE、Linux、PalmOS等;指令系統(tǒng)與ARM9、ARM9E和ARM10E系列相容,便於運用者的產品升級換代;主頻最高可達130MIPS,高速的運算處理能力能勝任絕大多數(shù)的複雜應用。2024/1/26嵌入式系統(tǒng)組織架構與設計40嵌入式系統(tǒng)概述嵌入式系統(tǒng)體系架構ARM7系列微處理器的主要應用領域為:工業(yè)控制、Internet設備、網路和數(shù)據(jù)機設備、行動電話等多種多媒體和嵌入式應用。ARM7系列微處理器包括如下幾種類型的中心:ARM7TDMI、ARM7TDMI-S、ARM720T、ARM7EJ。其中,ARM7TMDI是目前運用最廣泛的32位元嵌入式RISC處理器,屬低端ARM處理器中心。TDMI的根本含義為:T:援助16位元壓縮指令集Thumb;D:援助晶片上Debug;M:內嵌硬體乘法器〔Multiplier〕;I:嵌入式ICE,援助晶片上中斷點和除錯點。ARM7不具有MMU功能。2024/1/2641嵌入式系統(tǒng)概述嵌入式系統(tǒng)體系架構ARM9微處理器:ARM9系列微處理器在高性能和低功耗特性方面提供最正確的性能。具有以下特點:提供1.1MIPS/MHz5級流水線結構;援助32位元ARM指令集和16位元Thumb指令集;援助32位元的高速AMBA匯流排介面;全性能MMU,援助WindowsCE、Linux、PalmOS等主流嵌入式作業(yè)系統(tǒng);MPU援助即時操作系統(tǒng);援助資料Cache和指令Cache,具有更高的指令和資料處理能力。ARM9系列微處理器主要應用於無線設備、儀器儀表、平安系統(tǒng)、機頂盒、高端印表機、數(shù)位照相機和數(shù)位攝像機等。它包含ARM920T、ARM922T和ARM940T三種類型。2024/1/26嵌入式系統(tǒng)組織架構與設計42嵌入式系統(tǒng)概述嵌入式系統(tǒng)體系架構ARM9E微處理器ARM9E系列微處理器為可綜合處理器,運用單一的處理器中心提供了微控制器、DSP、Java應用系統(tǒng)的解決方案,極大地減少了晶片的面積和系統(tǒng)的複雜程度。ARM9E系列微處理器提供了增強的DSP處理能力,很適合於那些需求同時運用DSP和微控制器的應用場合。ARM9E系列微處理器的主要特點如下:援助DSP指令集,適合於需求高速數(shù)位信號處理的場合;5級整數(shù)流水線,指令執(zhí)行效率更高;2024/1/26嵌入式系統(tǒng)組織架構與設計43嵌入式系統(tǒng)概述嵌入式系統(tǒng)體系架構ARM9E援助32位元ARM指令集和16位元Thumb指令集;援助32位的高速AMBA匯流排介面;援助VFP9浮點處理輔助運算器;全性能MMU,援助WindowsCE、Linux、PalmOS等主流嵌入式作業(yè)系統(tǒng);MPU援助即時操作系統(tǒng);援助資料Cache和指令Cache,具有更高的指令和資料處理能力;主頻最高可達300MIPS。ARM9E系列微處理器主要應用於下一代無線設備、數(shù)位消費品、影像設備、工業(yè)控制、儲存設備和網路設備等領域。它包含ARM926EJ-S、ARM946E-S和ARM966E-S三種類型。2024/1/26嵌入式系統(tǒng)組織架構與設計44嵌入式系統(tǒng)概述嵌入式系統(tǒng)體系架構ARM10E系列微處理器具有高性能、低功耗的特點,由於採用了新的體系結構,與同等的ARM9元件相比較,在同樣的時鐘頻率下,性能提高了近50%,同時,ARM10E系列微處理器採用了兩種先進的節(jié)能方式,使其功耗極低。ARM10E系列微處理器的主要特點如下:援助DSP指令集,適合於需求高速數(shù)位信號處理的場合;6級整數(shù)流水線,指令執(zhí)行效率更高;援助DSP指令集,適合於需求高速數(shù)位信號處理的場合;6級整數(shù)流水線,指令執(zhí)行效率更高;2024/1/26嵌入式系統(tǒng)組織架構與設計45嵌入式系統(tǒng)概述嵌入式系統(tǒng)體系架構援助32位元ARM指令集和16位元Thumb指令集;援助32位元的高速AMBA匯流排介面;援助VFP10浮點處理輔助運算器;全性能MMU,援助WindowsCE、Linux、PalmOS等主流嵌入式作業(yè)系統(tǒng);援助資料Cache和指令Cache,具有更高的指令和資料處理能力;主頻最高可達400MIPS;內嵌並行讀/寫操作元件。ARM10E系列微處理器主要應用於下一代無線設備、數(shù)位消費品、影像設備、工業(yè)控制、通訊和資訊系統(tǒng)等領域。它包含ARM1020E、ARM1022E和ARM1026EJ-S三種類型。2024/1/26嵌入式系統(tǒng)組織架構與設計46嵌入式系統(tǒng)概述嵌入式系統(tǒng)體系架構SecurCore微處理器系列SecurCore系列微處理器專為平安需求而設計,提供了完善的32位元RISC技術的平安解決方案,因此它除了具有ARM體系結構的低功耗、高性能的特點外,還具有其獨特的優(yōu)勢,即提供了對平安解決方案的援助。SecurCore系列微處理器在系統(tǒng)平安方面具有如下的特點:帶有靈活的保護單元,以確保作業(yè)系統(tǒng)和應用資料的平安;採用軟中心技術,防止外部對其進行掃描探測;可集成運用者本人的平安特性和其他輔助運算器。2024/1/26嵌入式系統(tǒng)組織架構與設計47嵌入式系統(tǒng)概述嵌入式系統(tǒng)體系架構SecurCore系列微處理器主要應用於一些對平安性要求較高的應用產品及應用系統(tǒng),如電子商務、電子政府服務、電子銀行業(yè)務、網路和認證系統(tǒng)等領域。它包含SecurCoreSC100、SecurCoreSC110、SecurCoreSC200和SecurCoreSC210四種類型。SecurCore系列微處理器主要應用於一些對平安性要求較高的應用產品及應用系統(tǒng),如電子商務、電子政府服務、電子銀行業(yè)務、網路和認證系統(tǒng)等領域。2024/1/26嵌入式系統(tǒng)組織架構與設計48嵌入式系統(tǒng)概述嵌入式系統(tǒng)體系架構StrongARM微處理器系列IntelStrongARMSA-1100以及IntelStrongARMSA-1110處理器是採用ARM體系結構,高度集成的32位元RISC微處理器。交融了Intel公司的設計和處理技術以及ARM體系結構的電源效率,採用在軟體上相容ARMv4體系結構、同時採器具有Intel技術優(yōu)點的體系結構。IntelStrongARM處理器是攜帶型通訊產品和消費型電子產品的理想選擇,已勝利應用於多家公司的掌上型PDA系列產品。2024/1/26嵌入式系統(tǒng)組織架構與設計49嵌入式系統(tǒng)概述由於ARM微處理器有多達十幾種的中心結構,幾十個晶片生產廠家,以及千變萬化的內部功能配置組合,因此以介紹ARM微處理器為主,但ARM系列中心之功能亦有不同,其較大差異說明如后:作業(yè)系統(tǒng):WinCE或標準Linux作業(yè)系統(tǒng),就需求選擇ARM720T以上帶有MMU〔MemoryManagementUnit〕功能的ARM晶片,ARM720T、ARM920T、ARM922T、ARM946T、Strong-ARM都帶有MMU功能。ARM7TDMI則沒有MMU,不援助WindowsCE和標準Linux,但目前有uCLinux以及uC/OS-II等不需求MMU援助的作業(yè)系統(tǒng)可執(zhí)行於ARM7TDMI硬體平臺之上。本課程教學實驗系統(tǒng)運用的PXA270為一款具有MMU的ARM微處理器,可在其上執(zhí)行Linux、WindowsCE和uC/OS-II等作業(yè)系統(tǒng)。2024/1/26嵌入式系統(tǒng)組織架構與設計50嵌入式系統(tǒng)概述系統(tǒng)的任務頻率:系統(tǒng)的任務頻率在很大程度上決定了ARM微處理器的處理能力。ARM7系列微處理器的典型處理速度為0.9MIPS/MHz,常見ARM7晶片系統(tǒng)主時鐘20MHz-133MHz。ARM9系列微處理器的典型處理速度為1.1MIPS/MHz,常見ARM9的系統(tǒng)主時鐘頻率為100MHz-233MHz;ARM10最高可以達到700MHz。不同晶片對時鐘的處理不同,有的晶片只需求一個主時鐘頻率,有的晶片內部時鐘控制器可以分別為ARM中心和USB、UART、DSP、音頻等功能元件提供不同頻率的時鐘。2024/1/26嵌入式系統(tǒng)組織架構與設計51嵌入式系統(tǒng)概述晶片內記憶體的容量:大多數(shù)ARM微處理器片內記憶體的容量都不大,需求運用者在設計系統(tǒng)時外擴記憶體,但也有部分晶片具有相對較大的晶片內儲存空間,如ATMEL的AT91F40162就具有高達2MB的晶片內程式儲存空間,運用者在設計時可考慮選用這種類型,以簡化系統(tǒng)的設計。晶片內週邊電路的選擇:除ARM微處理器中心以外,幾乎一切的ARM晶片均根據(jù)各自不同的應用領域,擴充了相關功能模組,並集成在晶片之中,我們稱之為晶片內週邊電路,如USB介面、IIS介面、LCD控制器、鍵盤介面、RTC、ADC和DAC、DSP輔助運算器等。設計者應分析系統(tǒng)的需求,盡能夠採用晶片內週邊電路完成所需的功能,以簡化系統(tǒng)的設計,提高系統(tǒng)的可靠性。2024/1/26嵌入式系統(tǒng)組織架構與設計52第一章課程大綱嵌入式系統(tǒng)概述嵌入式系統(tǒng)特性嵌入式系統(tǒng)體系架構嵌入式系統(tǒng)之發(fā)展嵌入式系統(tǒng)軟體Linux作業(yè)系統(tǒng)WinCE作業(yè)系統(tǒng)嵌入式系統(tǒng)開發(fā)平臺嵌入式系統(tǒng)硬體IntelXscaleSOC系列IntelXscale實驗平臺2024/1/26嵌入式系統(tǒng)組織架構與設計53嵌入式系統(tǒng)概述嵌入式系統(tǒng)體系架構嵌入式系統(tǒng)之發(fā)展應用軟體的開發(fā)需求強大的開發(fā)工具和作業(yè)系統(tǒng)的援助網路成為必然趨勢援助小型電子設備實現(xiàn)小尺寸、低功率和低本錢提供精巧的多媒體人機界面2024/1/26嵌入式系統(tǒng)組織架構與設計54第一章課程大綱嵌入式系統(tǒng)概述嵌入式系統(tǒng)特性嵌入式系統(tǒng)體系架構嵌入式系統(tǒng)之發(fā)展嵌入式系統(tǒng)軟體Linux作業(yè)系統(tǒng)WinCE作業(yè)系統(tǒng)嵌入式系統(tǒng)開發(fā)平臺嵌入式系統(tǒng)硬體IntelXscaleSOC系列IntelXscale實驗平臺2024/1/26嵌入式系統(tǒng)組織架構與設計55嵌入式系統(tǒng)軟體嵌入式作業(yè)系統(tǒng)限於儲存空間等要素,相對地作業(yè)系統(tǒng)規(guī)模較為精簡,精簡之方式主要是透過減少內核中心、減少動態(tài)連結庫、減少應用程式等,以達到減少各種程式碼佔用記憶體空間之目的。嵌入式系統(tǒng)需求增強即時性之特殊功能,這可透過修正流程調度演算法和運用雙中心系統(tǒng)達成。嵌入式系統(tǒng)具有主機模擬的環(huán)境(跨平臺)來進行發(fā)展之優(yōu)勢。模擬MSWindows的Cygwin或VMWare等嵌入式作業(yè)系統(tǒng)最常用之作業(yè)系統(tǒng)嵌入式LinuxuclinuxFedoraWinCE2024/1/26嵌入式系統(tǒng)組織架構與設計56嵌入式系統(tǒng)軟體Linux作業(yè)系統(tǒng)WinCE作業(yè)系統(tǒng)嵌入式系統(tǒng)開發(fā)平臺2024/1/26嵌入式系統(tǒng)組織架構與設計57嵌入式系統(tǒng)軟體軟體系統(tǒng)可以進一步劃分為系統(tǒng)軟體、支撐軟體和應用軟體三個層次。系統(tǒng)軟體是電腦系統(tǒng)中基礎的軟體系統(tǒng),它包括作業(yè)系統(tǒng)、編譯系統(tǒng)和資料庫等。其中作業(yè)系統(tǒng)在軟體系統(tǒng)的最下層,緊接著底層硬體.支撐軟體包括網路通訊程式、多媒體援助軟體、硬體介面程式、實用軟體工具以及軟體發(fā)展工具等等。網路通訊程式完成電腦網路通訊的功能。多媒體援助軟體協(xié)助電腦系統(tǒng)實現(xiàn)對圖形、圖像、語音和視頻等多媒體資訊的處理。硬體介面程式提供與各種電腦外部設備的連接援助。實用軟體工具則提供了多種系統(tǒng)維護和操作的手段,而軟體發(fā)展工具為程式設計人員編寫代碼提供了良好、便利的環(huán)境。2024/1/26嵌入式系統(tǒng)組織架構與設計58嵌入式系統(tǒng)軟體Linux作業(yè)系統(tǒng)LinuxOS之種類:桌面與伺服器方式之OS:FedoraLinux嵌入式LinuxOS:RT-Linux、uCLinux、XLinux、紅旗嵌入式Linux2024/1/2659嵌入式系統(tǒng)軟體Linux作業(yè)系統(tǒng)Linux系統(tǒng)分成三個重要的部份:中心Shell工具程式(檔案結構、實用工具)為何稱它為Shell呢?Shell的本意是"殼"的意思呢!沒錯,在中心的外面,包覆著一層外殼,用來負責接納運用者輸入的指令,然後將指令解譯成中心能夠了解的方式,傳給中心去執(zhí)行,再將結果傳回至預設的輸出周邊。2024/1/26嵌入式系統(tǒng)組織架構與設計60嵌入式系統(tǒng)軟體嵌入式Linux嵌入式Linux系統(tǒng)包含:內核中心和應用程式二部分。內核中心為應用程式提供一個虛擬之硬體平臺,以統(tǒng)一之方式對資源進行分配。應用程式負責系統(tǒng)之部分初始化、根本之人機介面、必要之指令等內容。2024/1/26嵌入式系統(tǒng)組織架構與設計61嵌入式系統(tǒng)軟體中心在電腦科學中,中心是作業(yè)系統(tǒng)最根本的部分。它是為眾多應用程式提供對電腦硬體的平安訪問的一部分軟體,這種訪問是有限的,並且內核決定一個程式在什麼時候對某部分硬體操作多長時間。直接對硬體操作是非常複雜的;所以中心通常提供一種硬體籠統(tǒng)的方法,來完成這些操作。硬體籠統(tǒng)隱藏了複雜的部分,為應用軟體和硬體提供了一套簡潔,統(tǒng)一的介面,使程式設計更為簡單。2024/1/26嵌入式系統(tǒng)軟體中心中心可分為四大類:單內核:它為潛在的硬體,提供了大量完善的硬體籠統(tǒng)操作。如:Linux中心、UNIX、Windows9x。微內核:只提供了很小一部分的硬體籠統(tǒng),大部分功能由一種特殊的用戶態(tài)(usermode)程式:伺服器來完成。如:MINIX混合內核:它很像微內核結構,只不過它的的元件更多的在內核態(tài)(supervisormode)中運行,以獲得更快的執(zhí)行速度。如:WindowsXP、Vista、NT。外內核:這種內核不提供任何硬體籠統(tǒng)操作,但是允許為內核添加額外的函式庫(library),通過這些函式庫應用程式可以直接地或者接近直接地對硬體進行操作。Linux2024/1/26嵌入式系統(tǒng)組織架構與設計63嵌入式系統(tǒng)軟體四大類中心表示圖:單內核微內核混合內核單內核結構的例子:傳統(tǒng)的UNIX內核,例如伯克利大學發(fā)行的版本Linux內核MS-DOS,Windows9x(Windows95,98,Me)微內核結構的例子:AIXBeOSL4微內核系列Mach,用於GNUHurd和MacOSXMinix2024/1/26嵌入式系統(tǒng)組織架構與設計64嵌入式系統(tǒng)軟體Linux中心中心是系統(tǒng)的心臟,是執(zhí)行程式和管理像磁片和印表機等硬體設備的中心程式。它從運用者那裏接受指令並把指令送給中心去執(zhí)行?!钢行?kernel)」指的是一個提供硬體籠統(tǒng)層、磁片及檔案系統(tǒng)控制、多工等功能的系統(tǒng)軟體。一個中心不是一套完好的作業(yè)系統(tǒng)。一套基於Linux中心的完好作業(yè)系統(tǒng)叫作Linux作業(yè)系統(tǒng),或是GNU/Linux。Linux中心是由芬蘭之網路駭客LinusTorvalds以AndrewStuartTanenbaum教授(美國)所開發(fā)之MINIXOS為基礎發(fā)展而成。是由GNU組織所發(fā)布,是目前自在軟體中最杰出之軟體程式。Linux:::2024/1/2665嵌入式系統(tǒng)軟體Linux中心Linux中心的功能大致分成如下幾個部分:進程(process)管理:進程管理功能負責建立和撤銷進程以及處理他們和外部世界的連接。不同進程之間的通訊是整個系統(tǒng)的根本功能,因此也由中心處理。除此之外,控制進程如何共用CPU資源的調度程式也是進程管理的一部分。概括的說,中心的進程管理活動就是在單個或多個CPU上實現(xiàn)多進程的籠統(tǒng)。記憶體管理:記憶體是電腦的主要資源之一,用來管理記憶體的策略是決定系統(tǒng)性能的一個關鍵要素。中心在有限的可用資源上為每個進程都建立了一個虛擬定址空間。中心的不同部分在和記憶體管理子系統(tǒng)交互時運用一套一樣的系統(tǒng)呼叫,包括從簡單的malloc/free到其他一些不常用的系統(tǒng)呼叫。Linux:::2024/1/2666嵌入式系統(tǒng)軟體Linux中心檔案系統(tǒng):Linux在很大程度上依賴於檔案系統(tǒng)的概念,Linux中的每個物件幾乎都是可以被視為檔案的。中心在沒有結構硬體上構造結構化的檔案系統(tǒng)。所構造的檔案系統(tǒng)籌向在整個系統(tǒng)中廣泛運用。另外,Linux援助多種檔案系統(tǒng)類型,即在物理介質上組織的結構不同。設備控制:幾乎每個系統(tǒng)操作最終都會映射到物理設備上。除了處理器,記憶體以及其他很有限的的幾個實體外,一切的設備控制操作都由與被控制設備相關的程式完成。這段程式叫做設備驅動程式,中心必須為系統(tǒng)中的每件外部設備嵌入相應的驅動程式。Linux2024/1/26嵌入式系統(tǒng)組織架構與設計67嵌入式系統(tǒng)軟體Linux中心網路功能:網路功能也必須有作業(yè)系統(tǒng)來管理,因為大部分網路操作都和具體的進程無關。在每個進程處理這些資料之前,資料報必須已經被搜集、標識、和分發(fā)。系統(tǒng)負責在應用程式和網路之間傳遞資料。另外,一切的路由和位址解析問題都由中心處理。2024/1/26嵌入式系統(tǒng)組織架構與設計68嵌入式系統(tǒng)軟體嵌入式Linux內核中心嵌入式Linux內核中心可以分為六部分:程序管理,記憶體管理,檔案系統(tǒng),程序間通訊,網路,設備驅動。這六個部分間之關係,如下圖:網路檔案系統(tǒng)程序間通訊驅動程式記憶體管理程序調度虛擬硬體層實體硬體層表示相依關係2024/1/26嵌入式系統(tǒng)組織架構與設計69嵌入式系統(tǒng)軟體嵌入式Linux內核中心程序管理:控制CPU之資源分配,Linux值型基於優(yōu)先順序的搶占式多工。即時處理需求多,因此需求改變程序調度來執(zhí)行及時程序程序調度普通是透過時鐘中斷執(zhí)行,因此與硬體有關。程序調度程式碼普通是以組合語言撰寫記憶體管理系統(tǒng):管理記憶體資源,援助虛擬記憶體。執(zhí)行程序間之記憶體保護、記憶體共用、分配等管理。與記憶體硬體有關:初始化記憶體、分頁處理機制。與記憶體硬體無關:記憶體分配與記憶體映射(memorymapping)2024/1/26嵌入式系統(tǒng)組織架構與設計70嵌入式系統(tǒng)軟體嵌入式Linux內核中心檔案系統(tǒng):虛擬檔案系統(tǒng)介面(VFS),真實之檔案系統(tǒng)皆掛在VFS之下,在統(tǒng)一之介面下,進行查詢。邏輯檔案系統(tǒng)與設備驅動程式在嵌入式Linux系統(tǒng),檔案系統(tǒng)皆是建立在區(qū)塊裝置方式,如RAM、FLASH程序間通訊:一切程序皆在本人之記憶體位址空間執(zhí)行,部會相互關擾。而程序間資訊之護船,則是經由程序通訊機制。Pipe、Signal、網路通訊等2024/1/26嵌入式系統(tǒng)組織架構與設計71嵌入式系統(tǒng)軟體嵌入式Linux內核中心網路援助多種網路協(xié)定:IP、IPv6、Bluetooth等中心網路程式碼與硬體無關驅動程式Linux除CPU和記憶體以外之資源皆用驅動程式的方式管理,內核中心原始程式碼大部分是各種驅動程式Linux有三類設備:字元設備、區(qū)塊裝置及網路設備。2024/1/26嵌入式系統(tǒng)組織架構與設計72嵌入式系統(tǒng)軟體Linuxshell由於中心的部份相當?shù)碗A,操作者不易和它直接溝通,因此,必須要有一個友善的介面(interface),使得操作時能更為方便,這個介面便是Shell.換言之,Shell就是一個居於中心和操作者之間的一層運用者介面.為何稱它為Shell呢?Shell的本意是"殼"的意思呢!沒錯,在中心的外面,包覆著一層外殼,用來負責接納運用者輸入的指令,然後將指令解譯成中心能夠了解的方式,傳給中心去執(zhí)行,再將結果傳回至預設的輸出周邊。2024/1/26嵌入式系統(tǒng)組織架構與設計73嵌入式系統(tǒng)軟體Linuxshell2024/1/26嵌入式系統(tǒng)組織架構與設計74嵌入式系統(tǒng)軟體Linuxshell例如:資料夾檔案顯示,指令為ls-l,則shell給他以下回應:2024/1/26嵌入式系統(tǒng)組織架構與設計75嵌入式系統(tǒng)軟體擁檔有案檔種案檔案大小最近修正的類檔案權限數(shù)擁有人組別(byte單位)日期及時間檔案名稱drwxr-xr-x14rootroot1024Jul2121:31.drwxr-xr-x17rootroot1024Apr1112:01..Drwxr-xr-x882821024Feb2519:23apache-rw-r--r--1rootroot1335460Feb2517:45apache_1_3_4.tar.gzdrwxr-xr-x6rootroot1024Aug311998ftpdrwxr-xr-x5rootroot1024Aug311998httpddrwx------2jamesjames1024Apr2306:47jamesdrwxr-xr-x2rootroot12288Aug311998lost+founddrwxr-xr-x2msqlnobody1024Dec281998msqldrwxr-xr-x28ols3ols32048Jul1921:38ols3drwxr-xr-x31022nobody1024Jan2523:40ols3cgidrwxrwxr-x3perlols31024Feb207:11perl-rw-------1rootroot2097152Jul2118:39quota.group-rw-------1rootroot1278656Jul2118:39quota.userdrwxrwxr-x2rootnobody1024May111998sambadrwxr-xr-x3apachenobody1024Feb2516:58temp2024/1/26嵌入式系統(tǒng)組織架構與設計76嵌入式系統(tǒng)軟體Linuxshell這不只是Linux有這一層Shell,其它作業(yè)系統(tǒng)也有,比如DOS的command,Windows的GUI(GraphicalUserInterface),Mac的GUI等。Shell按著表現(xiàn)的方式與讀取運用者輸入種類的不同,可分為二大類:Textbase:文字導向,如DOSGraphbase:圖型導向,如WINDOWS所謂"讀取運用者輸入種類不同"是指:讀取自鍵盤,或讀取自滑鼠,其它serialinput,螢幕觸控等.2024/1/26嵌入式系統(tǒng)軟體Linuxshell以DOS的COMMAND而言,它就是一個十足的命令直譯器,除了一點點batch檔的才干之外,它的功能並不多。Win平臺的GUI,則是一個圖型式的命令直譯器,介面非常友善。然這二種OS,不能讓他自在而簡單地選擇Shell。Linux的shell,除了做為命令直譯器之外,它也是一個不錯的程式語言,是系統(tǒng)管理維護時的重要工具。Unix家族,對Shell的處理,採獨立自在開放的方式,因此,Shell的種類相當?shù)囟?,常用的是BourneAgainshell:bash(GNU)2024/1/26嵌入式系統(tǒng)組織架構與設計78嵌入式系統(tǒng)軟體LinuxshellLinux是多人多工的作業(yè)系統(tǒng),這意謂Linux可以讓多人同時運用,更可以同時執(zhí)行許多程式。普通而言,他所執(zhí)行的指令會不斷握著控制權,不斷到程式結束為止,我們稱為這樣的執(zhí)行任務是在前景任務(foregroundjobs),假設,執(zhí)行指令時,他依然可以再做其它的事情,那我們就稱它是在背景任務。較耗時間的任務,我們會把它丟到背景去執(zhí)行,而這期間,我們依然可以和shell繼續(xù)溝通,下達其它命令給shell去執(zhí)行。2024/1/26嵌入式系統(tǒng)軟體Linuxshell以DOS的COMMAND而言,它就是一個十足的命令直譯器,除了一點點batch檔的才干之外,它的功能並不多。Win平臺的GUI,則是一個圖型式的命令直譯器,介面非常友善。然這二種OS,不能讓他自在而簡單地選擇Shell。Linux的shell,除了做為命令直譯器之外,它也是一個不錯的程式語言,是系統(tǒng)管理維護時的重要工具。Unix家族,對Shell的處理,採獨立自在開放的方式,因此,Shell的種類相當?shù)囟?,常用的是BourneAgainshell:bash(GNU)2024/1/26嵌入式系統(tǒng)組織架構與設計80嵌入式系統(tǒng)軟體Linux檔案結構檔案系統(tǒng)(FileSystem)是用來儲存和組織在電腦中的檔案,在檔案系統(tǒng)中所存放的一些資訊可以用來快速找到在硬碟或是光碟中的檔案資料並做維護的任務;此外檔案系統(tǒng)也會對建立RAM和硬體(硬碟或是其他儲存裝置)資料的對應,兩者之間會有所謂的邏輯和實體的對應關係,是由檔案系統(tǒng)來做維護。檔案結構是檔案存放在磁片等儲存設備上的組織方法。主要展現(xiàn)在對檔案和目錄的組織上,目錄提供了管理檔案的一個方便而有效的途徑。我們能夠從一個目錄切換到另一個目錄,而且可以設置目錄和檔案的許可權,設置檔案的共用程度。2024/1/26嵌入式系統(tǒng)組織架構與設計81嵌入式系統(tǒng)軟體Linux檔案結構Linux目錄採用多級樹形結構,運用者可以瀏覽整個系統(tǒng),可以進入任何一個已授權進入的目錄,瀏覽那裏的檔案。檔案結構的相互關聯(lián)性使共用資料變得容易,幾個運用者可以瀏覽同一個檔案。Linux是一個多運用者系統(tǒng),作業(yè)系統(tǒng)本身的駐留程式存放在以根目錄開始的專用目錄中,有時被指定為系統(tǒng)目錄。flashmemory因為具有速度快、體積小、耐震等特性,所以常被用來做為embeddedsystem的儲存裝置。2024/1/26嵌入式系統(tǒng)組織架構與設計82嵌入式系統(tǒng)軟體Linux檔案結構下圖是以樹形等級結構展現(xiàn)出Linux檔案結構,而根目錄下的目錄就是系統(tǒng)目錄。//etclocal/user/libsrcbin/bin/sbinbin2024/1/26嵌入式系統(tǒng)組織架構與設計83嵌入式系統(tǒng)軟體中心、Shell和檔案結構一同構成了根本的作業(yè)系統(tǒng)結構。它們使得運用者可以執(zhí)行程式,管理檔案以及運用系統(tǒng)。Linux作業(yè)系統(tǒng)還有許多被稱為實用工具的程式,輔助運用者完成一些特定的任務。2024/1/26嵌入式系統(tǒng)組織架構與設計84嵌入式系統(tǒng)軟體Linux實用工具標準的Linux系統(tǒng)都有一套叫做實用工具的程式,它們是專門的程式,例如編輯器、執(zhí)行標準的計算操作等。運用者也可以產生本人的工具。實用工具可分三類:編輯器:用於編輯檔案。篩檢(Filter)程式:用於接納資料並過濾資料。交互程式:允許運用者發(fā)送資訊或接納來自其他運用者的資訊。2024/1/26嵌入式系統(tǒng)組織架構與設計85嵌入式系統(tǒng)軟體Linux實用工具Linux的編輯器主要有:Ed、Ex、Vi和Emacs。Ed和Ex是行編輯器,Vi和Emacs是全螢幕編輯器。Linux的篩檢程式〔Filter〕讀取從運用者檔案或其他地方的輸入,檢查和處理資料,然後輸出結果。從這個意義上說,它們過濾了經過它們的資料。Linux有不同類型的篩檢程式,一些篩檢程式用行編輯指令輸出一個被編輯的檔案。另外一些篩檢程式是按方式尋找檔案並以這種方式輸出部分資料。還有一些執(zhí)行字元處理操作,檢測一個檔案中的格式,輸出一個格式化的檔案。2024/1/26嵌入式系統(tǒng)組織架構與設計86嵌入式系統(tǒng)軟體Linux實用工具Linux的篩檢程式〔Filter)(cont.)篩檢程式的輸入可以是一個檔案,也可以是運用者從鍵盤鍵入的資料,還可以是另一個篩檢程式的輸出。篩檢程式可以相互連接,因此,一個篩檢程式的輸出能夠是另一個篩檢程式的輸入。Linux的交互程式是運用者與機器的資訊介面。Linux是一個多運用者系統(tǒng),它必須和一切運用者堅持聯(lián)繫。資訊可以由系統(tǒng)上的不同運用者發(fā)送或接納。資訊的發(fā)送有兩種方式:一種方式是與其他運用者一對一地連結進行對話另一種是一個運用者對多個運用者同時連結進行通訊,即所謂廣播式通訊。2024/1/26嵌入式系統(tǒng)組織架構與設計87Linux系統(tǒng)環(huán)境arm-elf-toolchainforlinux:ARMCPU的GNUCrossCompiler,在Linux環(huán)境下運用,透過CrossCompiler可以在某一架構下的CPU製作另一架構CPU可執(zhí)行的MachineCode,例如我們目前運用x86的CPU製作ARM7架構的程式,所以我們需求一個x86"cross"到ARM7的Compiler。根本函數(shù)庫:需求Library給我們方便運用,有uClibcRedHatLinux9或Fedora:Linux作業(yè)系統(tǒng),用來建造Linux的真實環(huán)境。2024/1/26嵌入式系統(tǒng)組織架構與設計88Linux系統(tǒng)環(huán)境vsftpd:FTP伺服器,用來提供EmbeddedPlatform透過FTP軟體進行目的檔案的存取。makeLinux環(huán)境下專案開發(fā)工具,編譯程式需求一行一行的下指令,還有一大堆的參數(shù)要設定,所以為了簡化這個枯燥無味的過程,設計了一套命令處理程式make,可以利用一個指令就完成一切的動作,就類似IDE的Run按鈕一樣包辦大小事情。在安裝Linux時,系統(tǒng)也一併會安裝make。2024/1/26嵌入式系統(tǒng)組織架構與設計89Linux系統(tǒng)環(huán)境vim:在Linux上的強力文字編輯器,用它來撰寫程式碼。Minicom:Linux上的連線軟體,我們用它使PC可以經由SerialPort和EmbeddedPlatform作連線,透過這個軟體可以觀察到EmbeddedPlatform發(fā)生的事情。但必須知道EmbeddedPlatform的硬體設定。2024/1/26嵌入式系統(tǒng)組織架構與設計90Linux系統(tǒng)環(huán)境HyperTerminal:Windows上的連線軟體,我們用它來使PC可以經由SerialPort和EmbeddedPlatform作連線,透過這個軟體可以觀察到EmbeddedPlatform發(fā)生的事情。PuTTY:Windows上的免費SSH、TELNET連線軟體。TFTP以網路埠(RJ-45)藉由通訊協(xié)定和目標機通訊作為檔案(可執(zhí)行二儘位檔)傳輸。2024/1/26嵌入式系統(tǒng)組織架構與設計91嵌入式系統(tǒng)軟體嵌入式LinuxCygwin在windows上提供了一個像linux(Linux-like)的環(huán)境,可以讓運用者在windows上執(zhí)行l(wèi)inux的程式。將linux上的程式移植到Windows,而不用做艱苦的修正,只需將原始碼拿來作configure與make就好了。運用常用的linux工具程式,如grep,sed,awk等。撰寫Win32nativeconsole或是GUI應用程式。2024/1/26嵌入式系統(tǒng)組織架構與設計92CygwinDomingo:廠商提供的Windows環(huán)境的IDE編譯,燒錄,執(zhí)行的介面,可以利用它來觀察檢誤,不過目前我們只用它燒錄Flash的功能.當從PC燒錄至目標板上時,是用ParallelPort(例如:PrinterPort),modeEPP方式燒錄才穩(wěn)定,必須在BIOS中修改與檢視,否則燒錄勝利率低於40%.UbuntuLinux是一份完好的桌面Linux作業(yè)系統(tǒng),它可免費獲得。Fedora:是一份由RedHat策劃的開放開發(fā)專案,它向普通參與者開放並由精英管理者領導,沿著一系列專案目標而前進。Fedora專案的目標是與Linux社區(qū)協(xié)作,只從開放源碼軟體來創(chuàng)建一份完好的、通用的作業(yè)系統(tǒng)。2024/1/2693嵌入式系統(tǒng)軟體GNU(GNU'sNotUnix)「Guh-NOO」GNU計畫,又稱「革奴計畫」,是由RichardStallman在1983年9月27日公開發(fā)起的。它的目標是創(chuàng)建一套完全自在的作業(yè)系統(tǒng),主要理由就是要“重現(xiàn)當年軟體界協(xié)作互助的團結精神〞。UNIX是一種廣泛運用的商業(yè)作業(yè)系統(tǒng)的名稱。由於GNU將要實現(xiàn)UNIX系統(tǒng)的介面標準,因此GNU計畫可以分別開發(fā)不同的作業(yè)系統(tǒng)部件。1991年LinusTorvalds編寫出了與UNIX相容的Linux作業(yè)系統(tǒng)中心,並在GPL條款下發(fā)佈。Linux之後在網上廣泛流傳,許多程式師參與了開發(fā)與修正。1992年Linux與其他GNU軟體結合,完全自在的作業(yè)系統(tǒng)正式誕生。該作業(yè)系統(tǒng)往往被稱為“GNU/Linux〞或簡稱Linux。GNU計劃的標誌即為牛羚的頭像非洲的大型哺乳動物。2024/1/26嵌入式系統(tǒng)組織架構與設計94嵌入式系統(tǒng)軟體Copyleft是一由自在軟體運動所發(fā)展的概念,是一種利用現(xiàn)有著作權體制來挑戰(zhàn)該體制的授權方式,在自在軟體授權方式中添加copyleft條款,即GNU通用公共許可證〔GNUGeneralPublicLicense,GPL〕之後,該自在軟體除了允許運用者自在運用、散佈、改作之外,copyleft條款更要求運用者改作後的衍生作品必須要以同等的授權方式釋出以回饋社群。有人將其譯為「著作權」,以彰顯Copyleft是補足著作權〔Copyright,版權〕缺乏的意義。另有譯為「反版權」等不同名詞。此「倒轉的?」是Copyleft標誌。它僅是Copyright標誌的倒轉版本2024/1/26嵌入式系統(tǒng)組織架構與設計95嵌入式系統(tǒng)軟體各種運用Linux作為中心之GNU作業(yè)系統(tǒng)現(xiàn)正廣泛地運用著,雖然此作業(yè)系統(tǒng)通稱為「Linux」,但更正確地應被稱為是GNU/Linux。GNU是根據(jù)UNIX的標準發(fā)展其應用程式,因此GNU是一個與UNIX相容之系統(tǒng)。2024/1/26嵌入式系統(tǒng)組織架構與設計96嵌入式系統(tǒng)軟體GCC〔GNUCompilerCollection,GNU編譯器套裝〕,是一套由GNU開發(fā)的編程語言編譯器。它是一套以GPL及LGPL許可證所發(fā)行的自在軟體,也是GNU計畫的關鍵部分,亦是自在的類Unix及蘋果電腦MacOSX操作系統(tǒng)的標準編譯器。GCC〔特別是其中的C語言編譯器〕也常被認為是跨平臺編譯器(CrossCompiler)或稱交叉編譯器的事實標準。GCC原名為GNUC語言編譯器〔GNUCCompiler〕因為它本來只能處理C語言。GCC很快地擴展,變得可處理C++。之後也變得可處理Fortran、Pascal、Objective-C、Java,以及Ada與其他語言。GCC於1997年成為GNU系統(tǒng)的官方編譯器〔包括GNU/Linux家族〕2024/1/26嵌入式系統(tǒng)組織架構與設計97嵌入式系統(tǒng)軟體GCC-Linux之編譯器每個語言編譯器都是獨立程式,此程式可處理輸入的原始碼,並輸出組合語言碼。全部的語言編譯器都擁有共通的中介架構:一個前端解析符合此語言的原始碼,並產生一籠統(tǒng)語法樹一翻譯此語法樹成為GCC的暫存器轉換語言〈RTL〉的後端。編譯器最正確化與靜態(tài)程式碼解析技術在此階段應用於程式碼上。幾乎全部的GCC都由C寫成p.s程式師普通在主機上編寫和編譯嵌入式系統(tǒng)的代碼。所以主機上需求能為特定的嵌入式系統(tǒng)產生代碼的編譯器,他們被叫做交叉編譯器或彙編器2024/1/26嵌入式系統(tǒng)組織架構與設計98嵌入式系統(tǒng)軟體GCC-Linux之編譯器GCC之作法是由一個前端程式(frontend),把C、C++及ObjectC的語法轉換成一個內部的方式(RTL),再由後端(backend)對此虛擬組合語言進行最正確化,最後產生目標機CPU之組合語言碼。GCC編譯器產生組合語言碼,再由Assembler產生CPU目的檔。目的檔經由GCC之連結程式(Linker)產生可執(zhí)行之機器碼。2024/1/26嵌入式系統(tǒng)組織架構與設計99嵌入式系統(tǒng)軟體GCC-Linux之編譯器每個語言編譯器都是獨立程式,此程式可處理輸入的原始碼,並輸出組合語言碼。全部的語言編譯器都擁有共通的中介架構:一個前端

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論