zoukankan      html  css  js  c++  java
  • linux中断子系统

    参考引用:http://www.wowotech.net/sort/irq_subsystem

    wowotech:一个很好的linux技术博客。

    一、概述

    1. 目的

    kernel管理硬件设备的方式:轮询、中断。中断效率高且反应快于轮询,因为它利用了硬件本身执行指令前会做的‘中断电信号周期轮询’。

    1. 分类

    中断分为同步(synchronous)和异步(asynchronous)。

    同步也称为异常,由CPU指令错误产生,分为故障、陷阱和中止;

    异步也称为中断,由外部电信号产生,对于x86分为可屏蔽(INTR)和不可屏蔽中断(NMI);对于ARM分为IRQ和FIQ;

    对于x86 CPU,有两个中断输入pin:INTR和NMI。当CPU接到INTR中断后,会通过INTA pin应答,表示收到中断

    1. 中断控制器:PIC、APIC及GIC

    PIC   – Programmable Interrupt Controller     可编程中断控制器(x86 UP)

    APIC  – Advanced Programmable Interrupt Controller    高级可编程中断控制器(x86MP)

    GIC – Generic Interrupt Controller         ARM公司设计的通用中断控制器(支持MP)

    通过cat /proc/interrupts查看。

    UP:Uni-processor(单核);MP:Multiple-processor(多核)。

    1. 其他

    二、初始化

    三、处理过程

    四、API

    五、问题

    系统中有8个CPU,有2000个外设中断要处理,这时候你如何设计系统中的interrupt controller?(采用GIC和采用APIC)

    六、其他

  • 相关阅读:
    async 和 await
    C#中lock死锁
    Attribute特性
    数据库优化
    EF(ORM)
    依赖注入
    面向接口编程
    EF乐观锁与悲观锁
    为什么要使用RESTFUL风格?
    cloudsim 3.0.3下载与安装教程
  • 原文地址:https://www.cnblogs.com/zengjianrong/p/6748673.html
Copyright © 2011-2022 走看看