中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-07-01 12:06
中国DOS联盟论坛 » DOS疑难解答 & 问题讨论 (解答室) » 【紧急求救】PS2键盘影响网卡驱动加载的问题 查看 2,278 回复 7
楼 主 【紧急求救】PS2键盘影响网卡驱动加载的问题 发表于 2007-07-02 11:24 ·  中国 北京 鹏博士BGP
新手上路
积分 14
发帖 6
注册 2007-07-02 10:45
18年会员
UID 92920
性别 男
状态 离线
一台电脑出现这样一个怪问题:

A:插上PS2键盘启动,网卡驱动会按照批处理的设置加载到高端内存,基本内存剩余511K。

B:使用中为了防止误操作,故要求本机不带键盘,但是发现不带PS2键盘启动,启动后自动执行的应用程序会提示内存不足。这时插上键盘用 mem 命令查看内存占用情况发现空闲基本内存只有466K。

C:在A、B两种情况下分别使用 mem /c /p 命令,这时会发现在没有插PS2键盘的时候(B情况),网卡驱动没有加载到高端内存,而是占用了基本内存,导致基本内存剩余只有466K,这样我的应用程序就运行不起来了。

请教众位高手,怎样解决这个问题?

先谢了!


附件1:Autoexec.bat文件内容如下:

@ECHO OFF
PROMPT $p$g
LH /L:0 C:\DOS\SMARTDRV.EXE /X
PATH C:\DOS;C:\PCTCP;C:\UCDOS;C:\BC31\BIN;C:\TOOLS;
SET TEMP=C:\DOS

rem C:\PCTCP\RTSPKT.COM 0x60

LH /L:1,18880 C:\PCTCP\LSL.COM
LH /L:1,41024 C:\PCTCP\E1000ODI.COM
LH /L:2,7008 C:\PCTCP\ODIPKT.COM

SET PCTCP=C:\PCTCP\PCTCP.INI
C:\PCTCP\ETHDRV.EXE

C:\SNDDRV\SETAUDIO
SET BLASTER=A220 I5 D1 H5 T4
C:\SNDDRV\C3DMIX /MFF000 /FFF000 /WFF000 /L00100 /E00100 /A00100 /C00100 /P00000 /400000 /R0f0ff /D040ff /Q0


附件2:Config.sys文件内容如下:

DEVICE=C:\DOS\HIMEM.SYS /TESTMEM:OFF
DEVICE=C:\DOS\EMM386.EXE NOEMS D=64
BUFFERS=20,0
FILES=40
DOS=UMB
LASTDRIVE=Z
FCBS=4,0
rem DEVICE=C:\DOS\CHKSTATE.SYS /S:FR1 /27920
DOS=HIGH


附件3:有PS2键盘时启动后的内存占用情况如下:

Modules using memory below 1 MB:

Name Total = Conventional + Upper Memory
-------- ---------------- ---------------- ----------------
MSDOS 16,845 (16K) 16,845 (16K) 0 (0K)
HIMEM 1,120 (1K) 1,120 (1K) 0 (0K)
EMM386 3,120 (3K) 3,120 (3K) 0 (0K)
COMMAND 2,928 (3K) 2,928 (3K) 0 (0K)
SMARTDRV 29,024 (28K) 29,024 (28K) 0 (0K)
ETHDRV 54,304 (53K) 54,304 (53K) 0 (0K)
LSL 5,376 (5K) 0 (0K) 5,376 (5K)
E1000ODI 41,040 (40K) 0 (0K) 41,040 (40K)

ETHDRV 20,656 (20K) 0 (0K) 20,656 (20K)
ODIPKT 3,056 (3K) 0 (0K) 3,056 (3K)
Free 537,920 (525K) 523,264 (511K) 14,656 (14K)

Memory Summary:

Type of Memory Total = Used + Free
---------------- ---------- ---------- ----------
Conventional 630,784 107,520 523,264
Upper 84,784 70,128 14,656
Reserved 0 0 0
Extended (XMS) 66,958,544 2,446,544 64,512,000
---------------- ---------- ---------- ----------
Total memory 67,674,112 2,624,192 65,049,920

Total under 1 MB 715,568 177,648 537,920

Largest executable program size 522,896 (511K)
Largest free upper memory block 13,168 (13K)
MS-DOS is resident in the high memory area.


附件4:没有PS2键盘时启动后的内存占用情况如下:

Modules using memory below 1 MB:

Name Total = Conventional + Upper Memory
-------- ---------------- ---------------- ----------------
MSDOS 16,845 (16K) 16,845 (16K) 0 (0K)
HIMEM 1,120 (1K) 1,120 (1K) 0 (0K)
EMM386 3,120 (3K) 3,120 (3K) 0 (0K)
COMMAND 2,928 (3K) 2,928 (3K) 0 (0K)
SMARTDRV 29,024 (28K) 29,024 (28K) 0 (0K)
LSL 5,376 (5K) 5,376 (5K) 0 (0K)
E1000ODI 41,008 (40K) 41,008 (40K) 0 (0K)

ETHDRV 54,304 (53K) 54,304 (53K) 0 (0K)
ODIPKT 3,056 (3K) 0 (0K) 3,056 (3K)
ETHDRV 20,656 (20K) 0 (0K) 20,656 (20K)
Free 525,616 (513K) 476,880 (466K) 48,736 (48K)

Memory Summary:

Type of Memory Total = Used + Free
---------------- ---------- ---------- ----------
Conventional 630,784 153,904 476,880
Upper 72,448 23,712 48,736
Reserved 0 0 0
Extended (XMS) 66,970,880 2,446,592 64,524,288
---------------- ---------- ---------- ----------
Total memory 67,674,112 2,624,208 65,049,904

Total under 1 MB 703,232 177,616 525,616

Largest executable program size 476,368 (465K)
Largest free upper memory block 29,344 (29K)
MS-DOS is resident in the high memory area.


注意观察上面红色的部分,有键盘时占用高端内存,无键盘时占用基本内存。
2 发表于 2007-07-03 09:09 ·  中国 北京 鹏博士BGP
新手上路
积分 14
发帖 6
注册 2007-07-02 10:45
18年会员
UID 92920
性别 男
状态 离线
这么多人看过了,难道没有一点建议吗?
3 发表于 2007-07-03 11:24 ·  中国 河北 保定 联通
铂金会员
★★★★
网络独行侠
积分 6,962
发帖 2,753
注册 2003-04-16 00:00
23年会员
UID 1565
性别 男
来自 河北保定
状态 离线
不懂。既然如此,就用ps/2键盘好了。
偶只喜欢回答那些标题和描述都很清晰的帖子!
如想解决问题,请认真学习“这个帖子”和“这个帖子”并努力遵守,如果可能,请告诉更多的人!
4 发表于 2007-07-03 14:50 ·  中国 北京 鹏博士BGP
新手上路
积分 14
发帖 6
注册 2007-07-02 10:45
18年会员
UID 92920
性别 男
状态 离线
使用中要求不能有键盘插在电脑上,所以必须解决这个问题。
5 发表于 2007-07-03 15:40 ·  中国 江苏 苏州 电信
银牌会员
★★★
积分 2,227
发帖 790
注册 2005-01-27 00:00
21年会员
UID 35703
性别 男
状态 离线
"网卡驱动没有加载到高端内存,而是占用了基本内存,导致基本内存剩余只有466K"
加载网卡驱动时,用的是DEVICE还是DEVICEHIGH?

CONFIG.SYS、AUTOEXEC.BAT的内容怎么不贴出来好让别人分析?
my major is english----my love is dos----my teacher is the buddha----my friends--how about U
6 发表于 2007-07-03 16:23 ·  中国 北京 鹏博士BGP
新手上路
积分 14
发帖 6
注册 2007-07-02 10:45
18年会员
UID 92920
性别 男
状态 离线
Originally posted by 本是 at 2007-7-3 15:40:
"网卡驱动没有加载到高端内存,而是占用了基本内存,导致基本内存剩余只有466K"
加载网卡驱动时,用的是DEVICE还是DEVICEHIGH?

CONFIG.SYS、AUTOEXEC.BAT的内容怎么不贴出来好让别人分析?




问题及相关情况已经补全,还请众位高手指点迷津。再谢!

[ Last edited by emo on 2007-7-3 at 04:33 PM ]
7 发表于 2007-07-04 08:36 ·  中国 河北 保定 联通
铂金会员
★★★★
网络独行侠
积分 6,962
发帖 2,753
注册 2003-04-16 00:00
23年会员
UID 1565
性别 男
来自 河北保定
状态 离线
试试把EMM386.exe从config.sys中去掉,一般情况下,emm386不是必需的了吧?
偶只喜欢回答那些标题和描述都很清晰的帖子!
如想解决问题,请认真学习“这个帖子”和“这个帖子”并努力遵守,如果可能,请告诉更多的人!
8 发表于 2007-07-04 09:19 ·  中国 北京 鹏博士BGP
新手上路
积分 14
发帖 6
注册 2007-07-02 10:45
18年会员
UID 92920
性别 男
状态 离线
回楼上,EMM386还是需要的,原因如下:

lh [程序]  将程序装入高端内存

使用此命令时,config.sys文件中需有下面两条语句:
device=emm386.exe
dos=umb
论坛跳转: