答,通过内核的系统时钟,因为它是由定时器中断产生的,每隔一定时间便会触发一次,所以当CPU一直在某个进程中时,我们便在中断函数中打印该进程的信息
1.先来回忆下
在之前的第5章内核中断运行过程:分析过...,当内核中断产生时,会做以下几步:
1)pc-4(计算返回地址值),然后将各个寄存器值存到sp栈里
2)获取中断号,获取sp地址,然后调用asm_do_IRQ()
1.1其中asm_do_IRQ函数原型如下所示...所以S3C2410 Timer Tick的中断号为30
4.接下来便来修改asm_do_IRQ()函数
在asm_do_IRQ()中,添加以下带红色的字(#ifdef 1 .........(1)死循环的驱动,然后通过测试程序,内核便会一直在while(1)死循环,进入僵死状态。...由于修改了asm_do_IRQ()函数后,所以会打印信息:
5.1 然后便可以通过pc值=bf0000C,就能查找在哪个函数出错
(参考:http://www.cnblogs.com/lifexy/p/