嵌入式實時作業系統英文為
embedreal time operatingsystem
,簡稱rtos
。與pc
機上的通用的作業系統
windows
或是linux
相比,rtos
精簡,實時性強。不同的
rtos
根據效能特點適應於航天航空、生物醫學、工業控制、消費電子等行業。
rtos是一種架構。歷史以來,任何乙個階段都有一定的軟體架構在主宰軟體行業。最開始的架構是前後臺的超迴圈模式。
while(1)大迴圈是後台,中斷非同步處理是前台。這種結構直至現在也很多公司使用,適合簡單的、資源不多的微控制器做一些簡單的控制處理。但是如果需要處理多個的任務,這種超迴圈模式將變得難以控制,而且實時性也變的十分差,乙個任務卡住了,下個任務執行時間難以**,任何優秀的產品都是離不開現實需求,於是
rtos孕育而生。
rtos以多工,實時性強,提供多種服務為軟體工程師解決了超迴圈問題。對於
rtos,乙個任務的卡死,並不影響另乙個任務的執行。
rtos每個任務都有機會占有
cpu全部的資源
(單核情況
),使用
rtos的使用者只需要關心怎樣去規劃任務,包括任務的優先順序、時間片,以及任務之間的同步、通訊就可以。
概念解析:
1. 任務、程序、執行緒
linux中核心層的程序等於執行緒,使用者層的程序是由執行緒組成的,同一程序的各個執行緒可以使用該程序的全部資源(比如訊息佇列、訊號量等)。
2. 軟實時和硬實時
軟實時:盡可能快地完成操作。
硬實時:能夠在指定的期限完成實時任務(即便在最壞的處理負載下也能如此)的作業系統,超過截止期限後將造成災難性後果。
軟實時對於任務的平均響應時間要低於某個值
(deadline),而硬實時是在最壞的情況下對於任務的響應時間要低於某個值。
在rtos中程序等於執行緒等於任務,一般
rtos是沒有分層的
(後面會提到為什麼會這樣
),一般稱作任務。
作業系統在作者看來就是為使用者做好一些服務,比如提供任務切換、訊號量、訊息佇列、互斥鎖等服務;在使用者看來就是管理軟硬體,寫好任務,使用作業系統提供的
api,讓作業系統去排程任務。
Docker基本原理概述
docker基本原理概述 docker是乙個用於開發,交付和執行應用程式的開放平台。docker能夠將應用程式與基礎架構分開,從而可以快速交付軟體。借助docker,可以以與管理應用程式相同的方式來管理基礎架構。通過利用docker的快速交付,測試和部署 的方法,可以顯著減少編寫 和在生產環境中執行...
mysql的基本原理 Mysql 基本原理
mysql 基本原理 mysql是一種關聯式資料庫管理系統,關聯式資料庫將資料儲存在不同的表中,而不是將所有資料放在乙個大倉庫內,這樣就增加了速度並提高了靈活性 ysql是資料庫登入命令 uroot預設超級使用者登入 p 預設沒密碼 中寫密碼 mysqladmin uroot password 12...
8 2 1 基本原理
乙個舞台動畫物件在包含許多舞台資訊 出現在何處,佔多大面積,處在什麼角度,是否可見 這些資訊分別儲存在動畫物件的屬性中。在 中讀取這些屬性可以了解物件的位置 大小 角度等狀態資訊 修改這些屬性可以改變物件的位置 大小 角度等狀態。如果從資料的角度去理解,動畫就是在固定時間間隔點不斷修改動畫物件某項屬...