(計算機科學與技術(shù)專業(yè)論文)基于eclipse的嵌入式文件編輯器的研究與實現(xiàn).pdf_第1頁
(計算機科學與技術(shù)專業(yè)論文)基于eclipse的嵌入式文件編輯器的研究與實現(xiàn).pdf_第2頁
(計算機科學與技術(shù)專業(yè)論文)基于eclipse的嵌入式文件編輯器的研究與實現(xiàn).pdf_第3頁
(計算機科學與技術(shù)專業(yè)論文)基于eclipse的嵌入式文件編輯器的研究與實現(xiàn).pdf_第4頁
(計算機科學與技術(shù)專業(yè)論文)基于eclipse的嵌入式文件編輯器的研究與實現(xiàn).pdf_第5頁
已閱讀5頁,還剩58頁未讀 繼續(xù)免費閱讀

(計算機科學與技術(shù)專業(yè)論文)基于eclipse的嵌入式文件編輯器的研究與實現(xiàn).pdf.pdf 免費下載

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

文檔簡介

獨創(chuàng)性聲明 本人聲明,所呈交的論文是本人在導師指導下進行的研究工作 及取得的研究成果。盡我所知,除了文中特別加以標注和致謝的地 方外,論文中不包含其他人已經(jīng)發(fā)表或撰寫過的研究成果,也不包 含為獲得武漢理工大學或其他教育機構(gòu)的學位或證書而使用過的材 料。與我一同工作的同志對本研究所做的任何貢獻均已在論文中作 了明確的說明并表示了謝意。 簽名:王芝塵坌日期:鯊! ! :留 學位論文使用授權(quán)書 本人完全了解武漢理工大學有關保留、使用學位論文的規(guī)定, 即學校有權(quán)保留并向國家有關部門或機構(gòu)送交論文的復印件和電子 版,允許論文被查閱和借閱。本人授權(quán)武漢理工大學可以將本學位 論文的全部內(nèi)容編入有關數(shù)據(jù)庫進行檢索,可以采用影印、縮印或 其他復制手段保存或匯編本學位論文。同時授權(quán)經(jīng)武漢理工大學認 可的國家有關機構(gòu)或論文數(shù)據(jù)庫使用或收錄本學位論文,并向社會 公眾提供信息服務。 ( 保密的論文在解密后應遵守此規(guī)定) 研究生( 簽名) : 王蘭! 翌導師( 簽名) :差如乙日期:幽,上豬 武漢理工大學碩士學位論文 摘要 嵌入式系統(tǒng)現(xiàn)在在世界各行各業(yè)中得到廣泛應用,嵌入式軟硬件的復雜度在 不斷增加,嵌入式系統(tǒng)開發(fā)變得越來越復雜。嵌入式系統(tǒng)的開發(fā)環(huán)境和開發(fā)工具 發(fā)展卻相對很滯后。為了提高嵌入式開發(fā)的效率,嵌入式開發(fā)工具的發(fā)展是非常 重要的,通過基于e c l i p s e 平臺開發(fā)各種開發(fā)工具,并將編輯、調(diào)試、管理等功 能的開發(fā)工具集成于其中,實現(xiàn)嵌入式開發(fā)的平臺化,這是當前嵌入式開發(fā)的趨 勢。w o r k b e n c h 、r v d s 等都是基于e c l i p s e 的嵌入式集成開發(fā)環(huán)境。 e c li p s e 是一個集成開發(fā)環(huán)境,由內(nèi)核和插件的集合組成。e c li p s e 的最大 優(yōu)勢在于它的擴展點機制。用戶可以擴展e c l i p s e 中插件的功能,開發(fā)實現(xiàn)特定 功能的插件,并且能夠無縫集成到平臺中。顯然,功能強大的嵌入式集成開發(fā)環(huán) 境可以很好的提高嵌入式開發(fā)和管理的效率。 很多傳統(tǒng)的嵌入式開發(fā)工具是基于文本和表格的,而圖形化開發(fā)工具可以在 嵌入式開發(fā)的各個環(huán)節(jié)提高開發(fā)效率。嵌入式系統(tǒng)開發(fā)工具的圖形化是嵌入式系 統(tǒng)開發(fā)的趨勢。 本文在研究和分析嵌入式圖形化開發(fā),a r m 公司的r v d s 集成開發(fā)環(huán)境和 e c l i p s e 平臺的基礎上,結(jié)合r v d s 集成開發(fā)環(huán)境中t a r g e tr e g i s t e re d i t o r 這 個插件的開發(fā),實現(xiàn)了對a r m 嵌入式文件的圖形化和表格化的編輯。 論文首先研究了與本文相關的若干技術(shù),包括嵌入式系統(tǒng)的發(fā)展情況,嵌入 式工具軟件發(fā)展的現(xiàn)狀和遇到的挑戰(zhàn),嵌入式圖形化開發(fā),e c l i p s e 平臺和 e c li p s e 插件開發(fā)技術(shù)。說明了e c li p s e 插件開發(fā)在嵌入式系統(tǒng)開發(fā)領域中的優(yōu) 勢。其次,分析了t a r g e tr e g i s t e re d i t o r 項目的總體需求,介紹了插件的總 體功能,插件的各個模塊以及插件的工作流程。然后,分析了a r m 各種嵌入式文 件的內(nèi)容,數(shù)據(jù)結(jié)構(gòu)。研究了嵌入式文件和x m l 文件的解釋技術(shù),主要包含a r m 提供的解析b c d 文件的a p i 的應用等,以及基于d o m 和s a x 技術(shù)的x m l 文件的解 析,然后對嵌入式文件中結(jié)構(gòu)化的數(shù)據(jù)進行抽象和建模,實現(xiàn)了內(nèi)存,外設,寄 存器等模型。最后,基于e c l i p s e 插件開發(fā)技術(shù)和e c l i p s e 平臺的s w t j f a c e 圖形庫,實現(xiàn)了一個e c l i p s e 插件多頁編輯器,論文對編輯器圖形頁面和表格頁 面的設計實現(xiàn)進行了深入的研究。 本文研究和實現(xiàn)的t a r g e tr e g i s t e re d i t o r 插件,作為a r m 的r v d s 集成開 發(fā)環(huán)境的一部分,已經(jīng)提交了穩(wěn)定的版本,能方便和高效的編輯和生成嵌入式文 件。 關鍵字:e c l i p s e ,插件,編輯器,嵌入式,圖形化 i 武漢理工大學碩士學位論文 a b s t r a c t i nr e c e n ty e a r s ,e m b e d d e ds y s t e mi sa p p l i e de v e r y w h e r ei nt h ew o r l d ,t h e c o m p l e x i t yo fe m b e d d e ds o r w a r ea n dh a r d w a r ew a sg r o w i n g , t h ed e v e l o p m e n to f e m b e d d e ds y s t e mi sb e c o m i n gm o r ea n dm o r ec o m p l i c a t e d b u tt h ee m b e d d e ds y s t e m d e v e l o p m e n te n v i r o n m e n ta n dd e v e l o p m e n tt o o l sd e v e l o p m e n ti sr e l a t i v e l yb a c k w a r d i no r d e rt oi m p r o v et h ee f f i c i e n c yo fe m b e d d e ds y s t e ma n ds o f t w a r ed e v e l o p m e n t , d e v e l o p i n ge m b e d d e dd e v e l o p m e n tt o o l si sv e r yi m p o r t a n t , t h r o u g hi n t e g r a t et h ee d i t , c o m m i s s i o n i n g , m a n a g e m e n ta n da l l k i n d so ff u n c t i o no fd e v e l o p m e n tt o o l si n e c l i p s et or e a l i z et h ei n t e g r a t e do p e n - s o u r c ep l a t f o r mo fe m b e d d e dd e v e l o p m e n t ,t h i s i st h et r e n do fe m b e d d e ds y s t e md e v e l o p m e n t s u c ha sr v d s ,w o r k b e n c h , t h e s e e m b e d d e di n t e g r a t ed e v e l o p m e n te n v i r o n m e n ta r eb o t hb a s e do ne c l i p s e e c l i p s ei sa ni n t e g r a t e dd e v e l o p m e n te n v i r o n m e n t , w h i c hi sc o m p o s e do ft h e k e r n e la n das e to fp l u g - i n s e c l i p s e sb i g g e s ta d v a n t a g ei st h ee x t e n s i o n p o i m m e c h a n i s m u s e rc a l la c h i e v ep l u g - i n s 、加ms p e c i f i cf u n c t i o n st h r o u g he x p a n d i n gt h e p l u g - i n s i ne c l i p s e ,a n dn e wp l u g - i n sc a nb es e a m l e s s l yi n t e g r a t e dt o e c l i p s e o b v i o u s l y , p o w e r f u le m b e d d e di n t e g r a t e dd e v e l o p m e n te n v i r o n m e n t c a nw e l l i m p r o v et h ee f f i c i e n c yo fd e v e l o p m e n ta n dm a n a g e m e n to fe m b e d d e ds y s t e m m a n y t r a d i t i o n a le m b e d d e dd e v e l o p m e n tt o o l sa r eb a s e do nt h et e x ta n dt a b l e , a n dg r a p h i c a ld e v e l o p m e n tt o o l sc a ni n c r e a s ed e v e l o p m e n te f f i c i e n c yo fe m b e d d e d s y s t e m t h eg r a p h i c a ld e s i g n i n gi st h et r e n do fe m b e d d e ds y s t e m b a s e do nt h es t u d ya n da n a l y s i so fe m b e d d e dg r a p h i c a ld e v e l o p m e n t ,r v d s w h i c hi sa r m si n t e g r a t e dd e v e l o p m e n te n v i r o n m e n ta n dt h ee c l i p s ep l a t f o r m , c o m b i n e dw i t ht h ed e v e l o p m e n to ft a r g e tr e g i s t e re d i t o rw h i c hi sap l u g - i ni nr v d s , i tr e a l i z ea np l u g - i ne d i t o rf o rt h ee m b e d d e df i l e , a n dt h ee d i t o re d i tf i l e si ng r a p h i c a l a n dt a b l e s t h i sp a p e rf i r s ts t u d i e ds o m er e l a t e dt e c h n o l o g y , i n c l u d i n ge m b e d d e ds y s t e m ,t h e d e v e l o p m e n to fe m b e d d e ds o f t w a r ed e v e l o p m e n tt o o l s a n dc h a l l e n g e ,g r a p h i c a l d e v e l o p m e n to fe m b e d d c ds y s t e m , e c l i p s ep l a t f o r ma n dp l u g - i n st e c h n o l o g y a l l t h e s ec a ne x p l a i nt h ea d v a n t a g eo fe c l i p s ep l u g - i n si nt h ef i e l do fe m b e d d e d s y s t e m s e c o n d l y , t h i sp a p e ra n a l y z e st h eg e n e r a ld e m a n do ft a r g e tr e g i s t e re d i t o r , i t i n t r o d u c e st h eo v e r a l lf u n c t i o n , e v e r ym o d u l e sa n dt h ew o r k i n gp r o c e s so ft h e p l u g - i n t h e n , t h ep a p e ra n a l y z e dt h ec o n t e n ta n dd a t a 咖c t u r co fv a r i o u se m b e d d e d d o c u m e n t so fa r m i tr e s e a r c ht h et e c h n o l o g yo fp a r s i n ge m b e d d e df i l ea n dx m l n 武漢理工大學碩士學位論文 f i l e ,t h em a i nw o r ka l eu s i n gt h ea p io fp a r s i n gb c d f i l ea n dt e c h n o l o g yo fp a r s i n g x m lf i l eb a s e do nd o ma n ds a xt e c h n o l o g y i ta l s ob u i l d sm o d e l sf o rs t r u c t u r e d d a t ai nt h ee m b e d d e df i l e ,r e a l i z et h em o d eo fm e m o r y , p e r i p h e r a l s ,r e g i s t e ra n ds o o n f i n a l l y ,i tr e a l i z ea ne c l i p s em u l t i p a g ee d i t o rb a s e d0 1 1t h et e c h n o l o g yo fe c l i p s e p l u g - i na n ds 、胛a n dj f a c eo fe c l i p s ep l a t f o r m ,t h ep a p e rh a v eaf u r t h e ri n t r o d u c t i o n o ft h ed e s i g no fg r a p h i c sp a g ea n dt a b l ep a g e t h et a r g e tp e g i s t e re d i t o rw h i c ht h ep a p e rr e s e a r c ha n dr e a l i z e ,a sap a r to f a r m sr v d s ,w h i c hi si n t e g r a t e dd e v e l o p m e n te n v i r o n m e n t ,h a db es u b m i t t e da sa s t a b l ev e r s i o n ,i tc a ne d i ta n dg e n e r a t ee m b e d d e dd o c u m e n t sc o n v e n i e n ta n de f f i c i e n t k e yw o r d s :e c l i p s e , p l u g - i n ,e d i t o r , e m b e d d e d ,g r a p h i c a l i l l 武漢理工大學碩士學位論文 目錄 摘! 要i a b s t r a c t i i 第l 章緒論。1 1 1課題研究背景。1 1 2課題來源及研究內(nèi)容1 1 3論文結(jié)構(gòu)2 第2 章嵌入式軟件開發(fā)一3 2 1嵌入式系統(tǒng)簡介。3 2 2嵌入式開發(fā)工具開發(fā)。3 2 2 1嵌入式軟件開發(fā)的特點3 2 2 2嵌入式開發(fā)工具面臨的挑戰(zhàn)4 2 2 3嵌入式開發(fā)工具的平臺化和開源化5 2 2 4嵌入式開發(fā)工具的圖形化7 2 3 本章小結(jié)8 第3 章 e c l i p s e 平臺及插件開發(fā)9 3 1 e c l i p s e 體系架構(gòu)9 3 1 1運行時內(nèi)核1 0 3 1 2 工作臺1 0 3 1 3工作空間1 1 3 2 e c l i p s e 插件開發(fā)1 2 3 2 1 e c l i p s e 插件機制1 2 3 2 2擴展點介紹1 2 3 3本章小結(jié)1 3 第4 章插件需求分析。1 4 4 1 t a r g e tr e g i s t e re d i t o r 介紹。1 4 4 2 插件需求。l5 4 2 1嵌入式文件分析15 4 2 2插件工作流程。15 4 2 3 編輯器g u i 頁面設計1 6 4 2 4 o u t l i n e 導航視圖2 0 4 2 5 插件p r e f e r e n c e s 2 0 4 2 6 插件環(huán)境需求一2 l 4 3本章小結(jié)2 2 武漢理工大學碩士學位論文 第5 章插件詳細設計2 3 5 1嵌入式文件解析和插件導入導出向?qū)? 3 5 1 1 e c l i p s e 向?qū)Ы榻B及其向?qū)U展。2 3 5 1 2嵌入式文件解析2 7 5 2x m l 文件解析2 9 5 2 1基于d o m 的x m l 文件解析3 0 5 2 2基于s a x 的x m l 文件解析31 5 3m v c 架構(gòu)介紹3 2 5 4編輯器數(shù)據(jù)建模3 4 5 5編輯器圖形和表格頁面的設計與實現(xiàn)3 5 5 5 1s w t 和j f a c e 簡介3 5 5 5 2編輯器圖形頁面設計與實現(xiàn)3 5 5 5 3編輯器圖形頁面操作的實現(xiàn)3 7 5 5 4編輯器表格實現(xiàn)3 7 5 5 5編輯器表格操作的實現(xiàn)3 9 5 5 6 o u t l i n e 視圖4 3 5 6t r e 插件幫助的實現(xiàn)4 4 5 7本章小結(jié)4 6 第6 章插件測試4 7 6 1項目測試內(nèi)容和測試技術(shù)簡介4 7 6 1 1數(shù)據(jù)模型測試。4 8 6 1 2g u i 測試4 9 6 1 3導入導出向?qū)y試5 0 6 2測試結(jié)果5 0 6 3 本章小結(jié)5 1 第7 章總結(jié)5 2 7 1 工作總結(jié)5 2 7 2工作展望5 2 參考文獻5 4 至| 【謝5 6 攻讀碩士學位期間發(fā)表的論文5 7 武漢理工大學碩士學位論文 1 1 課題研究背景 第1 章緒論 近年來嵌入式市場發(fā)展迅速,軟硬件的復雜度越來越高,市場上嵌入式應用 越來越多,需求越來越豐富,嵌入式系統(tǒng)的開發(fā)也變得越來越復雜。但是市場要 求嵌入式系統(tǒng)開發(fā)周期更短,可靠性更高,嵌入式開發(fā)工具的發(fā)展遇到新的挑戰(zhàn)。 相對p c 機上的軟件設計,嵌入式系統(tǒng)復雜性更高,涉及到更多的硬件知識 和操作系統(tǒng)底層相關的知識【i l 。很多嵌入式系統(tǒng)現(xiàn)在已經(jīng)應用3 2 位嵌入式處理 器,復雜度遠遠超過了之前的8 位和1 6 位的嵌入式處理器,嵌入式設計也就更 加復雜。嵌入式系統(tǒng)一般采用的是交叉開發(fā)模式【2 】,這種模式效率相對低下,不 方便項目的管理。開發(fā)過程中會使用到各種工具,由于項目需求,可能會選擇不 同廠商的開發(fā)工具交叉和組合開發(fā)。如能將眾多的工具無縫配合使用,就可以顯 著減少工作量,提高嵌入式項目開發(fā)的工作效率。圖形化的開發(fā)方法和工具已經(jīng) 開始在嵌入式開發(fā)中被使用,圖形化的開發(fā)方法將大大減小項目的工作量和復雜 度。這些都說明嵌入式開發(fā)工具越來越不能滿足當前的需求。 e c l i p s e 是一個開放源代碼的、基于j a v a 的可擴展開發(fā)平臺,e c l i p s e 最大 的特點就是其插件體系結(jié)構(gòu)【3 1 。e c l i p s e 是由一個內(nèi)核和很多的插件組成的,具 有堆積木似的體系結(jié)構(gòu)【4 】。e c l i p s e 的插件機制使得各個公司可以根據(jù)e c l i p s e 插件開發(fā)規(guī)范開發(fā)滿足自己特定需要的插件,如果有必要,e c l i p s e 可以將這些 來自不同公司的插件集成到其中,組成一個功能強大的集成開發(fā)環(huán)境【5 】。 綜上所述,嵌入式開發(fā)過程中需要用到各種開發(fā)工具,如果用戶在e c l i p s e 上開發(fā)對應的插件,這些插件就可以無縫集成到e c l i p s e 平臺中,從而搭建出一 個滿足嵌入式開發(fā)需求,界面風格統(tǒng)一的嵌入式集成開發(fā)環(huán)境【6 】。 1 2 課題來源及研究內(nèi)容 t a r g e tr e g i s t e re d i t o r 是某國際知名公司高端嵌入式開發(fā)工具r v d s 下的 一個開源平臺組件之一,由深圳市英蓓特公司武漢研發(fā)中心負責開發(fā)。系統(tǒng)采用 e c l i p s e 插件方式開發(fā)。該插件主要用來編輯和生成多種格式的嵌入式文件。 論文研究了e c l i p s e 平臺,e c l i p s e 插件開發(fā)技術(shù),s w t j f a c e l 7 】,分析了多 種嵌入式文件的結(jié)構(gòu),研究了嵌入式文件和x m l 文件的解析技術(shù),在此基礎上, 武漢理工大學碩士學位論文 采用e c l i p s e 插件多頁編輯器開發(fā)了t a r g e tr e g i s t e re d i t o r 插件,插件能解 析多種類型的嵌入式文件,將文件中結(jié)構(gòu)化的數(shù)據(jù)導入到編輯器中,在編輯器中 對數(shù)據(jù)實現(xiàn)了圖形化表格化的顯示,提供了對數(shù)據(jù)各種常規(guī)操作和關聯(lián)操作。通 過編輯器還可以直接生成嵌入式文件。 1 3 論文結(jié)構(gòu) 第一章為緒論,主要介紹了課題的研究背景。 第二章介紹了嵌入式軟件開發(fā),嵌入式開發(fā)工具的特點、發(fā)展趨勢和遇到的 挑戰(zhàn),嵌入式開發(fā)的圖形化。 第三章綜述了e c l i p s e 體系架構(gòu),詳細的介紹了e c l i p s e 插件開發(fā)機制。 第四章介紹了插件的總體需求。 第五章詳細介紹了插件建模,功能實現(xiàn)和g u i 設計。 第六章介紹了插件的測試方案和測試結(jié)果。 第七章總結(jié)了項目的問題及其未來擴展。 2 武漢理工大學碩士學位論文 第2 章嵌入式軟件開發(fā) 隨著信息社會的不斷發(fā)展,嵌入式技術(shù)發(fā)展越來越迅速。現(xiàn)在嵌入式產(chǎn)品已 經(jīng)普及到社會的各個領域,而且在將來,嵌入式系統(tǒng)還將具有更加廣闊的應用前 景和巨大的發(fā)展?jié)摿?。嵌入式系統(tǒng)已經(jīng)成為跨領域最流行的技術(shù)之一。 2 1 嵌入式系統(tǒng)簡介 國際電氣和電子工程師協(xié)會對嵌入式系統(tǒng)的定義是“控制、監(jiān)視或者輔助裝 置、機器和設備運行的裝置( d e v i c e su s e dt oc o n t r o l ,m o n i t o r ,o ra s s i s t t h eo p e r a t i o no fe q u i p m e n t 。m a c h i n e r yo rp l a n t s ) 。 嵌入式系統(tǒng)是一個比較模糊的概念?,F(xiàn)在,人們在生活中越來越頻繁的接觸 和使用嵌入式系統(tǒng)產(chǎn)品,嵌入式系統(tǒng)的應用越來越廣泛,這些客觀的情況都使得 嵌入式系統(tǒng)的定義更難確定。在國內(nèi),嵌入式系統(tǒng)定義為以應用為中心,以計算 機技術(shù)為基礎,并且軟硬件可裁剪,適用于應用系統(tǒng)對功能、可靠性、成本、體 積、功耗有嚴格要求的專用計算機系統(tǒng)【8 】。 嵌入式系統(tǒng)設備一般是由嵌入式系統(tǒng)和執(zhí)行裝置構(gòu)成的。嵌入式計算機系統(tǒng) 包含硬件層、中間層、系統(tǒng)軟件層和應用軟件層四層,硬件層包括嵌入式微處理 器、存儲器、通用的設備接口和各種i 0 接口【9 1 。 嵌入式系統(tǒng)有如下重要特征:系統(tǒng)內(nèi)核小,專用性強,系統(tǒng)精簡。高實時性 的系統(tǒng)軟件是嵌入式軟件的基本要求,嵌入式軟件開發(fā)要走向標準化就必須使用 多任務的操作系統(tǒng),嵌入式系統(tǒng)開發(fā)需要開發(fā)工具和環(huán)境【1 0 】。 2 2 嵌入式開發(fā)工具開發(fā) 2 2 1 嵌入式軟件開發(fā)的特點 嵌入式系統(tǒng)軟件開發(fā)類似于桌面軟件的開發(fā),需要開發(fā)工具和環(huán)境。但是由 于嵌入式系統(tǒng)本身的特點,不具備在其上直接進行嵌入式軟件開發(fā)的能力。之所 以要在通用計算機上面進行嵌入式開發(fā),有很多方面的原因:第一,上面提到的 嵌入式系統(tǒng)本身的特點,不具備在其上直接進行嵌入式軟件開發(fā)的能力;第二, 在通用計算機平臺上,具備嵌入式系統(tǒng)上面很多不具備的條件,比如各種硬件和 軟件資源。所以,嵌入式開發(fā)時有主機和目標機概念,主機用做程序開發(fā),目標 3 武漢理工大學碩士學位論文 機用作執(zhí)行機,開發(fā)時交替結(jié)合進行【1 1 1 。 宿主系統(tǒng)通信系統(tǒng)目標系統(tǒng) q 醴) ( c o m )1 蜘蕾e t ) 開發(fā) ( 編輯、編澤、連 接,調(diào)試) 運行 ( 運行程序,) 宿蕘機操作系統(tǒng) 宿主機硬件 目標枧硬件 圖2 - 1 交叉開發(fā)系統(tǒng) 嵌入式應用軟件開發(fā)具有自身特點【1 2 1 : ( 1 ) 需要集成軟硬件開發(fā)環(huán)境。 ( 2 ) 引入了新的任務設計方法。 ( 3 ) 開發(fā)完成后需要進行固化和固化測試。 ( 4 ) 軟件要求更高,開發(fā)難度加大。 嵌入式應用軟件開發(fā)的這些特點,加大了嵌入式應用軟件的開發(fā)難度。很多 著名的芯片制造商除了設計開發(fā)自己的芯片,還開發(fā)基于芯片的嵌入式開發(fā)工 具。很多專門的實時軟件公司也在努力開發(fā)性能優(yōu)良的嵌入式集成開發(fā)環(huán)境,比 如r v d s 、w o r k b e n c h 等等,以方便嵌入式開發(fā)人員的設計與開發(fā),降低嵌入式軟 件開發(fā)的難度【1 3 1 。 2 2 2 嵌入式開發(fā)工具面臨的挑戰(zhàn) 嵌入式開發(fā)和基于p c 的開發(fā)相比,具有其不同復雜性,涉及更廣更復雜的知 識,例如,硬件方面和操作系統(tǒng)方面的。 總體上,現(xiàn)在嵌入式設計和軟件開發(fā)對工具軟件提出了以下挑戰(zhàn)或新的需 求: ( 1 ) 如何從4 8 1 6 位處理器過渡到3 2 位處理器 多數(shù)高校畢業(yè)生在學校接受8 位處理器的培訓,中國很多嵌入式工程師都具 有8 位處理器的開發(fā)經(jīng)驗,8 位嵌入式處理器目前還具有很大的市場份額,但是, 3 2 位的嵌入式處理器現(xiàn)在應用越來越廣泛。3 2 位和8 位處理器區(qū)別很大,從8 位處理器開發(fā)中過度到3 2 位處理器就顯得至關重要。那么就有必要讓這些工程 師在進行3 2 位處理器開發(fā)時,為他們提供類似之前8 位處理器的界面和接口。 ( 2 ) 如何加快開發(fā)周期 4 武漢理工大學碩士學位論文 市場上對嵌入式系統(tǒng)應用要求越來越廣泛,嵌入式系統(tǒng)越來越多的采用更高 位的嵌入式處理器,除了嵌入式軟件運行的可行性和穩(wěn)定性,嵌入式應用軟件在 用戶體驗方面的表現(xiàn)也直接影響嵌入式軟件開發(fā)的復雜度。所以隨著市場對嵌入 式應用需求更加旺盛,對嵌入式軟件設計要求不斷提高的形式,如何加快嵌入式 軟件開發(fā)周期就變得非常重要。另外,嵌入式開發(fā)時,軟件和硬件的關系非常密 切,開發(fā)要求協(xié)同進行。如果能減弱之間的強耦合關系,特別是軟件開發(fā)對硬件 的依賴,就將明顯縮短項目開發(fā)周期。 ( 3 ) 各類工具之間如何配合 現(xiàn)在,很多嵌入式開發(fā)一般采用交叉開發(fā)的方式。嵌入式開發(fā)的過程中需要 用到各種編輯編譯工具、調(diào)試工具、開發(fā)環(huán)境等,而且這些工具和環(huán)境可能在不 同的系統(tǒng)環(huán)境中運行,工具也可能來自不同的廠商,這種嵌入式開發(fā)方式基本 是分步進行的,效率非常低下,如果能夠?qū)⑦@些工具集成到一個開發(fā)環(huán)境中,就 可以大大提高嵌入式開發(fā)的效率,同時,也可以提高系統(tǒng)的調(diào)試效率,減少項目 管理成本。 ( 4 ) 如何實現(xiàn)圖形化開發(fā) 圖形化開發(fā)在嵌入式領域應用越來越廣泛,針對嵌入式系統(tǒng)設計中的某些環(huán) 節(jié),使用圖形化的開發(fā)工具,可以大大提高嵌入式開發(fā)的效率。在嵌入式配置文 件的編輯,嵌入式軟件編程以及硬件設計中,目前都已經(jīng)有很多優(yōu)秀的開發(fā)工具, 例如本文研究的t a r g e tr e g i s t e re d i t o r 這個插件可以以圖形化的方式編輯多 種嵌入式文件,可以通過圖形和表格方式生成配置文件。r e a l v i e wm d k 能用圖 形對話框生成大量匯編代碼,顯著提高開發(fā)效率,對于新手來說,更加方便高效。 2 2 3 嵌入式開發(fā)工具的平臺化和開源化 嵌入式軟件開發(fā)一般采用交叉開發(fā)模式,開發(fā)的過程中,使用了多個公司、 多種環(huán)境下的工具。很顯然,由于這些客觀的原因,在這種交叉開發(fā)模式中,各 種開發(fā)工具很難配合使用,開發(fā)的過程中開發(fā)人員需要在不同的開發(fā)工具之間交 替進行,還需要在不同的開發(fā)環(huán)境甚至是系統(tǒng)環(huán)境之間切換,這些都大大增加了 嵌入式軟件項目的開發(fā)成本和項目管理的難度。 基于以上原因,如果能夠有選擇的讓這些開發(fā)工具依托一個集成開發(fā)環(huán)境而 聚集在一起,并且讓集成開發(fā)環(huán)境來解決各個開發(fā)工具之間的關聯(lián)和交互的問 題,為各個開發(fā)工具提供一個平臺,如此將會給嵌入式開發(fā)帶來很多益處。 首先從用戶的角度來說,用戶只需要直接使用嵌入式集成開發(fā)環(huán)境中的各個 開發(fā)工具進行開發(fā)就可以了,各個工具單獨使用,不用關注各個工具之間的交互, 因此用戶可以將更多的經(jīng)歷放在軟件研發(fā)上,集成開發(fā)環(huán)境自動屏蔽了其他的問 5 武漢理工大學碩士學位論文 題。例如在e c l i p s e 集成開發(fā)環(huán)境中,可以直接使用j d t 插件進行j a v a 開發(fā), 然后又可以使用e c li p s e 中j u n i t 框架進行單元測試,至于j d t 插件和j u n i t 測試框架之間有什么關系,用戶完全不用關心,而只需要知道如何分別使用這些 工具就可以了。 其次,在嵌入式集成開發(fā)環(huán)境中,各種開發(fā)工具集成在一起,用戶在使用開 發(fā)環(huán)境時,可以不用在不同的模式,系統(tǒng)環(huán)境中來回切換。這些都極大的提高了 嵌入式軟件開發(fā)的效率。同時,從項目管理的角度來說,在一個集成開發(fā)環(huán)境中 可以管理整個工程的開發(fā)和進度,有方便了項目的管理和進度的度量。 從以上可以看出嵌入式開發(fā)工具平臺化的優(yōu)勢。 嵌入式開發(fā)工具的開源化不是指開發(fā)工具的開源,而是指基于開源平臺,比 如基于e c l i p s e 平臺開發(fā)開發(fā)工具。 e c li p s e 是一個開源的平臺,具有插件體系結(jié)構(gòu),任何遵守插件開發(fā)標準的 公司和個人都可以基于e c l i p s e 平臺開發(fā)插件,而且e c l i p s e 可以將這些插件, 又可以稱為開發(fā)工具,無縫的集成到e c l i p s e 中。從這一個角度講,e c l i p s e 的 插件體系結(jié)構(gòu)為基于e c l i p s e 平臺的嵌入式開發(fā)工具平臺化提供了理論可行性。 使用e c l i p s e 這個開源平臺作為嵌入式開發(fā)平臺具有很多優(yōu)點。 l ,軟件復用。 從軟件復用的角度講,既然已經(jīng)存在e c l i p s e 這個開源且功能強大的平臺, 那么任何公司和個人都可以研究e c l i p s e 平臺的結(jié)構(gòu),然后基于e c l i p s e 插件結(jié) 構(gòu)來開發(fā)適合自己的開發(fā)工具,這些開發(fā)工具可以以插件的形式發(fā)布,如果有必 要,也可以將這些插件無縫的集成到e c li p s e 中。如此,將會產(chǎn)生數(shù)量眾多并且 功能強大的嵌入式開發(fā)工具和平臺。而這正好滿足了當前嵌入式開發(fā)對嵌入式開 發(fā)工具旺盛的要求。 2 ,可擴展性。 由于e c l i p s e 的插件機制使得e c l i p s e 平臺具有良好的擴展性。按照插件開 發(fā)的標準,任何遵守插件開發(fā)規(guī)范開發(fā)的插件,都可以無縫的集成到e c l i p s e 平臺中。這就是說基于e c l i p s e 的嵌入式開發(fā)平臺就非常容易進行擴展,這種擴 展性剛好滿足了嵌入式開發(fā)工具不斷擴展和更新的要求。 3 ,可升級性。 e c l i p s e 插件的升級非常方便,用戶只要用開發(fā)好的新版本插件直接替換舊 版本的插件就可以完成插件的更新,而且插件的更新不影響環(huán)境中其他的插件的 運行。所以,基于e c l i p s e 平臺的嵌入式開發(fā)工具的升級也很方便。 4 ,跨平臺性。 由于j a v a 的跨平臺性,e c l i p s e 是使用j a v a 開發(fā)的,所以e c l i p s e 也具有 6 武漢理工大學碩士學位論文 良好的跨平臺性。那么,基于e c l i p s e 的嵌入式集成開發(fā)環(huán)境可以在不同平臺下 進行自身的升級和項目開發(fā)。 2 2 4 嵌入式開發(fā)工具的圖形化 目前,圖形化的設計和開發(fā)在軟硬件和其他很多領域都有了很多的應用,出 現(xiàn)了很多優(yōu)秀的工具和軟件。圖形化開發(fā)在嵌入式領域應用的也越來越廣泛,針 對嵌入式系統(tǒng)設計中的某些環(huán)節(jié),使用圖形化的開發(fā)工具進行設計和開發(fā),可以 大大提高嵌入式軟件開發(fā)和硬件設計的效率。例如,在嵌入式配置文件的編輯, 嵌入式軟件編程以及硬件設計中,目前都已經(jīng)有很多優(yōu)秀的開發(fā)工具,例如本文 研究的t a r g e tr e g i s t e re d i t o r 這個插件可以以圖形化的方式編輯多種嵌入式 文件,可以通過圖形和表格的方式生成嵌入式文件。r e a l v i e vm d k 啟動代碼生 成器,使用圖形對話框方便地生成大量的匯編程序,顯著提高了效率,圖形化的 設計方法對于新手而言,更加方便高效。 目前,出現(xiàn)了一些圖形化的設計和開發(fā)工具,有的是針對系統(tǒng)的設計的,有 的是針對軟硬件開發(fā)中的某些環(huán)節(jié)的,這些軟件或工具都大大提高了工程的效 率。以下簡介幾種圖形化的開發(fā)工具。 l a b v i e w 程序開發(fā)環(huán)境是美國國家儀器公司開發(fā)的,類似c 和b a s i c 等開發(fā) 環(huán)境,但l a b v i e w 與其他語言的區(qū)別是:其他語言采用文本編寫源碼,l a b v i e w 用g 語言編程,g 語言是圖形化的,源碼由框圖組成。l a b v l e w 用圖標代替文本 開發(fā)應用程序。l a b v i e w 大大提高了工作效率。 支持嵌入式軟件開發(fā)工作流程的圖形化平臺軟件一紅旗d e v s p a r t n e r 。r e d f l a gd e v s p a r t n e r 是一個全面支持嵌入式軟件開發(fā)工作流程的全圖形化平臺軟 件,實現(xiàn)了模式驅(qū)動的嵌入式l i n u x 及其應用開發(fā),提供了工具鏈自動配置、根 文件系統(tǒng)定制、圖形化調(diào)試、性能評估及調(diào)優(yōu)等特色功能。針對嵌入式產(chǎn)品上市 周期趨短,嵌入式軟件開發(fā)與積累難度大、復用性低與協(xié)作性差的矛盾, d e v s p a r t n e r 以e e l i p s e 為基礎,提供了穩(wěn)定、強大、開放的的嵌入式l i n u x 圖 形化開發(fā)平臺,借助d e v s p a r t n e r 的開放性和可擴展性,用戶實施基于嵌入式 l i n u x 產(chǎn)品的開發(fā)時,效率較傳統(tǒng)方式有極大的提高。r e df l a gd e v s p a r t n e r 支 持團隊開發(fā)與協(xié)作,保證了團隊開發(fā)的一致性,提高了溝通效率。r e df l a g d e v s p a r t n e r 支持廣泛的硬件和第三方開發(fā)工具,降低了開發(fā)成本,創(chuàng)造連續(xù)高 效的業(yè)務價值。 r v d s ( r e a l v i e wd e v e l o p m e n ts u i t e ) 是a r m 公司最新推出的面向s o c 和大 型復雜應用程序的高端開發(fā)工具,被業(yè)界稱為最好的a r m 開發(fā)工具。r v d s 包含 有四個模塊:i d e ,r v d s 中集成了e c l i p s ei d e ,用于代碼的編輯和管理。支持 7 武漢理工大學碩士學位論文 語句高亮和多顏色顯示,以工程的方式管理代碼,支持第三方e c l i p s e 功能插件。 r v c t ,r v c t 是業(yè)界最優(yōu)秀的編譯器,支持全系列的a 跚和x s c a l e 架構(gòu),支持匯 編、c 和c + + 。r v d ,是r v d s 中的調(diào)試軟件,功能強大,支持f l a s h 燒寫和多核 調(diào)試,支持多種調(diào)試手段,快速錯誤定位。r v i s s ,是指令集仿真器,支持外設 虛擬,可以使軟件開發(fā)和硬件開發(fā)同步進行,同時可以分析代碼性能,加快軟件 開發(fā)速度。r v d s 具有以下優(yōu)點:l 編譯后生成的代碼小,執(zhí)行效率高;2 支持 l i n u x 操作系統(tǒng);3 調(diào)試功能強大:4 具有t r a c e 和p r o f i l e 功能,對程序進行 優(yōu)化,進行代碼測試和調(diào)試;5 可以進行外設虛擬,軟硬件同步開發(fā):6 具有獨 特的p r o f i l e r 。7r v i j t a g 仿真器實現(xiàn)源代碼的調(diào)試。 2 3 本章小結(jié) 本章首先簡介了嵌入式系統(tǒng)的相關概念,然后比較詳細的介紹了嵌入式工具 軟件面臨的挑戰(zhàn),嵌入式工具軟件的平臺化和開源化的發(fā)展趨勢,最后說明嵌入 式開發(fā)的圖形化。 8 武漢理工大學碩士學位論文 第3 章e c1 p s e 平臺及插件開發(fā) e c l i p s e 是一個開放源代碼的、基于j a v a 的可擴展開發(fā)平劊1 4 】。就它的本 身而言,可以認為是一個集成開發(fā)框架和一組服務,能夠用于通過創(chuàng)建插件的方 法構(gòu)建新的開發(fā)環(huán)境。e c l i p s e 主要由一個非常小的內(nèi)核和很多插件工具組合而 成,在e c l i p s e 中就集成了很多像j a v a 開發(fā)工具j d t 和插件開發(fā)環(huán)境p d e 等功 能很強大的插件【1 5 1 ?;趀 c l i p s e 平臺,任何人或者是公司團體,在遵循插件 開發(fā)的規(guī)范的前提下,就可以開發(fā)滿足他們特定需求的插件工具,然后將這些插 件無縫集成到e c l i p s e 環(huán)境中,以此來擴展e c l i p s e 的功能。 3 1e ciip s e 體系架構(gòu) e c li p s e 結(jié)構(gòu)體系如下圖所示: 7 :一 7。 一一一、 e 鋤辨p l m fm p 0 l 、一 陬 導s w l i 一, - i : l 里 一一一;,。i 孝 剖 一_ l : l p l a l f o n n “m e 圖3 - 1e c l i p s e 平臺架構(gòu) 如上圖e c l i p s ep r o j e c t ,e c l i p s e 主要由e c l i p s e 平臺,j a v ad e v e l o p m e n t t o o l s ( j d t ) ,p l u g i nd e v e l o p m e n te n v i r o n m e n t ( p d e ) 和其它插件和工具組 成。從上圖中插頭的方向可以分析出,e c l i p s ep l a t f o r m 是e c l i p s e 的基礎, j a v ad e v e l o p m e n tt o o l s ( j d t ) ,p l u g i nd e v e l o p m e n te n v i r o n m e n t ( p d e ) 都 依賴它,而插件開發(fā)環(huán)境又構(gòu)建在j a v a 開發(fā)環(huán)境上。j d t 是用來進行j a v a 開發(fā) 的插件,p d e 是在e c l i p s e 平臺和j d t 的基礎上開發(fā)的,為用戶提供開發(fā)插件

溫馨提示

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

評論

0/150

提交評論