![日志如何从“Kernel Ring Buffer”到“/proc/kmgs”和“/dev/kmsg”?](https://linux22.com/image/215439/%E6%97%A5%E5%BF%97%E5%A6%82%E4%BD%95%E4%BB%8E%E2%80%9CKernel%20Ring%20Buffer%E2%80%9D%E5%88%B0%E2%80%9C%2Fproc%2Fkmgs%E2%80%9D%E5%92%8C%E2%80%9C%2Fdev%2Fkmsg%E2%80%9D%EF%BC%9F.png)
我无法获得有关内核日志如何从 到Kernel Ring Buffer
和/proc/kmgs
的任何可靠信息/dev/kmsg
。有没有我可能错过的消息来源,或者也许有人从他们的头脑中知道?
答案1
/proc/kmsg
由处理fs/proc/kmsg.c
,/dev/kmsg
由处理司机kmsg
在kernel/printk/printk.c
。
在这两种情况下,直到进程从相关文件描述符中读取数据后,日志才会从环形缓冲区复制到读取器。
我无法获得有关内核日志如何从 到Kernel Ring Buffer
和/proc/kmgs
的任何可靠信息/dev/kmsg
。有没有我可能错过的消息来源,或者也许有人从他们的头脑中知道?
/proc/kmsg
由处理fs/proc/kmsg.c
,/dev/kmsg
由处理司机kmsg
在kernel/printk/printk.c
。
在这两种情况下,直到进程从相关文件描述符中读取数据后,日志才会从环形缓冲区复制到读取器。