在 Windows 3.x 奇偶校验错误

注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。

点击这里察看该文章的英文版: 93521
本文已归档。它按“原样”提供,并且不再更新。
3.00 3.00a 3.10 3.11
窗口
kbhw kbdisplay kbprb
概要
奇偶校验错误消息是由屏蔽中断 (NMIs) 的生成,引起的。一个干净、 uncorrupt 安装的 Windows 不能生成一个 NMI,因此不可能为干净的、 uncorrupt 安装的 Windows 导致奇偶校验错误。
更多信息
奇偶校验是完整性的非常基本的信息检查。内存存储的每个字节 (8 位) 实际所需的信息的九位。为数据使用八位和最后一位 ("奇偶校验位") 用于存储数据的奇偶校验。

处理器是负责的检查奇偶校验位的准确性和处理器产生一个 NMI,如果它确定奇偶校验位设置不正确。在 Windows 386 增强模式下,这捕获由一个虚拟设备驱动程序 (VDD),* 显示一条错误消息的奇偶校验。在 Windows 标准模式 NMIs 被忽略,并传递给默认奇偶校验处理程序。 这要么不执行任何操作,或生成 TTY (全屏幕) 错误消息。在这两种情况下在计算机处于不稳定的状态和已停止。

如果您删除一个内存驻留项如设备驱动程序或终止和驻留 (TSR) 程序解析可以看起来奇偶校验错误。这只会更改负载代码的内存位置。如果更改位置,或者移除项然后代码不再位于有故障的内存,并且您可能会不会再收到奇偶校验错误。如果数据位于可疑内存,您不可能在所有看到奇偶校验错误。遗憾的是,因为数据和 Windows 中的代码将不断更改的内存位置,奇偶校验错误可能会显示 (或重新显示) 更高版本。

在 Windows 中,用初始化为零内存标志标记通常分配内存。这使得奇偶校验甚至 (在数据字节中设置为零的)。如果存在有故障的内存芯片其中一位的值始终设置为 0,然后一切工作正常,则不写入到内存 (因为奇偶校验位是正确的) 任何内容。如果有故障的内存地址将落在代码段 (也就存储实际的可执行的代码将内存) 很可能将使用该位将会生成奇偶校验错误。

奇偶校验错误可能由不同的情况引起,但它是几乎总是硬件问题。

奇偶校验错误的常见原因

奇偶校验错误的原因之一是有故障的内存。若要解决此问题最万无一失的方法是换出内存的每一段,直到问题消失。请确保您使用的很好的、 高质量的内存,并且内存已正确安装在计算机中。内存检查程序不足够,因为它们不测试内存 Windows 使用它的方式。多数,如果不是所有,内存方格图案式使用读/写循环扫描内存时。由于 Windows 正在从内存中执行代码,它使用执行周期。执行周期读/写周期的不同物理上和奇偶校验错误更容易。它是内存检查程序查找奇偶校验错误,如果内存非常有故障的可能。

有时奇偶校验错误是由不匹配的内存速度引起的。CPU 可能正在访问内存比内存能够处理请求的速度更快。可能的解决方法是增加的 CMOS 设置中的等待状态的数量。此选项在所有计算机上不可用,并始终不能正常工作。在简单地说增加等待状态的数目指示 CPU 等待在预定的内存读取之间的时间长度。这减慢计算机因为现在花更长的时间来访问内存。通常,该选项可以设置为零、 一,或双等待状态。越高数值,在更长时间等待内存周期之间。此外,尽量使您的计算机上安装的 RAM 的相同的速度。如果您有混合的速度,请确保您具有相同的速度在每个银行中安装的 RAM。 银行是通常的主板上的四个内存芯片中。

支持与视频的卡一样的硬件会导致奇偶校验错误。 因为设备占用的内存中该 UMB,到这些设备的读取/写入数据也会导致奇偶校验错误。最佳的方法测试这是一个替换该设备工作正常的。也有故障的电源可能会导致奇偶校验错误。

奇偶校验错误的另一个已知的原因是奇偶校验引导 B 病毒。

奇偶校验是什么?

有两种版本的奇偶校验: 奇数和偶数。奇偶校验 BIT 根据数开位或 1 的设置打开或关闭在的数据通常是一个字节中。

示例

11011010 (奇偶校验会被设为 1 以使的数目为偶数)。

11110111 (奇偶校验会被设置为 0 进行的付息日不固定的数量。

内存对于 PC 是设计,这样一个额外的芯片或额外 BIT,将放在一边进行奇偶校验。该芯片将保存为一个字节的内存奇偶校验。正因如此,经常会有 9 个芯片上一个内存的 SIMM,或本身芯片标记为 256 x 9 或 1Megx9 的等等。

在有故障的内存地址中执行的一段代码时,将生成奇偶校验错误。在读取或在的 CPU CPU 的内存来执行,从接收一条指令的位置在点的预取周期硬件检查奇偶校验提取的代码。如果的读取失败,生成异常错误。这是为了安全保护中执行的指令不可行的 CPU。

在一个常规内存提取的过程中也就是数据读取,奇偶校验是未选中。 这就是内存检查程序通常将找不到奇偶校验错误的原因。 只有程序将检查内存奇偶校验问题的正确是一种程序,它在 RAM 中执行代码的解决问题。Windows 3.0 和 3.1 是这样的程序。在 Windows 3.0 中检查奇偶校验错误机制进行了不正确,而是生成的函数阿联酋的。这些阿联酋了奇偶校验错误捕获不到和 $ 继续在有故障的内存中运行代码的结果。

注意: 您不能通过创建一个 RAMDRIVE、 将一个程序复制到它,并执行该程序检查的奇偶校验问题的内存。该程序仍作为该 RAMDRIVE 中的数据存储。当运行,程序将复制到常规内存,它在执行之前。有关如何使用一个 RAMDRIVE 解决内存,请参阅下列文章 Microsoft 知识库中相应:
142546如何使用 RAM 驱动器功能来解决内存
3.00 3.00a 3.10 3.11.exe 执行 paroty parety parityerror

警告:本文已自动翻译

属性

文章 ID:93521 - 上次审阅时间:02/27/2014 15:54:12 - 修订版本: 2.1

Microsoft Windows 3.0 Standard Edition, Microsoft Windows 3.0a, Microsoft Windows 3.1 标准版, Microsoft Windows 3.11 标准版

  • kbnosurvey kbarchive kbmt KB93521 KbMtzh
反馈