[elektro] RTOS kerdes

vajk fekete halaloszto at yahoo.co.uk
Tue May 27 23:50:09 CEST 2008


Huh

jol leegyszerusitve

Az elso es legfontosabb, hogy minden fuggvenyedrol tudnod kell, hogy reentrans vagy sem. Tehat kibirja ha egyszerre tobb peldany fut belole vagy sem. Egyik modszer ennek eleresere ha nem hasznal semmi globalis dolgot, csak stacken tart mindent. Masik ha a kritikus resznel valami szemafort hasznalva megoldod hogy a masodik es tovabbi hivasok varjak meg amig az elso vegez. Ha a rutin kicsi, es mindig fix ido alatt lefut, akkor ez teljesen jo lehet. (Ha megoldhato hogy soha nem veszik el a procit amig o fut, akkor meg egyszerubb)

Onnantol mar jatszas kerdese az egesz. Ha kulon processznek veszed a filekezelest, akkor valami bonyi uzenet alapu kommunikaciot kell a processzek kozott csinalj. Egyszeru esetben a filekezeles egy mezei lib, amit mindenki kenye kedvere hivogat, es belul meg van oldva hogy ne haljon bele ha egyszerre tobben hivjak.

vajk


----- Original Message ----
From: Fuzesi Arnold <arnold.fuzesi.lista at gmail.com>
To: elektro at tesla.hu
Sent: Tuesday, 27 May, 2008 11:25:03 PM
Subject: Re: [elektro] RTOS kerdes

sw Timer-eket hogyan celszeru csinalni?!

Kulon task durva erre...
A coroutine pont erre valo ennel a cuccnal?!
Task eroforrasaibol fut, de parhuzamosan vele?!

Illetve ha pl nezunk egy FAT kezelest...
f_open, f_printf, f_close  muvelet akarok vegrehajtani egyik task-bol.

A fenti fuggvenyeket hogyan hivom meg?

Ezek szinten mint task-ok fussanak vagy ha csak 1 taskbol hasznalom akkor
egyszeruen legyen resze a FAT kezeles az adott task forrasainak és kész,
sima fuggvenyhivas taszkon belul (linkeljem össze magyarul?)

Ha több task-bol szeretnem elerni akkor mivan!?
Az egesz FAT kezeles legyen egy task, a kulonbozo fuggvenyei a processek
(co-rutinok) amit semaphorozva kizarok egymastol...illetve ezeket lehet nem
is kell szemaforozni mert a process a  task valtozokat latja mind...

Hogyisvanez? :)

Fu, eleg ködös ez még... :-/

Köszi,
A.
----- Original Message ----- 
From: "Rancz Lajos" <csiga at fosch.com>
To: <elektro at tesla.hu>
Sent: 2008. május 27. 14:09
Subject: Re: [elektro] RTOS kerdes


Helló!

Sztem tök korrekt, több projektben is használtam már. ATmega-án 64k
(ATmega128, ATmega2560) feletti címzésnél volt vele gond, kicsit bele
kellett nyúlni. Az azért elmond vmit, hogy a AVR32 frameworkben az RTOS
az ez :-) Ott megnézheted a driver megvalósítást is, ugyanis egy rakat
driver meg van már csinálva :-) Amúgyí mutex kell erre az esetre.

Üdv,
Lajos

Fuzesi Arnold írta:
> Igen, az... :)
>
> Tapasztalat, ellenjavallat van? Korrekt cucc? (Annak nez ki...)
>
> Driveren?! Olyan progi részleteket amit több taszkból is el kell tudjak
> érni...okosan kizárva az egyidejű hozzáférést stb.
> TCP/IP stack, SD kartya kezeles FAT stb. ilyesmit.
>
> Arnold
> ----- Original Message ----- 
> From: "Rancz Lajos" <csiga at fosch.com>
> To: <elektro at tesla.hu>
> Sent: 2008. május 27. 13:34
> Subject: Re: [elektro] RTOS kerdes
>
>
> Helló!
>
> Az elnevezésekből gondolom FreeRTOS lesz az áldozat :-) Sztem ez a
> co-rutin igazából az ő találmányuk, nem nagyon láttam ilyesmit máshol.
> Alapvetően process-t és threadet szoktak megkülönböztetni, az alapvető
> különbség, hogy a processeknek külön, egymástól védett memóriaterületei
> vannak, míg a szálaknak nem (ugyanazon processek szálai elérik egymás
> változóit). Ahogy emlékszem a co-rution az vmiféle butított task, közös
> stackkel. Driveren mit értesz? IRQ-k queue-kon keresztül kommunikálnak a
> szálakkal, van erre spec. függvény, ami leehtővé teszi ezt.
>
> Üdv,
> Lajos
>
> Fuzesi Arnold írta:
>
>> Mi is a kulonbseg co-routine es a task kozott pontosan?!
>> Piszokul elfelejtettem :-(
>> Jegyzeteim meg otthon, neten meg "halandzsát" találtam csak hirtelen.
>>
>> Illetve ha drivert (pl TCP/IP, SDcard / FAT stb) akarok egy RTOS ala
>> csempészni akkor azt hogy szokás?!
>>
>> Sima Task-kent beteszem és kész...agyonszemaforozva hogy egyszerre csak
>> egy
>> masik task tudja elerni, vagy maskepp illik ezt?!
>> Queue-n keresztül? Hogy is csinaljak a nagyok?
>>
>> uC-ről beszélünk, elég végesek az erőforrások..
>>
>> Köszi,
>> Arnold
>>
>> -----------------------------------------
>>           elektro[-flame|-etc]
>>
>>
>
> -----------------------------------------
>           elektro[-flame|-etc]
>
> -----------------------------------------
>           elektro[-flame|-etc]
>

-----------------------------------------
          elektro[-flame|-etc]

-----------------------------------------
          elektro[-flame|-etc]



      __________________________________________________________
Sent from Yahoo! Mail.
A Smarter Email http://uk.docs.yahoo.com/nowyoucan.html


More information about the Elektro mailing list