public static unsafe void Move(VoidPtr dst, VoidPtr src, uint size) { switch (Environment.OSVersion.Platform) { case PlatformID.Win32NT: Win32.MoveMemory(dst, src, size); break; case PlatformID.MacOSX: break; case PlatformID.Unix: Linux.memmove(dst, src, size); break; } }