BSP和AP Processors
在多核处理器初始化时,将定义2类CPU,主核:the bootstrap processor (BSP) 和 从核 the application processor (APs)。在上电或者重置系统时,硬件会动态选择系统总线上的一个processor作为BSP,其余的为AP。
选择的方式为上电后所有的CPU都执行NOP Instruction,看哪个先被认到,所以理论上BSP的物理位置应为相同的,除非电路的Power sequence修改。
NOP:No Operation Instruction
MP(Multi Processor)初始化协议在系统中有如下的要求和限制:
MP初始化仅在power up或者reset被执行。如果MP初始化已经完成,BSP选定后INITs不会导致MP初始化被重复执行,然后每个processor检查BSP标志决定执行BIOS boot-strap,或进入wait-for-SIPI状态。
系统中所有能向processor发中断的设备,在MP初始化阶段都必须禁止,包括BSP向AP发送INIT-SIPI-SIPI序列,AP响应最后一个SIPI期间。
# rdmsr -a 0x1b 0xfee00900 …… 1001 0000 0000 0xfee00800 …… 1000 0000 0000 0xfee00800 …… 1000 0000 0000
Or
# rdmsr -a -f 08:08 0x1b
1
0
0