1. A method for determining a data migration order for memory on a virtual machine, the method comprising: establishing communication from a source virtual machine to a target virtual machine, the source virtual machine including a memory; determining configuration information associated with the source virtual machine, the configuration information comprising one or more pre-configured migration profiles, the one or more pre-configured migration profiles are optimized for efficiently transmitting memory according to the requirements of an operating system executed by the source virtual machine, the one or more pre-configured migration profiles comprising mappings of known operating systems to migration routines optimized for the known operating systems, the migration routines including memory characteristics specific to the known operating systems that have an impact on migration order; utilizing the configuration information to determine an order of migration for pages in the memory; and transmitting the pages in the memory to the target virtual machine in the order of migration.