我试图弄清楚是否有可能运行一个只由一个物理页面支持RAM的Linux。在尝试启动Linux来宾时,我注意到使用内存操作数的程序集指令,如导致页面错误循环,直到我恢复包含指令的页以及操作数中引用的页的当前位(在本例中为[rbpCPU不应该按顺序访问内存页,即先读取指令,然后访问内存操作数?还是x86要求指令页和所有操作数页同时可访问?
我正在测试AMD Zen 1。
ISR of INT 0x19将第一个扇区(512 B)加载到内存中。这个扇区是Linux的引导部分,它将操作系统的其他部分加载到内存中。
第一个扇区是bootsect.s,它是用程序集编写的。这是第一个加载到内存中的系统代码。我怀疑程序集指令是加载还是编译机器指令加载到内存中。BIOS是否有一个本机assembler来将程序集转换为机器指令?