Как сделать виртуальную машину с нестандартной скоростью времени (timescale)?


11

Я думаю, что это должно быть технически возможно, но я не знаю ни одного способа сделать это в уже существующем программном обеспечении.

Что я имею в виду - «аппаратные» часы в виртуальной машине должны работать на разных скоростях, например, в несколько раз медленнее, чем обычно, или в 100 раз быстрее, чем обычно. Так, например, Thread.sleep(1000);вызов не обязательно будет тратить 1 секунду, но вместо этого это может быть любое время, в зависимости от скорости «аппаратных» часов. И как другой пример, если какая-то игра использует таймер для управления скоростью движения вещей, то ее скорость также будет изменяться вместе со скоростью таймера.

Также было бы интересно узнать, можно ли настроить частоту реальных аппаратных часов и на каком оборудовании.

Обновить

Есть два, казалось бы, похожих вопроса, но они касаются скорости процессора, а не скорости таймера (это совершенно другое). Поэтому я думаю, что этот вопрос не является дубликатом.



@ Ƭᴇcʜιᴇ007 они о скорости процессора, и я спросил о скорости таймера .
— Отображаемое имя

Достаточно
— верно

Не похоже, что это возможно. Я имею в виду, что в настоящее время нет очевидного решения, но мне интересно посмотреть, какие ответы предлагает это сообщество.
— Калеб Лимб

Ответы:


7

Поддержка виртуальных ящиков существует на уровне конфигурации, как описано в этом официальном билете :

Кстати, это

VBoxManage setextradata VM_NAME "VBoxInternal/TM/WarpDrivePercentage" 200

для удвоения скорости гостевых часов.

Поддержка GUI в настоящее время не планируется.

Это не заставляет устройство работать быстрее.

Протестировано и работает только для некоторых аспектов каждой программы, «возможно», поскольку оно не заставляет устройство времени работать быстрее, и программы используют его для части своих временных синхронизаций.

В других утилитах VM:

Также, открыватель вышеуказанного билета упомянул:

bochs и DOSbox могут ускорять или замедлять виртуальную машину, эмулируя процессор и / или таймер медленнее или быстрее, чем обычно.


+1, звучит интересно. Но пока не отмечена как принятая, поскольку это не полное решение (оно не заставляет устройство работать быстрее).
— Отображаемое имя

Вы также пробовали другие альтернативные утилиты VM для ускорения работы устройства времени?
— Маленький мальчик

Как я понимаю, они не являются виртуальными машинами общего назначения, но, похоже, для некоторых вариантов использования они являются решением
— отображаемое имя
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.