Ответ 1
Нет определенного ответа, а всего лишь способ диагностики на месте, что происходит точно.
Вы должны подтвердить, какой процесс потребляет процессор и что он делает точно, например, путем контроля за выполнением системных вызовов: инструменты sysinternals, такие как Process Explorer и Process Monitor должны привести к пониманию того, что может быть неправильным. По крайней мере, вы можете сравнить профиль выполнения с и без режима совместимости с XP.
Поскольку проблема может возникнуть из самого приложения Java, вы должны попробовать профилирование JVM с помощью таких инструментов, как Netbeans Profiler. Возможно, код использует некоторые старые специфичные для Windows XP вещи, такие как структура каталогов или переменная среды, которые больше не существуют или не были изменены в Windows 7 (но вы сохранили/повторно применили свою собственную установку)... приводя к неправильной обработке ошибок и бесконечному циклу например, попыток.
Профилировщик собственных профилей может быть и опцией, но слишком сложно анализировать без исходного кода JVM, а когда Java-код связан с JIT.