Re: echtzeit

From: Jens Rehsack <rehsack(at)liwing.de>
Date: Sun, 02 Feb 2003 17:31:05 +0100

Clemens Hermann wrote:
> Am 02.02.2003 um 16:41:38 schrieb jens:
>
> Moin,
>
>
>>danke für die info, aber meines wissens gibt es unter linux ahrte echtzeit.
>
>
> Unter Linux vielleicht (würde mich aber durchaus überraschen), aber sicher
> nicht unter einem Linux, das auf einem PC läuft.
Da gibt es offensichtlich ein Missverständnis: RTLinux ist kein
Echtzeit-System im Linux, sondern ein Echtzeitkernel, der alle seine
Tasks im RAM hält und als einen seiner Tasks einen Linux-Kernel hat.
Damit kann man auf dem System Aktionen initiieren, Echtzeit-Tasks laden,
etc.

Des weiteren kann ein Linux Task Daten in einen Echtzeittask
reinschieben oder rausholen, kurz: das Linux wird als User Interface zum
Echtzeitsystem benutzt.

> auf PC-Hardware ist keine "harte Echtzeit" realisierbar. Unter harter Echtzeit
Warum nicht? Der Prozessor und der Speicher sind IMHO schnell genug.
Lade deine Aktionen und Protokolle in einen Speicherbereich und
initialisiere alle benötigten Variablen, etc.. Starte dein System und es
wird so funktionieren, wie programmiert.

> versteht man garantierte Zeitschranken, also nicht unbedingt besonders
> schnelle Systeme, sondern Systeme, die zur Erledigung einer vorgegebenen
> Aufgabe garantert nicht länger als X (z.B. 0,1 Sekunden) benötigen. Um das zu
> gewährleisten darf man nicht nur glauben, dass man unter der Schranke bleibt,
> sondern man muss es z.B. für den Worst case (den man vorher kennen muss)
Natürlich muss der Programmierer auf sowas aufpassen. Das muss er/sie/es
aber auch auf nicht-PC-Hardware.

> durchspielen. Selbst wenn Du mit PC-Hardware zeitlich nicht-deterministische
> Zugriffe wie z.B. Festplattenzugriffe eliminierst kannst Du den worst case
> nicht bestimmen. Praktisch wird das dann dadurch gelöst, dass man einen Rechner
Es sei denn, man hat Kontrolle über den Scheduler, der im RT-Linux ein
RT-Scheduler ist, den man in benötigtem Maße kontrollieren kann. Im
Zweifel kann man dafür immer noch ein Multiprozessor-System nehmen,
wobei HW-IRQ's auf Proc-A und RT-Actions auf Proc-B ausgeführt werden.
Dafür sollte auch ein Dual-P90 System reichen, dass es mittlerweile für
30 € bei ebay gibt.

> eine Aufgabe einfach recht oft durchführen läßt, davon den worst case ermittelt
> und einen Faktor (z.B. worstcase * 10) draufrechnet. Damit wird auch ein PC-System
> praktisch so gut wie nie die vorgegebene Schranke unterschreiten, aber nicht
> weil es hart echtzeit-fähig wäre, sondern nur, weil es (hoffentlich) sehr
> unwahrscheinlich ist, dass die Schranke jemals überschritten wird.
> Du hast leider nicht erwähnt was genau Du vor hast, aber da ein System nie in
> Gänze Echtzeit fähig sein muß, sondern nur kritische Komponenten empfiehlt
> sich meist, die zeitkritischen Teile auf einen wirklich echtzeitfähigen System
> (z.B. Microcontroller) zu implementieren und die sonstige Steuerung z.B. auf
> einem PC.
>

So long,
Jens

To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Sun 02 Feb 2003 - 17:32:05 CET

search this site