Eclipse是众多Java程序员实用的开发工具,其中开发技巧也是繁多,但作为优秀的Java程序员,需要掌握最起码的调试技巧。 小编从前辈程序员和网络中,整理了10个Eclipse调试技巧,希望对Java程序员有用。 1 条件断点 如果你不知道如何添加断点,只需点击左边面板(行号前面)断点即被创建。在调试界面中,“断点”视图会把所有被创建的断点列出来。我们可以给它加一个布尔条件,也就是说...
分类:
系统相关 时间:
2014-07-08 21:36:09
阅读次数:
340
关于watchdog应该有过单片机学习经历的人,都比较熟悉。但watchdog的正确用法,恐怕大家如果没有经历过实际产品的开发不会有深入的理解。
瑞萨RL78系列的单片机自身带有watchdog,当启用watchdogtimer定时器后,在watchdog timer溢出时间间隔的75%会产生watchdog中断。至于在watchdog中做什么,好多示例程序,都会在中断处理函数中喂狗,使watc...
分类:
其他好文 时间:
2014-07-08 14:53:43
阅读次数:
316
问题背景:TCP不能及时通知连接中断,如果使用keep-live机制默认时间是2小时11分钟15秒没有通讯才会发送探测消息,如依靠TCP超时机制可能要等待9分钟才能检测出网络中断,因此必须用户自己检测连接是否正常。连接中断可能的原因:1)一方主机崩溃 发不出FIN,对等方依靠重发检测链路中断,如果崩...
分类:
其他好文 时间:
2014-07-06 23:32:49
阅读次数:
370
很早就想写个FC模拟器,但真是一件艰难的事情。。所以先写个Chip8模拟器,日后再继续研究FC模拟器。Chip8只有35条指令,属于RISC指令集,4k内存,2k显存,16个寄存器(其中15个通用寄存器),支持16个按键,没有中断,但是有两个计时器。读了下面两个链接,就完全能理解了。http://w...
分类:
编程语言 时间:
2014-07-06 17:45:51
阅读次数:
276
Linux把物理内存划分为了三个管理区, 分别为0-16MB的ZONE_DMA, 16-896MB的ZONE_NORMAL和高于896MB的ZONE_HIGHMEM也就是高端内存.
至于为什么这么划分, ZONE_DMA好理解, 因为ISA总线只能对前16MB进行DMA寻址, 这块要分出来不能乱用. 而ZONE_NORMAL和ZONE_HIGHMEM为什么从896MB区分呢? 这还得从物理地址和...
分类:
其他好文 时间:
2014-07-06 10:34:04
阅读次数:
195
继续对OD的断点技术做个笔记。
1、硬件断点:
Intel CPU中有8个调试寄存器(Debug Register)DR0 — DR7,其中DR0 — DR3用于设置硬件断点地址,DR6保存状态,DR7负责控制。当指令执行到DR所指地址时,CPU中断,等待OllyDbg进一步操作。
OllyDbg中,选定一行后按F4键,用于执行到指定位置,就是临时设置了一个硬件断点。
硬件访问/写...
分类:
其他好文 时间:
2014-07-06 10:30:06
阅读次数:
308
前文介绍到SRIO有多重类型的包,其中包含了Doorbell包,Doorbell是一种快速的通知类型的短消息,包头和携带信息都很短,用于master srio设备通知slave srio设备,可用于DSP间的消息通知,也可用于FPGA与DSP间的消息通知。
Doorbell包payload的大小为16bit,如下图阴影处为有效位,其他为reserve位。5,6位用于选择Doorbell中断状态寄...
分类:
其他好文 时间:
2014-07-05 23:53:45
阅读次数:
391
继续研究一下OD实现部分中 断点相关的技术:
1、普通断点:
1.1 OD的处理方法是将指令的第一个字节替换成CC,造成中断。为什么可以?(因为它属于int3中断 的代码)
这个INT 3指令,其机器码是CCh,也常称为CC指令。当被调试进程执行INT 3指令导致一个异常时,调试器就会捕捉这个异常从而停在断点处,然后将断点处的指令恢复成原来指令。当然,如果自己写调试器,...
分类:
其他好文 时间:
2014-07-04 08:53:09
阅读次数:
309
可编程中断控制器Programmable Interrupt Controller(PIC)用来响应各种中断事件,如:键盘事件、串口数据到达等,PIC收集所有的中断,并通知CPU中断到达,后者转入到中断处理例程进行处理。OR1200最多支持32个中断。其功能实现主要依靠两个特殊寄存器:中断屏蔽寄存器PICMR、中断状态寄存器PICSR。通过PICMR可以设置是否屏蔽某些中断,通过PICSR可以知道中断源的信息。...
分类:
其他好文 时间:
2014-07-04 08:13:56
阅读次数:
303
当一个进程发生缺页中断的时候,进程会陷入内核态,执行以下操作:1、检查要访问的虚拟地址是否合法2、查找/分配一个物理页3、填充物理页内容(读取磁盘,或者直接置0,或者啥也不干)4、建立映射关系(虚拟地址到物理地址)重新执行发生缺页中断的那条指令如果第3步,需要读取磁盘,那么这次缺页中断就是majfl...
分类:
其他好文 时间:
2014-07-03 22:30:43
阅读次数:
217