單片機操作系統有哪些
嵌入式系統雖然起源于微型計算機時代,然而,微型計算機的體積、價位、可靠性都無法滿足廣大對象系統的嵌入式應用要求,因此,嵌入式系統必須走獨立發展道路。這條道路就是芯片化道路。將計算機做在一個芯片上,從而開創了嵌入式系統獨立發展的單片機時代。
在探索單片機的發展道路時,有過兩種模式,即“∑模式”與“創新模式”。“∑模式”本質上是通用計算機直接芯片化的模式,它將通用計算機系統中的基本單元進行裁剪后,集成在一個芯片上,構成單片微型計算機;“創新模式”則完全按嵌入式應用要求設計全新的,滿足嵌入式應用要求的體系結構、微處理器、指令系統、總線方式、管理模式等。Intel公司的MCS-48、MCS-51就是按照創新模式發展起來的單片形態的嵌入式系統(單片微型計算機)。MCS-51是在MCS-48探索基礎上,進行全面完善的嵌入式系統。歷史證明,“創新模式”是嵌入式系統獨立發展的正確道路,MCS-51的體系結構也因此成為單片嵌入式系統的典型結構體系。
操作系統分類:
目前廣泛使用的操作系統有三個:
A.多道批處理操作系統
B.分時操作系統
C.實時操作系統
這三種系統雖然都很重要,但是我們接觸最多的是實時操作系統,所以下面重點將介紹實時操作系統。
單片機嵌入式操作系統有哪些
嵌入式操作系統(Embedded OperatingSystem,簡稱:EOS)是指用于嵌入式系統的操作系統。嵌入式操作系統是一種用途廣泛的系統軟件,通常包括與硬件相關的底層驅動軟件、系統內核、設備驅動接口、通信協議、圖形界面、標準化瀏覽器等。嵌入式操作系統負責嵌入式系統的全部軟、硬件資源的分配、任務調度,控制、協調并發活動。它必須體現其所在系統的特征,能夠通過裝卸某些模塊來達到系統所要求的功能。下面簡單介紹一些你用到或者未用到的操作系統!
1.RetroBSD
RetroBSD 是 2.11BSD 的移植版本,主要用于嵌入式系統和固定內存映射的設備上。當前目標是 Microchip PIC32微控制器,包含 128K 內存和 512K 閃存。PIC32 處理器使用 MIPS M4K架構,可執行數據內存和在用戶和核心模式下的靈活的 RAM 分區。
2.FreeRTOS
FreeRTOS是一個迷你操作系統內核的小型嵌入式系統。作為一個輕量級的操作系統,功能包括:任務管理、時間管理、信號量、消息隊列、內存管理、記錄功能等,可基本滿足較小系統的需要。
3.手機操作系統Qtopia
Qtopia是一個由Trolltech公司的軟件平臺,主要用于採用內建式Linux系統(embedded Linux-basedsystem)的電子手帳或移動電話。Qtopia的主要用途,在于提供一個跨平臺的軟件平臺,以便軟件開發者可以為系統提供更多的軟件。
4.給予Linux的操作系統 MeeGo
MeeGo是開放源碼的Linux項目,它把由Intel牽頭的Moblin項目跟Nokia領導的Maemo項目結合到單一的開源實踐中。它包含了性能優化,可供面向計算和圖形的應用及連接服務的開發的組件,對互聯網標準的支持,基于Qt的易于使用的開發環境,以及面向小型平臺及移動設備的規模和性能而優化的最新的Linux架構。MeeGo目前適用的平臺包括上網本、簡易臺式機、手持計算和通信設備、車載信息娛樂設備、上網電視、多媒體電話。
5.Nucleus
Nucleus 是一個操作系統的核心,與 Linux 和 Windows不同,很容易理解和執行。它將擁有本地支持,小型架構和支持全VGA(沒有文本模式)。多數山寨手機采用此操作系統。基于 NucleusOS 的開發包名為 MTK。
6.國產實時操作系統RT_Thread
是是變成操作系統(RT_Thread)是一款主要由中國開源社區主導開發的開源實時操作系統(許可證GPLv2)。實時線程操作系統不僅僅是一個單一的實時操作系統內核,它也是一個完整的應用系統,包含了實時、嵌入式系統相關的各個組件:TCP/IP協議棧,文件系統,libc接口,圖形用戶界面等
7. 實時嵌入式操作系統 NuttX
Nuttx是一個實時嵌入式操作系統(RTOS),它有一個小巧是在微控制器的環境中使用。這是完全可擴展,從小型(8位)至中型嵌入式(32位)系統。它的目的還在于要完全符合標準,完全實時,并完全開放
8. 嵌入實時操作系統 QNX
QNX是一種商用的遵從POSIX規范的類Unix實時操作系統,目標市場主要是面向嵌入式系統。它可能是最成功的微內核操作系統之一。
9. 嵌入式可配置操作系統 eCos
eCos(embedded Configurable operating system),即嵌入式可配置操作系統,最初起源于美國的Cygnus Solutions公司。2003年5 月正式發布了eCos2.0。
10. 嵌入式操作系統 Windows XPEmbedded
Windows XP Embedded為微軟研發的嵌入式操作系統,是一個以組件模塊展現出與 Windows XPProfessional操作系統一樣的接口與操作模式,可依各自需求組合出的操作系統鏡像文件,確保有Windows XPProfessional操作系統相依性以及完整的功能。可以應用在各種嵌入式系統,或是硬件規格層次較低的計算機系統(例如很少的內存,較慢的中央處理器等)。
11. 嵌入實時操作系統 RT-Linux
RTlinux 就是realtimelinux的簡寫,RT-Linux是一個嵌入式硬實時操作系統,它部分支持POSIX.1b標準。RT linux是由美國墨西哥理工學院開發的嵌入式Linux操作系統。到目前為止,RT-Linux已經成功地應用于航天飛機的空間數據采集、科學儀器測控和電影特技圖像處理等廣泛領域。
RTLinux開發者并沒有針對實時操作系統的特性而重寫Linux的內核,因為這樣做的工作量非常大,而且要保證兼容性也非常困難。為此,RT-Linux提出了精巧的內核,并把標準的Linux核心作為實時核心的一個進程,同用戶的實時進程一起調度。這樣對inux內核的改動非常小,并且充分利用了
12. 開源嵌入式操作系統 Contiki
Contiki 是一個適用于有內存的嵌入式系統的開源的、高可移植的、支持網絡的多任務操作系統。包括一個多任務核心、TCP/IP堆棧、程序集以及低能耗的無線通訊堆棧。Contiki 采用 C 語言開發的非常小型的嵌入式操作系統,運行只需要幾K的內存。
13. 嵌入式操作系統 Windows CE
WindowsCE是微軟公司嵌入式、移動計算平臺的基礎,它是一個開放的、可升級的32位嵌入式操作系統,是基于掌上型電腦類的電子設備操作系統,
它是 精簡的Windows 95,Windows CE的圖形用戶界面相當出色。
14. 無線傳感器網絡操作系統 TinyOS
TinyOS是一款自由和開源的基于元件(component-based)的操作系統和平臺,它主要針對無線傳感器網絡(WSN,wireless sensor network)。
TinyOS是用nesC程序編寫的嵌入式操作系統,其作為一系列合作項目的結果。 它的首先出現是做為UC Berkeley和IntelResearch合作實驗室的杰作,用來嵌入智能微塵當中,之后慢慢演變成一個國際合作項目,即TinyOS聯盟。
15. 嵌入式實時操作系統 djyos
djyos(都江堰操作系統)的核心概念與現有操作系統都不一樣,即使我有豐富的注釋,但不看書還是很難看明白的。所以,希望想要了解djyos的朋友們,先看看我的書《都江堰操作系統與嵌入式系統設計》,在“下載”頁面共享著的。這本書是我多年經驗之集成,融匯了許多軟硬件系統架構設計方面的思想,以及設計可移植的和高可靠性嵌入式系統的基本方法,不僅僅是djyos的文檔。
16. 嵌入式系統 ttylinux
ttylinux 是一個只需要8M磁盤空間的小型 GNU/Linux 發行版。可適合在以太網、調制解調器、ISDN等設備上運行,最低要求是 486SX 以及 12M 內存
17. 嵌入式Linux系統 uclinux
uClinux是嵌入式Linux領域非常重要的分支,已成功應用于路由器、機頂盒、PDA等領域,與標準Linux在內存管理方面有著本質的區別。uClinux從Linux2.0/2.4內核派生而來,其內核二進制映像文件小于512K。無MMU(Memory ManagementUnit),內存管理單元)處理器設計,具有完備的TCP/IP、支持多任務、多種網絡協議和文件系統。uClinux可移植性很強,用戶通過重新配置、編譯內核,可方便移植到多種處理器計算平臺。
18. 嵌入式實時操作系統 VxWorks
VxWorks操作系統是美國WindRiver公司于1983年設計開發的一種嵌入式實時操作系統(RTOS),是嵌入式開發環境的關鍵組成部分。良好的持續發展能力、高性能的內核以及友好的用戶開發環境,在嵌入式實時操作系統領域占據一席之地。它以其良好的可靠性和卓越的實時性被廣泛地應用在通信、軍事、航空、航天等高精尖技術及實時性要求極高的領域中,如衛星通訊、軍事演習、彈道制導、飛機導航等。在美國的F-16、FA-18 戰斗機、B-2隱形轟炸機和愛國者導彈上,甚至連1997年4月在火星表面登陸的火星探測器上也使用到了VxWorks。
19. μC OS-II
μC/OS-II 是一種基于優先級的搶占式多 任務實時操作系統,包含了實時內核、任務管理、時間管理、任務間通信同步(信號量,郵箱,消息隊列)和內存管理等功能。它可以使各個任務獨立工作,互不干涉,很容易實現準時而且無誤執行,使實時應用程序的設計和擴展變得容易,使應用程序的設計過程大為減化,μC /OS-II是一個完整的、可移植、可固化、可裁剪的占先式實時多任務內核。
20. 計算器操作系統 KnightOS
KnightOS 是一個為 TI Z80 計算器專門編寫的第三方操作系統。在 Stock OS基礎上提供很多特性,包括多任務(可同時運行32個程序)和基于樹型結構的文件系統;采用類 Unix 的環境。KnightOS 完全采用Z80 的匯編語言。其核心是獨立,你也可以用它來編寫自己的操作系統。KnightOS 上的應用程序可使用 31K 的內存
21. Linux 發行版 ?ngstr?m
?ngstr?m 是一種針對小型計算機系統(尤其是 SoC)優化的 Linux發行版(內核、引導裝載器和應用程序組合)。從技術上說,它并不是嵌入式操作系統,因為它包含許多通用組件;設計它的目的是,作為為特定產品創建嵌入式操作系統的基礎。
22. 嵌入式系統 emDebian
mDebian基于一個簡易的embeddedsystem來構造嵌入式系統,即從一個成熟的system中裁減掉不需要的部分,從而精簡成一個小的system。emDebian可以將源代碼生成Deb包,然后配置到emDiban工具集中,這樣就可以和其他軟件一樣來選取和配置,直接apt-get就可以了。
23. 紅旗嵌入式Linux
由北京中科院紅旗軟件公司推出的嵌入式Linux是國內做得較好的一款嵌入式操作系統。目前,中科院計算所自行開發的開放源碼的嵌入式操作系統—— Easy EmbeddedOS(EEOS)也已經開始進入實用階段了。該款嵌入式操作系統重點支持p-Java。系統目標一方面是小型化,另一方面能重用Linux
的驅動和其它模塊。由于有中科院計算所的強大科研力量做后盾,EEOS有望發展成為功能完善、穩定、可靠的國產嵌入式操作系統平臺。
24.實時嵌入式平臺 BeRTOS
BeRTOS 是一個完全免費開源的實時操作系統(RTOS),適用于嵌入式平臺,支持從 8 位到32 位的CPU
25. 嵌入實時操作系統 XLinux
XLinux是由美國網虎公司推出,主要開發者是陳盈豪。他在加盟網虎幾個月后便開發出了基于XLinux的、號稱是世界上最小的嵌入式Linux系統,內核只有143KB,而且還在不斷減小。XLinux核心采用了“超字元集”專利技術,讓Linux核心不僅可能與標準字符集相容,還含蓋了12個國家和地區的字符集。因此,XLinux在推廣Linux的國際應用方面有獨特的優勢
26. 無線傳感器網絡基礎平臺 OpenWSN
OpenWSN: 開源的無線傳感器網絡基礎平臺(事件驅動的操作系統內核,硬件的組件化封裝,協議棧,示例)
27. 嵌入式操作系統 RS-RTOS
RS-RTOS是一個強實時、深度嵌入式系統。目標是為強實時需求(如工業控制、汽車電子)的嵌入式系統提供基礎運行平臺。項目的研究重點是在資
源受限系統上實現最大化實時性能。RS-RTOS借鑒精簡指令集(RISC,CPU的一種設計模式)的成功經驗,提出精簡功能集的指導思想。其核心是對現有實時嵌入式系統進行精簡,保留應用頻繁的服務,通過優化精簡功能集,從而獲得強化的實時性能。RS-RTOS具備許多工業級特性,這些特性能有效地降低產品的開發成本,縮短開發周期,提高產品的競爭力。
28. OpenBSD的分支系統 Bitrig
Bitrig 是一個免費、快速、安全的,高度可移植的類 Unix 開源操作系統。Bitrig 是基于 OpenBSD的一個操作系統分支。其目的是基于 OpenBSD 提供一個非常精簡的系統,可運行在嵌入式平臺上。
29.小型實時操作系統 ChibiOS/RT
Chibi這個詞在日語中是“小孩”的意思,因此ChibiOS/RT (ちびOS/RT)表示小型實時操作系統。 ChibiOS特性自由軟件,GPL3許可證。穩定發行版包含一個GPL的例外條款。 為實時應用設計。 易于移植 搶占式調度128個優先級。允許多個線程位于同一個優先級
30.硬實時操作系統 Raw OS
Raw-OS 起飛于2012年,Raw-OS志在制作中國人自己的最優秀硬實時操作系統。
31. 移動設備啟動加載器 kboot
kboot本質上是個小型Linux作業系統,但功能卻是個bootloader,何解?kboot本身提供簡單的系統工具,支援檔案與網路操作,可自外界取得
kernel image或其他檔案,進而kboot利用了kexec的機制,讓Linux kernel可快速重新啟動,于是具備bootloader的功能。
32. 嵌入式系統 Prex
Prex是一個嵌入式可移植的實時操作系統,具備可靠性、低能耗的特性,采用C語言開發基于微核心設計。文件系統、進程以及網絡通過用戶模式任務來提供。
33. 實時嵌入式操作系統 pSOS
SI公司已經被WinRiver公司兼并,現在pSOS屬于WindRiver公司的產品。這個系統是一個模塊化、高性能的實時操作系統,專為嵌入式微處理器設計,提供一個完全多任務環境,在定制的或是商業化的硬件上提供高性能和高可靠性。可以讓開發者根據操作系統的功能和內存需求定制成每一個應用所需的系統。開發者可以利用它來實現從簡單的單個獨立設備到復雜的、網絡化的多處理器系統。
34. 實時操作系統 FunkOS
FunkOS是一種便攜式的實時操作系統,適用于低資源的處理器,例如Atmel的AVR微控制器,德州儀器MSP430等等。
35. 嵌入實時操作系統 LynxOS
LynxOS是由Lynx實時系統公司開發的操作系統。LynxOS是一個分布式、嵌入式、可規模擴展的實時操作系統,它遵循POSIX.1a、POSIX.1b和POSIX.1c標準。它最早開發于1988年。
LynxOS目前還不是一個微內核結構的操作系統,但它計劃使用所謂的“Galaxy”技術將其從大型集成化內核改造成微內核,這一技術將在LynxOS3.0中引入。新的28Kb微內核提供以下服務:核心啟動和停止、底層內存管理、出錯處理、中斷處理、多任務、底層同步和互斥支持。
36. 中國開源嵌入式實時操作系統 μTenux
μTenux是由大連悠龍軟件科技有限公司的團隊進行維護開發的開源免費的嵌入式實時操作系統。該公司從2008年開始研發,內核是采用日本非常成熟的T-kernel,有30年的歷史,廣泛的應用于汽車電子、醫療電子、工業控制領域。產品理念是利用豐富開源的礦藏,開發出更優質的開源產品。
經過5年的歷練,μTenux操作系統更加適用于中國的電子產品市場,并且各個中間件也漸漸成熟μT/lwip、μT/emWin、μT/usb、μT/FatFS等
37. 嵌入式Linux平臺 KaOS
KaOS 是一個輕量級、多用戶的嵌入式Linux平臺,主要適用于虛擬化和云計算平臺。KaOS 基于 LInux KVM
38. Atomthreads logo 嵌入式操作系統Atomthreads
Atomthreads是一款自由、輕量級、便攜式、實時調度的嵌入式操作系統。它采用BSD許可證發布源代碼,無論是出于商業還是教育目的都可以不受限制的免費使用。Atomthreads針對的是只需要調度器和基本RTOS功能的系統,它不包含文件系統、IP堆棧或設備驅動程序。但開發者可以按需添加。Atomthreads是一個小的C文件,很容易移植到其它平臺。
39. 實時多處理器系統 RTEMS
TEMS, 即: 實時多處理器系統(Real Time Executive for MultiprocessorSystems),是一個開源的無版稅實時嵌入操作系統RTOS。 它最早用于美國國防系統,早期的名稱為實時導彈系統(Real TimeExecutive for Missile Systems),后來改名為實時軍用系統(Real Time Executivefor
MilitarySystems),現在由OAR公司負責版本的升級與維護。目前無論是航空航天、軍工,還是民用領域RTEMS都有著極為廣泛的應用。
40. 機頂盒系統 LinHES
LinHES及MythTV的安裝變得盡可能簡單的一個嘗試。它包括了使你的機頂盒運作的所有必需軟件,并能在盡可能少的時間內運行起來。LinHES基于ArchLinux。它的對象是任何尋找機頂盒解決方案的人。
41. 嵌入式實時操作系統內核 trochiliRTOS
TROCHILI內核是一個全新的適用于嵌入式領域的實時內核,它完全由C語言開發,支持多任務、多優先級、搶占式調度。
TROCHILI的含義,取蜂鳥之意,意味著體積小巧、動作靈敏。
內核目前處于測試階段,現在發布運行在 stm32 處理器上的第一個測試版本。
42. 嵌入式硬實時操作系統 SylixOS
SylixOS是一款嵌入式硬實時操作系統,同其類似的操作系統,全球比較知名的還有VxWorks(主要應用于航空航天、軍事與工業自動化領域)、RTEMS(起源于美國國防部導彈與火箭控制實時系統)、ThreadX(主要應用于航空航天與數碼通訊)等。從全球范圍上看,SylixOS作為實時操作系統的后來者,在設計思路上借鑒了眾多實時操作系統的設計思想,其中就包括RTEMS、VxWorks、ThreadX等,使得具體性能參數上達到或超過了眾多實時操作系統的水平,成為國內實時操作系統的最優秀代表之一。
43. Mini vMac
Mini vMac 是一個在舊的、模擬68000 古董Mac模擬器Mini vMac基礎上的擴展,能模擬68020 CPU+68881FPU、帶彩色顯示的Macintosh II(也是古董)。
44. 嵌入式操作系統 MIDINUX
紅旗MIDINUX操作系統是全球第一個針對MID設備而開發的Linux產品,完全兼容Intel的Moblin,為合作伙伴提供了一個開放、高性能、安全和華麗的操作系統解決方案。MIDINUX從2005年開始研發,一經公開,立即引起全球供應商和用戶的關注。在Intel公司、制造商和獨立軟件開發商的協力合作后,MIDINUX已經被應用于愛國者(Aigo)、聯想(Lenovo)、Clarion、SFR等產品中。MIDINUX業已提供了SDK(軟件開發環境),更多的Linux工作者可以為移動互聯網打造更多的應用軟件。
45. NSLU2 Linux
NSLU 2 Linux 是一個小型的嵌入式的 Linux 系統。
46. 輕量級Linux發行版boot2docker
基于Tiny Core Linux的輕量級Linux發行版, 專為Docker準備。 完全運行于內存中。 38M大小,啟動僅5-6秒。
47. 嵌入實時操作系統 Embedix
Embedix是由嵌入式Linux行業主要廠商之一Luneo推出的,是根據嵌入式應用系統的特點重新設計的Linux發行版本。Embedix提供了超過25種的
Linux系統服務,包括Web服務器等。系統需要最小8MB內存,3MB ROM或快速閃存。Embedix基于Linux2.2內核,并已經成功地移植到了Intel x86和
48. Embedded Slackware
slakbootEBS 是一個用來自動創建可啟動的嵌入式系統的開發工具包,基于 Slackware 和 Busybox。該工具主要面向使用了閃存存儲的 i486 和 ARM 系統。提供各種工具、腳本、文檔和 i486、PXA250上的一些打包程序。
49. tinyBIOS
tinyBIOS? - 開源的嵌入式PC固件解決方案。
50. Linux發行版 zeroshelI
Zeroshell 是一個用于服務器和嵌入式設備的Linux發行版,目標是提供一個局域網所需要主要的網絡服務。
它以 Live CD 或 Compact Flash格式的形式提供,您可以使用Web瀏覽器來配置和管理。主要功能有:出口動態平衡,認證,vpn,dhcp等服務器
51. 嵌入式操作系統 Xerxys
Xerxys 是在 Nucleus OS 基礎上的改進版本,
52. 嵌入式操作系統 wanlix
Wanlix是一個內核非常小的嵌入式操作系統,只有幾百個字節,但功能少,只提供任務切換功能,非常適合資源特別少但又需要任務切換的小項目。
Mindows可提供多種操作系統功能,是實時搶占式操作系統,任務支持多種優先級搶占調度,將實時性高的任務設置為高優先級就可以保證軟件系統的實時性,用戶也可根據自身需求選取需要的部分,也可在此基礎上編寫代碼增加自己需要的功能,具有可裁剪性。
53. 嵌入實時操作系統 MidoriLinux
由Transmeta公司推出的MidoriLinux操作系統代碼開放,在GUN普通公共許可(GPL)下發布。該公司有個名為“MidoriLinux計劃”。“MidoriLinux”這個名字來源于日本的“綠色”——Midori,用來反映其Linux操作系統的環保外觀。
54. FreeBSD 固件 ZRouter
ZRouter.org 是一個基于 FreeBSD 的固件,用于嵌入式設備。
55. vxworks-like-kernel
兩年前為了公司vxworks的培訓,自己翻看vxworks的代碼學習并寫了當時,也是現在的vxworks-like-kernel版本。
56. 嵌入式 Linux 系統 Lablin
面向嵌入式Linux熱愛者的開源項目Lablin大家對Google的Android和Intel的Moblin一定不會陌生,MaxWitLinux與其類似,也是一個基于Linux的嵌入式操作系統,該項目由MaxWit開放實驗室于2008年1月正式啟動,現階段主要面向嵌入式系統。
MaxWit Linux提供了一個完整的軟件棧。雖然,MaxWitLinux本身是個完整的嵌入式系統。但其目的不是把自己打造成一個除Android或Moblin之外的另一個嵌入式操作系統,而是借助這個平臺力所能及地幫助個人或企業學習和研究嵌入式Linux系統,覆蓋包括從低端的系統移植到較高端的圖形引擎優化、從底層驅動到上層應用開發等多個層面。
57. 嵌入實時操作系統 PoketLinux
PoketLinux由Agenda公司采用、作為其新產品“VR3PDA”的嵌入式Linux操作系統。它可以提供跨操作系統構造統一的、標準化的和開放的信息通信基礎結構,在此結構上實現端到端方案的完整平臺。PoketLinux資源框架開放,使普通的軟件結構可以為所有用戶提供一致的服務
PoketLinux平臺使用戶的視線從設備、平臺和網絡上移開,由此引發了信息技術新時代的產生。在PoketLinux中,稱之為用戶化信息交換(CIE),也就是提供和訪問為每個用戶需求而定制的“主題”信息的能力,而不管正在使用的設備是什么。
58. 物聯網操作系統 mbed OS
ARM宣布了針對物聯網低功耗設備的操作系統mbed OS。mbedOS部分開源,其余部分控制在ARM手中,理由是為了確保操作系統不會碎片化。ARM聲稱mbedOS只需要256kb內存,它希望開發商能能使用mbed開發電池使用壽命長達數年的設備。
59. 極小的x86操作系統 KolibriOS
Kolibri(又稱KolibriOS)是一個極小的開源的32位(x86架構)操作系統,現已開發完畢。
KolibriOS來源于MenuetOS,Kolibri的名字來源于俄與德文中蜂鳥的單詞的后半部分!
評論
查看更多