中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS疑难解答 & 问题讨论 (解答室) » 如何释放因加载USB驱动所消耗的内存?
« [1] [2] »
作者:
标题: 如何释放因加载USB驱动所消耗的内存? 上一主题 | 下一主题
martin325
银牌会员





积分 1582
发帖 603
注册 2006-2-20
状态 离线
『楼 主』:  如何释放因加载USB驱动所消耗的内存?

如何在纯DOS下释放因加载USB驱动所消耗的大量内存?

本人在MS-DOS 8.0下已经加载XMS的情况下,加载USB驱动,能在纯DOS下有效识别U盘和移动硬盘,但是却因加载USB驱动搜索U盘而消耗了大量内存,请问各位高手,有何良策?

本人接上80G的移动硬盘,正确识别出三个移动盘符,然后在DOS下想分别进入这三个移动盘符,分别DIR一下,结果才进入第二个移动盘符,就死机了!

于是重启动电脑,用MEM.EXE查看了一下内存使用情况:

                 Total   =   Used  +  Free
Conventional      636K       48K      588k
Total Memory      519420     154      519266
Total Under 1Mb   636K       48K      588k

Largest executable program size      584K
Largest free upper memory block      0K
Available space in High Memory Area  2K
MS-DOS is resident in the high memory area.

然后在DOS下分别进入这三个移动盘符,分别DIR了一下,能看到各自盘符中的文件名,然后执行了一个COPY命名,欲把其中一个移动盘符中的一个很小的记事本文件复制到另一个移动盘符中,结果又死机了!

请问这是为什么,怎么总会死机?是USB驱动的BUG,还是内存不足的缘故?如果内存不足的话,要如何释放呢?


附上最新版本的“dos4usb”。

附件 1: dos4usb.rar (2006-4-18 10:04, 32.24 K, 下载附件所需积分 1 点 ,下载次数: 75)
附件 2: MEM.rar (2006-4-18 10:04, 14.51 K, 下载附件所需积分 1 点 ,下载次数: 42)
2006-4-18 10:04
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
willsort
元老会员

Batchinger


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

Re martin325:

      推测是USB驱动存在兼容性问题,可以通过以下方法确定问题所在,DOS启动时按F4跳过CONIG/AUTOEXEC文件配置,此时LoadUSB观察结果。如果一切正常,则说明USB驱动与C/A文件中的某个或某些内存配置程序存在冲突,单行或者二分法调试,直到找出问题语句即可。如果仍然有死机现象发生,则证明USB驱动本身不完善,无法完全支持你的移动硬盘或者主板。

      需要提及的是,我曾经尝试过少量的启动盘和DOS USB驱动,结果没有成功记录,无论是台式机还是笔记本,闪盘还是移动硬盘。因为在此方面没有特别的需要,所以没有深入的研究,但是总觉得它是DOS技术研究一个很值得讨论的课题,希望能得到更多的测试和使用报告,以完善大家对DOS USB驱动的认识。



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





积分 1582
发帖 603
注册 2006-2-20
状态 离线
『第 3 楼』:  

在LoadUSB时,CONFIG.SYS只加载了以下几个:
Device=himem.sys /testmem:off
Device=break.sys
Device=break.sys /c
files=10
buffers=10
dos=high,umb
stacks=9,256
lastdrive=z


在AUTOEXEC.BAT里也没什么东西加载的:

@echo off
goto %config%

:help
call WINMEDOS.BAT
goto quit

:usb
call LOADUSB.BAT
goto quit

:cd
call WINMEDOS.BAT
goto quit

:nocd
call WINMEDOS.BAT
goto quit

:quick
call WINMEDOS.BAT
goto quit

:quit
ECHO.

2006-4-19 19:23
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
xuantian
高级用户





积分 587
发帖 282
注册 2006-4-10
状态 离线
『第 4 楼』:  

我一直用 USBASPI.SYS 和 Di1000dd.SYS 加载, 使用时没有出现如何问题.

2006-4-19 23:48
查看资料  发送邮件  发短消息 网志  OICQ (315594066)  编辑帖子  回复  引用回复
Wengier
系统支持

“新DOS时代”站长


积分 27734
发帖 10521
注册 2002-10-9
状态 离线
『第 5 楼』:  

我也经常在MS-DOS 7.1下使用USBASPI.SYS和DI1000DD.SYS驱动U盘,也没出现过这种问题。



Wengier - 新DOS时代

欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/

E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)

2006-4-20 02:19
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (29206679)  编辑帖子  回复  引用回复
hzy
高级用户




积分 578
发帖 135
注册 2003-7-10
状态 离线
『第 6 楼』:  

遇到过相似情况,感觉还是加载过多,使得内存不足做成。

如我遇到过的现象:
1、加载光驱驱动,天汇汉字系统,ntfsdos,然后usbmass失败;
     加载光驱驱动,天汇汉字系统,usbmass,然后ntfsdos失败。
2、不加载光驱驱动,只加载天汇汉字系统,ntfsdos,然后usbmass成功;
     不加载光驱驱动,只加载天汇汉字系统,usbmass,然后ntfsdos成功。

2006-4-20 02:46
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
xuantian
高级用户





积分 587
发帖 282
注册 2006-4-10
状态 离线
『第 7 楼』:  

建议还是先优化下启动配置,或者使用传统的启动方式,启动别搞的太花哨

2006-4-21 20:47
查看资料  发送邮件  发短消息 网志  OICQ (315594066)  编辑帖子  回复  引用回复
martin325
银牌会员





积分 1582
发帖 603
注册 2006-2-20
状态 离线
『第 8 楼』:  

原来本人是用dos4usb里的LOADUSB.EXE在批处理加载,出现了1楼所描述的情形。

今天试着在config.sys里直接加载Usbaspi.sys与DI1000DD.SYS后,一切正常!

现在出现一个问题,需要请教大家,即:
如何在批处理中加载Usbaspi.sys与DI1000DD.SYS呢?

2006-4-22 19:11
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
fujianabc
金牌会员





积分 3467
发帖 1616
注册 2004-6-21
状态 离线
『第 9 楼』:  

用loadsys.exe可以加载和卸载usbaspi.sys和di1000dd.sys,再写一个批处理,dos下就可实现类似于即插即用的操作了。
插上u盘运行批处理加载驱动;拔盘前再用批处理卸载驱动。

2006-4-22 19:22
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
martin325
银牌会员





积分 1582
发帖 603
注册 2006-2-20
状态 离线
『第 10 楼』:  

请fujianabc提供loadsys.exe!

2006-4-22 19:37
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
martin325
银牌会员





积分 1582
发帖 603
注册 2006-2-20
状态 离线
『第 11 楼』:  

找到了,呵呵。
体积大了点,有64.4K!

2006-4-22 19:43
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
martin325
银牌会员





积分 1582
发帖 603
注册 2006-2-20
状态 离线
『第 12 楼』:  

由于loadsys.exe体积太大!本人还是选用了devload.com来加载USB驱动。
摒弃了使用dos4usb压缩包里的LOADUSB.EXE。

在批处理中写上:

@echo off
echo.
echo         Please insert your USB device firstly.
echo.
echo         Press any key to continue...
pause >nul
echo.
echo         Loading USB. Please Wait About 30 Seconds...
echo.
cd dos4usb
lh devload.com usbaspi.sys /V /NORST
lh devload.com DI1000DD.SYS
cd\

测试一切正常!

2006-4-22 20:23
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
yksoft1
高级用户





积分 823
发帖 395
注册 2006-1-28
状态 离线
『第 13 楼』:  

松下USBASPI.sys对于部分炬力方案的MP3,速度过慢。
而DI1000DD.sys对于MP3很容易出现分区名出现???字符无法驱动甚至除法错误直接退出

2006-4-22 20:46
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
martin325
银牌会员





积分 1582
发帖 603
注册 2006-2-20
状态 离线
『第 14 楼』:  

测试环境:MS-DOS V8.0
估计是LOADUSB.EXE引起的兼容性问题。

现在有一个新问题:

如何用devload.com来卸载USB驱动?

请各位研究。

2006-4-22 20:48
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
willsort
元老会员

Batchinger


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

Re martin325:

      很奇怪你现在才发现USB驱动的命令行加载方法,因为你提供的dos4usb.rar其readme.txt[1]中已经清楚地说明Loadusb.exe本身就是批处理编译后产物。而它的命令行内容说明也已经给出。

      你的批处理与它没有多少实质上的区别,只是少了两个参数并加上了LH而已,或许你的问题正是出在这上面。当然,使用了你的驱动和参数,我的U盘仍然无法识别。

[1]readme.txt

  Quote:
1 本程序为DOS下即插即用的USB2.0驱动程序;
2 计算机以DOS启动后,将U盘(或启动前)插入计算机的任意一个USB口;
3 运行Loadusb.exe便可装入U盘的驱动成序,然后即可读写U盘的数据;
4 Usbaspi.sys(2.2版)是松下最新的dos USB驱动程序。
5 devload.com为装入驱动程序用;DI1000DD.sys为分配盘符用;loadusb.exe实际就是一个批处理文件,其内容为:
    devload usbaspi.sys
    devload di1000dd.sys





※ Batchinger 致 Bat Fans:请访问 [讨论]批处理编程的异类 ,欢迎交流与共享批处理编程心得!
2006-4-22 21:33
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
« [1] [2] »
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


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



论坛跳转: