Comment find une taille de memory tampon kernel Linux?

Très intéressé par la taille de la memory tampon du kernel, combien d'informations il peut contenir et quels types de données?

En ce qui concerne la taille, il est enregistré dans le file de configuration de votre kernel. Par exemple, sur Amazon EC2 ici, c'est 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 # 

Référencé dans /kernel/printk/printk.c

 #define __LOG_BUF_LEN (1 << CONFIG_LOG_BUF_SHIFT) 

Plus d'informations dans /kernel/trace/ring_buffer.c

Notez que si vous avez passé un paramètre de démarrage du kernel "log_buf_len = N" (vérifiez à l'aide de cat /proc/cmdline ), cela remplace la valeur dans le file de configuration.