变量初始化中断

Interrupt for variable initialization

我正在按照 James Molloy 的指南创建小型 OS,但现在我卡在了中断状态。我真的不明白如何调用我的中断处理程序而不是这个命令:

    asm volatile("int [=10=]x21");

主文件

    #include "monitor.h"
    #include "multiboot.h"
    #include "descriptor_tables.h"
    #include "timer.h"
    #include "paging.h"
    #include "simple.h"

    int main(struct multiboot *mboot_ptr){
     // Initialise all the ISRs and segmentation
        init_descriptor_tables();
     // Initialise the screen (by clearing it)
        monitor_clear();
        monitor_write("Hello, paging world!\n");          
        init_simple();
        asm volatile("int [=11=]x21");
        return 0;
    }

其中 0x21 是 vector.Is 中的中断号,有使用 c 命令进行中断的方法吗?

例如我想使用这个命令:

    char c; // for interrupt created and handler allocate memory for char/int etc.
    char c = 'a'; // allocate + assing 
    c; // get value
    c = 'b'; // assing new value

有什么办法可以做到吗?

中断由CPU本身产生。

虽然 C 通常用于在内核中编写中断 处理程序 ,但没有独特的工具(或机器模型)指示使用它创建它们。