日韩床上生活一级视频|能看毛片的操逼网站|色悠悠网站在线观看视频|国产免费观看A淫色免费|国产av久久久久久久|免费A级视频美女网站黄|国产毛片av日韩小黄片|热久久免费国产视频|中文字幕无码色色|成人在线视频99久久久

機(jī)電之家資源網(wǎng)
單片機(jī)首頁|單片機(jī)基礎(chǔ)|單片機(jī)應(yīng)用|單片機(jī)開發(fā)|單片機(jī)文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓(xùn)信息
贊助商
嵌入式應(yīng)用軟件開發(fā)環(huán)境δOS/λTool的設(shè)計(jì)與實(shí)現(xiàn)
[1] [2]  下一頁
嵌入式應(yīng)用軟件開發(fā)環(huán)境δOS/λTool的設(shè)計(jì)與實(shí)現(xiàn)
 更新時(shí)間:2008-8-18 10:00:22  點(diǎn)擊數(shù):14
【字體: 字體顏色
嵌入式應(yīng)用軟件開發(fā)環(huán)境δOS/λTool的設(shè)計(jì)與實(shí)現(xiàn) 電子科技大學(xué) 郭兵 熊光澤 陳麗蓉 北京系統(tǒng)工程研究所 蔡建平 摘要 嵌入式系統(tǒng)的廣泛應(yīng)用需要良好的嵌入式應(yīng)用軟件開發(fā)環(huán)境支持。本文重點(diǎn)研究一種嵌入式應(yīng)用軟件開發(fā)環(huán)境δOS/λTool的設(shè)計(jì)思想,并詳細(xì)介紹實(shí)時(shí)操作系統(tǒng)δOS的結(jié)構(gòu)和嵌入式應(yīng)用軟件開發(fā)工具包λTool的組成及實(shí)現(xiàn)的關(guān)鍵技術(shù)。 關(guān)鍵詞 嵌入式系統(tǒng) 軟件開發(fā)環(huán)境 實(shí)時(shí)操作系統(tǒng) 開發(fā)工具 引言 嵌入式計(jì)算機(jī)系統(tǒng)(簡稱嵌入式系統(tǒng))是實(shí)時(shí)系統(tǒng)的重要組成部分。其結(jié)構(gòu)緊湊、資源有限,一般由嵌入式微處理器等硬件及其軟件(包括實(shí)時(shí)操作系統(tǒng)RTOS和實(shí)時(shí)應(yīng)用程序)組成,具有嵌入性和實(shí)時(shí)性等特點(diǎn)。嵌入式系統(tǒng)的廣泛應(yīng)用需要良好的嵌入式應(yīng)用軟件開發(fā)環(huán)境(以下簡稱嵌入式軟件開發(fā)環(huán)境)支持。由于嵌入式系統(tǒng)的目標(biāo)機(jī)受資源限制,不可能建立龐大、復(fù)雜的開發(fā)工具,其開發(fā)環(huán)境和目標(biāo)運(yùn)行環(huán)境往往相互分離。因此,嵌入式應(yīng)用軟件的開發(fā)方式一般是:在宿主機(jī)(Host)上建立開發(fā)環(huán)境,進(jìn)行應(yīng)用程序編碼和交叉編譯,然后宿主機(jī)通過串口或網(wǎng)絡(luò)與目標(biāo)機(jī)(Target)建立連接,將應(yīng)用程序下載到目標(biāo)機(jī)上進(jìn)行交叉調(diào)試。應(yīng)用程序經(jīng)過調(diào)試和優(yōu)化,最后將應(yīng)用程序固化到目標(biāo)機(jī)中實(shí)際運(yùn)行。嵌入式軟件開發(fā)環(huán)境是嵌入式系統(tǒng)開發(fā)中重要的系統(tǒng)軟件,一般與RTOS捆綁銷售。作為一種專用軟件,其技術(shù)含量高,價(jià)格昂貴,是現(xiàn)代數(shù)字化產(chǎn)品開發(fā)的必備工具軟件。嵌入式軟件開發(fā)環(huán)境δOS/λTool是一套集成的嵌入式軟件開發(fā)環(huán)境,主要用于開發(fā)、調(diào)試實(shí)時(shí)操作系統(tǒng)δOS的應(yīng)用程序。嵌入式軟件開發(fā)工具包λTool以Windows或Linux為宿主機(jī)平臺,以X86,PowerPC,MIPS,Strong ARM為目標(biāo)機(jī)平臺。 一、 δOS/λTool的設(shè)計(jì)思想1. 設(shè)計(jì)目標(biāo)嵌入式軟件開發(fā)環(huán)境δOS/λTool的設(shè)計(jì)目標(biāo)歸納起來主要有以下幾點(diǎn)。(1) 先進(jìn)性和通用性:技術(shù)上達(dá)到國際同類軟件的先進(jìn)水平,同時(shí)滿足多種RTOS和BSP(Board Support Packet)的開發(fā)需求。(2) 可靠性:對嵌入式應(yīng)用軟件的代碼質(zhì)量有較高的要求,必須保證系統(tǒng)的可靠性。(3) 安全性:必須保證交叉編譯器產(chǎn)生的目標(biāo)代碼中沒有“技術(shù)陷阱”或“后門”等有害的附加代碼。(4) 支持Ada等高級語言的開發(fā):由于Ada語言具有可靠性和實(shí)時(shí)性的特點(diǎn),故在嵌入式系統(tǒng)方面有著廣泛的應(yīng)用。(5) 開放性:開發(fā)工具要符合相應(yīng)的標(biāo)準(zhǔn),易于實(shí)現(xiàn)同第3方工具的接口,易于擴(kuò)展。 2. 技術(shù)路線根據(jù)設(shè)計(jì)目標(biāo),我們采用的技術(shù)路線是:以GNU(GNU'S Not Unix)工具軟件為基礎(chǔ),參照國外有代表性的嵌入式軟件開發(fā)環(huán)境產(chǎn)品,主要為δOS提供一種嵌入式軟件開發(fā)環(huán)境。以GNU工具軟件為基礎(chǔ),是因?yàn)镚NU軟件秉承“自由、開放”的精神,在Internet網(wǎng)上提供免費(fèi)的有關(guān)研究和開發(fā)成果,大量的系統(tǒng)軟件源碼能夠通過Internet網(wǎng)免費(fèi)獲得,盡管補(bǔ)丁和BUGS多,測試工作存在一些問題,但仍不失為自主開發(fā)嵌入式軟件開發(fā)環(huán)境的重要資源和基礎(chǔ)。參照國外有代表性的嵌入式軟件開發(fā)環(huán)境產(chǎn)品(如pRISM+、Tornado),是因?yàn)檫@些產(chǎn)品采用了先進(jìn)、成熟的技術(shù),代表了當(dāng)今嵌入式軟件開發(fā)環(huán)境的發(fā)展方向。因此,我們根據(jù)上述技術(shù)路線,結(jié)合國情和已有的自主開發(fā)成果,擬定了可行的高起點(diǎn)技術(shù)方案,并采用快速原型法,堅(jiān)持試用改進(jìn)、逐步求精的技術(shù)路線,著重突破關(guān)鍵技術(shù),最終成功地建立起一種滿足高檔需求的嵌入式軟件開發(fā)環(huán)境δOS/λTool,其組成框圖如圖1所示。圖1嵌入式軟件開發(fā)環(huán)境δOS/λTool的組成二、 δOS的結(jié)構(gòu)實(shí)時(shí)操作系統(tǒng)δOS是在科技預(yù)研成果CRTOS x86/rm、CRTOS x86/spm、CRTOS x86/fpm、CRTOS DSP/C3X的基礎(chǔ)上,結(jié)合國外有關(guān)RTOS的特點(diǎn),發(fā)展起來的實(shí)時(shí)操作系統(tǒng)系列軟件。包括實(shí)時(shí)內(nèi)核δ\ Core、網(wǎng)絡(luò)組件δ\ Net、調(diào)試組件δ\ Aware、圖形用戶組件δ\ GUI等。δOS設(shè)計(jì)采用微內(nèi)核結(jié)構(gòu)和Client/Server模式,利用微內(nèi)核固有的特點(diǎn),加強(qiáng)系統(tǒng)的可伸縮性、可裁剪性、可靠性及代碼的可重用性,采用面向?qū)ο蟮脑O(shè)計(jì)技術(shù)、獨(dú)立的超微內(nèi)核(納核)可移植界面及板級支持包(BSP),來提高RTOS的可移植性,加強(qiáng)并完善與實(shí)時(shí)性能相關(guān)的算法和對象設(shè)計(jì)。δOS的總體結(jié)構(gòu)如圖2所示。圖2 δOS系統(tǒng)結(jié)構(gòu)圖δOS從上到下有4個(gè)層次。上層是實(shí)時(shí)應(yīng)用及RTOS的核外服務(wù)器(即RTOS軟組件)。目前在服務(wù)器的設(shè)計(jì)上提供了基于TCP/IP協(xié)議的網(wǎng)絡(luò)通信服務(wù)器δ\ Net,實(shí)現(xiàn)了較完整的TCP/IP協(xié)議族。此外,還提供了輕型GUI組件δ\ GUI、調(diào)試組件δ\ Aware等。下層是微內(nèi)核及其可移植的納核層,它直接在微內(nèi)核內(nèi)為實(shí)時(shí)應(yīng)用提供線程管理、線程間的通信服務(wù)、微內(nèi)核與服務(wù)器間的通信管理、定時(shí)器和時(shí)鐘管理、中斷管理、內(nèi)存管理、字符I/O和可靠性服務(wù),并提供與硬件特性無關(guān)的納核層可移植界面。納核本身與微處理器的特性有關(guān)。納核與微內(nèi)核設(shè)計(jì)是整個(gè)系統(tǒng)設(shè)計(jì)的核心。BSP層提供屏蔽板級硬件特性(如微處理器的外圍電路)的功能,便于RTOS在不同外圍電路組合的硬件上實(shí)現(xiàn)移植。δOS能夠支持的目標(biāo)CPU較為廣泛,包括X86、PowerPC、MIPS和Strong ARM等。其中目標(biāo)機(jī)為X86(包含386EX和PC386兩種BSP)的產(chǎn)品δOS x86/fpm已成功實(shí)現(xiàn),經(jīng)過測試和試用,達(dá)到設(shè)計(jì)目標(biāo)。圖3 λTool中的主要開發(fā)工具三、 λTool的組成1. 主要開發(fā)工具嵌入式軟件開發(fā)工具包λTool是一個(gè)完整的工具集。目前我們已成功地實(shí)現(xiàn)了與δOS x86/fpm相配套的產(chǎn)品λTool x86/fpm,如圖3所示。λTool中的開發(fā)工具主要包含以下幾種。(1) 開發(fā)管理:通過書寫Makefile,能夠方便地進(jìn)行應(yīng)用程序的編譯和鏈接。(2) 版本控制:采用CVS或RCS版本控制軟件,維護(hù)軟件的版本和一致性。(3) 編輯器:使用方便,對Ada、C、C++和ASM語言關(guān)鍵字變色提示,上下文幫助敏感。(4) 配置工具:設(shè)置應(yīng)用程序使用的δOS參數(shù),包括內(nèi)核參數(shù)、軟部件選擇(如δ\ Net、δ\ Aware和δ\ GUI等)以及軟部件參數(shù),實(shí)現(xiàn)RTOS的定制。(5) 交叉編譯器:Cgcc支持Ada、C、C++和ASM源程序的編譯、鏈接和定位,尤其是Ada語言的嵌入式應(yīng)用軟件開發(fā)支持,以及與交叉編譯器相配套的實(shí)用程序,包括目標(biāo)文件格式轉(zhuǎn)換工具(支持的文件格式有H\ record、S\ record、ABS、BIN、COFF和ELF)等。(6) 交叉調(diào)試器:Cgdb具有中文化的GUI和命令行兩種使用方式,支持Ada、C和C++源語言級和匯編級符號調(diào)試以及單串口調(diào)試。調(diào)試功能豐富,除具有同目標(biāo)機(jī)建立連接、下載目標(biāo)程序、設(shè)斷點(diǎn)、單步跟蹤、查看棧、寄存器、變量內(nèi)容等基本調(diào)試功能外,還具有識別和操縱RTOS對象等高級調(diào)試功能,能夠較好地滿足交叉調(diào)試的需求。(7) 目標(biāo)監(jiān)控器:Monitor提供386EX和PC386兩種BSP,可靈活配置,如選擇串口、網(wǎng)絡(luò)口以及設(shè)置通信參數(shù)等,支持不同配置的目標(biāo)機(jī)。(8) 聯(lián)機(jī)幫助系統(tǒng):采用HTML格式書寫的完整用戶聯(lián)機(jī)手冊。2. 實(shí)現(xiàn)的關(guān)鍵技術(shù)由于GNU工具軟件主要為用于本地開發(fā)(Native Development)而設(shè)計(jì),當(dāng)用于交叉開發(fā)時(shí),須要解決一系列關(guān)鍵技術(shù),主要包括以下4個(gè)方面。(1) 對RTOS平臺的支持:Cgcc支持的RTOS執(zhí)行體要求以函數(shù)庫形式提供,在編譯時(shí)作為普通函數(shù)庫鏈接使用,但需要設(shè)置正確的程序啟動文件crt0.o、鏈接定位文件linkcmds、RTOS頭文件路徑和函數(shù)庫路徑等。因此,λTool基本上與RTOS無關(guān),具有通用性,能夠支持多種RTOS,除支持δOS外。還能夠支持VRTX等。(2) 應(yīng)用編程語言的RTL(實(shí)時(shí)運(yùn)行庫)支持:在δOS上實(shí)現(xiàn)的Ada語言綁定庫(Bindings)符合POSIX標(biāo)準(zhǔn)P1003.5C,對Ada應(yīng)用程序的實(shí)時(shí)運(yùn)行提供支持。同時(shí),在δOS上也實(shí)現(xiàn)了C++和C語言的實(shí)時(shí)運(yùn)行庫。(3) 交叉調(diào)試器的高級調(diào)試功能:Cgdb除能夠進(jìn)行C、C++源語言級和匯編語言級的符號調(diào)試以及具有同目標(biāo)機(jī)建立連接、下載目標(biāo)程序、設(shè)斷點(diǎn)、單步跟蹤、查看棧、寄存器、變量內(nèi)容等基本調(diào)試功能外,還具有以下高級調(diào)試功能:具有Os\ aware功能,即Cgdb能夠識別和操縱δOS的系統(tǒng)對象(包括任務(wù)、信號量、郵箱、堆棧、I/O緩沖區(qū)、軟時(shí)鐘等);能夠設(shè)置任務(wù)斷點(diǎn)以及進(jìn)行任務(wù)級跟蹤調(diào)試;能夠跟蹤和操縱IDT表和GDT表;能夠?qū)χ袛噙M(jìn)行調(diào)試并且直接進(jìn)行RTOS系統(tǒng)功能調(diào)用等。這些都是嵌入式軟件交叉開發(fā)中需要的高級調(diào)試功能。(4) 目標(biāo)機(jī)監(jiān)控器的設(shè)計(jì):在目標(biāo)機(jī)上與主機(jī)端Cgdb配合工作的通常是監(jiān)控器(Monitor)。一般可將Monitor分為ROM Monitor和Task Monitor。我們設(shè)計(jì)的Monitor 既可以裁剪為Task Monitor,又可以裁剪為ROM Monitor。具有可移植性好、支持高級調(diào)試功能、支持多種調(diào)試方式、可裁剪等優(yōu)點(diǎn)。 3. 主要特點(diǎn)嵌入式軟件開發(fā)工具包λTool主要有以下5個(gè)特點(diǎn)。(1) 工具的開放性。開放性一般包括以下幾個(gè)方面,即符合標(biāo)準(zhǔn)、可移植、可伸縮和易獲得性。a. 符合標(biāo)準(zhǔn):主要開發(fā)工具Cgcc和Cgdb符合相應(yīng)標(biāo)準(zhǔn),如Cgcc能夠編譯的Ada、C++、C和ASM語言分別符合Ada\ 95、AT&T C++、ANSI C和AT&T標(biāo)準(zhǔn)。Cgdb能夠調(diào)試的目標(biāo)文件是標(biāo)準(zhǔn)的ELF格式。b. 可移植性:所有開發(fā)工具(除ROM Monitor匯編啟動代碼部分外)基本上都是用ANSI C實(shí)現(xiàn)。在各種UNIX平臺及Windows平臺上具有良好的源碼級可移植性。c. 可伸縮性:主要開發(fā)工具Cgcc和Cgdb可以根據(jù)需要進(jìn)行伸縮、裁剪,如Gcc(本地編譯器)能夠支持Ada、C++、C、Object C、Fortran、Chill和Java等多種語言的編譯,但在生成Cgcc時(shí),可選擇需要的1種或幾種開發(fā)語言的編譯模塊(詞法分析、語法分析、語義分析等),減少生成的Cgcc及其函數(shù)支持庫的代碼尺寸。生成Cgdb時(shí),也能夠選擇需要的1種或幾種開發(fā)語言的編譯模塊,減少生成的Cgdb及其函數(shù)支持庫的代碼尺寸。d. 易獲得性:所有開發(fā)工具(包括Cgcc、Cgdb和ROM Monitor等)的源碼都是符合GPL協(xié)議的軟件,很容易從Internet的許多站點(diǎn)上獲得,對其長期發(fā)展有著堅(jiān)實(shí)的基礎(chǔ)。(2) 工具的易用性。全中文化的用戶界面設(shè)計(jì)和信息提示,以及工具的許多功能設(shè)置,方便用戶開發(fā)使用,如Cgdb具有Reload功能,不用重啟目標(biāo)監(jiān)控器,也能夠下載一個(gè)新的應(yīng)用程序。(3) 工具的安全性。所有開發(fā)工具都具有源碼。在使用和分析過程中,未發(fā)現(xiàn)“技術(shù)陷阱”或“后門”等有害的附加代碼,能夠滿足一般嵌入式系統(tǒng)的安全性需求。(4) 工具的可擴(kuò)展性。由于所有工具都是源碼開放,且符合相應(yīng)標(biāo)準(zhǔn),很容易增加需要的功能,因而,工具具有可擴(kuò)展性,也易于實(shí)現(xiàn)同第三方工具的接口。(5) 工具的可維護(hù)性。由于所有工具都是源碼開放,我們對源代碼經(jīng)過仔細(xì)的研究和分析,已經(jīng)掌握了相關(guān)的關(guān)鍵技術(shù),能夠根據(jù)不同嵌入式應(yīng)用的需求,對工具進(jìn)行一定的維護(hù)和擴(kuò)展。結(jié)束語嵌入式軟件開發(fā)環(huán)境δOS/λTool能夠支持Ada、C++、C和ASM等開發(fā)語言,資源豐富、可用,能夠滿足嵌入式應(yīng)用軟件的開發(fā)需求。其成功的典型應(yīng)用包括電子對抗子系統(tǒng)、衛(wèi)星移動通信實(shí)驗(yàn)子系統(tǒng)、車載衛(wèi)星定位系統(tǒng)、湖南計(jì)算機(jī)廠網(wǎng)絡(luò)終端設(shè)備、奧能信息終端產(chǎn)品、江友IP Phone等。但對于開發(fā)大型、復(fù)雜的嵌入式系統(tǒng),目前還存在一些問題需要解決,如支持更多的目標(biāo)處理器、交叉編譯優(yōu)化技術(shù)、嵌入式系統(tǒng)安全性的V&V(validation and verification)分析工具以及全面的工具集成技術(shù)等。δOS/λTool作為國內(nèi)一套擁有源碼的嵌入式軟件開發(fā)環(huán)境,有著較高的開發(fā)起點(diǎn),已經(jīng)大大縮短了國內(nèi)在嵌入式軟件開發(fā)環(huán)境上同國際水平的差距,有著巨大的發(fā)展?jié)摿蛷V闊的應(yīng)用前景。因此,我們將持續(xù)追蹤嵌入式軟件開發(fā)環(huán)境的最新發(fā)展,吸收、消化其先進(jìn)的技術(shù),不斷完善δOS/λTool,最終形成一套高可靠、高可用的嵌入式軟件開發(fā)環(huán)境。MES 參考文獻(xiàn) 1熊光澤等一種微內(nèi)核嵌入式實(shí)時(shí)操作系統(tǒng)的設(shè)計(jì),第八屆抗惡劣環(huán)境計(jì)算機(jī)學(xué)術(shù)年會 2蔡建平等實(shí)時(shí)嵌入式系統(tǒng)與Ada支持,第八屆抗惡劣環(huán)境計(jì)算機(jī)學(xué)術(shù)年會 3VRTX培訓(xùn)教程電子科技大學(xué)微機(jī)所嵌入式軟件設(shè)計(jì)中心 4GNU軟件用戶參考.http://sourceware.cygnus.com 5Tornado用戶參考手冊.WindRiver Corporation 6POSIX 1003.5C/D5:POSIX ADA LanguageInterfaces.IEEE Computer Society,1998
  • 上一篇: 嵌入式軟件系統(tǒng)的實(shí)時(shí)性設(shè)計(jì)
  • 下一篇: 基于P87LPC764的Σ-ΔADC應(yīng)用設(shè)計(jì)方法
  • 發(fā)表評論   告訴好友   打印此文  收藏此頁  關(guān)閉窗口  返回頂部
    熱點(diǎn)文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機(jī)電之家 | 會員助手 | 免費(fèi)鏈接

    點(diǎn)擊這里給我發(fā)消息66821730(技術(shù)支持)點(diǎn)擊這里給我發(fā)消息66821730(廣告投放) 點(diǎn)擊這里給我發(fā)消息41031197(編輯) 點(diǎn)擊這里給我發(fā)消息58733127(審核)
    本站提供的機(jī)電設(shè)備,機(jī)電供求等信息由機(jī)電企業(yè)自行提供,該企業(yè)負(fù)責(zé)信息內(nèi)容的真實(shí)性、準(zhǔn)確性和合法性。
    機(jī)電之家對此不承擔(dān)任何保證責(zé)任,有侵犯您利益的地方請聯(lián)系機(jī)電之家,機(jī)電之家將及時(shí)作出處理。
    Copyright 2007 機(jī)電之家 Inc All Rights Reserved.機(jī)電之家-由機(jī)電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機(jī)電一體化學(xué)會
    中國行業(yè)電子商務(wù)100強(qiáng)網(wǎng)站

    網(wǎng)站經(jīng)營許可證:浙B2-20080178-1