CMOS 内存和 RTCMemoryFixup

描述

CMOS 内存

  • CMOS 内存保存着日期、时间、硬件配置信息、辅助设置信息、启动设置、休眠信息等重要数据。CMOS 内存只能读出,不能写入。
  • 一些 CMOS 内存空间定义:
    • 日期、时间:00-0D
    • 休眠信息存放区间:80-AB
    • 电源管理:B0-B4
    • 其他
  • 附件提供了 CMOS 内存 00-3F 详细定义。

模拟 CMOS 内存方法

  • 安装 RTCMemoryFixupOC\Kexts,并添加驱动列表。

  • 引导标识符 boot-args 添加 rtcfx_exclude=...

    格式: rtcfx_exclude=offset1,offset2,start_offset-end_offset...

    如:rtcfx_exclude=40-AFrtcfx_exclude=2A,2D,80-AB 等。

注意事项

  • 模拟 CMOS 内存会抹掉原来定义的功能,请 谨慎使用 。如 rtcfx_exclude=00-0D 将导致睡眠期间机器的日期、时间不再更新。再如 rtcfx_exclude=B0-B4 将导致机器无法自动睡眠。

附录:CMOS 内存00-3F 定义

地址 说明
0
1 秒报警
2
2
3 分报警
4
5 时报警
6 星期
7
8
9
A 状态寄存器 A
B 状态寄存器 B
C 状态寄存器 C
D 状态寄存器 D
E 诊断状态字节(0 正常)
F 停止状态字节(0 有市电
10 软盘驱动器类型 (位 7-4: A 驱,位 3-0: B 驱 1-360KB; 2-1.2MB; 6-1.44MB; 7-720KB)
11 保留
12 硬盘驱动器类型 (位 7-4: C驱,位 3-0: D 驱)
13 保留
14 设备字节 (软驱数目,显示器类型,协处理器)
15 基本存储器低字节
16 基本存储器高字节
17 扩展存储器低字节
18 扩展存储器高字节
19 硬盘类型字节 (低于 15 为 0)
1A—2D 保留
2E—2F CMOS 校验和 (10-2D 各字节和)
30 扩充存储器低字节
31 扩充存储器高字节
32 日期世纪字节(19H:19 世纪)
33 信息标志
34—3F 保留 (34-0:没有密码; 35-3F-密码位置)

results matching ""

    No results matching ""