title: Virtual memory and MMU confusion in embedded systems
body: <p>Does it make sense, or can we benefit from having an MMU (Memory Management Unit) on a microcontroller if not running an Operating System of any sort? </p>
  
  <p>Take for example the ARM Cortex A8 based chip used on the beaglebone board for example which includes an MMU. From my understanding, this provides the benefit that can allow us to run embedded Linux for example or some other OS.</p>
  
  <p>My confusion is, is the MMU much use to us if we don't use an OS? From my understanding, virtual memory is a memory management technique that is provided by both hardware and software working together. Do we need the OS to continuously update and change the mapping of physical addresses to virtual addresses, or can this be done in just hardware? Thanks in advance.</p>