我正在阅读内核引导程序代码的一部分(来自斯坦福大学的CS140 Pintos操作系统):
# Configure serial port so we can report progress without connected VGA.
# See [IntrList] for details.
sub %dx, %dx # Serial port 0.
mov $0xe3, %al # 9600 bps, N-8-1.
# AH is already 0 (Initialize Port).
int $0x14 # Destroys AX.
处理器正在实地址模式下执行这些指令。假设中断是通过查找中断向量表的第21个条目(index=0x14)并在那里执行处理程序来处理的。根据此来源,在实模式下BIOS初始化中断表。本Wikipedia页面列出了可用的BIOS中断,包括上述所使用的中断。
我的困惑在于列出的中断异常号与Intel参考文献中“实模式保留中断”的描述(第20-6页)(还在本Wikipedia页面中重复)有很大冲突。
这些中断号如何解决冲突?