Linux设备驱动开发详解--笔记10--中断与时钟
来源:互联网 发布:景安网络免费服务器 编辑:程序博客网 时间:2024/06/16 00:02
中断:cpu在执行程序的过程中,出现了某些突发事件时cpu必须暂停执行当前的程序,转去处理突发事件,处理完毕后cpu又返回原程序被中断的位置并继续执行
根据中断入口跳转方法的不同,中断分为向量中断和非向量中断。
采用向量中断的cpu通常为不同的中断分配不同的中断号,当检测到某中断号的中断到来后,就自动跳转到与该中断号对应的地址执行。不同中断号的中断油不同的入口地址。
非向量中断的多个中断共享一个入口地址,进入该入口地址后再通过软件判断中断标志识别具体是哪个中断
也就是说,向量中断由硬件提供中断服务程序入口地址,非向量中断由软件提供入口地址
Linux将中断处理程序顶半部和底半部,顶半部完成尽可能少的比较紧急的功能,它往往只是简单的读取寄存器的中断状态并清除中断标志后进行“登记中断“的工作。”登记中断“指将底半部处理程序挂到底半部执行队列中去
底半部几乎做了中断处理程序所有的事情,而且可以被性的中断打断,这是和顶半部最大的不同
Linux实现的底半部的机制主要有tasklet、工作队列和软中断
硬中断、软中断和信号的区别:
硬中断时外部设备对cpu的中断,软中断通常是硬中断服务程序对内核的中断,而信号则是由内核(或其他进程)对某个进程的中断
- Linux设备驱动开发详解--笔记10--中断与时钟
- 《Linux4.0设备驱动开发详解》笔记--第十章:Linux设备驱动中的中断与时钟
- linux设备驱动中的中断与时钟
- 《Linux设备驱动开发详解》-- 中断屏蔽
- 《Linux设备驱动开发详解》-- Linux 中断编程
- 《Linux4.0设备驱动开发详解》笔记--第十五章:Linux I2C核心、总线与设备驱动
- Linux设备驱动程序之中断与时钟
- Linux设备驱动开发详解--笔记6--字符设备驱动
- "Linux设备驱动开发详解" 笔记
- Linux设备驱动开发详解--笔记5--Linux文件与设备系统
- 《Linux设备驱动开发详解》-- Linux中断处理程序架构和Linux中断编程
- 《Linux4.0设备驱动开发详解》笔记--第五章:Linux文件系统与设备文件
- 《Linux设备驱动开发详解》-- Linux中断处理底半部机制(tasklet、工作队列和软中断)
- 中断与异常、时钟源、文件系统、设备驱动
- Linux设备驱动-中断处理笔记
- linux设备驱动-按键中断实验笔记
- 《Linux4.0设备驱动开发详解》笔记--第八章:linux设备驱动的阻塞与非阻塞
- 《Linux设备驱动开发详解上的秒字符设备》定时中断
- 记录一下
- Linux设备驱动开发详解--笔记8--阻塞与非阻塞I/O
- Linux下select和poll的用法
- Linux设备驱动开发详解--笔记9--异步通知与异步I/O
- C#基础二
- Linux设备驱动开发详解--笔记10--中断与时钟
- RBAC
- C语言:typedef定义函数指针
- linux 文件夹 操作篇
- 关于java.sql.SQLException: Io 异常: The Network Adapter could not establish the connection
- FreeMarker
- 纪念母亲节
- Qt4另类使用教程(一)---使用openAL 帮助Qt4 播放音效
- 【Java.NIO】从Jetty、Tomcat和Mina中提炼NIO构架网络服务器的经典模式(二)