前言
我们现在来根据《x86/x64体系探索及编程》的第十七章分析apic结构,第一个实验就是检测local apic与x2apic,但是现在bochs最新版本配置文件有些变动,需要添加有关配置属性才能开启,为解决这个问题分析了好久(主要是方向找错了)。
开启x2apic
在bochs的配置文件bochsrc.bxrc中添加下面这行配置文件,即可开启,否则按照原来的配置文件检测无效。
cpuid: apic=x2apic
运行结果如下所示,可以看到其支持x2apic,否则正常运行显示no.
关于bochs对SMP的编译支持
SMP,全称为 Symmetric multi-processing 对称多处理器技术,应该就是指通俗意义上的多核处理器。
Bochs对SMP的支持并不如想象的那么完善,下面是关于bochs对smp的有关说明。
https://bochs.sourceforge.io/doc/docbook/user/smp.html
开启smp时,我们无法使用debugger,编译选项中必须把DEBUGGER有关选项取消掉,否则会出现错误。