姓名:劉歡? ? ? ? ? 學號:19020100155? ? ? ? ? ?學院:電子工程學院? ? ? ? ? ? 班級:1902012
原文轉自:https://iot.ofweek.com/2021-03/ART-132215-11000-30490226.html
? ? ? ? ? ? ? ? ? http://c.biancheng.net/view/7557.html
【嵌牛導讀】嵌入式如何實現(xiàn)呢,嵌入式依賴于什么系統(tǒng)呢,嵌入式在一般的操作系統(tǒng)里面可以運行和開發(fā)嗎,帶著以上疑問,我們將開啟今天的嵌入式之旅。
【嵌牛鼻子】嵌入式操作系統(tǒng)
【嵌牛提問】什么是嵌入式操作系統(tǒng)
【嵌牛正文】
嵌入式操作系統(tǒng),英語是Embedded Operating System,簡稱:EOS。簡單來說,嵌入式操作系統(tǒng)就是嵌入式系統(tǒng)的操作系統(tǒng)。嵌入式系統(tǒng)很多本身就結構簡單、設計靈活,嵌入式操作系統(tǒng)通常也就被設計非常緊湊、高效,拋棄掉運行于它們之上的、特定的應用程序非必須的各種功能。
通常,嵌入式操作系統(tǒng)會包括與硬件相關的底層驅動軟件、系統(tǒng)內核、設備驅動接口、通信協(xié)議、圖形界面、標準化瀏覽器等。作為一種本質上還是操作系統(tǒng)的軟件,嵌入式操作系統(tǒng)需要負責整體的全部軟硬件資源分配、任務調度,控制、協(xié)調并發(fā)活動等。受特殊的應用環(huán)境限制,嵌入式系統(tǒng)通常都具有系統(tǒng)內核小、精簡、專用性強、支持多任務、高實時性、需要搭配有相應的開發(fā)工具和環(huán)境。
基于一些特殊的應用環(huán)境等方面的要求,嵌入式操作系統(tǒng)往往也都是實時操作系統(tǒng)。
至今為止,應用較為廣泛的嵌入式操作系統(tǒng)包括如下這些:
嵌入式Linux
Windows CE
Windows XP Embedded
Windows Vista Embedded
Windows Embedded Compact 7
Windows IoT
VxWorks
uCOSII
QNX
FreeRTOS
ENEA OSE
訂制版的BSD
FreeDOS
等等。
目前主流的操作系統(tǒng)有哪些呢?
1. 嵌入式 Linux
嵌入式 Linux 是以 Linux 為基礎的嵌入式操作系統(tǒng),廣泛應用于信息家電、PDA、機頂盒、Digital Telephone、Answering Machine、Screen Phone、數(shù)據(jù)網(wǎng)絡、Ethernet Switches、Router、Bridge、Hub、Remote Access Servers、ATM、Frame Relay、遠程通信、醫(yī)療電子、交通運輸計算機外設、工業(yè)控制、航空航天等領域。
使用嵌入 Linux 系統(tǒng)的優(yōu)勢有很多,比如:
Linux 是開放源代碼的,不存在黑箱技術,遍布全球的眾多 Linux 愛好者是 Linux 開發(fā)者的強大技術支持;
Linux 的內核小、效率高,內核的更新速度很快,Linux 是可以定制的,其系統(tǒng)內核最小只有約 134KB;
Linux 是免費的操作系統(tǒng),在價格上極具競爭力。
2. Android
Android 是一種基于 Linux 的自由及開放源代碼的操作系統(tǒng),2003 年 10 月,Andy Rubin 等人創(chuàng)建 Android 公司,并組建 Android 團隊,22 個月后被 Google 收購。目前 Android 操作系統(tǒng)主要用于智能手機、平板電腦和智能電視等。
Android 運行于 Linux Kernel 之上,但并不是 GNU/Linux。因為在一般 GNU/Linux 里支持的功能,Android 大都沒有支持,包括 Cairo、X11、Alsa、FFmpeg、GTK、Pango,以及 Glibc 等都被移除掉了。Android 又以 Bionic 取代 Glibc,以 Skia 取代 Cairo,再以 OpenCore 取代 FFmpeg 等。
Android 為了達到商業(yè)應用,必須移除被 GNU GPL 授權證所約束的部分,例如,Android 將驅動程序移到 Userspace,使得 Linux Driver 與 Linux Kernel 徹底分開。Bionic/Libc/Kernel/ 并非標準的 Kernel Header Files。
3. iOS
iOS 是由蘋果公司開發(fā)的手持設備操作系統(tǒng)。最初是設計給 iPhone 使用的,后來陸續(xù)套用到 iPod touch、iPad 以及 Apple TV 等蘋果產(chǎn)品上。
iOS 與蘋果的 Mac OS X 操作系統(tǒng)一樣,它也是以 Darwin 為基礎的,因此,同樣屬于類 Unix 的商業(yè)操作系統(tǒng)。它和 Linux 操作系統(tǒng)有一定淵源,都可以追溯到 Unix。
iOS 是商業(yè)操作系統(tǒng),因此不是開源的,iOS 的開發(fā)工程師主要開發(fā) iOS 的應用程序,使用的開發(fā)語言是 Objective-C 和 Swift。
4. Windows CE
Windows CE 是微軟公司嵌入式、移動計算平臺的基礎,它是一個開放的、可升級的 32 位嵌入式操作系統(tǒng),是基于掌上電腦類的電子設備操作系統(tǒng),它是類似于精簡的 Windows 95。Windows CE 的圖形用戶界面相當出色。
開發(fā)語言可以使用 C++、C#、VB 等,可以使用系統(tǒng)自帶豐富的圖形庫快速開發(fā)出界面程序,開發(fā)效率較高。但使用選擇基于 Windows CE 開發(fā)產(chǎn)品,需要向微軟公司繳納一定的版權費。
5. Windows XP Embedded
Windows XP Embedded 是微軟研發(fā)的嵌入式操作系統(tǒng),是一個以組件模塊展現(xiàn)出與 Windows XP Professional 操作系統(tǒng)一樣的接口與操作模式,可依據(jù)各自需求組合出的操作系統(tǒng)鏡像文件,確保有 Windows XP Professional 操作系統(tǒng)相依性以及完整的功能。
Windows XP Embedded 可以應用在各種嵌入式系統(tǒng),或硬件規(guī)格層次較低的計算機系統(tǒng),例如,很少的內存,較慢的中1央處理器等。
Windows XP Embedded 基于 Win32 編程模型,由于采用常見的開發(fā)工具,如 Visual Studio.NET,使用商品化 PC 硬件,與桌面應用程序無縫集成,因此可以縮短上市時間。使用 Windows XP Embedded 構建操作系統(tǒng)的常見設備類別包括零售銷售點終端、瘦客戶機和高級機頂盒。
Windows XP Embedded 有一個限制,它要求目標硬件平臺必須是X86架構的,而且還需要向微軟公司繳納授權費。
6. VxWorks
VxWorks 是美國 Wind River System 公司(2009 年被 Intel 收購)推出的一個非常優(yōu)秀的實時操作系統(tǒng)。
VxWorks 操作系統(tǒng)是美國 WindRiver 公司于 1983 年設計開發(fā)的一種嵌入式實時操作系統(tǒng)(RTOS),是嵌入式開發(fā)環(huán)境的關鍵組成部分。它具有良好的持續(xù)發(fā)展能力、高性能的內核以及友好的用戶開發(fā)環(huán)境,在嵌入式實時操作系統(tǒng)領域占據(jù)一席之地。
VxWorks 以其良好的可靠性和卓越的實時性被廣泛地應用在通信、軍事、航空、航天等高精尖技術及實時性要求極高的領域中,如衛(wèi)星通信、軍事演習、彈道制導、飛機導航等。在美國的 F-16、FA-18 戰(zhàn)斗機、B-2 隱形轟炸機和愛國者導彈上,甚至連 1997 年 4 月在火星表面登陸的火星探測器、2008 年 5 月登陸的鳳凰號,以及 2012 年 8 月登陸的好奇號也都使用到了 VxWorks。
不過如此優(yōu)秀的操作系統(tǒng),并不是所有場合都是合適的。通常 VxWorks 常用于實時性要求高、環(huán)境惡劣的場合,因為使用 VxWorks 需要的成本非常高,選擇它之前,需要綜合衡量評估后再決定。