Configura o clock do sistema no Unix para precisão de milissegundos

1

Geralmente, você pode configurar o relógio do sistema usando o link . No entanto, ele não fornece precisão de milissegundos (ele tem nanossegundos, mas isso não está funcionando no meu sistema). Existe outra maneira de definir o relógio do sistema ou preciso escrever um programa em C para fazer isso?

    
por Alexey Romanov 15.11.2010 / 08:35

3 respostas

2

Se ntpd for pesado para você, tente OpenNTPD . Ele não garante precisão sub-microssegundos, mas mantém os relógios dos meus servidores em sincronia, abaixo do intervalo de desvio de um milissegundo. Ele usa sntp, que também é um pouco mais leve.

Como outros já disseram, os relógios de hardware não se movem, você não pode simplesmente configurá-los e ficar bem.

    
por 15.11.2010 / 17:01
2

Você deve usar ntpd que manterá seu sistema preciso ao sincronizar com servidores de horário usando NTP (Protocolo de horário da rede).

    
por 15.11.2010 / 08:54
1

Mesmo que o sistema embarcado em questão não suporte NTP, você terá que implementar algo muito parecido com ele, ou executar seu programa em C com bastante frequência, a fim de combater o inevitável desvio dos dois relógios. Além disso, seu programa em C terá que levar em conta seu próprio tempo de execução e a latência da conexão entre os dois computadores (sistema embarcado e servidor), especialmente porque a precisão submicrosegundo é o que você precisa.

Pode ser mais rápido encontrar uma instância do ntpd que você possa configurar entre os dois sistemas. As ferramentas para isso estão sempre presentes em sistemas operacionais modernos em tempo real (para alguma definição de "sempre").

    
por 15.11.2010 / 09:27

Tags