中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS疑难解答 & 问题讨论 (解答室) » 使用umb时一小段保留内存无法使用的问题
作者:
标题: 使用umb时一小段保留内存无法使用的问题 上一主题 | 下一主题
shooter
初级用户




积分 124
发帖 11
注册 2004-2-29
状态 离线
『楼 主』:  使用umb时一小段保留内存无法使用的问题

1.
下面是我的config.sys
DEVICE=A:\HIMEM.SYS /TESTMEM:OFF /Q
DEVICE=A:\EMM386.EXE RAM M9 RAM=C800-DFFF I=B000-B7FF
DEVICEHIGH=A:\VIDE-CDD.SYS /D:MSCD001
DOS=HIGH,UMB,AUTO
FILESHIGH=30
BUFFERSHIGH=30,0
STACKSHIGH=9,256
LASTDRIVEHIGH=F

理论上应该获得128k的UMB,但实际只有122k,我用ProView看了一下内存的使用情况,发现B000-B15A这段是unused,5.4k的样子,但我明明指定了I=B000-B7FF(单色显示器的缓冲区),为什么只有这样一小段没有能使用呢?

2.
现在emm386启动要按一下任意键才能继续下去,怎么让他不提示,就像himem加/q参数一样?

[ Last edited by shooter on 2007-12-25 at 03:59 PM ]

2007-12-25 15:58
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
DOSforever
金牌会员





积分 4639
发帖 2239
注册 2005-1-30
状态 离线
『第 2 楼』:  

两个问题很可能就是一个问题。EMM386 不会随意让你按一下任意键才能继续下去,肯定是你用了不该用的地方,它警告你一下:你要是还是使用,出了事我可不管。你把给你的提示抄上来。
EMM386.EXE 自己要占用一部份 UMB 空间,也就是几K。ProView 没怎么用过,你用 MSD 查看一下,是不是这段空间也是显示为 unused ?



DOS倒下了,但永远不死
DOS NEVER DIES !

投票调查:
http://www.cn-dos.net/forum/viewthread.php?tid=46187

本人尚未解决的疑难问题:
http://www.cn-dos.net/forum/viewthread.php?tid=15135
http://www.cn-dos.net/forum/viewthread.php?tid=47663
http://www.cn-dos.net/forum/viewthread.php?tid=48747
2007-12-25 23:31
查看资料  发短消息 网志   编辑帖子  回复  引用回复
shooter
初级用户




积分 124
发帖 11
注册 2004-2-29
状态 离线
『第 3 楼』:  

这两个的确不是同一个问题,但都涉及到emm386

1.用msd,这一小段显示为RAM,B000-B8FF也是RAM(这段应该是彩显缓冲,没有问题),就这两段是RAM。你要这么一说,就有可能是这种情况了,emm自己占用的一小部分umb空间,大小是5.4k。我原先以为它就存在于基本内存里呢。

2.我的可以运行下去,并没有出错,只是有个提示让我按任意键而已,我只是试图让其使用ems的情况下获得尽量大的umb。这样我可以装载很多tsr到里面去,况且我也有很多程序需要用到ems,所以用noems的方法虽然可以获得更多umb,但不适用于我的情况。如果单单指定RAM一个参数,那么是没有任何提示运行下去的。我只是重新指定了ems在1024k里的段区的位置而已,反正只要连续的64k空间即可,这样umb就可以有一大段是连续的了。





[ Last edited by shooter on 2007-12-26 at 04:43 PM ]

2007-12-26 16:37
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
DOSforever
金牌会员





积分 4639
发帖 2239
注册 2005-1-30
状态 离线
『第 4 楼』:  

它的提示已经明白无误的告诉你了

  Quote:
WARNING: Option ROM or RAM detected within page frame.

警告你并不是马上会出错,而是提醒你如果按照这样的配置会有错误产生,一旦 TSR 和 page frame 发生冲突就会死机。看来你不能使用M9参数,能够用什么,你还是用 MSD 检测一下 ,在 DOS 的缺省配置下,看看从 E000 起始的这段地址有没有被什么硬件占用。

另外,能够用文字说明的就不要上传图片。



DOS倒下了,但永远不死
DOS NEVER DIES !

投票调查:
http://www.cn-dos.net/forum/viewthread.php?tid=46187

本人尚未解决的疑难问题:
http://www.cn-dos.net/forum/viewthread.php?tid=15135
http://www.cn-dos.net/forum/viewthread.php?tid=47663
http://www.cn-dos.net/forum/viewthread.php?tid=48747
2007-12-26 21:25
查看资料  发短消息 网志   编辑帖子  回复  引用回复
shooter
初级用户




积分 124
发帖 11
注册 2004-2-29
状态 离线
『第 5 楼』:  

图片是外链,没有上传,没有占用论坛的太多资源,有什么关系~

连续的64k空间只有两段,E000-EFFF和CC00-DBFF,默认是后者,前者的区段里后半段标示为possibly available,但用I=参数指定umb的时候会无法启动,用ram=指定可以用,只是有提示而已

目前的情况就是E000-EFFF这段如果不是指定umb的segment,就无法使用,虽然msd中显示的是possibly available
---------------------------
呵呵,搞定了,指定frame=none即可,还是大脑不灵光啦~

多谢二楼的朋友~

[ Last edited by shooter on 2007-12-27 at 06:37 PM ]

2007-12-27 10:02
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

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


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



论坛跳转: