计算机系统初始化与启动机制解析
1. 处理器初始化与系统诊断
若预期的处理器在 10 毫秒定时器到期前出现,可取消定时器并跳至步骤 10。步骤 10 是读取并评估 COUNT 变量,确定处理器数量。步骤 11 是必要时重新配置 APIC,并继续进行其余系统诊断。
AP 初始化序列在 AP 接收到 INIT SIPI 时开始,执行 SIPI 中编码向量处的 BIOS AP 初始化代码,具体操作如下:
1. 等待 BIOS 初始化锁信号量,获得控制权后继续初始化。
2. 向处理器加载微代码更新。
3. 同步 BSP MSRs 和 MTRRs。
4. 启用缓存。
5. 从本地 APIC ID 寄存器确定 AP 的 APIC ID,并添加到 MP 和 ACPI 表,可选择添加到 RAM 中的系统配置空间。
6. 初始化并配置本地 APIC,配置 AP 的 SMI 执行环境(每个 AP 和 BSP 必须有不同的 SMBASE 地址)。
7. 将 COUNT 变量加 1。
8. 释放信号量。
9. 执行以下操作之一:
- 若不支持 MONITOR/MWAIT,执行 CLI 和 HLT 指令。
- 执行 CLI、MONITOR 和 MWAIT 序列进入深度 C 状态。
10. 等待 INIT SIPI。
graph LR
A[AP 接收 INIT SIPI] --> B[等待 BIOS 初始化锁信号量]
B --> C[加载微代码更新]
C --> D[同步 BSP MS
超级会员免费看
订阅专栏 解锁全文
2521

被折叠的 条评论
为什么被折叠?



