Como descobrir um tamanho de buffer de anel do kernel do Linux?

4

Bastante interessado no tamanho do buffer de anel do kernel, quanta informação ele pode conter e quais tipos de dados?

    
por Sam Si Tayeb 23.12.2016 / 19:20

1 resposta

6

Em relação ao tamanho, ele é registrado no arquivo de configuração do seu kernel. Por exemplo, no Amazon EC2 aqui, são 256 KiB .

# grep CONFIG_LOG_BUF_SHIFT /boot/config-'uname -r'
CONFIG_LOG_BUF_SHIFT=18
# perl -e 'printf "%d KiB\n",(1<<18)/1024'
256 KiB
#

Referenciado em / kernel / printk / printk.c

#define __LOG_BUF_LEN (1 << CONFIG_LOG_BUF_SHIFT)

Mais informações em / kernel / trace /ring_buffer.c

Note que se você passou um parâmetro de inicialização do kernel "log_buf_len = N" (verifique usando cat /proc/cmdline ) então esse substitui o valor no arquivo de configuração.

    
por 23.12.2016 / 20:28