The importance of total memory vs. conventional memory. A common misconception is that the goal of a memory manager is simply to get the most conventional memory. Although an important aspect of memory management, this is only part of the story. A memory manager's true goal is to provide the most available memory below 1mb, while sacrificing the least in performance. (Conventional memory is important because, of course, without enough of it many applications won't run at all.) In this respect, the more upper memory the memory manager can provide, the more device drivers can be loaded high by a configurator, and so more conventional memory is available. High-level language programs can use upper memory. However in a configuration in which every device is already loaded into upper memory, having a substantial amount of upper memory still free is advantageous. This is because most programs written today are developed using higher level languages such as C that rely heavily on libraries supplied with the compiler. These libraries almost invariably perform memory allocation on behalf of the program, and allocate memory using standard DOS calls. Thus if upper memory is available it can be allocated and used for data storage. Using the LH command to breath new life into older programs. Even programs written before the advent of DOS 5 -- programs which are not aware of the DOS 5 API for accessing upper memory -- can be easily allowed to use upper memory by simply loading them with the LH command. LH (LOADHIGH) will place a program in the smallest memory block that will hold all the programs code, but will make available all other memory, both conventional and upper as one large pool. For application programs this means that the program code will load in conventional memory, but ALL available memory is linked and made accessible. Compilers will run faster, you'll be able to create larger spreadsheets and documents and all programs will run faster. Windows makes heavy use of upper memory. And if you use Windows the upper memory available is extremely important. Windows uses upper memory to its fullest, allocating larger translation buffers and more space for such structures as "call backs" and "global memory areas" in upper memory. Having a large pool of upper memory available is key to better Windows performance. When Windows is forced to use conventional memory, such as when upper memory is filled by an EMS page frame and drivers and TSRs, Windows becomes conservative, allocating only just enough to get by on. If on the other hand, lots of upper memory is available Windows takes it all and uses it. This makes it possible to run larger DOS applications, but also makes ALL of Windows work faster and more reliably. So look for the memory manager that provides the most TOTAL memory below 1Mb. And if you use Windows, look for the memory manager that can provide the most upper memory period. Copyright (c) 1993, Helix Software Co., Inc.