研究生做了兩年Android應用,實習時轉了嵌入式應用軟件開發(fā),拿著一塊移植了RTOS的設備學習。入門了才發(fā)現(xiàn),兩者都是開源、穩(wěn)定、經(jīng)歷眾多設備廠商打磨的優(yōu)秀操作系統(tǒng),根據(jù)以下幾點對比學習。
通用操作系統(tǒng)和實時操作系統(tǒng):
雙系統(tǒng)
兩個操作系統(tǒng)其實經(jīng)常一起應用:
1.AP(Application Processor)是ARM架構搭載Android,運行系統(tǒng)和應用,由于高功耗待機時和WIFI、LCD均休眠
2.BP(BaseBand Processor)架構搭載RTOS,運行通信協(xié)議、射頻、GPIO,低功耗
TP_Link小白路由的雙系統(tǒng)
1.搭載Android4.2,運行APP加強應用功能
2.搭載RTOS,完成安全、嚴密、專業(yè)的路由功能
1.一個ARM運行基于Linux的Android OS
2.一個ARM運行(RTOS)
適用于 TI 處理器的可擴展 Linux 和 TI RTOS 解決方案
查資料過程中,發(fā)現(xiàn)TI也提供了一套基于自己家處理器的可擴展Linux,Android,RTOS解決方案,同樣的處理器,可選的SDK和操作系統(tǒng),也是棒。當然Android做為操作系統(tǒng)更為豐滿,更上層,而實時操作系統(tǒng)比如ucos,比如最近在學的rtos,都僅提供了任務調度、同步、互斥、時鐘等功能,所以必須內核組,BSP&DSP,應用軟件開發(fā)人員再向這個骨架中填充(移植)血肉:lwip(小型TCP/IP協(xié)議棧), fatfs(文件系統(tǒng)), driver(各種外設驅動), framework, ucGUI, bsp等。
通用操作系統(tǒng)和實時操作系統(tǒng)
一、通用操作系統(tǒng)的設計注重每次執(zhí)行的平均響應時間而不關心某次特定執(zhí)行的響應時間。通用操作系統(tǒng)中采用的很多策略和技巧都體現(xiàn)出了這種設計原則。
大型的os代碼包括的內容很多,就拿linux來說,它就包括了調度、文件、網(wǎng)絡、驅動等完整的代碼內容。
二、對于實時操作系統(tǒng),它除了要滿足應用的功能需求以外,更重要的是還要滿足應用提出的實時性要求,而組成一個應用的眾多實時任務對于實時性的要求是各不相同的,此外實時任務之間可能還會有一些復雜的關聯(lián)和同步關系,如執(zhí)行順序限制、共享資源的互斥訪問要求等,這就為系統(tǒng)實時性的保證帶來了很大的困難。因此,實時操作系統(tǒng)所遵循的最重要的設計原則是:采用各種算法和策略,始終保證系統(tǒng)行為的可預測性predictability)
而一般的rtos呢,就拿大家熟悉的ucos2來說,只是包含了調度、同步、互斥、時鐘等代碼。如果系統(tǒng)工程師需要拿ucos2來做一個項目,那么他還需要bsp、lwip、ucGUI、fatfs、driver、framework等很多代碼才能組成一個完成的系統(tǒng)。
可預測性是指在系統(tǒng)運行的任何時刻,在任何情況下,實時操作系統(tǒng)的資源調配策略都能為爭奪資源(包括CPU、內存、網(wǎng)絡帶寬等)的多個實時任務合理地分配資源,使每個實時任務的實時性要求都能得到滿足。與通用操作系統(tǒng)不同,實時操作系統(tǒng)注重的不是系統(tǒng)的平均表現(xiàn),而是要求每個實時任務在最壞情況下都要滿足其實時性要求,也就是說,實時操作系統(tǒng)注重的是個體表現(xiàn),更準確地講是個體最壞情況表現(xiàn)。三、差別比較之處
幾個主要差別的地方:
(1)任務調度策略不同。
(2)內存管理方式不同。
(3)中斷處理方式。
(3)系統(tǒng)管理方式不同。
-
Android
+關注
關注
12文章
3945瀏覽量
127993 -
RTOS
+關注
關注
22文章
819瀏覽量
119905
原文標題:學得越多,發(fā)現(xiàn)自己知道的越少!Android與RTOS
文章出處:【微信號:gh_c472c2199c88,微信公眾號:嵌入式微處理器】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
實時操作系統(tǒng)和分時操作系統(tǒng)的區(qū)別
詳解實時操作系統(tǒng)和非實時操作系統(tǒng)
![詳解<b class='flag-5'>實時</b><b class='flag-5'>操作系統(tǒng)</b>和非<b class='flag-5'>實時</b><b class='flag-5'>操作系統(tǒng)</b>](https://file1.elecfans.com/web2/M00/B9/23/wKgaomWKMrSAUdvqAAAVhY6sYDU368.jpg)
都叫操作系統(tǒng),RTOS和PC上的到底有啥不同?
uCOS-II實時操作系統(tǒng)實時操作系統(tǒng)與分時操作系統(tǒng)的區(qū)別是什么
基于Linux與數(shù)字信號處理器(DSP)實施雙OS信號處理技
![基于Linux與數(shù)字信號處理器(DSP)實施雙OS信號處理技](https://file1.elecfans.com//web2/M00/A4/A4/wKgZomUMNReAZE1XAACSVOogRnM453.jpg)
BenOS實時操作系統(tǒng)解密
Linux 與 DSP BIOS 雙 OS 信號處理技術
基于Linux的雙OS信號處理技術解析
采用 Linux 與 DSP/BIOS RTOS 實施雙 OS 信號處理技術
對實時操作系統(tǒng)特性的討論
實時操作系統(tǒng)的特點_實時操作系統(tǒng)的組成
實時操作系統(tǒng)和非實時操作系統(tǒng)的區(qū)別
什么是分時操作系統(tǒng),Linux屬于實時操作系統(tǒng)嗎?
實時操作系統(tǒng)
帶你認識實時操作系統(tǒng)(rtos)
![帶你認識<b class='flag-5'>實時</b><b class='flag-5'>操作系統(tǒng)</b>(rtos)](https://file1.elecfans.com/web2/M00/C9/9B/wKgaomYeNqCARejjAACZA3eBJdk301.png)
評論