[ag-automation] neuer Mitleser

Wolfgang Denk wd at denx.de
Thu Apr 6 14:29:29 CEST 2006


Hallo Herr Wild,

in message <4434EBED.3050505 at osadl.org> you wrote:
>
> Im Wesentlichen geht es um die Standardisierten Schnittstellen. In dem
> Fall des Echtzeitbetriebssystem eben um POSIX. Aber Schnittstellen sind
> eben nicht von alleine lauffähig. Uns als Anwender geht es darum
> Applikationen von Zulieferanten zu bekommen, die auf einem
> Betriebssystem, welches diesen Schnittstellen genügt, auch sofort

Dem stimmeich uneingeschränkt zu. Das ist das erklärte Ziel, und  das
oll es bleiben.

> laufen. Unsere Erfahrungen mit RTAI und dem dortigen Versionschaos waren
> ernüchternd. Desweiteren war die Funktionalität der APIs für unseren
> Anwendungsfall mehr als schlecht.

Auch hier haben Sie völlig recht.

> Ergebnis war, dass wir als Homag auf keinen Fall einen Dual Kernel
> Ansatz akzeptieren, weil wir dadurch die Vorteile am Linux Mainstream
> partizipieren zu können, nicht gewährleistet sehen.

Sie können  Xenomai  nicht  mit  RTAI  vergleichen.  Werder  von  der
Implementierung, noch von der Qualität oder den Interfaces.

Und von einer unbefriedigenden Implementierung sollte man m. E.  auch
nicht auf ganze Konzeptklassen schließen.

Aber das ist eigentlich off topic - Sie als *Anwender* soll es ja ge-
rade NICHT interessieren, was für ein Motor unter  der  Haube  läuft.
Wenn  er  die vereinbarten Schnittstellen bietet und seine Arbeit zu-
verlässig tut, kann es Ihnen letztlich egal sein, welche  Technologie
verwendet wird. das ist *unser* Thema als Softwareentwickler.

> Wir wollen Schnittstellen festlegen. Aber wir wollen auch eine
> Referenzimplementierung, die diese Schnittstellen befriedigt und
> funktioniert. Und wir wollen dass die Anwender einen leichten Einstieg

Ja. Und wir wollen sicherstellen, daß es offene  Schnittstellen  sind
und  eine  auf Xenomai basierte Referenzimplementierung bereistellen,
die diese Schnittstellen befriedigt und funktioniert.

> haben und schnell zum Erfolg kommen. Wenn ich die Fragmentierung der
> Echtzeit-Communities sehe so ist es für mich als Entscheider sehr
> kritisch, mich auf einen kleine Community zu verlassen, die neben der
> Echtzeit auch noch User Space Libraries "from scratch" implementieren
> und pflegen muß.

Das ist genau ein Punkt, warum wir uns für Xenomai entschieden haben.
Ich habe dabei z. B. API's wie RTDM, die Skins für VxWorks usw.,  den
RT-Simulator  usw.  im Auge. Aber noch einmal: das ist eigentlich off
topic hier. Ich will niemand von den Vorteilen der einen oder anderen
Lösung überzeugen. Ich will nur, daß wir - wie in der  Free  Software
Community  relativ  häufig  anzutreffen  -  das  gleiche  Problem mit
verschiedenen Implementierungen angehen können. Das schedet  niemand,
kann aber dem einen oder anderen nützlich sein.

Wenn Homag aus welchen Gründen auch immer eine der  Implementierungen
nicht mag, ist das völlig ok.


> Sicher sind alternative Implementierungen möglich. Aber ich denke gerade
> für Entscheider in der Automatisierungstechnik ist es von höchster
> Wichtigkeit, dass zumindest eine Implementierung verlässlich
> funktioniert und man als Hersteller auf diese verweisen kann. Ansonsten
> werden wir wohl als OSADL mit unserer Klientel nicht ernst genommen.

Dem stimme ich wieder voll und ganz zu. Wir  werden  uns  dabei  alle
Mühe geben.

> Was motiviert Sie Xenomai zu favorisieren? Welche technischen Vorteile
> erwarten Sie? In welcher Anwendungsdomäne sehen Sie hier einen Vorteil
> gegenüber RT Preempt? Denken Sie, dass wir alle zusammen durch mehrere
> Implementierungen einen Vorteil bekommen? Denken Sie, dass Xenomai in
> den Vanilla Kernel Eingang finden wird?

Ich will die Diskussion um Vor-  oder  nachteile  dieser  oder  jener
Technologie hier nicht erneut aufwärmen. Das waren immer sehr hitzige
Diskussionen,  wo  technische  Argumente meist nur eine völlig unter-
geordnete Rolle spielten.

Ein paar Gründe habe ich oben schon genannt:

* Wir haben Kunden, die von verschiedenen proprietären RTOS zu  Linux
  wechseln wollen. Unter Xenomai stehen mir dafür entsprechende Skins
  zur   Verfägung,   die   komplett  simulirt  worden  sind  und  ein
  entsprechend hohes Maß an Zuverlässigkeit aufweisen.

* Der RT-Simulator erlaubt verschiedene höchst  clevere  Anwendungen;
  daß  ich im Debugger einen Breakpoint auf einer Code-Adresse setzen
  kann,  ist  selbstverständlich  -  aber  einen  Breakpoint  in  der
  Koordinate  "Zeit"  setzen  zu  können,  das habe ich woanders noch
  nicht gesehen. Und was das gerade bei der Simulation von  Echtzeit-
  abläufen bedeutet, brauche ich wohl nicht zu erklären.
  
Außerdem schätze ich an Xenomai, daß es ein  sehr  gut  lokalisierter
"Eingriff"  in den Linux-Kernel ist, den man als durchschnittlich be-
gabter Software-Entwickler nachvollziehen kann. RT Preempt  erfordert
dagegen  Eingriffe  an vielen Stellen, und bei jedem Treiber, der neu
in's Linux kommt, muß ich diesen reviewen und ggf. anpassen. Ich per-
sönlich bin einfach nicht clever genug, um das alles  zu  überblicken
und  garantieren zu können, daß man nichts übersehen hat - da braucht
es wohl Gurus wie Ingo Molnar. Deswegen machen wir einfach  das,  was
einfacher  ist  und  was wir daher schneller und in besserer Qualität
anbieten können.

Was das "Eingang in den Vanilla Kernel" finden betrifft: ich sehe das
nicht unbedingt als ultimatives Ziel an. Wir können  mit  vergleichs-
weise  geringem  Aufwand  dafür sorgen, daß auch aktuelle Kernel-Ver-
sionen von Xenomai unterstützt weren, und  wir  werden  entsprechende
Kernels  unseren Kunden bereitstellen. Auf der nächsten Version unse-
res ELDK wird Xenomai mit drauf sein. Für RT Preempt ist ein ungleich
höherer Aufwand erforderlich. Thomas könnte das sicher bestätigen.

Ob das eine richtige oder falsche Entscheidung ist, wird die Zeit und
die Raktion unserer Kunden zeigen.


Aber noch einmal: Ihnen als Anwender kann das eigentlich  egal  sein.
Ziel  der OSADL ist es, Standards zu schaffen, so daß ein RT-preempt-
basierter Kernel einfach  gegen  einen  solchen  mit  Xenomai  ausge-
tauscht werden kann.


[Ich will hier um Himmels willen keine Grundsatzdiskussion lostreten!
Daß wir hier bei DENX auf Xenomai setzen ist weder neu noch  irgendwo
von Bedeutung.]

Viele Grüße,

Wolfgang Denk

-- 
Software Engineering:  Embedded and Realtime Systems,  Embedded Linux
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Use C++ to confuse your enemies; use C to produce stable code.


More information about the ag-automation mailing list