0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

linux是實(shí)時(shí)系統(tǒng)還是分時(shí)操作系統(tǒng)

STM32嵌入式開發(fā) ? 來源:STM32嵌入式開發(fā) ? 2024-11-11 11:43 ? 次閱讀

大家平時(shí)玩單片機(jī)基本上對(duì)于μC/OS、FreeRTOS、ThreadX這些操作系統(tǒng)非常熟悉了,他們都屬于實(shí)時(shí)操作系統(tǒng)(RTOS),在工業(yè)領(lǐng)域比較廣泛;然而對(duì)于linux這樣的基于時(shí)間片劃分的非實(shí)時(shí)系統(tǒng)就難以滿足實(shí)時(shí)性需求,但是目前l(fā)inux社區(qū)已經(jīng)增加了較多版本的實(shí)時(shí)性補(bǔ)丁,給linux內(nèi)核打上實(shí)時(shí)補(bǔ)丁后其實(shí)時(shí)性會(huì)得到大幅度提升,那么我們一起來看看兩者的區(qū)別。

如下分享一下:“l(fā)inux是實(shí)時(shí)系統(tǒng)還是分時(shí)操作系統(tǒng)”

1 實(shí)時(shí)操作系統(tǒng)-RTOS

RTOS,英文全稱Real Time Operating System,即實(shí)時(shí)操作系統(tǒng)。

1.1 實(shí)時(shí)操作系統(tǒng)定義

實(shí)時(shí)操作系統(tǒng)(RTOS)是指當(dāng)外界事件或數(shù)據(jù)產(chǎn)生時(shí),能夠接受并以足夠快的速度予以處理,其處理的結(jié)果又能在規(guī)定的時(shí)間之內(nèi)來控制生產(chǎn)過程或?qū)μ幚硐到y(tǒng)作出快速響應(yīng),并控制所有實(shí)時(shí)任務(wù)協(xié)調(diào)一致運(yùn)行的操作系統(tǒng)。

因而,提供及時(shí)響應(yīng)和高可靠性是其主要特點(diǎn)。

實(shí)時(shí)操作系統(tǒng)有硬實(shí)時(shí)和軟實(shí)時(shí)之分,硬實(shí)時(shí)要求在規(guī)定的時(shí)間內(nèi)必須完成操作,這是在操作系統(tǒng)設(shè)計(jì)時(shí)保證的。

軟實(shí)時(shí)則只要按照任務(wù)的優(yōu)先級(jí),盡可能快地完成操作即可。我們通常使用的操作系統(tǒng)在經(jīng)過一定改變之后就可以變成實(shí)時(shí)操作系統(tǒng)。

實(shí)時(shí)操作系統(tǒng)是保證在一定時(shí)間限制內(nèi)完成特定功能的操作系統(tǒng)。例如,可以為確保生產(chǎn)線上的機(jī)器人能獲取某個(gè)物體而設(shè)計(jì)一個(gè)操作系統(tǒng)。在“硬”實(shí)時(shí)操作系統(tǒng)中,如果不能在允許時(shí)間內(nèi)完成使物體可達(dá)的計(jì)算,操作系統(tǒng)將因錯(cuò)誤結(jié)束。

在“軟”實(shí)時(shí)操作系統(tǒng)中,生產(chǎn)線仍然能繼續(xù)工作,但產(chǎn)品的輸出會(huì)因產(chǎn)品不能在允許時(shí)間內(nèi)到達(dá)而減慢,這使機(jī)器人有短暫的不生產(chǎn)現(xiàn)象。一些實(shí)時(shí)操作系統(tǒng)是為特定的應(yīng)用設(shè)計(jì)的,另一些是通用的。

一些通用目的的操作系統(tǒng)稱自己為實(shí)時(shí)操作系統(tǒng)。但某種程度上,大部分通用目的的操作系統(tǒng),如微軟的Windows NT或IBM的OS/390有實(shí)時(shí)系統(tǒng)的特征。這就是說,即使一個(gè)操作系統(tǒng)不是嚴(yán)格的實(shí)時(shí)系統(tǒng),它們也能解決一部分實(shí)時(shí)應(yīng)用問題。

1.2 實(shí)時(shí)操作系統(tǒng)的特征

1)多任務(wù);

2)有線程優(yōu)先級(jí)

3)多種中斷級(jí)別

小的嵌入式操作系統(tǒng)經(jīng)常需要實(shí)時(shí)操作系統(tǒng),內(nèi)核要滿足實(shí)時(shí)操作系統(tǒng)的要求。

1.3 實(shí)時(shí)操作系統(tǒng)的相關(guān)概念

(1)基本概念

代碼臨界段:指處理時(shí)不可分割的代碼。一旦這部分代碼開始執(zhí)行則不允許中斷打入;

資源:任何為任務(wù)所占用的實(shí)體;

共享資源:可以被一個(gè)以上任務(wù)使用的資源;

任務(wù):也稱作一個(gè)線程,是一個(gè)簡(jiǎn)單的程序。每個(gè)任務(wù)被賦予一定的優(yōu)先級(jí),有它自己的一套CPU寄存器和自己的??臻g。典型地,每個(gè)任務(wù)都是一個(gè)無限的循環(huán),每個(gè)任務(wù)都處在以下五個(gè)狀態(tài)下:休眠態(tài),就緒態(tài),運(yùn)行態(tài),掛起態(tài),被中斷態(tài);

任務(wù)切換:將正在運(yùn)行任務(wù)的當(dāng)前狀態(tài)(CPU寄存器中的全部?jī)?nèi)容)保存在任務(wù)自己的棧區(qū),然后把下一個(gè)將要運(yùn)行的任務(wù)的當(dāng)前狀態(tài)從該任務(wù)的棧中重新裝入CPU的寄存器,并開始下一個(gè)任務(wù)的運(yùn)行;

內(nèi)核:負(fù)責(zé)管理各個(gè)任務(wù),為每個(gè)任務(wù)分配CPU時(shí)間,并負(fù)責(zé)任務(wù)之間通訊。分為不可剝奪型內(nèi)核于可剝奪型內(nèi)核;

調(diào)度:內(nèi)核的主要職責(zé)之一,決定輪到哪個(gè)任務(wù)運(yùn)行。一般基于優(yōu)先級(jí)調(diào)度法;

(2)關(guān)于優(yōu)先級(jí)的問題

任務(wù)優(yōu)先級(jí):分為優(yōu)先級(jí)不可改變的靜態(tài)優(yōu)先級(jí)和優(yōu)先級(jí)可改變的動(dòng)態(tài)優(yōu)先級(jí);

優(yōu)先級(jí)反轉(zhuǎn):優(yōu)先級(jí)反轉(zhuǎn)問題是實(shí)時(shí)系統(tǒng)中出現(xiàn)最多的問題。共享資源的分配可導(dǎo)致優(yōu)先級(jí)低的任務(wù)先運(yùn)行,優(yōu)先級(jí)高的任務(wù)后運(yùn)行。解決的辦法是使用“優(yōu)先級(jí)繼承”算法來臨時(shí)改變?nèi)蝿?wù)優(yōu)先級(jí),以遏制優(yōu)先級(jí)反轉(zhuǎn)。

(3)互斥

雖然共享數(shù)據(jù)區(qū)簡(jiǎn)化了任務(wù)之間的信息交換,但是必須保證每個(gè)任務(wù)在處理共享共享數(shù)據(jù)時(shí)的排他性。使之滿足互斥條件的一般方法有:關(guān)中斷,使用測(cè)試并置位指令(TAS),禁止做任務(wù)切換,利用信號(hào)量。

因?yàn)椴捎脤?shí)時(shí)操作系統(tǒng)的意義就在于能夠及時(shí)處理各種突發(fā)的事件,即處理各種中斷,因而衡量嵌入式實(shí)時(shí)操作系統(tǒng)的最主要、最具有代表性的性能指標(biāo)參數(shù)無疑應(yīng)該是中斷響應(yīng)時(shí)間了。中斷響應(yīng)時(shí)間通常被定義為:

中斷響應(yīng)時(shí)間=中斷延遲時(shí)間+保存CPU狀態(tài)的時(shí)間+該內(nèi)核的ISR進(jìn)入函數(shù)的執(zhí)行時(shí)間。

中斷延遲時(shí)間=MAX(關(guān)中斷的最長(zhǎng)時(shí)間,最長(zhǎng)指令時(shí)間) + 開始執(zhí)行ISR的第一條指令的時(shí)間。

2 分時(shí)操作系統(tǒng)-TSOS

TSOS,英文全稱Time-sharing Operating System,即分時(shí)操作系統(tǒng)。

使一臺(tái)計(jì)算機(jī)同時(shí)為幾個(gè)、幾十個(gè)甚至幾百個(gè)用戶服務(wù)的一種操作系統(tǒng)叫分時(shí)操作系統(tǒng)。把計(jì)算機(jī)與許多終端用戶連接起來,分時(shí)操作系統(tǒng)將系統(tǒng)處理機(jī)時(shí)間與內(nèi)存空間按一定的時(shí)間間隔,輪流地切換給各終端用戶的程序使用。

由于時(shí)間間隔很短,每個(gè)用戶的感覺就像他獨(dú)占計(jì)算機(jī)一樣。分時(shí)操作系統(tǒng)的特點(diǎn)是可有效增加資源的使用率。例如UNIX系統(tǒng)就采用剝奪式動(dòng)態(tài)優(yōu)先的CPU調(diào)度,有力地支持分時(shí)操作。

產(chǎn)生分時(shí)系統(tǒng)是為了滿足用戶需求所形成的一種新型 OS 。它與多道批處理系統(tǒng)之間,有著截然不同的性能差別。用戶的需求具體表現(xiàn)在以下幾個(gè)方面: 人—機(jī)交互 共享主機(jī) 便于用戶上機(jī)

2.1 分時(shí)系統(tǒng)的基本思想

時(shí)間片:是把計(jì)算機(jī)的系統(tǒng)資源(尤其是 CPU時(shí)間)進(jìn)行時(shí)間上的分割,每個(gè)時(shí)間段稱為一個(gè)時(shí)間片,每個(gè)用戶依次輪流使用時(shí)間片。

分時(shí)技術(shù):把處理機(jī)的運(yùn)行時(shí)間分為很短的時(shí)間片,按時(shí)間片輪流把處理機(jī)分給各聯(lián)機(jī)作業(yè)使用。

分時(shí)操作系統(tǒng):是一種聯(lián)機(jī)的多用戶交互式的操作系統(tǒng)。一般采用時(shí)間片輪轉(zhuǎn)的方式使一臺(tái)計(jì)算機(jī)為多個(gè)終端服務(wù)。對(duì)每個(gè)用戶能保證足夠快的響應(yīng)時(shí)間,并提供交互會(huì)話能力。

設(shè)計(jì)目標(biāo):對(duì)用戶的請(qǐng)求及時(shí)響應(yīng),并在可能條件下盡量提高系統(tǒng)資源的利用率。

適合辦公自動(dòng)化、教學(xué)及事務(wù)處理等要求人機(jī)會(huì)話的場(chǎng)合。

2.2 工作方式

一臺(tái)主機(jī)連接了若干個(gè)終端;每個(gè)終端有一個(gè)用戶在使用;交互式地向系統(tǒng)提出命令請(qǐng)求;系統(tǒng)接受每個(gè)用戶的命令;采用時(shí)間片輪轉(zhuǎn)方式處理服務(wù)請(qǐng)求;并通過交互方式在終端上向用戶顯示結(jié)果;用戶根據(jù)上步結(jié)果發(fā)出下道命令

分時(shí)系統(tǒng)實(shí)現(xiàn)中的關(guān)鍵問題:及時(shí)接收。及時(shí)處理。

2.3 特征

交互性:用戶與系統(tǒng)進(jìn)行人機(jī)對(duì)話。

多路性:多用戶同時(shí)在各自終端上使用同一CPU。

獨(dú)立性:用戶可彼此獨(dú)立操作,互不干擾,互不混淆。

及時(shí)性:用戶在短時(shí)間內(nèi)可得到系統(tǒng)的及時(shí)回答。

影響響應(yīng)時(shí)間的因素:終端數(shù)目多少、時(shí)間片的大小、信息交換量、信息交換速度。

3 兩者區(qū)別

RTOS和TSOS各有各的特點(diǎn),RTOS一般用于相對(duì)低速的MCU,比如運(yùn)動(dòng)控制類、按鍵輸入等動(dòng)作要求實(shí)時(shí)處理的系統(tǒng),一般要求ms級(jí),甚至us級(jí)響應(yīng)。 分時(shí):現(xiàn)在流行的PC,服務(wù)器都是采用這種運(yùn)行模式,即把CPU的運(yùn)行分成若干時(shí)間片分別處理不同的運(yùn)算請(qǐng)求。 實(shí)時(shí):一般用于單片機(jī)上,比如電梯的上下控制中,對(duì)于按鍵等動(dòng)作要求進(jìn)行實(shí)時(shí)處理。

4 最后

通過以上分析,可以明確linux是分時(shí)系統(tǒng),不過可以改成實(shí)時(shí)的如:ucLinux就是linux修改而來的實(shí)時(shí)系統(tǒng),至于他們的區(qū)別,可以引用百度中的類似回答: 分時(shí)系統(tǒng)是一個(gè)系統(tǒng)可以同時(shí)為兩個(gè)或兩個(gè)以上的賬戶服務(wù)! 實(shí)時(shí)系統(tǒng)是能立即對(duì)指令做出反應(yīng)的操作系統(tǒng)!微軟的常見系統(tǒng)不能吧!而且還死機(jī)!戰(zhàn)斗機(jī)中的操作系統(tǒng)就是實(shí)時(shí)的系統(tǒng),想想如果別人打仗時(shí)戰(zhàn)斗機(jī)中的電腦反應(yīng)的是飛行員上一條指令或死機(jī)了,誰還敢開這架飛機(jī)呢?

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11215

    瀏覽量

    208740
  • 操作系統(tǒng)
    +關(guān)注

    關(guān)注

    37

    文章

    6698

    瀏覽量

    123147
  • 實(shí)時(shí)系統(tǒng)

    關(guān)注

    0

    文章

    37

    瀏覽量

    14449

原文標(biāo)題:Linux是實(shí)時(shí)操作系統(tǒng)嗎?

文章出處:【微信號(hào):c-stm32,微信公眾號(hào):STM32嵌入式開發(fā)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    國(guó)產(chǎn)實(shí)時(shí)操作系統(tǒng):和RT-Linux,Zephyr的實(shí)時(shí)性對(duì)比

    基于RT-Thread內(nèi)核,并具備POSIX用戶態(tài)運(yùn)行環(huán)境的高性能實(shí)時(shí)操作系統(tǒng)。它類似Linux、Windows的架構(gòu),具備用戶態(tài)和內(nèi)核態(tài)(并相分離),用戶態(tài)具備全地址空
    的頭像 發(fā)表于 11-12 01:07 ?111次閱讀
    國(guó)產(chǎn)<b class='flag-5'>實(shí)時(shí)</b><b class='flag-5'>操作系統(tǒng)</b>:和RT-<b class='flag-5'>Linux</b>,Zephyr的<b class='flag-5'>實(shí)時(shí)</b>性對(duì)比

    linux操作系統(tǒng)安裝步驟 linux操作系統(tǒng)的特點(diǎn)及組成

    Linux操作系統(tǒng)安裝步驟 Linux操作系統(tǒng)是一種開源的操作系統(tǒng),它以其穩(wěn)定性、安全性和靈活性而聞名。以下是安裝
    的頭像 發(fā)表于 10-21 11:24 ?417次閱讀

    簡(jiǎn)單認(rèn)識(shí)RTOS實(shí)時(shí)操作系統(tǒng)

    RTOS(Real Time Operating System,實(shí)時(shí)操作系統(tǒng))是一種專門設(shè)計(jì)用于在嚴(yán)格時(shí)間限制內(nèi)處理任務(wù)的操作系統(tǒng)。它以其高實(shí)時(shí)性、多任務(wù)處理能力和資源管理能力在工業(yè)自
    的頭像 發(fā)表于 08-20 11:20 ?2138次閱讀

    嵌入式實(shí)時(shí)操作系統(tǒng):Intewell操作系統(tǒng)與VxWorks操作系統(tǒng)有啥區(qū)別

    Intewell操作系統(tǒng)和VxWorks操作系統(tǒng)都是工業(yè)領(lǐng)域常用的操作系統(tǒng),它們各有特點(diǎn)和優(yōu)勢(shì)。以下是它們之間的一些主要區(qū)別:
    的頭像 發(fā)表于 07-08 14:16 ?346次閱讀
    嵌入式<b class='flag-5'>實(shí)時(shí)</b><b class='flag-5'>操作系統(tǒng)</b>:Intewell<b class='flag-5'>操作系統(tǒng)</b>與VxWorks<b class='flag-5'>操作系統(tǒng)</b>有啥區(qū)別

    工業(yè)實(shí)時(shí)操作系統(tǒng)對(duì)比:鴻道Intewell跟rt-linux有啥區(qū)別

    Intewell和RT-Linux是兩種不同的實(shí)時(shí)操作系統(tǒng)(RTOS),它們具有各自獨(dú)特的特點(diǎn)和優(yōu)勢(shì)。以下是Intewell操作系統(tǒng)的一些關(guān)鍵特性,以及與RT-
    的頭像 發(fā)表于 07-03 10:00 ?422次閱讀
    工業(yè)<b class='flag-5'>實(shí)時(shí)</b><b class='flag-5'>操作系統(tǒng)</b>對(duì)比:鴻道Intewell跟rt-<b class='flag-5'>linux</b>有啥區(qū)別

    AURIX3G可以使用Linux操作系統(tǒng)嗎?

    即使在 AURIX3G 中,也可以使用 Linux 操作系統(tǒng)嗎?
    發(fā)表于 05-22 07:12

    請(qǐng)問STM32上有跑RTOS實(shí)時(shí)操作系統(tǒng)的嗎?

    親們最近在鼓搗實(shí)時(shí)操作系統(tǒng),有什么好的經(jīng)驗(yàn)請(qǐng)不吝賜教,嘿嘿。 我在摸索uT/OS。社區(qū)有在STM32幾款芯片上的移植。
    發(fā)表于 05-16 07:16

    微內(nèi)核實(shí)時(shí)操作系統(tǒng)的介紹

    微內(nèi)核實(shí)時(shí)操作系統(tǒng)(Microkernel Real-Time Operating System, μRTOS)是一種專為實(shí)時(shí)設(shè)計(jì)的操作系統(tǒng)。它采用微內(nèi)核架構(gòu),以提高
    的頭像 發(fā)表于 05-11 17:13 ?457次閱讀

    帶你認(rèn)識(shí)實(shí)時(shí)操作系統(tǒng)(rtos)

    實(shí)時(shí)操作系統(tǒng)(RTOS)是為嵌入式系統(tǒng)實(shí)時(shí)應(yīng)用提供一個(gè)穩(wěn)定、可預(yù)測(cè)和高效運(yùn)行環(huán)境的操作系統(tǒng)。實(shí)時(shí)
    的頭像 發(fā)表于 04-16 16:30 ?1104次閱讀
    帶你認(rèn)識(shí)<b class='flag-5'>實(shí)時(shí)</b><b class='flag-5'>操作系統(tǒng)</b>(rtos)

    再談嵌入式實(shí)時(shí)操作系統(tǒng)

    程序的可移植性得到了增強(qiáng),系統(tǒng)開發(fā)的工作量減輕的同時(shí)也提高了開發(fā)效率。對(duì)實(shí)時(shí)性和可靠性日益增長(zhǎng)的要求正在塑造某些現(xiàn)代領(lǐng)域的嵌入式實(shí)時(shí)操作系統(tǒng)的發(fā)展方向,例如航空航天、工業(yè)控制、汽車電子
    的頭像 發(fā)表于 04-09 17:27 ?718次閱讀
    再談嵌入式<b class='flag-5'>實(shí)時(shí)</b><b class='flag-5'>操作系統(tǒng)</b>

    Linux操作系統(tǒng)上的射頻測(cè)試模式應(yīng)用指南

    電子發(fā)燒友網(wǎng)站提供《Linux操作系統(tǒng)上的射頻測(cè)試模式應(yīng)用指南.pdf》資料免費(fèi)下載
    發(fā)表于 02-19 09:39 ?0次下載
    <b class='flag-5'>Linux</b><b class='flag-5'>操作系統(tǒng)</b>上的射頻測(cè)試模式應(yīng)用指南

    Linux操作系統(tǒng)中如何按下PCIe的復(fù)位鍵

    Linux操作系統(tǒng)中,看如何按下PCIe的復(fù)位鍵
    的頭像 發(fā)表于 01-20 09:31 ?1415次閱讀
    <b class='flag-5'>Linux</b><b class='flag-5'>操作系統(tǒng)</b>中如何按下PCIe的復(fù)位鍵

    詳解實(shí)時(shí)操作系統(tǒng)和非實(shí)時(shí)操作系統(tǒng)

    實(shí)時(shí)操作系統(tǒng),當(dāng)外界事件和數(shù)據(jù)產(chǎn)生時(shí),系統(tǒng)能以足夠快的速度予以處理,其處理結(jié)果能在規(guī)定的時(shí)間內(nèi)控制生產(chǎn)結(jié)果或?qū)?b class='flag-5'>系統(tǒng)做出響應(yīng),并控制所有實(shí)時(shí)
    的頭像 發(fā)表于 12-26 09:54 ?4387次閱讀
    詳解<b class='flag-5'>實(shí)時(shí)</b><b class='flag-5'>操作系統(tǒng)</b>和非<b class='flag-5'>實(shí)時(shí)</b><b class='flag-5'>操作系統(tǒng)</b>

    什么是實(shí)時(shí)操作系統(tǒng)(RTOS)

    實(shí)時(shí)操作系統(tǒng)(RTOS)是一種專為實(shí)時(shí)應(yīng)用程序設(shè)計(jì)的操作系統(tǒng)實(shí)時(shí)應(yīng)用程序需要在特定時(shí)間內(nèi)做出預(yù)測(cè)的響應(yīng),因此 RTOS 專注于提供對(duì)時(shí)間約
    的頭像 發(fā)表于 11-23 17:14 ?5497次閱讀