MCE----Machine-check exception
http://en.wikipedia.org/wiki/Machine_Check_Exception
Machine-check exception
A Machine Check Exception (MCE) is a type of computer hardware error that occurs when a computer's central processing unit detects a hardware problem.
Microsoft Windows displays the error using the blue screen of death containing the error message (the parameters inside the brackets vary):
STOP: 0x0000009C (0x00000004, 0x00000000, 0xB2000000, 0x00020151) "MACHINE_CHECK_EXCEPTION"
On Linux, a process (such as klogd[1] ) writes a message to the kernel log and/or the console screen (usually only to the console when the error is non-recoverable and the machine crashes as a result):
CPU 0: Machine Check Exception: 0000000000000004
Bank 2: f200200000000863
Kernel panic: CPU context corrupt
The error usually occurs due to failure or overstressing of hardware components where the error cannot be more specifically identified with a different error message.[clarification needed] Diagnosing the error message can be difficult, although Intel Pentium processors do generate more specific codes which can be decoded by contacting the manufacturer.[citation needed]
Most MCEs require a restart of the system before users can continue normal operation, and indicate a long-term problem of a general nature.[citation needed]
Contents
[hide]
Problem types[edit]
Most of these errors relate specifically to the Pentium processor family. Similar errors may occur on other processors and will cause similar problems.
Some of the main hardware problems that cause MCEs include:
- System bus errors: (error communicating between the processor and the motherboard).
- Memory errors: parity checking detects when a memory error has occurred. Error correction code (ECC) can correct limited memory errors so that processing can continue.
- Cache errors in the processor.
Possible causes[edit]
Normal causes[clarification needed] for MCE errors include overheating and/or incorrect hardware installation. Specific manually-induced causes include:
- overclocking (which normally increases heat-output)
- poorly-fitted heatsink/computer fans (the same problem can happen with excessive dust in the CPU fan)
- an overloaded internal or external power-supply (fixable by upgrading)
Computer software can also cause MCE errors (normally by corrupting data which programs read or write). For example, software performing read or write operations from or to non-existent memory regions can lead to confusion for the processor and/or the system bus.[citation needed] Accessing memory marked off-limits by UEFI may cause MCE errors.[2]
Decoding MCEs[edit]
As noted previously, decoding MCE errors can prove difficult. Normally the manufacturer (especially processor manufacturers) will be able to provide information about specific codes. Consult the Intel 64 and IA-32 Architectures Software Developer's Manual[3] Chapter 15 (Machine-Check Architecture), or the Microsoft KB Article on Windows Exceptions.[4]
Programs to Decode MCEs[edit]
- mcat
- A Windows command-line program from AMD to decode MCEs from AMD K8, Family 0x10 and 0x11 processors
- mcelog
- A Linux daemon by Andi Kleen to handle MCEs for modern x86 processors. mcelog can also decode machine checks.
- parsemce
- A Linux program by Dave Jones to decode MCEs from AMD K7 processors
- mced
- A Linux program by Tim Hockin to gather MCEs from the kernel and alert interested applications. The primary difference between this app and others is that this is a daemon (it is always running) which means that it can get MCE notifications as soon as the kernel finds them.[citation needed] It does not try to interpret the MCE data, just alert other apps.
See also[edit]
References[edit]
- Jump up^ "KLOGD(8)". UNIX man pages. 1999-08-21. Retrieved 2008-07-29. "klogd is a system daemon which intercepts and logs Linux kernel messages."
- Jump up^ "Bug 47121: UEFI boot panics on a new Samsung Series 9 laptop throwing a machine check exception". Linux kernel bug tracker. Retrieved 8 February 2013.
- Jump up^ "Intel 64 and IA-32 Architectures Software Developer's Manual".
- Jump up^ "Microsoft KB 329284 - Stop error "0x0000009C (0x00000004, 0x00000000, 0xb2000000, 0x00020151)"".
External links[edit]
- mcelog machine check handling for Linux x86
- parsemce source code on Codemonkey
- Intel 64 and IA-32 Architectures Software Developer's Manual Part 3A (see Chapter 15) and Part 3B (see Appendix E)
- Microsoft specification of Bug Check 0x9C: MACHINE_CHECK_EXCEPTION
MCE----Machine-check exception的更多相关文章
- x86服务器MCE(Machine Check Exception)问题
MCE现象 Intel在Pentium 4.Xenon和P6系列处理器中实现了机器检查(Machinecheck)架构,提供能够检测和报告硬件(机器)的错误机制,如系统总线错误.ECC错误.奇偶校验错 ...
- java常见异常类图(分类了Error/RuntimeExecption、check Exception)
版权:欧初权 http://www.cnblogs.com/langtianya/p/4435537.html
- Process Kill Technology && Process Protection Against In Linux
目录 . 引言 . Kill Process By Kill Command && SIGNAL . Kill Process By Resource Limits . Kill Pr ...
- sysadmin_basement
基本部分 1. 系统硬件 1.1. 主板 获取序列号 $ sudo dmidecode -t system |grep -i Serial Serial Number: CNU9032T3N 获取厂商 ...
- QEMU KVM Libvirt手册(7): 硬件虚拟化
在openstack中,如果我们启动一个虚拟机,我们会看到非常复杂的参数 qemu-system-x86_64 -enable-kvm -name instance-00000024 -S -mach ...
- linux查看硬件详细信息dmidecode
[root@zabbix_server src]# dmidecode|more # dmidecode 2.12 SMBIOS 2.7 present. structures occupying b ...
- Linux dmidecode 命令
当我们需要获取机器硬件信息时,可使用linux系统自带的dmidecode工具进行查询. dmidecode 用于获取服务器的硬件信息,通常是在不打开计算机机箱的情况下使用该命令来查找硬件详细信息 这 ...
- SIMD指令集——一条指令操作多个数,SSE,AVX都是,例如:乘累加,Shuffle等
SIMD指令集 from:https://zhuanlan.zhihu.com/p/31271788 SIMD,即Single Instruction, Multiple Data,一条指令操作多个数 ...
- Linux dmidecode命令
1.linux系统自带的dmidecode工具查询服务器硬件信息 dmidecode 用于获取服务器的硬件信息,通常是在不打开计算机机箱的情况下使用该命令来查找硬件详细信息 这个命令可以查看内存的几乎 ...
- Linux服务器硬件设备信息查看
一.cpu信息 cpu信息存储在/proc文件系统的cpuinfo(/proc/cpuinfo)文件里,可以直接查看这个文件以获得cpu信息,所列字段解释如下: processor : 核心编号,如: ...
随机推荐
- bs4--官文--遍历文档树
遍历文档树 还拿”爱丽丝梦游仙境”的文档来做例子: html_doc = """ <html><head><title>The Dor ...
- 流编辑器sed知识点总结
sed(流文本编辑器) 每次读取一行到模式空间中, 修改的sed模式空间中的内容,并不会修改源文件, 继而输出模式空间的内容, 最后删除模式空间中的内容. sed [O ...
- FastJson生成json时,显示Null属性
FastJson生成json时,默认不会输出null字段. 移动端,有时候,需要后端提供完整的字段说明. Map < String , Object > jsonMap = new Has ...
- 使用adb命令启查看已安装的Android应用的versionCode、versionName
列出已经安装的应用 adb shell pm list package C:\Users\CJTDEV003>adb shell pm list package package:com.sams ...
- luogu1963 [NOI2009]变换序列
#include <iostream> #include <cstring> #include <cstdio> using namespace std; int ...
- Given a binary tree, return the level order traversal of its nodes' values. (ie, from left to right, level by level). For example: Given binary tree {3,9,20,#,#,15,7}, 3 / \ 9 20 / \
class Solution { public: vector<vector<int>> levelOrder(TreeNode* root) { vector<vect ...
- POJ 1543 Perfect Cubes
Perfect Cubes Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 12595 Accepted: 6707 De ...
- CodeIgniter 防止XSS攻击
CodeIgniter 包含了跨站脚本攻击的防御机制,它可以自动地对所有POST以及COOKIE数据进行过滤,或者您也可以针对单个项目来运行它.默认情况下,它 不会 全局运行,因为这样也需要一些执行开 ...
- Python之转换py文件为无需依赖python环境的exe文件的方法
在日常工作中,使用python脚本开发快速敏捷,但是其代码是可见的,而且充分的依赖python开发环境.为了达到保护我们源码的目的,或者不依赖python开发环境使用python脚本,将其转换成可以直 ...
- linux虚拟机无法上网 Network is unreachable
系统centos 安装ftp时报错 Couldn't resolve host 'mirrorlist.centos.org [root@wulihua bin]# yum install vsft ...