Re: Mikrosekundengenaues Sleep und Scheduler

Autor: Hans-Guenter Weigand (hgw_at_d1906.inka.de)
Datum: 20. Jun 2003


michael.lestinsky_at_mpi-hd.mpg.de (Michael Lestinsky)wrote:

> hat hier schonmal jemand die Anforderung gehabt in einem C-Programm auf
> einem Unix-System sleeps in der Groessenordnung von Mikrosekunden
> auszufuehren?

Im userland ist das eigentlich nicht vorgesehen, auch wenn es möglich
ist.

> Anwendung soll das finden bei einem Datenerfassungssystem hier am
> Institut. Es gibt keine Notwendigkeit fuer eine Harte Echtzeit, denn es

Ah, externe Hardware am Rechner, richtig? Wäre da nicht ein
Kerneltreiber besser?

> stirbt niemand, wenn die Zeiten ueberschritten werden, das kann ich dann
> auch erkennen und gegebenenfalls die Daten einfach nochmal messen. Ich
> muss aber in einen Bereich hineinkommen, indem die Zeitfenster
> reproduzierbar werden, ich also in einen Bereich von max. 100usec Ungenau-
> igkeit hineinkomme.

Optimal ist, wenn die externe Hardware das Ereignis, das erfaßt werden
soll, elektrisch signalisieren kann. Dann ist man mit einer
Interrupt-Verarbeitung im Mikrosekundenbereich dabei. Der Rechner
selbst braucht dann nur wenig Leistung. Externe Timer oder ein
passender Frequenzgenerator kommen als Interrupt-Quelle auch in Frage.
Manchmal spart selbstgelötete Hardware für EUR 1.20 tagelanges
Programmieren. :)

-hgw


Dieses Archiv wurde generiert von hypermail 2.1.7 : 20. Jun 2003 CEST