Parent

IBM 5170 - Extended Memory - Possible Use Of


IBM's announcement letter for the 5170, suggests that IBM's early intention was that operating systems such as XENIX would use the extended memory.

It is important to realise that in the early days of extended memory, there was no mechanism to 'share' extended memory between multiple programs.  Such early programs assume that they have exclusive access to the extended memory, and will unintentionally overwrite any data put in extended memory by another program.
Later, the Extended Memory Specification (XMS) was created, and became the standard way for programs to get controlled access to extended memory.


A virtual disk drive via VDISK.SYS

IBM DOS 3 was the version of DOS supplied with the 5170.  In IBM DOS 3 is a driver that can use extended memory to create a virtual disk drive.  That driver is VDISK.SYS
A line like the following would go into your CONFIG.SYS

   device=c:\dos\vdisk.sys 2048 128 128 /e

When you then reboot your 5170, VDISK.SYS will create the virtual disk drive, and display its characteristics on-screen.
Click here for more information about VDISK (and the later RAMDRIVE.SYS).

VDISK assumes that it 'owns' the extended memory, and may overwrite data placed in extended memory by another program.  Or the opposite; another program using extended memory overwrites VDISK's virtual disk drive.


Extended Memory Specification (XMS)

You may have one or more DOS programs that can use extended memory provided via the XMS interface.

Here, HIMEM.SYS is loaded to make available such memory.
From Wikipedia, "HIMEM.SYS is a DOS device driver which allows DOS programs to store data in extended memory via the Extended Memory Specification (XMS)".
HIMEM.SYS was introduced in DOS 5, but it can be used in earlier DOS versions.

A line like the following would go into your CONFIG.SYS

   device=c:\dos\himem.sys

When you then reboot your 5170, HIMEM.SYS will be using the 5170's extended memory to provide XMS memory.


Expanded Memory Specification (EMS)

You may have one or more DOS programs that can use expanded memory.

Here, HIMEM.SYS will use the 5170's extended memory to provide XMS memory, and then XMS2EMS.SYS will convert some or all of the XMS memory into EMS memory (EMS version 3.2).
So, two lines like the following would go into your CONFIG.SYS

   device=c:\dos\himem.sys
   device=c:\mem\xms2ems.sys 512


The "512" above means use 512 KB of available XMS memory.  Click here to see other switches, and to see limitations.

XMS2EMS.SYS can be downloaded from here.

Note that some programs may require version 4 of EMS, not the version 3.2 that is provided by XMS2EMS.SYS