首頁  >  文章  >  運維  >  embedded linux是什麼

embedded linux是什麼

藏色散人
藏色散人原創
2023-03-03 09:33:522793瀏覽

embedded linux是指嵌入式Linux,而嵌入式Linux就是指對標準Linux經過小型化裁剪處理之後,能夠固化在容量只有幾K或幾M位元組的記憶體晶片或單晶片中,適合於特定嵌入式應用場合的專用Linux作業系統。

embedded linux是什麼

本教學操作環境:linux7.3系統、Dell G3電腦。

embedded linux是什麼?

指嵌入式Linux。

一、嵌入式Linux(Embedded Linux)是指對標準Linux經過小型化裁剪處理之後,能夠固化在容量只有幾K或幾M位元組的記憶體晶片或單晶片中,適合於特定嵌入式應用場合的專用Linux作業系統。

二、嵌入式Linux的特點

  版權費:免費;

  購買費用:媒介成本;

  技術支援:全世界的自由軟體開發者提供支援;

  網路特性:免費且效能優異;

  軟體移植:容易,程式碼開放,有許多應用軟體支援;

  應用產品開發週期:短,新產品上市迅速,因為有許多公開的程式碼可以參考和移植;

  即時效能:RT_Linux,hardhat Linux 等嵌入式Linux支援即時效能;

  穩定性:好;

  安全性:好。

  三、嵌入式Linux的市場前景和商業機會

  嵌入式Linux有巨大的市場前景和商業機會,出現了大量的專業公司和產品,如Montavista、Lineo、Emi等。有行業協會,如Embedded Linux Consortum等。得到世界著名電腦公司和oem板級廠商的支持,例如IBM、Motorola、Intel等 。傳統的嵌入式系統廠商也採用了Linux策略 如Lynxworks 、Windriver、QNX等。還有intelnet上大量的嵌入式Linux愛好者的支援。嵌入式Linux支援幾乎所有的嵌入式cpu和被移植到幾乎所有的嵌入式oem板。

  四、嵌入式Linux的應用領域

  嵌入式Linux的應用領域非常廣泛,主要的應用領域有,資訊家電:PDA,STB-Set-stopbox,Digital Telephone,Answering Machine,Screen Phone、資料網路:Ethernet switches,Router,Bridge,Hub,Remote access servers,ATM,Frame relay、遠端通訊、醫療電子、運輸、電腦週邊、工業控制、航空領域等。

  五、嵌入式linux的優勢

  嵌入式Linux的開發和研究是作業系統領域中的一個熱點,目前已經開發成功的嵌入式系統中,大約有一半使用的是Linux。 Linux之所以能在嵌入式系統市場上取得如此輝煌的成果,與其自身的優良特性是分不開的。

  1、廣泛的硬體支援

  Linux能夠支援x86、ARM、MIPS、ALPHA、PowerPC等多種體系結構,目前已成功移植到數十種硬體平台,幾乎能夠運行在所有流行的CPU上。 Linux有著異常豐富的驅動程式資源,支援各種主流硬體設備和最新硬體技術,甚至可以在沒有儲存管理單元(MMU)的處理器上運行,這些都進一步促進了Linux在嵌入式系統中的應用。

  2、核心高效穩定

  Linux核心的高效能和穩定已經在各個領域內得到了大量事實的驗證,Linux的核心設計非常精巧,分成進程調度、記憶體管理、進程間通訊、虛擬檔案系統和網路介面五大部分,其獨特的模組機制可以根據使用者的需要,即時地將某些模組插入核心或從核心移除。這些特性使得Linux系統核心可以裁剪得非常小巧,很適合於嵌入式系統的需求。

  3、開放原始碼,軟體豐富

  Linux是一種開放原始碼的自由作業系統,它為使用者提供了最大限度的自由度,由於嵌入式系統千差萬別,往往需要針對具體的應用程式進行修改和最佳化,因而獲得原始碼就變得至關重要了。 Linux的軟體資源十分豐富,每種通用程式在Linux上幾乎都可以找到,而且數量還在增加。在Linux上開發嵌入式應用軟體一般不用從頭做起,而是可以選擇一個類似的自由軟體做為原型,在其上進行二次開發。

  4、優秀的開發工具

  開發嵌入式系統的關鍵是需要有一套完善的開發和除錯工具。傳統的嵌入式開發除錯工具是在線模擬器(In-Circuit Emulator,ICE),它透過取代目標板的微處理器,為目標程式提供一個完整的模擬環境,從而使開發者能夠非常清楚地了解到程式在目標板上的工作狀態,方便監視和調試程式。線上模擬器的價格非常昂貴,而且只適合做非常底層的調試,如果使用的是嵌入式Linux,一旦軟硬體能夠支援正常的串口功能時,即使不用線上模擬器也可以很好地進行開發和調試工作,從而節省了一筆不小的開發費用。嵌入式Linux為開發者提供了一套完整的工具鏈(Tool Chain),它利用GNU的gcc做編譯器,用gdb、kgdb、xgdb做調試工具,能夠很方便地實現從操作系統到應用軟體各個級別的調試。

  5、完善的網路通訊和檔案管理機制

  Linux至誕生之日起就與Internet密不可分,支援所有標準的Internet網路協議,並且很容易移植到嵌入式系統當中。此外,Linux也支援ext2、fat16、fat32、romfs等檔案系統,這些都為開發嵌入式系統應用打下了很好的基礎。

  六、嵌入式Linux的挑戰

  目前,嵌入式Linux系統的研發熱潮正在蓬勃興起,並且佔據了很大的市場份額,除了一些傳統的Linux公司(如RedHat 、MontaVista等)正在從事嵌入式Linux的開發與應用之外,IBM、Intel、Motorola等著著名企業也開始進行嵌入式Linux的研究。雖然前景一片燦爛,但就目前而言,嵌入式Linux的研究成果與市場的真正要求仍有一段差距,要開發出真正成熟的嵌入式Linux系統,還需要從以下幾個方面做出努力。

  1、提高系統即時性

  Linux雖然已經被成功地應用到了PDA、行動電話、車載電視、機上盒、網路微波爐等各種嵌入式設備上,但在醫療、航空、交通、工業控制等對即時性要求非常嚴格的場合中還無法直接應用,原因在於現有的Linux是一個通用的操作系統,雖然它也採用了許多技術來加快系​​統的運行和響應速度,並且符合POSIX 1003.1b標準,但本質上並不是一個嵌入式即時作業系統。 Linux的核心調度策略基本上是沿用UNIX系統的,將它直接應用於嵌入式即時環境會有許多缺陷,如在運行核心執行緒時中斷被關閉,分時調度策略存在時間上的不確定性,以及缺乏高精度的計時器等等。正因如此,利用Linux作為底層作業系統,在其上進行即時化改造,從而建構出一個具有即時處理能力的嵌入式系統,是現在日益流行的解決方案。

  2、改善核心結構

  Linux核心採用的是整體式結構(Monolithic),整個核心是一個單獨的、非常大的程序,這樣雖然能夠使系統的各個部分直接溝通,有效縮短任務之間的切換時間,提高系統反應速度,但與嵌入式系統儲存容量小、資源有限的特性不相符合。嵌入式系統經常採用的是另一種稱為微核心(Microkernel)的體系結構,即核心本身只提供一些最基本的作業系統功能,如任務調度、記憶體管理、中斷處理等,而類似於檔案系統和網路協定等附加功能則運行在用戶空間中,並且可以根據實際需求進行取捨。 Microkernel的執行效率雖然比不上Monolithic,但卻大大減少了核心的體積,方便維護與移植,更能滿足嵌入式系統的要求。可以考慮將Linux核心部分改造成Microkernel,讓Linux在具有很高性能的同時,又能滿足嵌入式系統體積小的要求。

  3、完善整合開發平台

  引進嵌入式Linux系統整合開發平台,是嵌入式Linux進一步發展與應用的內在需求。傳統上的嵌入式系統都是面向具體應用場合的,軟體和硬體之間必須緊密配合,但隨著嵌入式系統規模的不斷擴大和應用領域的不斷擴展,嵌入式作業系統的出現就成了一種必然,因為只有這樣才能促成嵌入式系統朝向層次化和模組化的方向發展。很顯然,嵌入式整合開發平台也是符合上述發展趨勢的,一個優秀的嵌入式整合開發環境能夠提供比較完整的模擬功能,可以實現嵌入式應用軟體和嵌入式硬體的同步開發,從而擺脫了「嵌入式應用軟體的開發依賴於嵌入式硬體的開發,並且以嵌入式硬體的開發為前提」的不利局面。一個完整的嵌入式整合開發平台通常包括編譯器、連接器、調試器、追蹤器、優化器和整合式使用者介面,目前Linux在基於圖形介面的特定係統自訂平台的研究上,與Windows CE等商業嵌入式作業系統相比還有很大差距,整體整合開發環境有待提升與完善。

相關推薦:《Linux影片教學

以上是embedded linux是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn