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

都叫操作系統(tǒng),RTOS和PC上的到底有啥不同?
uCOS-II實(shí)時(shí)操作系統(tǒng)實(shí)時(shí)操作系統(tǒng)與分時(shí)操作系統(tǒng)的區(qū)別是什么
基于Linux與數(shù)字信號(hào)處理器(DSP)實(shí)施雙OS信號(hào)處理技

BenOS實(shí)時(shí)操作系統(tǒng)解密
Linux 與 DSP BIOS 雙 OS 信號(hào)處理技術(shù)
基于Linux的雙OS信號(hào)處理技術(shù)解析
采用 Linux 與 DSP/BIOS RTOS 實(shí)施雙 OS 信號(hào)處理技術(shù)
對(duì)實(shí)時(shí)操作系統(tǒng)特性的討論
實(shí)時(shí)操作系統(tǒng)的特點(diǎn)_實(shí)時(shí)操作系統(tǒng)的組成
實(shí)時(shí)操作系統(tǒng)和非實(shí)時(shí)操作系統(tǒng)的區(qū)別
什么是分時(shí)操作系統(tǒng),Linux屬于實(shí)時(shí)操作系統(tǒng)嗎?
實(shí)時(shí)操作系統(tǒng)
帶你認(rèn)識(shí)實(shí)時(shí)操作系統(tǒng)(rtos)

評(píng)論