How to List Loaded Drivers in MS-DOS 6.22
In MS-DOS 6.22, system administrators and users can inspect physical
memory and view all active device drivers using the native
MEM command. This article explains the exact syntax, the
necessary command-line switches to reveal both standard and third-party
drivers, and practical techniques to review the output effectively.
The Command: MEM /D
The primary command to list all loaded device drivers in physical memory under MS-DOS 6.22 is:
MEM /D
The /D switch stands for "Debug." It queries the system
memory control blocks (MCBs) and displays a comprehensive, low-level
breakdown of all conventional and upper memory areas. This includes
internally loaded DOS drivers (such as CON,
AUX, and PRN), drivers loaded via
CONFIG.SYS (such as HIMEM.SYS,
EMM386.EXE, or hardware CD-ROM/mouse drivers), and active
TSR (Terminate and Stay Resident) programs.
Managing Long Output
Because MEM /D produces a lengthy output that quickly
scrolls past the screen, you should use the /P (Page)
switch to pause the output at each screen:
MEM /D /P
Alternatively, you can pipe the output through the MORE
utility:
MEM /D | MORE
Understanding the Output
When executed, MEM /D outputs several columns of
data:
- Address: The hexadecimal segment address in physical memory where the driver or data block begins.
- Name: The name of the driver module or program currently occupying that block.
- Size: The total amount of physical memory used by the driver, represented in both decimal bytes and hexadecimal notation.
- Type: The classification of the block, such as
System Device Driver,Program, orData.
Related Memory Inspection Commands
MS-DOS 6.22 provides additional switches for the MEM
command that help analyze loaded drivers in different formats:
MEM /C /P(Classify): Groups loaded drivers and programs by memory usage, categorizing them into conventional memory and upper memory blocks (UMBs). While less detailed than/D, it provides a cleaner overview of how much space each driver consumes.MEM /M [name](Module): Displays detailed memory allocation for a single specific driver. For example, typingMEM /M HIMEMlists only the memory blocks allocated to theHIMEM.SYSdriver.