MACHINE-CHECK 相关的MSR(一) - 概述

Machine check使用了一组相关的MSR。这些MSR有两部分组成,第一部分是全局控制和状态寄存器(global),另外一部分是一些记录错误信息的banks(banks的概念在前面的文章已经讲过,请看参考文章)。MSR的整体布局如下图所示
 
每一个错误报告的bank都同处理器中一个特定的硬件单元(或一组硬件单元)相关联。使用RDMSR或WRMSR来对这些寄存器进行读写。将上面图中的banks展开如下
 
全局相关的寄存器组定义了如何开启 MCA 的能力。每一个 BANK 则具体对应一类错误源,如 CPU,MEMORY,CACHE,CHIPSET 等等。每一个 BANK 都可以进行单独的控制,这样软件就能够针对每一个 BANK 使用特定的方式进行处理。由于 MCA 以时间窗口为单位对错误进行采样,因此在每一个采样结束时有可能会发现有不止一个的错误产生,但是只会触发一次中断或者异常,因此当软件进行处理时必要要轮询所有的 BANK 以确保每一个产生的错误都可以被处理。

参考文章
Intel MCA 硬件机制概述

你可能感兴趣的:(硬件知识)