Android深度探索与HAL驱动开发(卷1)-- 第十章随笔

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android深度探索与HAL驱动开发(卷1)-- 第十章随笔相关的知识,希望对你有一定的参考价值。

第10章 嵌入式Linux的调试技术

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

在编写代码时应了解一下几点:

1、creat_proc_read_entry 函数在内部是通过调用creat_proc_entry 函数实现的。所谓只读就是通过 creat_proc_read_entry 函数可以指定处理文件读动作的函数,并且通过mode参数设置文件的只读属性(0944)。如果想把只读文件改成读写文件,只需要设置处理文件写动作的函数,并且将文件属性改成0666。

2、Linux文件的读写由属性决定。在程序中可以用八进制表示,例如0666表示八进制的666,也就是二进制的 110110110 。如果查看文件属性,会看到文件开头是-rw-rw-rw- 。而将文件属性设为0444,则文件属性是 –r—r—r—r-- ,表示只读。

3、删除虚拟目录之前,要先删除虚拟目录中的虚拟文件。

 

 

使用gdb_debug时应注意的问题:

由于gdb_server 是基于ARM处理器的程序的调试器(arm_none_linux_gnueabi_gdb),而且最好使用哪个版本编译的程序,就使用与之对应版本的调试器。虽然gdb_debug是在android模拟器上运行的,但在Linux终端执行调试器是仍然需要指定gdb_debug。

 

Linux内核调试一直被很多人认为是非常困难的,大多数人宁愿直接使用printk函数输出调试信息,也不愿意使用各种命令(gdb、gdbserver、kgdb等)进行调试。因为这样做并不一定能换来更多的好处。

以上是关于Android深度探索与HAL驱动开发(卷1)-- 第十章随笔的主要内容,如果未能解决你的问题,请参考以下文章

Android深度探索(卷1)HAL与驱动开发学习笔记

Android深度探索(卷1)HAL与驱动开发阅读心得9

《Android深度探索》(卷1)HAL与驱动开发读后感

Android深度探索(卷1)HAL与驱动开发第九章总结

读《Android深度探索(卷1)HAL与驱动开发》的一些思考09

Android深度探索(卷1)HAL与驱动开发第六章总结