对于x86中可用的中断列表,是否有任何正式规范(可能由Intel提供)?

对于x86中可用的中断列表,是否有任何正式规范(可能由Intel提供)?,x86,intel,interrupt,X86,Intel,Interrupt,例如,为了在实模式下向控制台打印字符,我们应该将al设置为所需字符,将ah设置为0x0e,指定0x10作为中断向量虽然有专门的网站(如拉尔夫·布朗的中断列表),但我更希望英特尔提供一份正式文档。与指令集列表(正式文档)相比,我很难找到它。它曾经存在过吗?维基百科中有几篇文章提到了名为“”的文档 第3卷(第2859页)中的第6.15部分称为“异常和中断参考”。该文档远没有那么详尽,但是,它列出了应由英特尔定义的适当信息。当然,如果需要找到某个中断的线索,比如某个操作系统的0x80,那么期望这些信息

例如,为了在实模式下向控制台打印字符,我们应该将
al
设置为所需字符,将
ah
设置为
0x0e
,指定
0x10
作为中断向量虽然有专门的网站(如拉尔夫·布朗的中断列表),但我更希望英特尔提供一份正式文档。与指令集列表(正式文档)相比,我很难找到它。它曾经存在过吗?

维基百科中有几篇文章提到了名为“”的文档


第3卷(第2859页)中的第6.15部分称为“异常和中断参考”。该文档远没有那么详尽,但是,它列出了应由英特尔定义的适当信息。当然,如果需要找到某个中断的线索,比如某个操作系统的0x80,那么期望这些信息来自英特尔是不正确的。因此,该文档明确指出,中断32-255是用户定义的。同时,Ralf Brown的中断列表旨在包含来自不同来源的信息(包括官方和非官方、有文档和无文档),因此,例如,页面上0x80的参考列出了Linux和BSD系统调用以及其他选项。因此,如果您的目的是寻找信息来帮助某个开发过程,那么使用拉尔夫·布朗的列表可能是相当好的。

维基百科中的几篇文章提到了名为“”的文档


第3卷(第2859页)中的第6.15部分称为“异常和中断参考”。该文档远没有那么详尽,但是,它列出了应由英特尔定义的适当信息。当然,如果需要找到某个中断的线索,比如某个操作系统的0x80,那么期望这些信息来自英特尔是不正确的。因此,该文档明确指出,中断32-255是用户定义的。同时,Ralf Brown的中断列表旨在包含来自不同来源的信息(包括官方和非官方、有文档和无文档),因此,例如,页面上0x80的参考列出了Linux和BSD系统调用以及其他选项。因此,如果您的目的是寻找信息来帮助某个开发过程,那么使用拉尔夫·布朗的列表可能是相当好的。

@harold那么,我如何才能找到这些信息(可能是正式的)?我假设,虽然实现可能因操作系统而异,但接口应该一致,以便它可以由Intel逻辑提供。。。我是新手,你能给我更多的见解吗?不,界面不一致。英特尔生产能够接受中断的CPU,而中断向量表格式是英特尔与世界其他地方达成的协议。但中断时寄存器中的值是BIOS编写器(不是Intel)出于一些只有他们自己知道的原因而做出的任意选择。因为BIOS编写器不需要公开其中断列表,所以您所查找的内容可能从未正式发布过,尽管它可能已被反向工程多次。@harold,那么,我如何才能找到这些信息(可能是正式的)?我假设,虽然实现可能因操作系统而异,但接口应该一致,以便它可以由Intel逻辑提供。。。我是新手,你能给我更多的见解吗?不,界面不一致。英特尔生产能够接受中断的CPU,而中断向量表格式是英特尔与世界其他地方达成的协议。但中断时寄存器中的值是BIOS编写器(不是Intel)出于一些只有他们自己知道的原因而做出的任意选择。因为BIOS编写者不需要公开他们的中断列表,所以您要查找的内容可能从未正式发布过,尽管它可能已被反向工程多次。事实上,我已经查看了您刚才提到的特定部分,但我一开始不明白这意味着什么,因为我在这个领域没有背景。既然你给了我一些概述,把所有的东西都联系在一起,这对我来说是有意义的。但是,我必须问你,
user-defined
的具体含义是什么?是通过操作系统、bios还是其他方式?当我需要查看可用中断的完整列表时,我应该咨询什么?我正在学校项目中使用bochs,以便制作一个小型操作系统。bochs是否提供了预定义的可用中断列表?我建议保留术语
用户定义的
,作为一个具有一般意义的术语。事实上,它可能来自操作系统、BIOS和其他地方。在这个例子中,如果我们再看一次页面,我们会发现,在这个例子中,BIOS和一些驱动程序(也可能是“用户”)一起被提到。另外,为了做一个更好的例子,我想参考第1.6节。第页的“BTX服务器”:这里是该页有趣的摘录:
“BTX服务器准备一个简单的环境,并在将控制权传递给客户端之前,从16位实模式切换到32位保护模式。这包括初始化和更新以下数据结构:修改中断向量表(IVT)。IVT为实模式代码提供异常和中断处理程序。
因此,当操作系统启动时,一种称为“中断向量表”(IVT)的数据结构这里是用户定义的中断在FreeBSD上下文中的来源。至于
bochs
,我恐怕不能具体地说,但是,也许它还可以处理CPU控制数据结构。事实上,我已经看过了你刚才提到的特定部分,但我不明白这意味着什么一开始是nt,因为我