中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS汉化世界 & 中文系统 (中文化室) » DOS622中加载EMM386后运行UCDOS就死
作者:
标题: DOS622中加载EMM386后运行UCDOS就死 上一主题 | 下一主题
tanghua
初级用户





积分 20
发帖 5
注册 2005-8-3
状态 离线
『楼 主』:  DOS622中加载EMM386后运行UCDOS就死

DOS622中加载EMM386.exe后运行UCDOS就死机,而运行天汇没有问题,现我需要用到UCDOS的特显(tx);如果我不加载EMM386.EXE,可以运行UCDOS,但我需要运行的软件就会报文件太大的错误提示,我的autoexec.bat 和config.sys 如下:
autoexec.bat

@ECHO OFF
SET PATH=C:\NET\NETPROG;C:\DOS;C:\UCDOS
SET TEMP=C:\DOS
MODE COM1:96,N,8,1
NET START WORKSTATION
LOAD NETBEUI
NET LOGON pos *
IF "%config%"=="1" GOTO 1
IF "%config%"=="2" GOTO 2
IF "%config%"=="3" GOTO 3
:1
call c:\ucdos\ucdos.bat
----我所需用的软件,大概有350K
GOTO QUIT
:2
call c:\ucdos\ucdos.bat
----我所需用的软件,大概有350K
GOTO QUIT

:3
-----这里只有一个COPY命令
:QUIT
------------------------------------------------------------------------------------------------------------
config.sys

[menu]
menuitem=1, 1
menuitem=2, 2
menuitem=3, 3
menudefault=1,5
menucolor=7,0

[1]
rem 1
[2]
rem 2
[3]
rem 3

[COMMON]
BREAK=OFF
DEVICE=C:\DOS\HIMEM.SYS
DEVICE=C:\DOS\EMM386.EXE ram highscan i=b000-b7ff
DOS=HIGH,UMB
FILES=85
BUFFERS=10,0
device=C:\NET\ifshlp.sys
LASTDRIVE=F
DEVICE=C:\NET\DRIVERS\PROTMAN\PROTMAN.DOS /i:C:\NET
DEVICE=C:\NET\DRIVERS\ETHERNET\DC21X4\DC21X4.DOS
-------------------------------------------------------------------------

我运行到UCDOS时再查看内存如下:

Memory Type        Total  =   Used  +   Free
----------------  -------   -------   -------
Conventional         640K      168K      472K
Upper                 51K       13K       38K
Reserved             384K      384K        0K
Extended (XMS)*   31,693K      525K   31,168K
----------------  -------   -------   -------
Total memory      32,768K    1,091K   31,677K

Total under 1 MB     691K      181K      509K

Total Expanded (EMS)                32,064 (32,833,536 bytes
Free Expanded (EMS)*                31,328 (32,079,872 bytes

* EMM386 is using XMS memory to simulate EMS memory as needed.
  Free EMS memory may change as free XMS memory changes.

Largest executable program size       470K (480,960 bytes)  
Largest free upper memory block        23K  (23,424 bytes)  
MS-DOS is resident in the high memory area.

我改了很多EMM386的参数,都不行,如
DEVICE = C:\DOSP\EMM386.EXE RAM 或
DEVICE = C:\DOSP\EMM386.EXE noems或
DEVICE = C:\DOSP\EMM386.EXE noems verbose  或
DEVICE = C:\DOSP\EMM386.EXE 2048 RAM I=CD00-DFFF FRAME=D000 等等

求各位帮助,谢谢,谢谢,谢谢了。

2005-8-6 13:32
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
willsort
元老会员

Batchinger


积分 4432
发帖 1512
注册 2002-10-18
状态 离线
『第 2 楼』:  

Re tanghua:

  软件检测与调试,也适用硬件的“排除法”。

  即先将config.sys和autoexec.bat备份,然后将config.sys清除至只余emm386一行(不带任何参数),autoexec.bat则直接清空,重启后启动UCDOS,看是否还有死机问题,如果没有,则证明与emm386无关,然后再逐一增加config.sys和autoexec.bat的原有内容,直到找到出问题的所在行。然后再寻找对应的解决办法。

  如果此时仍有死机现象,则一是emm386问题,一是ucdos问题。先查ucdos,一方面是因为早期的UCDOS版本会检查硬盘编号,另一方面它也有所谓“零(基本)内存占用”特性,找到UCDOS的安装版或者网上简化的UCDOS98版,重装于系统上,按照启动批处理 ucdos.bat,一步步在命令行手动输入执行启动命令,如果出现死机现象,则重点排查出错的命令行。

  如果没有问题,则只能是emm386问题,使用其它机器上同版本的和高版本的emm386.exe 依次更换原文件,直到问题排除。

  如果仍有问题,则可能是系统问题或者硬件问题。依照以上思路继续排除各种可能性,直到找到问题的所在,如果无法解决你所发现的问题,可以再次回帖。

  我将继续关注……



※ Batchinger 致 Bat Fans:请访问 [讨论]批处理编程的异类 ,欢迎交流与共享批处理编程心得!
2005-8-6 17:33
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
tanghua
初级用户





积分 20
发帖 5
注册 2005-8-3
状态 离线
『第 3 楼』:  

非常感谢 版主willsort 的回复,现将我的问题详细说来,

1。我重启时按 F8 键进入分步执行,到 EMM386 这行时我跳过不执行,然后往下继续执行,到UCDOS时也能正常运行UCDOS,但执行到我所需要使用的软件时就会报 程序太大的错误,如“program too big to fit in memory” ,在这里我分析不是UCDOS的问题,很有可能是EMM386的问题。排除硬件的问题,因为我用天汇时什么问题也没有,只是没有特显功能。所以硬件应该是没有问题的。

2。于是,我就在DOS7。1中把EMM386拷过来再运行,同样的问题出现,我想有可能是版本不兼容,于是我又在另一台DOS 6。622 的电脑上拷贝过来再运行,同样也会出现死机的现象。

3。我也看了一些关于UCDOS的资料,在UCDOS中的SETUP里面有一个关于EMS内存的设置方法,但运行时会报EMS内存没有发现。

4。我又在网上找了一个UCDOS98袖珍版,700多K,按最初的CONFIG。SYS 和AUTOEXEC。BAT配置,可以运行UCDOS98,特显也没有问题,但是我运行我的程序的时候,发现功能键区全部都不能用,也就是上下左右键等,如pageup,pagedowm,home,end,insert,delete,printsysrq,scrolllock,pausebreak这十三个键全没有反应,还有数字键区的Enter键也没有反应,但用天汇时没有问题,可以说明不是键盘的问题。
请问有没有什么方法改为可以用功能键区。或者使用什么软件增加常规内存。

这个问题已困扰我几天了,而且现在又非常急用,故烦
请版主回复,谢谢,谢谢,谢谢!

2005-8-7 10:57
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
JonePeng
金牌会员

D◎$ Fαп


积分 4562
发帖 1883
注册 2004-1-19
来自 广东广州
状态 离线
『第 4 楼』:  

UCDOS自带了内存管理程序QEMM,在EMM386.exe与UCDOS有冲突时可以试试这个。



----====≡≡≡≡ 我的至爱,永远是MSDOS!≡≡≡≡====----
  
2005-8-7 12:15
查看资料  发送邮件  发短消息 网志  OICQ (373343541)  编辑帖子  回复  引用回复
tanghua
初级用户





积分 20
发帖 5
注册 2005-8-3
状态 离线
『第 5 楼』:  

请问 JonePeng
UCDOS自带的内存管理程序QEMM 在哪里可以找到,我在UCDOS目录下没有看到有这个文件啊,还有这个文件如何使用。

2005-8-7 17:22
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
willsort
元老会员

Batchinger


积分 4432
发帖 1512
注册 2002-10-18
状态 离线
『第 6 楼』:  

Re tanghu:

  “一个巴掌拍不响”,所谓兼容性问题,都不单纯是某一软件或程序的问题,而是两个或多个共同作用的结果。而我们选择解决的方案,都是选择修正标准性低的一方。大多数情况下,我们不会因为加载了EMM386而使A程序不能运行,而不去使用EMM386,而是不去使用A程序,因为EMM386的标准性很强。

  而且大量的事实都表明,单纯使用EMM386和UCDOS不存在你所说的兼容性问题,因此问题很可能与“第三者”也有关系,它可能是软件,也可能是硬件,而UCDOS98的可用则从侧面证实了这一点。天汇的正常使用也许说明它不受EMM386和第三者联合作用的影响。

  所以我才请你进行上述的“最小系统测试”。在这里纠正一点,EMM386本身需要XMS,所以执行“最小系统测试”时需要加载HIMEM.SYS。

  至于功能键问题,请先测试只启动UCDOS而不启用特显时的情形。如果此时功能键仍然失效,则可能是UCDOS98简化了相应的功能;如果此时正常,则说明是特显程序(TX)或者你的使用特显代码序列的程序有问题。



※ Batchinger 致 Bat Fans:请访问 [讨论]批处理编程的异类 ,欢迎交流与共享批处理编程心得!
2005-8-8 13:11
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
tanghua
初级用户





积分 20
发帖 5
注册 2005-8-3
状态 离线
『第 7 楼』:  

非常感谢 版主willsort 的再次回复

1。我加载EMM386后什么都不加载,然后运行UCDOS98,发现功能键区全部能用,说明UCDOS98没问题。
2。我加载EMM386后什么都不加载,然后运行UCDOS,就会死机,并有如下提示:

EMM386 has detected error #06 in an application
at memory address 0048:096B.To minimize the chance
of data loss,EMM386 has halted your computer.
For more information,see the README.TXT file.

在这里按回车就重启了。 如果是启动时不加EMM386就可以启动UCDOS,并且其他的加载项也可以,只是到我需运行的程序时会报“program too big to fit in memory",我想应该是我的内存配置有问题。

请求指点啊。

2005-8-8 18:26
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
JonePeng
金牌会员

D◎$ Fαп


积分 4562
发帖 1883
注册 2004-1-19
来自 广东广州
状态 离线
『第 8 楼』:  

我想知道楼主的UCDOS是什么版本?

6.0版以后的UCDOS应该与EMM386没有冲突,而老版本的UCDOS(5。0以前)自带QEMM内存管理器,听说可以取代EMM386,你可以试试它。QEMM在6.0版以上的UCDOS里面都没有了,它的下载地址是:http://210.39.136.85:8008/ss/teacher/s11/dos/qemm75.zip



----====≡≡≡≡ 我的至爱,永远是MSDOS!≡≡≡≡====----
  
2005-8-8 21:09
查看资料  发送邮件  发短消息 网志  OICQ (373343541)  编辑帖子  回复  引用回复
willsort
元老会员

Batchinger


积分 4432
发帖 1512
注册 2002-10-18
状态 离线
『第 9 楼』:  

Re tanghua:

  正如彭兄所言,这里 UCDOS 的版本可能是个关键,通常来说,越高的版本兼容性越好。我这里有 UCDOS7.0 的安装版(大约17M),你如果需要,我可通过 email 发给你。

  



※ Batchinger 致 Bat Fans:请访问 [讨论]批处理编程的异类 ,欢迎交流与共享批处理编程心得!
2005-8-9 15:43
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
fdsiuha
高级用户




积分 587
发帖 302
注册 2005-7-25
状态 离线
『第 10 楼』:  

袖珍版好象是没有QEMM.SYS的,赞成4楼JonePeng的主意。另外也可以换HIMEM.sys和EMM386.exe文件。
另外收藏JonePeng的连接,有没有QEMM97(9.0)呢

[ Last edited by fdsiuha on 2005-8-10 at 23:02 ]



欢迎造访DOS的小屋!
http://risky.ik8.com
2005-8-10 23:00
查看资料  访问主页  发短消息 网志   编辑帖子  回复  引用回复
tanghua
初级用户





积分 20
发帖 5
注册 2005-8-3
状态 离线
『第 11 楼』:  

谢谢 JonePeng、willsort、fdsiuha 的回复

我用的UCDOS是7.0版的,也有可能是我的UCDOS有问题,因为我安装完的之后,在不加载EMM386的时候运行UCDOS.BAT(RD16、KNL、RDFNT、TX),然后再运行SETUP时会报没有一个文件的错误(好象是.DRV文件),但我查找到这个文件复制到DRV目录后就可以了。请willsort发一个UCDOS,我再安装试一下,我的E-mail是:tzth_888@163.com  谢谢。

内存管理软件QEMM75我安装试了一下,按软件自己改了CONFIG和AUTOEXEC里面的内容后重启,运行到KNL这句的时候就变我重启了。

我加载EMM386后运行到UCDOS时我用MEM/C所看到的内存占用情况。

Modules using memory below 1 MB:

  Name           Total       =   Conventional   +   Upper Memory
  --------  ----------------   ----------------   ----------------
  MSDOS       13,789   (13K)     13,789   (13K)          0    (0K)
  HIMEM        1,120    (1K)      1,120    (1K)          0    (0K)
  EMM386       4,144    (4K)      4,144    (4K)          0    (0K)
  IFSHLP       3,968    (4K)      3,968    (4K)          0    (0K)
  COMMAND      2,976    (3K)      2,976    (3K)          0    (0K)
  DC21X4      42,704   (42K)     42,704   (42K)          0    (0K)
  REDIR      103,248  (101K)     99,440   (97K)      3,808    (4K)
  NETBEUI     37,776   (37K)          0    (0K)     37,776   (37K)
  SMARTDRV    29,024   (28K)          0    (0K)     29,024   (28K)
  PROTMAN        400    (0K)          0    (0K)        400    (0K)
  NDISHLP      1,440    (1K)          0    (0K)      1,440    (1K)
  Free       499,456  (488K)    487,120  (476K)     12,336   (12K)

Memory Summary:

  Type of Memory       Total   =    Used    +    Free
  ----------------  ----------   ----------   ----------
  Conventional         655,360      168,240      487,120
  Upper                 84,784       72,448       12,336
  Reserved             393,216      393,216            0
  Extended (XMS)    32,421,072    2,439,376   29,981,696
  ----------------  ----------   ----------   ----------
  Total memory      33,554,432    3,073,280   30,481,152

  Total under 1 MB     740,144      240,688      499,456

  Largest executable program size        487,024   (476K)
  Largest free upper memory block         10,432    (10K)
  MS-DOS is resident in the high memory area.

其中这一行  
REDIR      103,248  (101K)     99,440   (97K)      3,808    (4K)
占用了101K,是什么东东,我还不清楚。

请各位老大一定要帮助啊。

2005-8-11 09:53
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
willsort
元老会员

Batchinger


积分 4432
发帖 1512
注册 2002-10-18
状态 离线
『第 12 楼』:  

Re tanghua:

  Mail 发送失败,附件太大了!不过我已经在我的 MSDOS6.22@VPC5 中测试过,它也有与 EMM386 的冲突,与你错误信息一致。看来,我们需要换一换思路了。

  目前,你可能只有选择UCDOS98了,至于其功能键问题,可以仍然按照我在2楼提到的逐步递增(或者二分式递增)Config.sys和autoexec.bat的内容,直到确认影响它的配置程序。

  至于 REDIR 应该与网络中的重定向功能相关。

[ Last edited by willsort on 2005-8-12 at 19:23 ]



※ Batchinger 致 Bat Fans:请访问 [讨论]批处理编程的异类 ,欢迎交流与共享批处理编程心得!
2005-8-12 18:22
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Climbing
铂金会员

网络独行侠


积分 6962
发帖 2753
注册 2003-4-16
来自 河北保定
状态 离线
『第 13 楼』:  

@ tanghua:

1、你所运行的程序需要用到EMM386.exe,这就说明了,你运行的程序需要扩充内存,这种程序一般都是比较老的程序。

2、还有,我发现你的程序中启动了DOS下的网络(也就是Lan Manager),而这东西是很占内存的,内存中的驻留程序太多也会导致出现问题。

3、你上面的帖子中好象有的帖子反馈的信息有问题。



偶只喜欢回答那些标题和描述都很清晰的帖子!
如想解决问题,请认真学习“这个帖子”和“这个帖子”并努力遵守,如果可能,请告诉更多的人!
2005-8-13 14:18
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (653668)  编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: