@trekiej
On the software side, the amiga memory system is simple
first fit allocation system. It is a global memory system (that is all tasks/processes share the same global memory pool). Basically this means that many applications are programmed in a way that they access each others memory at will, making it impossible to introduce memory protection (via MMU) without breaking the binary compatibility. The closest you can get is system provided by the
mmu.library.
First fit allocators slow down exponentially due to memory fragmentation, the problem made worse by the global memory system. The effects of the fragmentation can be reduced with a better allocator however: for example
two level segregate fit. There's a great AmigaOS 3.x implementation by Chris Hodges:
TLSFMem.lha. Note that while TLSF does reduce fragmentation it doesn't remove it completely. However the fragmentation still remaining will have no effect on the allocation/deallocation performance.
PS. Fix that keyboard... :-)
@weirdami
MMU = math thingy?
No.
Wikipedia: Memory Management Unit