程序员ai健身 2015-08-03 01:30 采纳率: 0%
浏览 1671

中断函数的上半部、下半部

1)首先注册一个中断:ret = request_irq(fpga_irq,mpc83xx_fpga_interrupt,0,"fpga",NULL);
2)中断处理函数:static irqreturn_t mpc83xx_fpga_interrupt(int irq,void *dev_id);
{
........................................
mpc83xx_pkt_hander();
........................................
}
3)static void mpc83xx_pkt_hander();
{
..............................
..............................
}
首先使用gettimeofday();函数在中断处理函数中调用mpc83xx_pkt_hander()的前后计算时间为20us左右,而在mpc83xx_pkt_hander()函数内部执行开始和结尾使用gettimeofday()函数计算的时间为80us。
问题:mpc83xx_pkt_hander()应该只是中断函数中的一个普通的调用吧,为什么计算看上去是并发处理的?

  • 写回答

2条回答 默认 最新

  • fly 100% 企业官方账号 2015-08-11 06:57
    关注

    应该是一样的时间 感觉这样计算不是很准

    评论

报告相同问题?