RTOS

Marek Pavlu marekpavlu@mybox.cz
Pátek Květen 6 16:41:37 CEST 2005


Zdravim,


Klady:
- vyresene thready, nemusite se neumetelsky matlat s jejich radoby zavedenim
s pomoci preruseni nebo jinak, coz vede ke znacne neprehlednosti kodu
- prehlednost kodu:)))
- vyresene periferie, jen si zavolat funkce, ale dle podpory daneho RTOS
- jednoduse pouzitelne casova spozdeni
- system jako celek nemusi cekat na dokonceni jedne blbosti a muze zatim
louskat něco jineho, třeba slozity vypocet, který není casove kriticky
- management threadu(pokud je dobre napsany) umozni priradit prioritu
vykonavani threadu

Vetsinou toto zmine  implementovat v aplikaci, kde to je zrovinka potreba,
da hodne namahy. Pritom v další aplikaci to delate vlastne od nuly i presto,
ze je to velice podobne.

Zapory:
- vetsi naroky na programatora
- vetsi naroky na system - pamet dat, programu, ale sve si bere i prepnuti
kontextu(prehozeni cinnosti na jiny thread) a rozhodnuti o tom, kdo bude
pripusten k cinnosti
- obcas se muzete zaplest ve vazbe mezi procesy(prvni ceka na druhy a druhy
na ten prvni a jste v haji), detekce kolizi je spis komfort nez realita:((.
- problem navrhu managementu threadu v OS bezneho programatora na PC
nezajima, protože s tim nic nenadela, ale na mikrokontrolerech je to dosti
kriticke místo. Nekde je potreba zajistit vystridani vsech threadu za urcity
cas. Nekde zase jde o to, aby se preferovane thready provedly v nejkratsim
moznem case.
- zavedenim priorit taky muze thread s nizkou prioritou navzdy umrit, pokud
je vypocetni narocnost prioritniho threadu vsoka, takze musite volit opatrne
priority s ohledem na situaci. Často však jen podle oka, je to jak vesteni v
kristalove kouli:))).
- Vyber typu managementu threadu(kazdy RTOS ma dano sudickou:))),
preemptivni nepreeemptivni. Nazvy divoke, ale vyznam jednoduchy. Jde vlastne
o to, kdy se provede prepnuti kontextu(prechod na novy thread). Tech
moznosti není mnoho, bud jen tehdy, kdyz
a) schvalne zavolate prepnuti(jde-li to) nebo když
b) se musí cekat na dokonceni systemoveho volani(trebas cteni z UARTu nebo
jen Wait(x);
b)Nebo jeden timer procesoru nastavite na preruseni po dane dobe a "nasilne"
seberete soucasnemu threadu pravo pracovat a prepnete dalsi.


V neposledni rade bych nepouzil RTOS, který není volne siritelny nebo nema
pristupne veskere zdrojove kody. Obcas vede cesta jen přes vl;astni uprava
RTOS! Ono to vypada, ze to ma plno zaporu, ale ty klady jsou pro "dane"
pouziti vždy silnejsi:)))). Jen je to svinska drina, nez se zorientujete v
tom, co a jak ve slozitejsim RTOS funguje. Ale pak si nedovedete predstavit
praci bez nez a klidne jej s ohledem na nizkou pracnost a prehlednost date i
do uplne jednoduche hracky, kde by ani nebyl potreba:))).

Pokud vahate nad tim, jestli to ma smysl pro maly MCU, tak se mrknete na
projekt Ethernut(www.ethernut.de) a s nim kompatibilni projekt CharonII od
www.HWgroup.cz, ktery bezi na Atmega128, uridi Ethernet controlller a jeste
toho zvladne docela dost udelat:))). Super je, ze je to free projekt, takze
dostanete vse od jadra RTOS az po Ethernet nadstavbu RTOS:))))










S pozdravem,
		Marek Pavlu

// -----Original Message-----
// From: hw-list-bounces@hw.cz [mailto:hw-list-bounces@hw.cz] On Behalf Of
// Michal Krestan
// Sent: Monday, May 02, 2005 8:16 PM
// To: HW-news
// Subject: RTOS
// 
// 
// 
// Chtel bych se zeptat, jaky tu ma kdo nazor na pouziti RTOS. Ma cenu
// pouzivat
// RTOS u mene narocnych aplikaci, kde jako MCU je napr. pomalejsi ARM? Jake
// to
// prinasi vyhody a nevyhody? Ja nic takoveho zatim nepotreboval, protoze
// kdyz
// jsem potreboval OS, tak jsem pouzil Linux, ale to uz se jednalo vetsinou
// o
// dost rozsahlou aplikaci. Je RTOS vyhodny i pro napr. 8bit mcu, jako je
// AVR,
// etc.?
// 
//         Michal
// 
// _______________________________________________
// HW-list mailing list  -  sponsored by www.HW.cz
// Hw-list@list.hw.cz
// http://list.hw.cz/mailman/listinfo/hw-list
---
avast! Antivirus: Odchozi zprava cista.
Virova databaze (VPS): 0518-3, 04/05/2005
Testovano: 6.5.2005 1:46:50
avast! (c) copyright 2000-2003 ALWIL Software.
http://www.avast.com







Další informace o konferenci Hw-list