国产激情久久久久影院小草_国产91高跟丝袜_99精品视频99_三级真人片在线观看

個開放源碼的嵌入式仿真環(huán)境-SkyEye

時間:2024-10-11 15:10:44 理工畢業(yè)論文 我要投稿
  • 相關推薦

個開放源碼的嵌入式仿真環(huán)境-SkyEye

摘要:綜述開放源碼的嵌入式仿真環(huán)境SkyEye:介紹SkyEye的背景、目標和存在的意義,對目前SkyEye本身進行簡要的技術分析;介紹SkyEye上已經(jīng)移植成功的操作系統(tǒng)和典型應用。講述SkyEye正在開展的工作和將來的發(fā)展計劃。

1 SkyEye的目標與意義

1.1 SkyEye產(chǎn)生的背景

操作系統(tǒng)是軟件產(chǎn)業(yè)的基礎和龍頭,能左右軟件產(chǎn)業(yè)發(fā)展的方向,是世界軟件產(chǎn)業(yè)最大的利潤來源。對于后PC時代和普適計算(pervasive computing)而言,嵌入式系統(tǒng)無處不在,其中關鍵的軟件核心技術包括嵌入式操作系統(tǒng)和網(wǎng)絡互聯(lián)中間件等。

對于想進行嵌入式系統(tǒng)軟件開發(fā)和學習,或者想研究嵌入式Linux等操作系統(tǒng)和一些底層系統(tǒng)軟件(如TCP/IP等)的研究和開發(fā)人員來說,可能存在如下幾方面的問題:①經(jīng)?嘤诮(jīng)費不足,缺少足夠的硬件開發(fā)板和完善的軟件開發(fā)環(huán)境;相關的書籍對一些最新軟件的分析還不夠全面,無法深研究和開發(fā)嵌入式軟件。②高層次的軟件設計和開發(fā)一般不用過多考慮底層硬件的實現(xiàn)細節(jié),如果直接處于一具體的硬件環(huán)境下,在開發(fā)和研究中可能會陷入硬件的具體細節(jié)中不能自拔,而不能把精力放到高層次的軟件設計和開發(fā)上。③如果硬件開發(fā)環(huán)境不太穩(wěn)定(這種情況經(jīng)常見到),且對身體的硬件不是很了解,則可能在排除問題上花費大量不必要的時間。

對于想了解、學習一般操作系統(tǒng)的實現(xiàn)原理、Linux/μClinux操作系統(tǒng)或TCP/IP等系統(tǒng)級軟件的實現(xiàn)的人員,目前一般采用的方法是看書和讀源代碼。這是一種靜態(tài)的學習方法,但效率較低,比較枯燥,缺少一種動態(tài)和親自實踐的感覺。要想深入分析和開發(fā)軟件,就要動手編程,不能只是看看書,讀讀代碼,只有通過親手實踐才能夠掌握軟件設計的核心內(nèi)容。

上面所指出的問題和需求促使了SkyEye項目的誕生。

1.2 SkyEye的目標和意義

SkyEye是開源軟件(OpenSource Software)項目,中文名字是“天目”。SkyEye的目標是在通用的Linux和Windows平臺實現(xiàn)一個仿真集成開發(fā)環(huán)境,模擬常見的嵌入式計算機系統(tǒng);可在SkyEye上運行μClinux以及μC/OS-II等多種嵌入式操作系統(tǒng)和各種系統(tǒng)軟件(如TCP/IP、圖形子系統(tǒng)、文件子系統(tǒng)等),并可對它們進行源碼級的分析和測試。SkyEye的推出具有下面三方面的意義。

①通過SkyEye仿真集成環(huán)境可以很方便地進入嵌入式系統(tǒng)軟件學習和開發(fā)的廣闊天地中。尤其對于缺少嵌入式硬件開發(fā)環(huán)境和軟件開發(fā)環(huán)境的用戶來說,它將是一個非常有效的學習工具和開發(fā)手段,因為SkyEye的整個軟件系統(tǒng)都是Open Source的,且基于GPL協(xié)議(μC/OS-II除外)。因此,如果要學習Linux操作系統(tǒng)或者進行嵌入式系統(tǒng)開發(fā),但苦于沒有硬件支持,SkyEye仿真環(huán)境軟件是一個很好的選擇!

②如果想研究與具體硬件無關的系統(tǒng)軟件(如TCP/IP協(xié)議棧等),采用SkyEye可以有效地提高工作效率,因為你可以直接在μCOS-II和μClinux for SkyEye上進行開發(fā)和調(diào)試,而與具體硬件打交道的各種Driver已經(jīng)存在,且有源碼級調(diào)試環(huán)境,只需關心高層的邏輯設計和實現(xiàn)就可以了。

③SkyEye本身作為一個開放式的項目體系,可以劃分為多個獨立的子項目系統(tǒng)。通過參與SkyEye的各個子項目,與大家共同交流、協(xié)議,可以進一步學習、分析、精通Linux內(nèi)核,掌握ARM嵌入式CPU編程。

在32位嵌入式CPU領域中,ARM系列CPU所占比例相當大,而ARM7TDMI是其中使用最廣泛的CPU之一,因此,SkyEye首先選擇了ARM7TDMI作為仿真的目標CPU。目前,SkyEye上可運行并進行源碼級調(diào)試的有μClinux、μC/OS-II操作系統(tǒng)和LwIP(一個著名的嵌入式TCP/IP實現(xiàn))、ARM Linux等系統(tǒng)軟件。SkyEye可用于學習、分析、開發(fā)這些系統(tǒng)軟件,了解ARM嵌入式CPU編程,而這一切都可在一個集成環(huán)境中完成。如果能夠改進SkyEye本身,則大家對ARM、8019Ethernet網(wǎng)絡芯片等硬件的了解也會更深入。

SkyEye并不能完全取代開發(fā)板等硬件的功能,但通過它可以比較容易地進入到嵌入式軟件開發(fā)的廣闊天地中。由于SkyEye建立在GDB基礎之上,使用者可以方便地使用GDB提供的各種調(diào)試手段對SkyEye仿真系統(tǒng)上的軟件進行源碼級的調(diào)試,還可以進行各種分析,如執(zhí)行點分析、程序執(zhí)行覆蓋度分析等。由于SkyEye提供了源代碼和相關文檔,有經(jīng)驗的用戶完全可以修改和擴展SkyEye來滿足自已的需求。

2 SkyEye的技術分析

2.1 SkyEye總體結(jié)構

SkyEye基于GDB/ARMulator,模仿了一個完整的嵌入式系統(tǒng),目前包括CPU、內(nèi)存、I/O寄存器、時鐘、UART、網(wǎng)絡芯片、MMU、Cache,將來還會仿真LCD、USB等各種硬件。在SkyEye上運行的操作系統(tǒng)和各種系統(tǒng)軟件“意識”不到它們是在一個虛擬的計算機系統(tǒng)上運行。

SkyEye從總體上分為四個層次。

①用戶接口模塊:包括命令行用戶界面和圖形用戶界面,及時處理用戶的輸入命令,并把相關調(diào)試數(shù)據(jù)輸出給用戶。

②符號處理模塊:主要處理執(zhí)行文件的頭信息,解釋執(zhí)行文件中嵌的debuger調(diào)試信息,管理符號表,解析源代碼表達式,定位源代碼中的語句位置和機器碼的位置關系等。

③目標控制模塊:主要完成執(zhí)行控制(如執(zhí)行斷程序,設置中斷條件等),程序棧結(jié)構分析,對具體目標硬件的控制(如本地調(diào)試、遠程調(diào)試和仿真調(diào)試的控制)。

④目標仿真模塊:主要是模仿計算機系統(tǒng)中的主要硬件(包括CPU、內(nèi)存和各種硬件外設等)的執(zhí)行,對執(zhí)行文件的機器指令進行解釋,并仿真執(zhí)行每一條機器指令,產(chǎn)生相應的硬件響應。

2.2 SkyEye模擬的硬件介紹

目前,SkyEye仿真的CPU包含不帶MMU的AT91X40和帶MMU的ARM720T,它們都是基于ARM7TDMI CPU內(nèi)核的。SkyEye還模擬了其它硬件外設,如串口、網(wǎng)絡芯片、內(nèi)存、時鐘、網(wǎng)絡HUB等。SkyEye的CPU仿真主要完成對ARM指令集處理、寄存器操作和CPU流水線處理等的仿真。

ARM720T具有MMU(Memory Management Unit),即存儲器管理單元,是用來管理虛擬內(nèi)存系統(tǒng)的操作。MMU的兩具主要功能是:

*將虛地址轉(zhuǎn)換成物理地址;

*控制存儲器存取允許,MMU關掉時,虛地址直

【個開放源碼的嵌入式仿真環(huán)境-SkyEye】相關文章:

ADS軟件對倍頻器的嵌入式電特性仿真03-19

重配置環(huán)境下CPC的研究與仿真03-07

基于嵌入式的環(huán)境試驗設備控制系統(tǒng)設計03-21

一個嵌入式系統(tǒng)的Petri網(wǎng)模型與CPLD實現(xiàn)01-07

在仿真環(huán)境下實現(xiàn)TMS320C6000系列DSP的程序自引導03-20

嵌入式系統(tǒng)的應用及發(fā)展03-05

嵌入式軟件的覆蓋測試03-18

嵌入式系統(tǒng)的現(xiàn)狀分析03-03

嵌入式系統(tǒng)開發(fā)要素的選擇分析嵌入式處理器(一)03-07

嵌入式系統(tǒng)中的CACHE問題03-19