首页 > 其他 > 详细

第十章随笔

时间:2016-07-08 15:24:39      阅读:270      评论:0      收藏:0      [点我收藏+]

 一、防止printk函数降低Linux驱动性能

大量使用printk函数频繁操作日志文件或控制台设备文件会严重影响Linux驱动性能(因写磁盘速度远没有读写内存的速度快),因此,要求Linux驱动只在开发阶段使用printk函数输出信息,在正式发布时将其去掉。

printk函数在控制台显示消息是通过/dev/console设备文件实现的,该设备只在字符界面的控制台下起作用,所以printk函数只有用在字符界面的控制台上才能正常输出消息。

    可变参数宏与固定参数宏的不同之处就是可变参数宏需要通过_VA_ARGS宏获取可变参数宏的可变参数。_VA_ARGS宏不支持可变参数个数为0的情况。

     二、通过虚拟文件系统(/proc)进行数据交互

/proc是虚拟文件系统,其读写操作都是对内存的读写,其读写速度远比读写/dev文件系统快,因此,其可作为Linux驱动与用户空间程序交互的工具。

当前系统的内存资源是通过/proc/meminfo文件获取的。通过proc_dir_entry.read_proc和proc_dir_entry.read_write函数指针来设置其读写目录中的虚拟文件的动作处理函数,proc_dir_entry结构体代表一个虚拟目录或文件。

Linux文件的读写由属性决定,在程序中可用八进制表示。删除虚拟目录之前,要先删除虚拟目录中的虚拟文件。

    三、List命令的3种调用格式

list、list_、和list n 三种格式,首先使用list命令显示代码。执行上面的命令会进入gdb控制台,然后执行相关的命令连接Android模拟器。

  

第十章随笔

原文:http://www.cnblogs.com/qiekaifanqie/p/5653314.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!