printk函数 打印设备编号

偶尔地, 当从一个驱动打印消息, 你会想打印与感兴趣的硬件相关联的设备号. 打印主次 编号不是特别难, 但是, 为一致性考虑, 内核提供了一些实用的宏定义( 在

<linux/kdev_t.h> 中定义)用于这个目的:

 

int print_dev_t(char *buffer, dev_t dev); char *format_dev_t(char *buffer, dev_t dev);

 

两个宏定义都将设备号编码进给定的缓冲区; 唯一的区别是 print_dev_t 返回打印的字 符数, 而 format_dev_t 返回缓存区; 因此, 它可以直接用作 printk 调用的参数, 但是

 

 

必须记住 printk 只有提供一个结尾的新行才会刷行. 缓冲区应当足够大以存放一个设备 号; 如果 64 位编号在以后的内核发行中明显可能, 这个缓冲区应当可能至少是 20 字节 长.

posted @ 2019-07-06 08:39  樊伟胜  阅读(252)  评论(0编辑  收藏  举报