手写操作系统 - 15.实时时钟中断

实时时钟中断

B站视频链接 -【220.实时时钟中断】

CMOS

“CMOS” 是一种非常低功耗的静态内存,位于与实时钟(RTC)相同的芯片上。它于1984年引入IBM PC AT,使用了摩托罗拉MC146818A RTC。CMOS(和实时钟)只能通过IO端口0x70和0x71访问。CMOS内存的功能是在计算机关闭时存储50(或114)字节的BIOS “设置” 信息——因为有一个单独的电池保持时钟和CMOS信息的活跃。

CMOS 值是逐字节访问的,每个字节都是单独可寻址的。每个 CMOS 地址通常被称为 “寄存器”。前 14 个 CMOS 寄存器访问和控制实时时钟。实际上,CMOS 中唯一真正有用的寄存器是实时时钟寄存器和寄存器 0x10。CMOS 中的所有其他寄存器几乎完全过时(或未标准化),因此是无用的。

周期性中断中频率
RSInt/secPeriod
0000nonenone
00012563.90625 ms
00101287.8125 ms
00118192122.070 Micros
01004096244.141 Micros
01012048488.281 Micros
01101024976.562 Micros
01115121.93125 ms
10002563.90625 ms
10011287.8125 ms
10106415.625 ms
10113231.25 ms
11001662.50 ms
11018125.0 ms
11104250.0 ms
11112500.0 ms
访问CMOS

读取
outb (0x70, (NMI_disable_bit << 7) | (selected CMOS register number));
写入
val_8bit = inb (0x71);
参考链接

OSDEV - CMOS

CMOS Register Map

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值