当前位置: 首页 > 面试题库 >

内核中打印输出到哪里去?

王才英
2023-03-14
问题内容

我正在调试Linux(特别是ubuntu服务器9.04)的驱动程序,并且代码中有几个printf语句。

在哪里可以查看这些语句的输出?

EDIT1:我要执行的操作是使用proc文件系统写入内核。打印代码是

static int proc_fractel_config_write(struct file *file, const char *argbuf, unsigned long count, void *data)
{
    printk(KERN_DEBUG "writing fractel config\n");
    ...

在kern.log中,当我尝试覆盖文件/ proc / net / madwifi / ath1 /
fractel_config(当然会随着时间的变化)时,看到以下消息。

[ 8671.924873] proc write 
[ 8671.924919]

有什么解释吗?


问题答案:

它取决于分布,但是许多用于klogd(8)从内核获取消息的消息,或者将它们记录到文件中(有时是/var/log/dmesg/var/log/kernel),或者通过记录到系统日志syslog(3)。在后一种情况下,日志条目的结束位置将取决于的配置syslogd(8)

关于该dmesg命令的一个注意事项:内核消息存储在循环缓冲区中,因此大量输出将被覆盖。



 类似资料:
  • 问题内容: 只是在内核级别上对printk()函数的一个快速问题,如果我将其称为将消息打印到何处?(我正在i386 arch上使用Ubuntu,并下载了最新的内核) 在任何地方都找不到 如果有人也可以为我指出正确的方向,以便使用printk()函数的某种手册,那将是很棒的! 问题答案: 应该显示消息。

  • 4.12. 打印输出 前面例子中涉及到的打印都比较简单。在这一节中,我们将要讨论Go语言格式化输出的功能。 我们已经用过"fmt"包中的"Printf"和"Fprintf"等输出函数。"fmt"包中的"Printf"函数的 完整说明如下: Printf(format string, v ...) (n int, errno os.Error) 其中"..."表示数目可变参数,

  • 问题内容: 如何将Java输出同时输出到Shell控制台和某个文件中?那可能吗? 问题答案: 您可以在程序的开头包含以下几行:

  • 问题内容: 我是一个相对较新的程序员,所以这可能是一个非常简单的问题,但是让我有些困惑。 我正在尝试将Java GUI的最终输出打印到打印机。现在,在我的GUI中,有了它,当您单击打印时,会弹出一个弹出窗口,列出可用的打印机,并根据您选择的打印机,将其打印到该打印机。 但是事实并非如此。我通过搜索互联网来解决此问题,从而获得了大部分代码,并找到了一些很有前途的代码。但是,它是从文件打印出来的。因此

  • 标准输出 1.gossh远程执行命令返回格式. #批量模式首行首先打印所有的远程机器IP. [servers]=[192.168.56.2 192.168.56.2] #机器ip ip=xxx.xxx.56.2 #远程执行命令 command=uname #命令执行完后的退出值,就是$? return=0 #远程执行命令输出到标准输出和错误输出的结果 Linux ##换行和---分隔线 ---

  • 问题内容: 输出: 现在,如果我将删除parent中的sleep(5),则输出: 最后,我尝试使用0作为waitpid而不是WNOHANG的第三个参数,然后在下面的输出中显示了所有child的打印内容: 有人可以帮助我理解执行execl之后和执行之前的行为吗? 问题答案: 请记住,通过(至)的输出通常是 行缓冲的 。这意味着输出缓冲区将在换行符上刷新。由于您要打印的字符串后没有换行符,因此不会清除