RTOS systemy

Martin Malý martin.maly@gmail.com
Pondělí Leden 10 16:51:16 CET 2005


Prilis mnoho otazek na prilis maly prostor

Ale ve strucnosti: Je treba alespon nejaky multitasking. Pokud budete
pouzivat ty "cekaci body", tak pouzivate tzv. kooperativni MT, ktery
je zalozeny na tom, ze slusna aplikace cas od casu zavola jadro OS,
ktere ma sanci prepnout na jiny proces. Problem je ve chvili, kdy
nejaka aplikace prestane byt "slusna" (treba se zacykli). Pak to
lehne. (Kooperativni MT pouzivaly Win 3.)

Druhy zpusob MT je tzv. preemptivni multitasking - tam je procesum
pridelovan procesor po urcitych casovych usecich, jakmile cas dobehne,
prijde preruseni, tim se zavola jadro OS a to ma sanci prepnout na
jiny proces.

V podstate nejdulezitejsi cast jadra OS je dobre navrzena sprava
pameti a procesu, tedy to, co dokaze zabranit procesum, aby si
navzajem prepsaly data.

Preruseni po 300T je mozna hodne rychle - znamena to, ze kazdy proces
pobezi vzdy (300 - X) T, kde X je pocet cyklu potrebnych k obsluze
preruseni, tedy defakto k ulozeni stavu jednoho procesu, obnoveni
stavu jineho a navrat. a jak dlouho to bude trvat zalezi na tom, jak
bude navrzena sprava tech procesu, tedy co bude potreba ulozit...

Jinak doporucuju skvelou knihu, uz sice 30 let starou, ale stale
platnou: S.E.Madnick - J. J. Donovan: Operacni systemy





On Mon, 10 Jan 2005 16:27:50 +0100, Michal HW <michalgregor@centrum.cz> wrote:
> Jak pracuji RTOS systemy? Lisi se to na Linuksu Oknech a jednocipech?
> Hrubou predstavu uz mam, spis mne zajima prepinani uloh a deleni vykonu.
> Dejme tomu za mam ulohu ktera neustale projizdi databazi a provadi vypocty.
> (data se do ni zapisuji v jinych vlaknech)
> Nema zadnou cekaci smycku - jede porad dokola. RTOS sam tuto ulohu nasilne
> prerusi a spusti jine vlakno nebo tam musim vlozit urcite cekaci body nebo
> to provadi kompilator?
> 
> Jak by si poradil RTOS na jednocipu s prerusenim co 300cyklu (SW UART,
> PWM...) Jde to vubec? Umoznuji RTOS systemy pouzivat vlastni programy v
> preruseni
> 
>  Ted pouzivam vlastni RTOS. A to jak v ASM, tak v C. V podstatne mam
> jednotlive vlakna programu rozdelene na nekolik casti. Kazde muze trvat
> urcity pocet cyklu. Je to ale pouzitelne pro
> jednoduchssi aplikace tak do 40 poduloh - vznika v tom pekny chaos.U
> slozitejsich aplikaci si to zatim
> nedovedu predstavit.
> 
>  Michal Gregor
> 
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list@list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
>



Další informace o konferenci Hw-list