grub引导后初始化和唤醒AP处理器

时间:2019-07-31 11:56:13

标签: grub

我正在构建一个实验性OS (32 bits),该实验使用grub引导加载程序来引导内核。我要添加MPS suppor t。

我的OS专为单CPU /单核(GDT, IDT, ISR, paging ..一切工作正常,并在保护模式下配置),现在我想向内核添加MPS支持,我能够阅读MADT并找出我有多少CPUs, 我已经读过SIP I序列(Intel® 64 and IA-32 Architectures Developer's Manual: Vol. 3A)来唤醒其他AP内核,但是它们需要实模式(设置堆栈并与BSP通信)。

我的问题是grub启动后,它使我进入了保护模式(通常,在该模式下,我会初始化BSP并设置堆栈并启用分页,然后调用内核main)。

如何以实模式启动其他AP内核?知道我处于保护模式并且BSP已经初始化。

更新2019年8月4日 在使用grub引导OS后,我只需要说明/指示即可初始化AP

谢谢

0 个答案:

没有答案