Como verificar se o CONFIG_HIGH_RES_TIMERS está ativado?

3

Eu tenho que programar um aplicativo em tempo real no Linux, mas não sei se a instalação padrão do Ubuntu tem CONFIG_HIGH_RES_TIMERS habilitado. Como posso verificar isso?

Estou usando o Ubuntu 11.04 64bit.

    
por Peacemoon 04.07.2011 / 18:31

3 respostas

3

O Ubuntu envia a configuração do kernel em /boot/config-$version (no mesmo pacote da imagem do kernel /boot/vmlinuz-$version ). Você pode verificar este arquivo em um sistema ao vivo, ou você pode baixá-lo de o site do Ubuntu . Existem várias imagens para escolher; o padrão em amd64 é -generic , e você pode baixar o pacote binário e extraia o arquivo /boot/config-* . A maneira mais simples de abrir um pacote Debian se você não estiver rodando uma distribuição baseada em dpkg é convertê-lo com alien .

A propósito, a resposta é sim em 10.04 / -generic / amd64 que aconteceu de eu ter ao escrever esta resposta.

Várias outras distribuições enviam um arquivo /boot/config-* . Outros disponibilizam a configuração do kernel em /proc/config ou algo semelhante, para que seja fácil de ver em um sistema ativo, mas não apareça no pacote binário. Nesse caso, se você não tiver um sistema ativo, precisará verificar o pacote de origem.

    
por 04.07.2011 / 19:32
0

Você provavelmente vai querer usar _SC_TIMERS e clock_getres (), etc., em vez de se perguntar como o kernel foi especificamente configurado.

    
por 04.07.2011 / 19:56
0

Muitos kernels têm uma cópia de seus arquivos de configuração que são expostos através do sistema de arquivos proc :

zcat /proc/config |
    grep CONFIG_HIGH_RES_TIMERS

Se não, existe uma ferramenta na fonte do kernel para extraí-lo do próprio arquivo do kernel: (Use o seu caminho para o diretório fonte do kernel e o arquivo do kernel para extrair.)

/usr/src/linux/scripts/extract-ikconfig /boot/vmlinuz |
    grep CONFIG_HIGH_RES_TIMERS
    
por 05.07.2011 / 00:15