Real-Time mit Java? Zeit-Auflösung der CPU?

Hallo zusammen,

ich möchte mit Java ein Programm entwickeln, mit dem ich über RS232 eingehende Daten mit einem PC-Zeitstempel versehen und dann weiterverarbeite. Die ganze Prozedur sollte möglichst in Real-Time ablaufen. Die Zeitmessung sollte mit einer Millisekunde Auflösung und Genauigkeit ablaufen. Die Genauigkeit bekomme ich wahrscheinlich dadurch hin, dass ich ein externes PPS (Puls per Second) Signal im Rechner aufzeichne und dazwischen interpoliere.
Mein Problem ist aber folgendes: Wenn ich die Zeitauflösung meines PC mit meinem Java Programm über „System.currentTimeMillis()“ teste, erhalte ich nur 10 Millisekunden Auflösung, was zu viel ist.
Ich habe aber gehört, dass ich über entsprechende C/C++ und auch Java Routinen eine höhere CPU-Auflösung abfragen kann.
Kann mir jemand erklären, wie das geht und welche Methoden ich dazu brauche?

Vielen Dank

Marco

Es gibt für Java Realtime-Erweiterungen, schau dir mal diesen Link an http://www.rtj.org/.

Grüße, Robert

Moin

Mein Problem ist aber folgendes: Wenn ich die Zeitauflösung
meines PC mit meinem Java Programm über
„System.currentTimeMillis()“ teste, erhalte ich nur 10
Millisekunden Auflösung, was zu viel ist.

Dann benutz ein *nix (Solaris oder linux) System da ist die Auflösung von currentTime ±1.5 ms. Oder gleich die realtime-JVM von HP.

Die Standart-JVM ist für so etwas nicht zu gebrauchen, da funken viel zu viele Dinge dazwischen (Compiler, gc, Mem-Mangement…)

cu