<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 嵌入式微處理器的嵌入式操作系統-uClinux

嵌入式微處理器的嵌入式操作系統-uClinux

——
作者:michael Hennerich 時(shí)間:2005-09-02 來(lái)源:EDN電子設計技術(shù) 收藏
嵌入式微處理器的嵌入式操作系統-uClinux
 序言
  在過(guò)去的兩年中,隨著(zhù)嵌入式設備的發(fā)展改進(jìn),Linux操作系統受到了越來(lái)越多的青睞,尤其是用于消費產(chǎn)品、電訊路由器和交換機、網(wǎng)絡(luò )產(chǎn)品、工業(yè)和汽車(chē)等應用。
  最近,一些大的消費電子公司達成協(xié)作,建立消費者電子Linux論壇(CELF),以進(jìn)一步開(kāi)發(fā)家庭數字電子設備的Linux平臺。CELF的發(fā)起者(Matsushita Electric、Sony、Hitachi、NEC、Royal Philips Electronics、Samsung、Sharp和Toshiba)將重點(diǎn)放在Linux的改進(jìn)上,使之成為消費電子設備的開(kāi)放源代碼平臺。同樣,他們對開(kāi)放源代碼協(xié)會(huì )的精神也給予了積極的支持和發(fā)揚( 要獲得更多信息,請訪(fǎng)問(wèn)www.celinuxforum.org) 。
  嵌入式Linux的優(yōu)點(diǎn)在于它的版權免費、源碼開(kāi)放、結構緊湊,這為日益增長(cháng)的應用軟件基礎提供了堅實(shí)的后盾。Linux是一個(gè)全功能的操作系統,支持各種網(wǎng)絡(luò )和文件處理協(xié)議,這對嵌入式系統來(lái)說(shuō)是很重要的,因為它必須"在任何時(shí)間任何地點(diǎn)進(jìn)行計算"。Linux采用模塊化結構,通過(guò)去除嵌入式系統中不必要的實(shí)用程序、工具和其它系統服務(wù),它可以很方便地實(shí)現結構精簡(jiǎn)。在嵌入式設備市場(chǎng)中,采用Linux的公司可以更迅速地將產(chǎn)品推向市場(chǎng),更快地增強產(chǎn)品的可靠性。對開(kāi)發(fā)者來(lái)說(shuō),AD的Blackfin?處理器和uClinux的結合也許很有吸引力。Blackfin?處理器集合了DSP的計算能力和微控制器的功能,滿(mǎn)足了數字音頻、視頻和通信方面的應用需求。
  我們在單塊芯片上結合一流的DSP內核和傳統微控制器的體系結構,避免了其它傳統復合處理器系統的限制性、復雜性和高成本的問(wèn)題。在已有的外部設備(SPI、帶IrDa? 功能的UART、定時(shí)器、實(shí)時(shí)時(shí)鐘(RTC)、看門(mén)狗(watchdog)和事件控制器(event controller))的基礎上,所有Blackfin處理器家族提供雙通道串行接口(SPORTs)---每個(gè)串行接口支持4個(gè)立體聲I2S通道,數據速率達100 MBits/s。而且Blackfin處理器家族的最新成員(ADSP-BF531、ADSP-BF532、ADSP-BF533和ADSP-BF561) 提供并行外部接口(PPI),實(shí)現TFT平板顯示器和視頻轉換器(CCIR-656, 27 MHz)的無(wú)縫連接,或者作為AD/DA轉換器的并行接口,速率達65MSPS。
  表1:Blackfin處理器家族
  其它封裝也是可選的
  所有的Blackfin處理器都藝術(shù)地將最先進(jìn)的信號處理引擎和清晰正交的類(lèi)RISC微處理器指令集以及支持SIMD單指令多數據的多媒體功能復合成一套單指令集的結構,稱(chēng)之為微信號結構(MSA)。該內核是調整的雙-MAC Harvard 結構,這種結構旨在實(shí)現音頻和視頻算法的非并行計算,以及實(shí)現操作系統中標準的程序流和常用的仲裁操作。
  Blackfin 的ADSP-BF531/BF532/BF533處理器有兩個(gè)大的片內存儲器塊,提供通往內核的高速通道。這些內存塊可以適應處理器內核的最高速度。它們位于內核的旁邊,稱(chēng)為L(cháng)1存儲器,可以配置為數據或指令靜態(tài)處理器(SRAM)或高速緩沖存儲器。當配置為高速緩存時(shí),處理外部SDRAM的代碼的速度非常接近內部存儲器直接處理的速度。這個(gè)特征特別適用于uClinux內核的運行,因為它沒(méi)辦法被全部裝入內部存儲器。而且,當使用c語(yǔ)言編程時(shí),可以通過(guò)使用高速緩存來(lái)最大優(yōu)化外部存儲器到內核之間的存取。
  Blackfin處理器采用低電壓,低功耗的設計,具備動(dòng)態(tài)電源管理功能。完全滿(mǎn)足目前的移動(dòng)和電池供電需求,其它的處理器都無(wú)法做到這一點(diǎn)。Blackfin處理器配有多重的、高度靈活和獨立的直接存取控制器(DMA),用來(lái)支持自動(dòng)數據傳輸,并使處理器內核受到的間接影響達到最小。
  DMA 的傳輸操作可以發(fā)生在A(yíng)DSP-BF531/BF532/BF533處理器的內部存儲器到與有DMA能力的外部設備之間。而且,DMA傳輸也能夠在DMA外部設備和連接到外部存儲器接口的外部設備(包括SDRAM控制器和異步存儲控制器)之間進(jìn)行。
 
  的區別?
  由于Linux和UNIX相似,是多用戶(hù)、多任務(wù)的操作系統,內核必須采取特殊的防范措施,以保證同一系統內來(lái)自不同用戶(hù)的上千個(gè)操作正確安全地運行。UNIX的安全模型(即Linux之前的設計)能夠保護每個(gè)用戶(hù)操作的自身環(huán)境和地址空間。每個(gè)用戶(hù)操作都受到保護,防止被其它用戶(hù)喚醒,而且,虛擬內存(VM)系統對現代CPU還有另外的要求,比如在個(gè)人處理內存中實(shí)現動(dòng)態(tài)內存分配和隨機內存區域規劃。有一些設備,如Blackfin 處理器,沒(méi)有提供全功能的MMU內存管理單元,因為開(kāi)發(fā)者的應用程序并不使用操作系統,通常也不需要MMU,而且,Blackfin的弱MMU的處理器往往具有更高的效率,其價(jià)格也明顯低于其它產(chǎn)品。
  為使Linux與這些設備相適應,必須進(jìn)行一些改動(dòng):
  1. 沒(méi)有實(shí)際的存儲器保護(一個(gè)錯誤的環(huán)節可以讓整個(gè)系統停機)
  2. 沒(méi)有交叉(fork)系統調用
  3. 只有簡(jiǎn)單的內存分配
  4. 其它一些較小的區別
  存儲器保護對大多數嵌入式系統來(lái)說(shuō)不是很大的問(wèn)題。Linux是一個(gè)很穩定的平臺,尤其是在嵌入式系統中,軟件崩潰的情況很少發(fā)生。
  第二點(diǎn)的問(wèn)題要大一些。在為UNIX和Linux編寫(xiě)的軟件中,開(kāi)發(fā)者常常使用fork系統調用來(lái)實(shí)現并行處理,fork調用可以準確拷貝原始程序并同時(shí)予以執行。為了提高效率,它使用MMU將父程序映射到子程序,并只拷貝寫(xiě)入子程序的內存區。因此uClinux不能提供fork系統調用。它提供vfork,一種特殊版本的fork,在vfork程序中當子程序執行時(shí)父程序即會(huì )終止。 因此,使用fork系統的軟件在使用uClinux支持的vfork或線(xiàn)程時(shí)必須重寫(xiě),因為他們使用相同的內存空間,包括堆棧。
  就第三點(diǎn)來(lái)說(shuō),一般情況下支持uClinux的malloc系統不會(huì )有問(wèn)題,但是,有些時(shí)候必須進(jìn)行小的調整。大部分適用于UNIX和uClinux的軟件(可在http://freshmeat.net上找到此類(lèi)軟件)能夠直接在uClinux上編譯,其它的則可使用微小的移植或調整(tweaking)。 只有很少的應用軟件不能在uClinux上運行,其中大部分不能作為嵌入式應用軟件。


關(guān)鍵詞: Linux和uClinux

評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>