Voltar à lista
Linux x86_64Tempo & temporizadores#96Depreciada

gettimeofday

Retorna a hora atual do relógio de parede (wall-clock), com resolução de microssegundos.

Descrição

Uma das syscalls mais chamadas historicamente; em Linux moderno é implementada como vDSO (executa inteiramente em espaço de usuário quando possível, sem trap para o kernel). Considerada obsoleta pela POSIX em favor de `clock_gettime(CLOCK_REALTIME, ...)`, que tem resolução de nanossegundos.

Header: sys/time.hman 2

Depreciada

Prefira `clock_gettime(CLOCK_REALTIME, ...)`: maior resolução e semântica mais clara sobre saltos de relógio.

Assinatura

int gettimeofday(struct timeval * tv, struct timezone * tz);

Parâmetros

ParâmetroTipoDescrição
tvstruct timeval *Recebe segundos e microssegundos desde a época Unix.
tzstruct timezone *Obsoleto — deve ser NULL; seu uso não é suportado de forma confiável.

Registradores (x86_64)

RegistradorPapelArgumento
raxnúmero da syscall (chamada) / valor de retorno (após SYSCALL)
rdiargumento 1tvstruct timeval *
rsiargumento 2tzstruct 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.

Relacionadas