Board logo

标题: 如何释放因加载USB驱动所消耗的内存? [打印本页]

作者: martin325     时间: 2006-4-18 10:04    标题: 如何释放因加载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)

作者: willsort     时间: 2006-4-19 18:22
Re martin325: 推测是USB驱动存在兼容性问题,可以通过以下方法确定问题所在,DOS启动时按F4跳过CONIG/AUTOEXEC文件配置,此时LoadUSB观察结果。如果一切正常,则说明USB驱动与C/A文件中的某个或某些内存配置程序存在冲突,单行或者二分法调试,直到找出问题语句即可。如果仍然有死机现象发生,则证明USB驱动本身不完善,无法完全支持你的移动硬盘或者主板。 需要提及的是,我曾经尝试过少量的启动盘和DOS USB驱动,结果没有成功记录,无论是台式机还是笔记本,闪盘还是移动硬盘。因为在此方面没有特别的需要,所以没有深入的研究,但是总觉得它是DOS技术研究一个很值得讨论的课题,希望能得到更多的测试和使用报告,以完善大家对DOS USB驱动的认识。

作者: martin325     时间: 2006-4-19 19:23
在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.

作者: xuantian     时间: 2006-4-19 23:48
我一直用 USBASPI.SYS 和 Di1000dd.SYS 加载, 使用时没有出现如何问题.

作者: Wengier     时间: 2006-4-20 02:19
我也经常在MS-DOS 7.1下使用USBASPI.SYS和DI1000DD.SYS驱动U盘,也没出现过这种问题。

作者: hzy     时间: 2006-4-20 02:46
遇到过相似情况,感觉还是加载过多,使得内存不足做成。 如我遇到过的现象: 1、加载光驱驱动,天汇汉字系统,ntfsdos,然后usbmass失败; 加载光驱驱动,天汇汉字系统,usbmass,然后ntfsdos失败。 2、不加载光驱驱动,只加载天汇汉字系统,ntfsdos,然后usbmass成功; 不加载光驱驱动,只加载天汇汉字系统,usbmass,然后ntfsdos成功。

作者: xuantian     时间: 2006-4-21 20:47
建议还是先优化下启动配置,或者使用传统的启动方式,启动别搞的太花哨

作者: martin325     时间: 2006-4-22 19:11
原来本人是用dos4usb里的LOADUSB.EXE在批处理加载,出现了1楼所描述的情形。 今天试着在config.sys里直接加载Usbaspi.sys与DI1000DD.SYS后,一切正常! 现在出现一个问题,需要请教大家,即: 如何在批处理中加载Usbaspi.sys与DI1000DD.SYS呢?

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

作者: martin325     时间: 2006-4-22 19:37
请fujianabc提供loadsys.exe!

作者: martin325     时间: 2006-4-22 19:43
找到了,呵呵。 体积大了点,有64.4K!

作者: martin325     时间: 2006-4-22 20:23
由于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\ 测试一切正常!

作者: yksoft1     时间: 2006-4-22 20:46
松下USBASPI.sys对于部分炬力方案的MP3,速度过慢。 而DI1000DD.sys对于MP3很容易出现分区名出现???字符无法驱动甚至除法错误直接退出

作者: martin325     时间: 2006-4-22 20:48
测试环境:MS-DOS V8.0 估计是LOADUSB.EXE引起的兼容性问题。 现在有一个新问题: 如何用devload.com来卸载USB驱动? 请各位研究。

作者: willsort     时间: 2006-4-22 21:33
Re martin325: 很奇怪你现在才发现USB驱动的命令行加载方法,因为你提供的dos4usb.rar其readme.txt[1]中已经清楚地说明Loadusb.exe本身就是批处理编译后产物。而它的命令行内容说明也已经给出。 你的批处理与它没有多少实质上的区别,只是少了两个参数并加上了LH而已,或许你的问题正是出在这上面。当然,使用了你的驱动和参数,我的U盘仍然无法识别。 [1]readme.txt
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

作者: martin325     时间: 2006-4-22 21:41
因为我才接触DOS,还有很多不懂的。呵呵…… 刚刚又测试了,发现多操作几回,还是会死机,看来跟devload.com有关了。 正在找devload.com的3.15版本!

作者: fujianabc     时间: 2006-4-22 21:44
Originally posted by martin325 at 2006-4-22 08:48 PM: 测试环境:MS-DOS V8.0 估计是LOADUSB.EXE引起的兼容性问题。 现在有一个新问题: 如何用devload.com来卸载USB驱动? 请各位研究。
曾经wengier等人有过比较,得出结论,loadsys.exe是各个sys加载程序中最好的。 是不是loadusb兼容性的问题?建议不要在ms-dos 8.0中测试,ms-dos 8.0本身兼容性就有很大的问题。

作者: martin325     时间: 2006-4-22 21:51
由于空间有限,容不下64K的loadsys.exe了! 请问有没有小于6K的loadsys.exe?

作者: xuantian     时间: 2006-4-22 22:09
一直使用device载入,汉字系统也一样的用,根本就没有出现过问题

作者: martin325     时间: 2006-4-23 00:14
本人改用devload.exe v3.12版本加载USB驱动,一切OK! devload.exe v3.12以及批处理见附件。 测试环境: 软件:PC-DOS 7.1 MS-DOS 8.0 硬件:磐英4B4E Intel845E 支持USB 2.0高速传输模式 一楼附件里的devload.com是v3.14版本,经本人测试,用“v3.14版”加载USB驱动,在上述条件下会死机!看来新版本的软件反而有问题啊!
附件 1: devload 3.12.rar (2006-4-23 00:14, 3.16 K, 下载附件所需积分 1点 ,下载次数: 29)

作者: Wengier     时间: 2006-4-23 00:24
如fujianabc所述,建议不要在所谓的MS-DOS 8.0下试,其兼容性本身就很成问题。PC-DOS 7.1的兼容性也不是很好,和所谓的MS-DOS 8.0差不多。 另外,我去年就试过用DEVLOAD 3.15(下载地址见下载室)加载USBASPI/DI1000DD,没有发现什么问题。

作者: martin325     时间: 2006-4-23 00:36
谢谢提醒。 本人用3.12版本通过了测试。U盘有两种: 一是aigo的2.0智慧棒128M; 二是aigo的迷你王备份型2代 128M

作者: martin325     时间: 2006-4-23 13:53
报告: 用 DEVLOAD 3.16a 版本也通过了测试!

作者: zjnbwdj     时间: 2006-4-24 18:47
什么时候出MS-DOS V8.0了,郁闷了.

作者: martin325     时间: 2006-4-24 19:35
就是WINME DOS

作者: Wengier     时间: 2006-4-25 04:15
那其实只是WinDOS8的名不符实的叫法之一,连开机提示都是显示WIN而不是DOS。甚至还不如FreeDOS好用。