o que é uma resolução de jiffie no kernel do Linux

o que é uma resolução de jiffie no kernel do Linux

O que é uma resolução instantânea no kernel do Linux?

de acordo com a fonte do timer atual ( cat /sys/devices/system/clocksource/clocksource0/current_clocksource), o Linux usa TSC e tem resolução de nanossegundos

de acordo comhttp://lxr.free-electrons.com/source/include/linux/jiffies.hjiffie não é menor que 1us, mas pode ser maior.

Existe uma maneira de determinar sua resolução atual.

Responder1

Se você der uma olhada na página de manualman 7 time

O valor de HZ varia entre versões do kernel e plataformas de hardware. No i386 a situação é a seguinte: em kernels até 2.4.x inclusive, HZ era 100, dando um valor instantâneo de 0,01 segundos; começando com 2.6.0, HZ foi aumentado para 1000, dando um instante de 0,001 segundos. Desde o kernel 2.6.13, o valor HZ é um parâmetro de configuração do kernel e pode ser 100, 250 (o padrão) ou 1000, produzindo um valor de instantes de, respectivamente, 0,01, 0,004 ou 0,001 segundos. Desde o kernel 2.6.20, uma frequência adicional está disponível: 300, um número que divide igualmente as taxas de quadros de vídeo comuns (PAL, 25 HZ; NTSC, 30 HZ).

A chamada do sistema times(2) é um caso especial. Ele relata tempos com granularidade definida pela constante do kernel USER_HZ. Os aplicativos de espaço do usuário podem determinar o valor dessa constante
usando sysconf(_SC_CLK_TCK).

Você pode consultar a CLK_TCKconstante:

$ getconf CLK_TCK
100

Isto indica o valor de HZ, ou seja, 100. Este valor é o número de instantes em um segundo.

Referências

Responder2

Segundo estas fontes, a resolução parainstantesé 1/HZ(qualquer valor HZque tenha):

É definido em um dos arquivos de cabeçalho dependentes do kernel, por exemplo,

/usr/include/asm-generic/param.h

que está incluído de

/usr/include/linux/param.h

e, finalmente, de <sys/param.h>, que pode estar em um diretório específico da arquitetura, por exemplo,

/usr/include/x86_64-linux-gnu/sys/param.h

As fontes deixam claro que é uma constante de tempo de compilação e depende do seu sistema específico.

informação relacionada