A: Dynamic Memory was added in Windows Server 2008 R2 SP1, which allows a virtual machine (VM) to have a startup (amount the virtual machine starts with) and maximum (maximum the virtual machine can be given) amount. This means a VM has memory added to it as it needs it.
In Windows Server 2008 R2 SP1, the startup and maximum values couldn't be changed while the VM was running. In Windows Server 2012, the Minimum and Maximum values can be changed while the VM is running, allowing even more memory to be allocated to an already running VM.
The Startup amount of memory is still defined and can't be changed while the VM is running; however, the addition of Minimum now allows a VM to start with a certain amount of memory, then actually use less after the OS has started.
For users who don't want to use dynamic memory with variable memory amounts, one option is to make the Startup, Minimum, and Maximum values the same, so the memory amount is set. However, if at some point in the future more memory is required, it's possible to change the Minimum and Maximum values to a larger number while the VM is still running: This would mean you'd be effectively hot-adding memory into the VM.