b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

【调试日志Linux】

电脑杂谈  发布时间:2020-04-18 20:03:48  来源:网络整理

日志分类_linux日志分类_日志创建分类

在内核的源代码中,pr_debug / dev_dbg输出了许多日志信息(例如,由设备树,/ fdt.c的驱动程序/解析的代码). 默认情况下,内核不会将这些日志输出到控制台. 例如,dev_dbg的定义如下:

#if defined(CONFIG_DYNAMIC_DEBUG)
#define dev_dbg(dev, format, ...)		     \
do {						     \
	dynamic_dev_dbg(dev, format, ##__VA_ARGS__); \
} while (0)
#elif defined(DEBUG)
#define dev_dbg(dev, format, arg...)		\
	dev_printk(KERN_DEBUG, dev, format, ##arg)
#else
#define dev_dbg(dev, format, arg...)				\
({								\
	if (0)							\
		dev_printk(KERN_DEBUG, dev, format, ##arg);	\
})
#endif

第一次使用linux日志分类,如果定义了CONFIG_DYNAMIC_DEBUG,则使用动态调试机制dynamic_pr_debug();

linux日志分类_日志分类_日志创建分类

第二种用法,如果定义了DEBUG,则使用printk(KERN_DEBUG ...)

默认情况下,不打印第三种用法(因此默认情况下,打印在dmesg中不可见).

第三种用法绝对不是我们想要的. 第一次使用有点复杂. 今天我们将介绍第二种用法

linux日志分类_日志创建分类_日志分类

1)DEBUG宏已打开

方法一: 打开DEBUG宏的最简单方法是修改Makefile文件. 例如,我们要在内核/驱动程序/ mmc /下的所有文件以及子目录下的所有文件中打开DEBUG宏. 将以下代码添加到Makefile中. 其中,如果是ccflags -y: = -DDEBUG表示仅打开内核/ drivers / mmc /下文件的DEBUG宏,但不包括子目录中文件的DEBUG宏,并且subdir-ccflags -y: = -DDEBUG表示全部打开.

linux日志分类_日志创建分类_日志分类

方法二: 实际上,打开DEBUG宏的方法非常简单. 在需要pr_debug / dev_dbg输出的模块的开头linux日志分类,您可以直接#define DEBUG,请记住位于开头,如下图所示,如果将其放在头文件的include之后,则可能该头文件包含由pr_debug定义的头文件printk.h,这将导致无法打开打印. 打开后,您可以在dmesg中看到pr_debug / dev_dbg的打印.

2)内核printk的默认日志级别大于7

日志分类_日志创建分类_linux日志分类

首先查看默认的控制台打印级别:

将上图中的7更改为大于7的数字,例如8:

打印级别信息不足将被写入日志,并且可以通过dmesg命令查看


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-180346-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      • 鲁真公姬濞
        鲁真公姬濞

        作品是能不断挖掘自己潜质和获得肯定的根本

      • 李景
        李景

        纯网时代下的新生代经济——给新生代偶像搭建了一个全方位展示其商业价值的平台

      热点图片
      拼命载入中...