Am Dienstag, 19. April 2005 18:32 schrieb Felix Kurth:
Hallo
wie kann ich mir jedes byte, welches durch eine bestimmte Schnittstelle wandert, (sowohl in als auch out) anzeigen lassen(realtime).
gruss felix
1.) Durch die Hardware-Kopplung auf eine 2. / 3. serielle Schnittstelle.
2.) Durch Einbau von Debug-Meldungen im Programm (Vorteil von open source, gestattet auch timing-Analyse etc).
Da wir hier eine LUG sind: der Zugriff auf eine Ressource ist einmalig. Wenn ein Byte gelesen oder gesendet wurde, ist es weg für alle anderen Applikationen. Man kann theoretisch die Ein- & Ausgaben in ein anderes Programmm umleiten, das dann seinerseits die serielle Schnittstelle bedient und dabei protokolliert. Das ist aber problematisch, da serielle Schnittstellen neben I/O auch noch Steuerfunktionen (ioctl's, fnctl's) haben, die dabei zu beachten sind.
Klartext: tee funktioniert nicht, named pipes etc übertragen keine ioctl's, cat und dd "verunstalten" das Verhalten der Schnittstelle und lesen exklusiv (das eigentliche Programm empfängt nichts mehr).
Bernhard