How to register memory in Netware 3.x and 4.x

  • 1003164
  • 09-May-1995
  • 26-Feb-1997
  • 5

Archived Content: This information is no longer maintained and is provided 'as is' for your convenience.

Issue

Below is examples of how to register memory on 3.x and 4.x NetWare servers. If a server has more than 16MB of RAM and a disk adapter that uses 16 and 24 bit DMA or bus-mastering, the server startup files will need to be modified as follows.

NetWare 3.1x:
  STARTUP.NCF
    Set auto register memory above 16 megabytes=off
    Set reserved buffers below 16 meg=200 (optional, device dependent)
    etc...

  AUTOEXEC.NCF
    File server name <servername>
    Ipx internal net <address>
    Register memory 1000000 <memory above 16MB in hex>
    Load <disk drivers>
    Mount all
    etc...

Note: For the 3.1x solution the AUTOEXEC.NCF must be copied to the server boot directory and the copy residing in the SYS:SYSTEM directory should be renamed.

NetWare 4.01
  STARTUP.NCF
    Set auto register memory above 16 megabytes=off
    Set reserved buffers below 16 meg=200 (optional, device dependent)
    Load PM401
    Load Memfrgfx 1000000 <memory above 16MB in hex> (replaces REGISTER MEMORY)
    Load <disk drivers>
    etc...

NetWare 4.02
  STARTUP.NCF
    Set auto register memory above 16 megabytes=off
    Set reserved buffers below 16 meg=200 (optional, device dependent)
    Register memory 1000000 <memory above 16MB in hex>
    Load <disk drivers>
    etc...

NetWare 4.1 and above:
   The register memory statement works in 4.1 as described in 4.02 above, however,
    ALWAYS AUTO REGISTER MEMORY IN NETWARE 4.1 and above. This is the only
    way to assure that you will not cause memory segmentation problems.

   If you are unable to successfully auto register memory, then call your hardware
   vendor. You will need to get a system board, BIOS upgrade, that allows the auto
   register memory functionality to work, or you may need to go with a different
   system board. Also, be certain that the current OS patches are loaded and that
   the current loader.exe has been applied to server.exe.

 The number to use in the place of <memory above 16MB in hex> is determined by taking the number of megabytes above 16MB and converting it to hex.
Below is a chart of common numbers converted to hex
Total Hex number to use
20 400000 (20MB - 16MB = 4 MB = 4194304 bytes = 400000 in hex)
24 800000
28 C00000
32 1000000
40 1800000

An easy way to calculate the number in hex is to take the number of Megs above 16, convert that to hex and add 5 zeros on the end. Example a server with 64 MB total RAM: 64 - 16 = 48. 48 in hex is 30. The entry in the autoexec.ncf would be REGISTER MEMORY 1000000 3000000

More information on memory segmentation and detail to implement memory registration is available in KB 2908018.

Feedback service temporarily unavailable. For content questions or problems, please contact Support.