Linux x86_64Tempo & temporizadores#164
settimeofday
Define a hora atual do relógio de parede (wall-clock) do sistema.
Descrição
Salta o relógio diretamente para o valor informado — diferente de `adjtimex`, que faz ajustes graduais. Exige CAP_SYS_TIME.
Header:
sys/time.hman 2Assinatura
int settimeofday(const struct timeval * tv, const struct timezone * tz);Parâmetros
| Parâmetro | Tipo | Descrição |
|---|---|---|
| tv | const struct timeval * | Novo horário a definir. |
| tz | const struct timezone * | Obsoleto — deve ser NULL. |
Registradores (x86_64)
| Registrador | Papel | Argumento |
|---|---|---|
| rax | número da syscall (chamada) / valor de retorno (após SYSCALL) | — |
| rdi | argumento 1 | tvconst struct timeval * |
| rsi | argumento 2 | tzconst struct timezone * |
Valor de retorno
0 em sucesso; -1 em erro, com errno definido.
Códigos de erro (errno)
- EFAULT(14)
- Endereço de memória inválido (ponteiro fora do espaço de endereçamento válido).
- EINVAL(22)
- Argumento inválido.
- EPERM(1)
- Operação não permitida (falta de privilégio).