Forum: Mikrocontroller und Digitale Elektronik Wofür und wann ein RTOS verwenden?


von Lutz (Gast)


Lesenswert?

Hallo,

gerade habe ich einige Threads gelesen, wo unterschiedlichste Ansichten 
zum Thema RTOS auf uC vertreten wurden. Leider habe ich irgendwie außer 
den Grunddefinitionen eines RTOS nicht wirklich was zum Thema finden 
können. Ich "spiele" noch in der kleinsten Anfängerliga und würde gerne 
wissen, ob das was wissenswertes für mich ist bzw. bald wird oder nicht.

1.) Wann bzw. wozu braucht man eines (Anwendungsbeispiele)?
2.) Was sind die Unterschiede z.B. zu Interruptroutinen?
3.) Wie unterscheidet sich praktisch die Programmierung?

Danke im Voraus
Lutz

von embedded-os (Gast)


Lesenswert?

schau mal, ob dir die Links in nachfolgender Seite weiter helfen.
Leider sind gute Erklärungen in Deutsch selten geworden ..

http://www.embedded-os.de/index.html?links.htm

von 3358 (Gast)


Lesenswert?

Mit dem Aufwand von unten kommend hat man irgendwann eine Statusmaschine 
im Main und einen Satz Interruptroutinen. Damit kann man eigentlich 
alles machen. Mit zunehmender kompexitaet der Statusmaschine wird diese 
schwerer wartbar. Dann wird es Zeit fuer ein RTOS. Der Preis ist der 
Determinismus, den man mit einer Statusmaschine noch hat und mit einem 
RTOS nicht mehr hat. Der Gewinn ist die Uebersichtlichkeit, die 
Wartbarkeit.

von Moritz E. (devmo)


Lesenswert?

Ich würde sagen RTOS fängt da an, wo es um Nebenläufigkeit geht, 
außerhalb der interrupt ebene? also ner einfachen prozess-liste die im 
main durchgegangen wird

von PS (Gast)


Lesenswert?

> Der Preis ist der
> Determinismus, den man mit einer Statusmaschine noch hat und mit einem
> RTOS nicht mehr hat.

Echtzeitbetriebssysteme sind aber dafür gemacht, dass man
damit Anwendungen mit exakt vorhersagbarem Zeitverhalten
implementieren kann.

von 3359 (Gast)


Lesenswert?

Ja, das Antwortverhalten ist definiert, nicht notwendigerweise 
sichergestellt. Aber man weiss nicht ob nach Prozess A der Prozess B 
dran kommt. Das RTOS macht selber was, aufgrund von Regeln, sprich 
Prioritaeten. Je nachdem ob man Preemptives Multitasking oder 
Kooperatives Multitasking hat.

von Stefan E. (sternst)


Lesenswert?

> Ja, das Antwortverhalten ist definiert, nicht notwendigerweise
> sichergestellt.

Kann es sein, dass du da irgendetwas verwechselst? Es ist doch gerade 
die entscheidende Eigenschaft eines RTOS, dass das Zeitverhalten in den 
gegebenen Grenzen sichergestellt ist. Wenn es nicht sichergestellt ist, 
dann ist es auch kein RTOS.

von Tim R. (octoate)


Lesenswert?

Stefan Ernst wrote:
>> Ja, das Antwortverhalten ist definiert, nicht notwendigerweise
>> sichergestellt.
> Kann es sein, dass du da irgendetwas verwechselst? Es ist doch gerade
> die entscheidende Eigenschaft eines RTOS, dass das Zeitverhalten in den
> gegebenen Grenzen sichergestellt ist. Wenn es nicht sichergestellt ist,
> dann ist es auch kein RTOS.
Das kommt drauf an welche Art von RTOS du hast. Bei einem Hard-RTOS ist 
das Antwortverhalten zeitkritisch und muss sichergestellt sein (bspw. 
Airbag - wenn der zu spaet aufgeht bringts nichts mehr). Bei einem 
Soft-RTOS kann eine Deadline auch mal ueberschritten werden, was aber 
keine grossen Konsequenzen nach sich zieht (bspw. Encodieren eines 
Videos, wird man nicht rechtzeitig mit dem Encodieren fertig, wird das 
Bild einfach verworfen).

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.