DMA缓冲区太小使程序不能运行

Author: 何宗琦、周新 Date: 1998年 第10期 34版

#1  黑龙江读者盛利问:一台兼容机,Pentium 133 CPU、16MB内存、540MB硬盘、日立4倍速光驱、“小精英”主板。在Windows 3.1中运行《综合英语有声教学》光盘时,屏幕刚出现画面和音乐时就中止了,屏幕显示:“DMA缓冲区太小,在SYSTEM.INI的[386ENH]中SET ‘DMA BUFFERSIZE=027’,退出所有应用程序,并退出Windows,重新启动计算机”。
#1  该软件以前在Windows 3.1下运行正常,使用方便。这次是在重新安装系统之后出现上述故障的,请问如何解决?
  答:DMA缓冲区是系统在内存中开辟的一块专用的区域,在内存直接存取时,通过该缓冲区实现内存和外存储器之间的数据交换。不同的应用程序对这个缓冲区的大小需求不一定相同。从你的出错提示信息可以看出,当前设定的缓冲区太小,因此应该重新设置。在安装Windows 3.1系统时,这个缓冲区的大小通常为其缺省值(16KB),由于你没有重新设置,这个缺省值不能满足现有的应用程序的需要,所以出现上述现象。
  在“文件管理器”中选择“WINDOWS\SYSTEM\SYSEDIT”,即可进入配置文件编辑窗,再选择SYSTEM.INI文件中的[386ENH]节增加或修改:
  DMABUFFERSIZE=027
一行即可。此时DMA缓冲区的大小为27KB,程序就能够正常运行了。