综述在上一篇介绍了linux驱动的调试方法,这一篇介绍一下在驱动编程中会遇到的并发和竟态以及如何处理并发和竞争。首先什么是并发与竟态呢?并发(concurrency)指的是多个执行单元同时、并行被执行。而并发的执行单元对共享资源(硬件资源和软件上的全局、静态变量)的访问则容易导致竞态(race co...
分类:
系统相关 时间:
2015-04-11 14:40:05
阅读次数:
208
信息学之于其他竞赛学科的不同,就在于需要通过写程序来表达自己的思维和想法。如何尽可能又快又好地调试程序,成了我们必须要思考的问题。相信很多同学都有过这样的经历:思考一个算法只花了半个小时,但是把这个算法写对却花了一天。。思考与实现的时间往往不成正比。 下面是我结合自己的经验给出的一些小建议,仅...
分类:
其他好文 时间:
2015-04-11 11:48:20
阅读次数:
174
在嵌入式开发中,有时候需要进行源码级别的调试,可以设置断点,单步执行,相比于每步打印printf或者printk来说,更加友好。下面就来介绍这种调试方法。 gdb交叉调试类似于网络浏览器,本地PC为客户端,远程开发板为服务器端,双方都要统一编译工具链,版本最好保持一致。 --target 指定了目标...
分类:
数据库 时间:
2015-04-10 13:22:13
阅读次数:
275
1、调试所建立的Windows服务项目。网上找了一些有关Windows服务调试的方法,很多大牛们建议Copy到Winform中调试,本菜鸟经过领导指点有个很好的调试方法,Mrak一下:如何建立就不多说了,网上有很多建立的帖子和文章。Windows服务项目在解决方案目录如下。(其中ProjectIns...
1 . 调试输入子系统 在调试输入子系统时,input_system,可以通过hexdump 来打开并且实时读取对于输入设备的值,数值关系如下图所示: 每一次按键事件上报后,都会有type为0的EV_SYN同步事件触发。value中的1表示按下,0表示松开,2代表重复类事件,设置按键中断为边沿触发,...
分类:
其他好文 时间:
2015-04-08 22:49:53
阅读次数:
156
http://www.cnblogs.com/donghuizaixian/archive/2015/04/02/4387083.html上一篇我们大概聊了如何写一个简单的字符设备驱动,我们不是神,写代码肯定会出现问题,我们需要在编写代码的过程中不断调试。在普通的c应用程序中,我们经常使用print...
分类:
系统相关 时间:
2015-04-07 11:30:45
阅读次数:
172
上一篇我们大概聊了如何写一个简单的字符设备驱动,我们不是神,写代码肯定会出现问题,我们需要在编写代码的过程中不断调试。在普通的c应用程序中,我们经常使用printf来输出信息,或者使用gdb来调试程序,那么驱...
分类:
系统相关 时间:
2015-04-02 16:51:47
阅读次数:
167
上一篇我们大概聊了如何写一个简单的字符设备驱动,我们不是神,写代码肯定会出现问题,我们需要在编写代码的过程中不断调试。在普通的c应用程序中,我们经常使用printf来输出信息,或者使用gdb来调试程序,那么驱动程序如何调试呢?我们知道在调试程序时经常遇到的问题就是野指针或者数组越界带来的问题,在应用程序中运行这种程序就会报segmentation fault的错误,而由于驱动程序的特殊性,出现此类...
分类:
系统相关 时间:
2015-04-02 07:57:33
阅读次数:
416
上一篇我们大概聊了如何写一个简单的字符设备驱动,我们不是神,写代码肯定会出现问题,我们需要在编写代码的过程中不断调试。在普通的c应用程序中,我们经常使用printf来输出信息,或者使用gdb来调试程序,那么驱动程序如何调试呢?我们知道在调试程序时经常遇到的问题就是野指针或者数组越界带来的问题,在应用...
分类:
系统相关 时间:
2015-04-02 07:57:26
阅读次数:
320