时钟与中断

1.     所谓中断是指CPU在执行程序的过程中,出现了某些突发事件时CPU必须暂停执行当前的程序,转去处理突发事件,处理完毕后CPU又返回原程序被中断的位置并继续执行。

根据中断的来源,中断可分为内部中断和外部中断,内部中断的中断源来自CPU内部(软件中断指令、溢出、除法错误等,例如,操作系统从用户态切换到内核态需借助CPU内部的软件中断),外部中断的中断源来自CPU外部,由外设提出请求。

2.     定时器在硬件上也依赖中断来实现,工作原理:它接收一个时钟输入,当时钟脉冲到来时,将目前计数值增1并与预先设置的计数值比较,若相等,证明计数周期满,产生定时器中断并复位目前计数值。

3.     Linux将中断处理程序分解为两个半部:顶半部和底半部。顶半部完成尽可能少的比较紧急的功能,底半部完成中断事件的绝大多数任务。

4.     Linux中断编程

申请和释放中断reques_irq()   free_irq()

使能和屏蔽中断void disable_irq(intirq);

                Void disable_irq_nosync(int irq);

                Voidenable_irq(int irq);

5.     linux系统实现底半部的机制主要有tasklet、工作队列和软中断。

6.     硬中断、软中断和信号的区别:

硬中断是外部设备对CPU的中断,软中断通常是硬中断服务程序对内核的中断,而信号则是由内核(或其他进程)对某个进程的中断。

7.内核中的延时是忙等待或者睡眠等待,为例充分利用CPU资源,使系统有更好的吞吐性能,在对延迟时间的要求并不是很精确的情况下,睡眠等待是值得推荐的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值