`
waterlife
  • 浏览: 66987 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

Linux内核之中断请求队列的初始化

阅读更多

前面所说的中断向量表IDT,有两种表项:

一种是保留专用于CPU本身的中断门,主要用于CPU产生的异常以及由用户程序长生的系统调用,这些中断向量处系统调用的0x80之外都在0x20之下。从0x20之上就是第二种表项共224项,都用于外设的通用中断。二者的区别在于,外设中断门可以为多个中断源所共享。

 

IDT表初始化完成之初,每个中断服务队列都是空的。真正的中断服务要到具体的设备初始化程序将其中断服务程序通过request_irq(),向系统等级,挂入某个中断请求队列后才发生。

 

 

分享到:
评论

相关推荐

    LINUX内核经典面试题

    27. 设备驱动功能:设备驱动包括初始化、设备打开/关闭、数据读写、错误处理等功能。 28. 唯一标识设备:通过设备主次号(major和minor number)以及设备名来唯一标识设备。 29. 系统调用实现方式:Linux通过设置...

    linux内核软中断[借鉴].pdf

    随着Linux内核的不断迭代,软中断机制也在持续优化,例如在后来的版本中引入了工作队列(workqueue)等更高级别的抽象,进一步提高了内核的并发处理能力。 总的来说,Linux内核的软中断机制是其核心竞争力的一部分...

    Linux内核源代码情景分析 (上下册 高清非扫描 )

    - **3.3 中断请求队列的初始化** - 中断请求队列用于保存等待处理的中断请求。 - 初始化队列是为了确保中断能够被正确地调度和处理。 - **3.4 中断的响应和服务** - 中断响应包括保存当前上下文、跳转到中断服务...

    Linux内核引导过程

    - **系统IRQ初始化**:通过`init_IRQ()`函数初始化系统中断请求(IRQ),确保硬件中断能够正确地被内核捕获和处理。 - **进程调度初始化**:包括初始化默认的Bottom-half(BH)和调用`sched_init()`函数,为进程调度...

    深入分析Linux内核源码.pdf

    - **3.3.2 中断请求队列的初始化** - 初始化IRQ队列。 - **3.3.3 中断请求队列的数据结构** **3.4 中断处理** - **3.4.1 中断和异常处理的硬件处理** - CPU如何响应中断。 - **3.4.2 Linux对异常和中断的处理** ...

    linux内核源代码

    Linux内核支持多种进程间通信(IPC)机制,如管道(pipe)、消息队列、共享内存、信号量和套接字。这些机制使得进程间可以交换数据和同步执行。 4. **内存管理**: 内核负责内存分配、释放、页面替换策略(如LRU...

    Linux内核源代码情景分析.pdf

    第3章中断、异常和系统调用,主要讨论了X86 CPU对中断的硬件支持、中断向量表IDT的初始化、中断请求队列的初始化、中断的响应和服务、软中断与Bottom Half、页面异常的处理、时钟中断、系统调用的工作原理及系统调用...

    深入分析Linux内核源码

    3.3.2 中断请求队列的初始化 3.3.3中断请求队列的数据结构 3.4 中断处理 3.4.1中断和异常处理的硬件处理 3.4.2 Linux对异常和中断的处理 3.4.3 与堆栈有关的常量、数据结构及宏 3.4.4 中断处理程序的执行 ...

    Linux内核分析与应用课件第5章(二)中断处理理机制.pdf

    本资源主要讲述了Linux内核中的中断处理机制,包括中断描述符表的初始化、IDT的放置、陷阱门和系统门的设置、interrupt[]数组的使用、中断处理程序的入口地址、硬件处理中断请求队列的建立、中断处理过程中的堆栈...

    《Linux设备驱动开发详解-基于最新的Linux4.0内核》源码.zip

    《Linux设备驱动开发详解-基于最新的Linux4.0内核》是一本深入...通过学习和实践,开发者不仅能掌握Linux内核的工作原理,还能提高解决硬件问题的能力,为未来在Linux环境下开发高性能、低延迟的应用程序奠定坚实基础。

    linux内核源代码情景分析

    3.3 中断请求队列的初始化 3.4 中断的响应和服务 3.5 软中断与Bottom Half 3.6 页面异常的进入和返回 3.7 时钟中断 3.8 系统调用 3.9 系统调用号与跳转表 第4章 进程与进程调度 4.1 进程四要素 4.2 进程三...

    Linux0.01内核源代码及注释

    3. **Setup.s** - 系统设置:这部分代码执行系统的初期配置,如识别和配置硬件,如内存检测、设置中断向量表、初始化键盘和显示设备等。 4. **Bitmap.c** - 内存位图管理:这个模块用于跟踪系统内存的使用情况,...

    linux中断--内核中断编程.docx

    在Linux内核中断编程中,理解 `request_irq()` 和 `free_irq()` 的用法至关重要,它们是内核中断处理的核心。同时,中断处理函数的编写必须高效且避免阻塞,因为中断处理是上下文切换的关键点,影响系统的实时性。 ...

    Linux内核 内容很全

    中断处理与设备驱动程序 60 6.1 中断与中断处理 60 6.1.1 可编程中断控制器 61 6.1.2 初始化中断处理数据结构 61 6.1.3 中断处理 62 6.2 设备驱动程序 63 6.2.1 测试与中断 64 6.2.2 直接...

Global site tag (gtag.js) - Google Analytics