STARTUP IPI 对应用处理器有什么影响?
What is the effect of STARTUP IPI on Application Processor?
我现在正在尝试了解启动过程以及处理器如何初始化。我已阅读多处理器规范部分 B.4.2,但我不清楚 INIT IPI
和 STARTUP IPI
对 BSP
和 AP
的作用。
一般; INIT IPI
就像(逻辑)CPU 的软重置,将其放入 "wait for SIPI state"。 Intel 手册中有一个 table 显示各种寄存器在开机后、复位后和 INIT IPI
后的默认值。
Startup IPI
是一种告诉 CPU 在某个地址(从 Startup IPI
的 "vector field" 派生的地址)开始执行的方法可以设置可用的 IDT。这也会将 CPU 从 "wait for SIPI state" 中剔除。某些(大多数)CPU 不在 "wait for SIPI state" 中时会响应 Startup IPI
,但如果没有之前的 INIT IPI
,您就不能期望 [=29] =]当时处于known/safe状态。
所有 CPU 对 INIT IPI
和 Startup IPI
的响应相同。 BSP 和 AP 之间的主要区别在于上电期间(BSP 执行固件,而 AP CPUs 等待)。
我现在正在尝试了解启动过程以及处理器如何初始化。我已阅读多处理器规范部分 B.4.2,但我不清楚 INIT IPI
和 STARTUP IPI
对 BSP
和 AP
的作用。
一般; INIT IPI
就像(逻辑)CPU 的软重置,将其放入 "wait for SIPI state"。 Intel 手册中有一个 table 显示各种寄存器在开机后、复位后和 INIT IPI
后的默认值。
Startup IPI
是一种告诉 CPU 在某个地址(从 Startup IPI
的 "vector field" 派生的地址)开始执行的方法可以设置可用的 IDT。这也会将 CPU 从 "wait for SIPI state" 中剔除。某些(大多数)CPU 不在 "wait for SIPI state" 中时会响应 Startup IPI
,但如果没有之前的 INIT IPI
,您就不能期望 [=29] =]当时处于known/safe状态。
所有 CPU 对 INIT IPI
和 Startup IPI
的响应相同。 BSP 和 AP 之间的主要区别在于上电期间(BSP 执行固件,而 AP CPUs 等待)。