HIMEM.SYS is a DOS device driver which allows DOS programs to store data in extended memory according to the Extended Memory Specification (XMS). The memory beyond the first 1 MB of address space is required by Windows 9x/Me in order to load; therefore, these versions of Microsoft Windows require HIMEM.SYS
to be loaded to be able to run.
HIMEM.SYS
was first included with Windows 2.1 (1988).
In MS-DOS 5.0 (1991) and later, HIMEM.SYS
can be used to load the DOS kernel code into the High Memory Area (HMA) to increase the amount of available conventional memory by specifying [[DOS (CONFIG.SYS directive)|DOS]]=HIGH
in [[CONFIG.SYS]]
.
In DR DOS 5.0 (1990) and 6.0 (1991), the driver is named HIDOS.SYS
rather than HIMEM.SYS
, like the corresponding [[DCONFIG.SYS]]
or CONFIG.SYS
directive [[HIDOS (CONFIG.SYS directive)|HIDOS]]=ON
.
In FreeDOS, the matching file is named HIMEM.EXE
and can be loaded from the FreeDOS configuration file named [[FDCONFIG.SYS]]
or CONFIG.SYS
.
In Windows 3.1 and Windows 9x, there is also a command-line loadable version of HIMEM.SYS called XMSMMGR.EXE. It can load extended memory services after the system boots into the command prompt. This allows Windows Setup to load even if HIMEM.SYS is not loaded.
The hard bug exists in recent versions of HIMEM.SYS from MS-DOS and Windows 9x for handling /a20control:off option causing a hang-up. There is an unofficial patch for this.
The major version number of HIMEM.SYS indicates the Extended Memory Specification (XMS) version compatibility. e.g., HIMEM.SYS 3.07 is compatible with XMS version 3.0.
Bundled with | Date | Version | |
---|---|---|---|
May 1988 | 1.1 | ||
Windows/386 2.1 | May 1988 | 2.04 | |
Windows/286 2.11 | March 1989 | 2.04 | |
Windows/386 2.11 | March 1989 | 2.04 | |
November 1988 | 2.04 | ||
May 1990 | 2.60 | ||
June 1991 | 2.77 | ||
June 1991 | 2.77 | ||
September 1992 | 2.78 | ||
MS-DOS 5.00a | November 1992 | 2.78 | |
April 1992 | 3.07 | ||
October 1992 | 3.07 | ||
March 1993 | 3.09 | ||
June 1993 | 3.09 | ||
September 1993 | 3.10 | ||
Windows 3.11 | November 1993 | 3.10 | |
November 1993 | 3.10 | ||
MS-DOS 6.21 | March 1994 | 3.10 | |
April 1994 | 3.09 | ||
June 1994 | 3.10 | ||
April 1995 | 3.15 | ||
May 1998 | 3.15 | ||
August 1995 | 3.95 | ||
June 1998 | 3.95 |