返回主页

 

MEM


显示计算机中已使用的和自由的内存量。

使用MEM命令可显示已分配内存区、自由内存区和当前内存中的信息。



语法 :

MEM [/CLASSIFY|/DEBUG|/FREE|/MODULE modulename] [/PAGE]

显示计算机的内存状态,应使用以下语法:

MEM




开关项 :

/CLASSIFY
列出当前内存中的程序,并显示每个程序用了多少常规内存和上端内存。MEM /CLASSIFY还列出内存总的使用量及最大的自由内存块。 此开关只能和/PAGE开关一起使用。可将/CLASSIFY缩写为/C 。

/DEBUG
列出当前内存中的程序和内部驱动程序。MEM /DEBUG 显示每个模块的大小、段址和模块类型、总的内存使用量和其它有用的编程信息。此开关只能和/PAGE开关一起使用 。可将/DEBUG 缩写为/D。

/FREE
列出常规内存和上端内存的自由区。 MEM /FREE列出每个常规内存自由区的段址和大小,以及每个上端内存区中最大的自由上端内存块。MEM /FREE也列出总的内存使用量。此开关只能和/PAGE开关一起使用。可将/FREE缩写为/F。

/MODULE programname

列出程序正使用的内存的情况。在/MODULE开关后必须给出程序名。MEM /MODULE列出指定程序模块正分配的内存区及每个区的地址和大小。此开关只能和/PAGE开关一起使用。可将/MODULE缩写为/M。

/PAGE
在每一屏幕输出之后暂停。此开关可以和以上所有MEM开关一起使用。


相关命令:

有关检查磁盘可用空间量的信息,见 <CHKDSK> 命令。


MEM─注解


自动指定/PAGE开关

使用DOSKEY程序可将/PAGE开关自动加到MEM命令。以后每次使用MEM时,输出一屏幕信息之后就会暂停(而不用在MEM 命令行输入/P 开关)。在AUTOEXEC.BAT文件中加入以下命令行就可做到这一点:

c:\dos\doskey
doskey mem=mem.exe $* /p



显示内存状态

仅当系统中装有1M以上的内存时,MS-DOS才显示扩展内存状态;仅当使用的扩充内存符合Lotus/lntel/Microsift扩充内存管理规范(LIM EMS) 4.0版时,MS-DOS才显示扩充内存的状态;仅当安装了诸如EMM 386之类的的上端内存管理程序并且在CONFIG.SYS文件中有DOS=UMB命令行时,MS-DOS才显示上端内存区的状态。当运行Windows 3.0版时若执行MEM命令,MS-DOS不会显示上端内存状态。



分配扩展内存

要同时分配15h中断内存和XMS内存,应在装入HIMEM.SYS设备驱动程序时使用/INT15开关,详见 <HIMEM.SYS>


MEM─例子

 


获取程序和内存的概况信息

假定系统中既有扩充内存又有扩展内存。要显示系统总的内存量(常规内存、扩充内存、扩展内存和上端内存)并列出当前内存中的程序,可输入以下命令:

mem /classify

命令的执行结果可能与下面类似:



"Adapter RAM/ROM " 是指插入的板上的内存,例如视频适配器板。
"Largest executable program size "是指程序可用的最大的连续常规内存块。
"Largest free upper memory block"是指程序可用的最大上端内存区。
"MS-DOS is resident in the high memory area "表明MS-DOS运行在扩展内存的第一个64K中而不是在常规内存中。




获取特定程序的信息

使用MEM /MODULE命令可列出指定程序模块已分配的内存信息。例如,要列出WIN386 模块已分配的内存信息,可输入以下命令行:

mem /module win386

命令执行结果 与下面类似:



有些程序(如WIN386)分配多个内存区。这时MEM /MODULE命令显示所有分配的内存以及每个分配区的段址和大小。MEM/MODULE还列出上端内存块的区号。Type 栏列出程序使用内存区的方式。"total size"(上例中为35152字节,即33k)列出MS-DOS为此程序分配的内存总量。


 

返回主页