Andrew Brown has committed changes to -current implementing a new ‘topdown’ uvm. With these changes, the areas for heap growth and mmap(2)‘ed allocations, which used to
be separate, are now one and the same, allowing either one to grow much larger than before. As an example, on i386 it is now possible to mmap(2) over 2GB of
memory.Furthermore, the work leading up to this has already dramatically reduced the number of entries in the kernel’s map. At the moment, this option is available for the i386, macppc, prep and the PowerPC OEA based ports, but
particularly ports with small amounts of virtual memory such as the acorn26 benefit from these changes.
For more details, please see the thread starting with Andrew’s posting to the