## Name

MFREE — Display Free System RAM

## Synopsis

`mfree`

## Description

Displays a list of which areas of memory are not presently in use and available for assignment. The address and size of each free memory block are displayed.

In Level One systems, mfree shows the address and size of each contiguous area of unassigned RAM. The size is given as the number of 256-byte pages. This information is useful to detect and correct memory fragmentation (see the section called “Memory Fragmentation”).

In Level Two systems, mfree shows the block number, physical (extended) beginning and ending addresses, and size of each contiguous area of unassigned RAM. The size is given in number of blocks and in K bytes. The block size is usually 2K per block for systems equipped with MC6829 MMUs, or 4K bytes for most SS-50 bus systems. Free memory to be used for user data area need not be contiguous because the MMU can map scattered free blocks to be logically contiguous. Since OS-9 requires 56K of physically contiguous memory to load program modules, load operations can fail even if sufficient total free memory exists.

For more information see: the section called “Basic Memory Management Functions”, the section called “Memory Fragmentation”

## Example (Level One MFREE)

    OS9: mfree

     Address  pages
    --------- -----
     700- 7FF    1
     B00-AEFF  164
    B100-B1FF    1

    Total pages free = 166

## Example (Level Two MFREE)

      Blk Begin  End  Blks  Size
      --- ----- ----- ---- ------
       10 10000 10FFF    1     4K
       18 18000 1DFFF    6    24K
       20 20000 3FFFF   32   128K
                      ==== ======
               Total:   39   156K