您好、欢迎来到现金彩票网!
当前位置:2019欢乐棋牌 > 中断向量 >

linux nmi 中断在哪个核上响应

发布时间:2019-08-11 09:56 来源:未知 编辑:admin

  CPU只是提供了发生中断时候,具体是怎么找到中断处理程序的而中断向量表的设置和中断处理过程需要操作系统提供。在Linux中,中断处理程序的描述如入口,也就是上面说的中断向量是中断门和陷阱门的形式,对应的中断向量表叫做中断描述符表IDT.

  Linux中的中断处理程序主要包括两个文件,asm.s和trap.c.asm.s用于实现大部分硬件异常所引起的中断的汇编处理过程。而 trap.c则实现了asm.s的中断处理过程中调用的C函数。还有几个中断处理程序的实现在system_call.s和page.s中。

  该程序的主要处理方式是调用trap.c中对应的C函数,显示出错位置和出错码,然后退出中断。其中的处理分为两种情况,带出错号的中断处理和不带出错号的处理。

  对于不带出错号的处理过程是这样的,在各自的不带中断号的处理过程中,将对应的C函数指针入栈,然后跳到no_error_code处,no_error_code做到工作是:

  带中断号的处理过程与不带中断号的处理过程的不同有三,一个地方是在各自带中断号的处理层过程中,跳到error_code而不是no_error_code.再一个地方是开始的地方要做两次交换,一次是错误码和eax交换,一次使函数地址和ebx的交换。另一个地方是错误码入栈的是对应实际的错误码,而不是0.

  此程序包括一些asm.s中调用的C函数的定义和实现,并显示错误位置和错误码。还有一个就是IDT的初始化:trap_init()的定义和实现。在0.11核中,很多函数中基本上都是空的。

  ①硬中断是由外部事件引起的因此具有随机性和突发性;软中断是执行中断指令产生的,无面外部施加中断请求信号,因此中断的发生不是随机的而是由程序安排好的。

  ②硬中断的中断响应周期,CPU需要发中断回合信号(NMI不需要),软中断的中断响应周期,CPU不需发中断回合信号。

  ③硬中断的中断号是由中断控制器提供的(NMI硬中断中断号系统指定为02H);软中断的中断号由指令直接给出,无需使用中断控制器。

http://rotorooterpa.com/zhongduanxiangliang/507.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有