gpt4 book ai didi

embedded - TRAP 、软件中断和硬件中断之间的区别?

转载 作者:行者123 更新时间:2023-12-02 17:22:35 33 4
gpt4 key购买 nike

我只是想知道它们之间的基本区别。

我在一些地方发现,TRAP本质上也被称为软件中断,或者类似异常的东西。

软件中断和异常之间的基本区别是什么。

软件中断可以通过INT指令产生,但是TRAP只能在某些情况下产生,比如被零除?是吗?

请对此查询给出合适的答案,其中包括软件中断陷阱和异常。

最佳答案

术语确实有点模糊,可能取决于 CPU 供应商。

可以明确的是,硬件中断是由硬件信号触发,使CPU进入预定义的ISR。这些是由(通常是外部)硬件触发的异常。

陷阱 的表示法因 CPU 供应商而异。非 Intel CPU 上的陷阱可以(例如在 68000 或 PowerPC CPU 上)是软件中断。这些 CPU 有一个 TRAP 指令。在 x86 上,该指令将是 INT xxx,在 ARM CPU SWI/SVC 上,在 PowerPC TRAP #xx 上。这将是用户程序(通常用于进入操作系统)故意触发的异常

英特尔世界中的陷阱是异常情况,例如被零除或其他错误,例如无效内存访问(但也可能由设置的单步标志触发)。其他 CPU 供应商只是将其称为异常。这些异常通常是由错误的程序或 CPU 在正常程序流程中无法处理的情况触发的。

所有这些通常都称为异常

关于embedded - TRAP 、软件中断和硬件中断之间的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41583146/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com