Forum: PC-Programmierung NTP Client unter Cygwin


von andi (Gast)


Lesenswert?

hallo,

gibt es für cygwin einen ntp client? ich habe die aktuelle version von 
cygwin und bräuchte für ein program, welches ich schon kompiliert habe, 
die systemcalls für den ntp client.

kann man in cygwin pakete suchen bzw nachinstallieren? also aus 
vorhandenen repositories. so wie in richtigen linux distr.

mfg

andi

von Peter (Gast)


Lesenswert?

andi schrieb:
> systemcalls für den ntp client.

brauchst du eine lib für ntp? Es gibt doch keine Systemaufrufe für 
soetwas oder doch?

http://www.heise.de/software/download/ntp_c_source_library/36054

von andi (Gast)


Lesenswert?

hallo,

ich glaub die gibt es doch. viele anwendungen brauchen das. sowie ping 
oder ähnliches.

bei nativen linux systemen ist das kein problem. da starte ich so einen 
ntp client und kann mein programm starten. ich weiss nicht ob das bei 
cygwin auch geht. kann mir nicht vorstellen das wenn ich einen windows 
ntp client starte, das cygwin darauf zugreifen kann.

mfg andi

von Peter (Gast)


Lesenswert?

andi schrieb:
> viele anwendungen brauchen das. sowie ping
> oder ähnliches.

wozu das denn? es gibt die system zeit und die reicht für ein ping doch 
aus. Es geht dort um Laufzeiten und nicht um die absolzute zeit.

im Normalfall gibt es ein Prozess der die Systemzeit einstellt und jedes 
andere Programm nutzt die Systemzeit. Warum sollte jedes Programm selber 
ein NTP Aufruf machen, das macht doch überhaupt kein sinn.

von sudo (Gast)


Lesenswert?

andi schrieb:
> ich glaub die gibt es doch. viele anwendungen brauchen das. sowie ping
> oder ähnliches.

Häh? Was Ping, NTP ö.ä. brauchen, sind "Raw sockets", um am TCP/IP etc 
vorbei direkt Datenpakete aufs Ethernet geben zu können.

Was du willst ist "Zugriff auf einen laufenden NTP-Client", und das 
halte ich für bescheuert.
Wenn dein Programm die Uhrzeit wissen will, frag einfach das OS. Ob die 
System-Uhrzeit nun per NTP, per Windows-Domäne, per GPS, per DCF77 oder 
nur manuell gestellt wird, kann dir doch erstmal egal sein, oder?

von andi (Gast)


Lesenswert?

hallo,

sorry hab mich da etwas falsch ausgedrückt. ich weiss dass man einfach 
nur auf die systemzeit zugreifen muss. allerdings reicht sowas im 
netzwerk dann nicht mehr aus. vor allem nicht dann, wenn man mehrere 
messpunkte hat. also mehrere timestamps, welche von unterschiedlichen 
netzwerk geräten gemacht werden. deshalb müssen die synchronisiert sein 
und sich regelmässig mit den ntp servern synchronisieren.
und dass eigentlich problem ist nun das ich für cygwin eben keinen ntp 
deamon habe/finde/etc. diesen benötige ich aber für ein messprogramm 
(owamp implementation) was eben solche messungen macht. ohne den läufts 
eben nicht. ich hab das program ja nicht geschrieben. in ubuntu hat das 
schon geklappt. da musste ich nur einen ntp deamon starten und das wars.

deshalb war meine frage auch nur ob es möglich ist in cygwin sowas 
einzurichten.

von Εrnst B. (ernst)


Lesenswert?

Cygwin implementiert mehr oder weniger nur die Posix-API, 
Linux-(Kernel)-spezifische Calls zum Urzeit-Stellen, Clock-Adjust, ... 
sind da nicht mit dabei.
Ein Cygwin-NTP-Server wäre also der falsche Weg. Nimm einfach direkt 
einen Windows-NTP-Server(*), und hoffe das der übers Netzwerk ein 
kompatibles Protokoll spricht.

*)
Startpunkt zum Suchen evtl hier:
http://support.ntp.org/bin/view/Main/ExternalTimeRelatedLinks#Microsoft_Windows

von Peter (Gast)


Lesenswert?

andi schrieb:
> eshalb müssen die synchronisiert sein
> und sich regelmässig mit den ntp servern synchronisieren

richtig, aber dafür ist das Betriebsystem da, installier dir dort ein 
NTP und frage die System zeit ab.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.