-2

1)处理器如何识别请求中断的设备?

2)鉴于不同的设备可能需要不同的ISR,处理器如何获得每种情况下的起始地址?

3) 是否允许设备在处理另一个中断时中断处理器?

4)应该如何处理两个或多个同时的中断请求?

4

2 回答 2

2

1)处理器如何识别请求中断的设备?

CPU 有几条中断线,如果您需要的设备多于线数,则有一个“中断控制器”芯片(有时称为 PIC),它将多路复用多个设备并且 CPU 可以查询这些设备。

2) 鉴于不同的设备可能需要不同的 ISR,pressor 如何在每种情况下获取起始地址?

这很难。它可能是按照惯例(相同类型的设备总是在同一条线上);或者它可以被配置,例如在 BIOS 设置中。

3)是否应该允许设备在另一个中断正在服务时中断处理器?

当有中断时,进一步的中断被禁用。然而,如果它愿意,中断服务程序(即 CPU 正在执行的特定于设备的代码)可以在它愿意被中断的情况下重新启用中断。

4)应该如何处理两个或多个同时中断请求?

每个中断都有一个优先级:优先级较高的中断首先被处理。

于 2009-07-07T13:59:55.300 回答
-1

定义设备之间的优先级以便知道在同时请求的情况下首先服务哪个设备的概念称为优先级中断系统。这可以通过软件或硬件方法来完成。

软件方法——轮询 在这种方法中,所有中断都通过转移到同一个服务程序来服务。该程序然后检查每个设备是否是产生中断的设备。检查的顺序由必须设置的优先级决定。首先检查具有最高优先级的设备,然后按优先级降序检查设备。

硬件方法——菊花链 菊花链方法涉及以串行方式连接所有可以请求中断的设备。此配置由设备的优先级控制。具有最高优先级的设备首先放置。

于 2018-10-07T19:30:11.217 回答