成人免费一级片_国产一区导航_av资源在线免费观看_91黄色免费视频_亚洲欧美日韩色_91国产精品一区

Rss & SiteMap

曙海教育集團論壇 http://www.bjzhda.cn

曙海教育集團論壇
共2 條記錄, 每頁顯示 10 條, 頁簽: [1]
[瀏覽完整版]

標題:嵌入式Linux操作系統(tǒng)開發(fā)工具選擇和應用分析

1樓
wangxinxin 發(fā)表于:2010-11-23 11:05:59

概述
    嵌入式Linux具有穩(wěn)定、可擴充性及開放原始程序代碼等特點,可兼容多種處理器和主機,廣泛適用于各種產(chǎn)品和應用。但是,交叉編譯、設備驅動程序開發(fā)/除錯,以及更小尺寸等要求對嵌入式Linux開發(fā)者來說都是嚴峻的挑戰(zhàn)。為應對這些挑戰(zhàn),針對嵌入式Linux開發(fā)的專用工具應運而生,而且發(fā)展十分迅速。
    但是,許多這類開發(fā)工具都不兼容非X86平臺,而且也沒有很好地實現(xiàn)歸檔備案或整合。在其它開發(fā)環(huán)境下,組件間的高度整合并沒有完全兌現(xiàn)。因此,要想完全從這些免費的軟件組件開始制作一個完整的跨平臺開發(fā)環(huán)境,開發(fā)者應意識到這將需要大量的調查、實施、訓練和維護方面的工作。
   Linux是少數(shù)既可以在嵌入式設備上執(zhí)行也可作為開發(fā)環(huán)境的操作系統(tǒng)之一。這一特性可讓開發(fā)者在轉向此開發(fā)系統(tǒng)之前于常用硬件(比如X86桌面系統(tǒng))之上開發(fā)、除錯和測試應用程序和庫,因此可減少對標準參考平臺和指令集仿真器的依賴。這一技術僅適用于應用程序和庫,但不適用于設備驅動程序,因為后者的開發(fā)依賴于Linux架構。
   開放原始程序代碼團體及一些軟件供貨商可提供設備驅動程序開發(fā)工具。由于設備驅動程序比標準應用程序距離硬件更近,因此它們的開發(fā)比較困難。所幸的是,Linux桌面系統(tǒng)可以利用一些Windows及其它操作系統(tǒng)所沒有的工具。有足夠經(jīng)驗開發(fā)設備驅動程序的開發(fā)人員可能已經(jīng)習慣用Linux開發(fā)系統(tǒng)了。
   Linux的快速發(fā)展及其桌面方案的不斷涌現(xiàn)突顯了一個重要問題:所選擇的工具方案應如何在不同的Linux分布式系統(tǒng)上執(zhí)行?它們依賴于主機平臺的軟件配置嗎?
    有些Linux工具提供獨立于主機平臺的開發(fā)環(huán)境,包括一系列可支持開發(fā)工具的應用軟件、庫和實用程序。這一方法幾乎將開發(fā)環(huán)境與主機配置完全隔離開來,因此主機可以是任何Linux分布式系統(tǒng),而且任何更新和修改都不會影響開發(fā)環(huán)境的功能。
    這種方法的主要缺點是對儲存空間的要求有所增加─約200MB,因為它自己實際上相當于一個微型Linux分布式系統(tǒng)。
    可用的工具
   一個嵌入式Linux產(chǎn)品的開發(fā)需要幾個階段,包括為目標板配置和建構基本Linux OS;除錯應用程序、庫、核心及設備驅動程序/核心模塊;出貨前最終方案的最佳化、測試和驗證。
    有數(shù)百種開放原始程序代碼開發(fā)工具可供選擇。只要開發(fā)者原意花時間和精力去調查、實施和維護一系列各不相同的工具,總能找出一個完整的解決方案,完成幾乎任何開發(fā)任務。
  

  圖1
    開發(fā)者必須精確地考慮到這些工具的松散集合能提供什么樣的功能,以及需要付出多大的努力才能形成完整的解決方案。"
  在Linux應用程序和庫的除錯方面,GNU Debugger (GDB)作為一種標準已有幾年的歷史。它是一種命令行程序,由多個不同的圖形用戶接口前端予以支持,每個前端都能以多種方式提供除錯控制功能。盡管GDB不是一個完美的方案,但它足夠應對各種除錯任務,而且已經(jīng)得到開放原始程序代碼團體的廣泛支持。
  Linux核心或設備驅動程序的除錯要比應用程序的除錯繁瑣得多。
  在做調查時,以下方面應特別注意:
  什么除錯方法支持要開發(fā)產(chǎn)品的硬件?
  需要什么核心支持程序?
  還需要其它什么支持程序?
  除錯接口怎么樣,如何使用?
  該工具需要除錯核心模塊及處理虛擬地址轉換嗎?
  還需要其它什么工具才能提供完整的方案?
  經(jīng)過進一步的調查,開發(fā)者往往發(fā)現(xiàn)工具A和工具B并沒有提供完全一致的功能,因為它們是在彼此獨立的情況下開發(fā)的。結果,開發(fā)者必須精確地考慮到這些工具的松散集合能提供什么樣的功能,還需要付出多大的努力才能形成完整的解決方案。
  如果不同處理器類型間的整合、可用性、互通作業(yè)性和移植性很關鍵的話,開發(fā)者應考慮購買商用開發(fā)工具。這主要是因為將開發(fā)一個'免費'方案所付出的努力考慮進去,商用開發(fā)工具并不算貴。
  Linux BSP
  Linux系統(tǒng)有兩大主要部份:帶設備驅動程序的Linux核心;以及根文件系統(tǒng),包括系統(tǒng)所需的全部支持應用程序、服務和庫。
  除了駐留在目標板上的OS組件外,還需要制作一個由GNU Compiler Collection構成的交叉編譯環(huán)境,為庫和二進制程式(binutils)提供支持。
  雖然幾乎每一個組件都可在網(wǎng)上找到,但在硬件或設備驅動程序支持、整合測試信息、交叉編譯指南或軟件兼容性方面卻很難收集到太多信息。盡管開發(fā)者可從網(wǎng)上免費下載各種組件以配置嵌入式Linux操作系統(tǒng),但每個組件在版本、支持、穩(wěn)定性和測試等方面的狀態(tài)則需要開發(fā)者自己決定。然后,開發(fā)者還要完成最后的OS整合和測試,以及為所開發(fā)產(chǎn)品提供終身Linux OS維護。
  另一方面,嵌入式Linux供貨商所提供的商用Linux板支持工具套件一般都是經(jīng)過預先安裝和測試的,而且提供支持和維護。其它須考慮的因素包括Linux桌面主機將會添加不同的庫和核心功能,以及由于組織內的開發(fā)者變動而引起的長期維護問題。
  品質保證部門一般會執(zhí)行一系列嚴格的驗證和性能測試,其中包括內存泄漏檢測/糾正、程序代碼最佳化和任務追蹤等。那些想利用開放原始程序代碼工具開發(fā)針對非X86平臺的嵌入式Linux產(chǎn)品開發(fā)者將會發(fā)現(xiàn)這一任務甚至要比選擇開放原始程序代碼除錯方案難得多。Linux Trace Toolkit、Valgrind工具及其它內存分析程序可完成部份測試和驗證任務。但總的來說,它們缺乏關鍵特性、整合功能及廣泛的硬件支持。這些開放原始程序代碼分析工具的評估過程與評估除錯方案的過程基本相同。
  最后的分析就是,一個設計得恰到好處的開發(fā)環(huán)境應能夠供貨商用和開放原始程序代碼兩個世界所具有的最好特性:
  ·完整的開發(fā)能力;
  ·易于使用和整合;
  ·大型工程組織的協(xié)調控制;
  ·品質和支持保證;
  ·持續(xù)性;
  ·按照自己的判斷力使用開放原始程序代碼的能力。       本信息來源:CAD教育網(wǎng) www.cadedu.com

共2 條記錄, 每頁顯示 10 條, 頁簽: [1]

Copyright © 2000 - 2009 曙海教育集團
Powered By 曙海教育集團 Version 2.2
Processed in .01660 s, 2 queries.
主站蜘蛛池模板: 黄色国产免费 | 中文字幕永久在线观看 | 一级黄色免费网站 | 国产精品影院在线观看 | 一区二区三区精品在线观看 | 男人的天堂2019 | 99色在线 | 91精品国产综合久久久密臀九色 | 久久久久久色 | 深夜久久 | 超碰在线影院 | 天堂在线一区二区 | 日本一本不卡 | 男人的天堂黄色 | 国产亚洲精品av | 99国产精品99久久久久久粉嫩 | 四虎精品视频 | av网站网址 | 五月综合激情 | 97视频免费在线观看 | 男人av的天堂 | 国产成人精品免费 | 午夜一区二区三区四区 | 最新av中文字幕 | 国内精品999 | 深夜福利在线视频 | 黄色福利 | 黄色激情视频在线观看 | 亚洲天堂精品在线观看 | 精品一区二区三区蜜桃在线 | 久久黄色视屏 | 免费黄色一级片 | 婷婷激情综合网 | 一区二区三区免费 | 亚洲福利视频网 | 日韩成人三级 | 超碰97在线免费观看 | 亚洲区中文字幕 | 波多野结衣成人在线 | 国产情侣一区二区三区 | 五月天婷婷综合网 |