问题标签 [interrupt]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
11773 浏览

interrupt - How CPU finds ISR and distinguishes between devices

I should first share all what I know - and that is complete chaos. There are several different questions on the topic, so please don't get irritated :).

1) To find an ISR, CPU is provided with a interrupt number. In x86 machines (286/386 and above) there is a IVT with ISRs in it; each entry of 4 bytes in size. So we need to multiply interrupt number by 4 to find the ISR. So first bunch of questions is - I am completely confused in mechanism of CPU receiving the interrupt. To raise an interrupt, firstly device shall probe for IRQ - then what ? The interrupt number travels "on IRQ" towards CPU? I also read something like device putting ISR address on data bus ; whats that then ? What is the concept of devices overriding the ISR. Can somebody tell me few example devices where CPU polls for interrupts? And where does it finds ISR for them ?

2) If two devices share an IRQ (which is very much possible), how does CPU differs amongst them ? What if both devices raise an interrupt of same priority simultaneously. I got to know there will be masking of same type and low priority interrupts - but how this communication happens between CPU and device controller? I studied the role of PIC and APIC for this problem, but could not understand.

Thanks for reading. Thank you very much for answering.

0 投票
3 回答
795 浏览

c++ - 在c++中使用21h中断的9个函数

功能 09h 中断 21h dx = 文本偏移量,ds = 文本段

如何在 C++ 中获取段和偏移量?

0 投票
3 回答
7216 浏览

c - TI MSP430 中断源

我知道在使用 MSP430F2619 和 TI 的 CCSv4 时,我可以获得多个中断来使用相同的中断处理程序,代码如下所示:

我的问题是,当我发现自己被打断时,有没有办法弄清楚是哪一个打断让我来到了这里?

0 投票
1 回答
1533 浏览

hardware - 关于“中断”的问题

有人可以帮我澄清以下conecpts,以及它们之间的关系吗?

  • 可屏蔽中断
  • 不可屏蔽中断
  • 硬件中断
  • 软件中断
  • CPU INTR 引脚
  • EFlags 寄存器的 IF 位

一些具体问题:

  • 可屏蔽/不可屏蔽中断和硬件/软件中断有什么关系?
  • 可屏蔽性与软件/硬件之间的关系是什么?
  • 是否有任何不可屏蔽/软件中断和可屏蔽/硬件中断?
  • INTR 管脚检测什么样的中断?
  • EFlags 寄存器的 IF 位启用/禁用什么样的中断?
  • 什么样的中断需要中断控制器的存在?

非常感谢。

0 投票
1 回答
241 浏览

winapi - 如何在 win32/intel 架构上“安排中断”?

我想弄清楚如何在正常的 win32 架构(不是 Windows CE!)上安排真正的ISR

可能吗?

0 投票
2 回答
4429 浏览

c++ - How to call DOS Interrupts within a C/C++ program using Inline Assembly?

I need to call some DOS interrupts (Services) from a C/C++ program, I tried the following inline asm code: (Read a character)

But it did not work ! I would like to know what have i done wrong here ! Also if there is another way to call dos interrupts ! Thank You !

0 投票
2 回答
7399 浏览

c - 8051 外部中断

如何开启8051的外部中断?

0 投票
1 回答
1246 浏览

embedded - 在 Cortex-M3 上的中断处理程序之间传递参数

我正在为 Cortex-M3 构建一个轻量级内核。

从高优先级中断我想调用一些代码在低优先级中断中运行并传递一些参数。

我不想使用队列将工作发布到较低优先级的中断。

我只有一个缓冲区和大小可以传递给它。

在编程手册中,它说 SVC 中断处理程序是同步的,这可能意味着如果您从优先级低于 SVC 处理程序的中断调用它,它会立即被调用(结果是您可以将参数传递给它,就好像它是一个函数调用(有点像 MS-DOS 中的 BIOS 调用)。

我想以另一种方式做到这一点:将参数从高优先级中断传递到低优先级中断(目前我通过将参数留在内存中的固定位置来做到这一点)。

最好的方法是什么(如果可能的话)?

谢谢,

0 投票
5 回答
10040 浏览

embedded - 我可以将哪些 Cortex-M3 中断用于通用工作?

由于特定中断发生,我需要运行一些代码。

我不想在中断本身的上下文中执行它,但我也不希望它在线程模式下执行。

我想以低于促使其运行的高级中断但也高于线程级别(以及其他一些中断)的优先级运行它。

我想我需要使用其他中断处理程序之一。

哪些是最好的使用,以及调用它们的最佳方式是什么?

目前,我计划只对一些我不使用的外围设备使用中断处理程序,并通过直接通过 NVIC 设置位来调用它们,但我希望有更好、更正式的方式。

谢谢,

0 投票
2 回答
2432 浏览

sql - SQL:中断查询

我曾使用专有的非 SQL 数据库处理过一个项目,其中查询可能会被中断,并且在代码库中有相当多的地方使用了该功能并且非常有意义(例如,停止一个长时间运行的查询,该查询被取消用户,或者当最近的查询发生并使之前的查询过时等),我意识到我以前从未真正见过那种“中断的查询”,并认为它可以成为一个很好的 SO 问题(几个问题,但是它们都与完全相同的事物有关):

  • SQL查询可以中断吗?

  • 这是 SQL 标准的一部分吗?

  • 如果它不是 SQL 标准的一部分,哪些 SQL DB 允许中断查询(任何示例都非常受欢迎)?

  • 中断数据库查询(SQL 与否)是否常见,您会知道您将不再关心结果?(在我工作的代码库中,它确实有助于减轻服务器的负载)