Windows 8 и 16-ти разрядные приложения

Автор Roma_Rex, 03 Квітень 2013, 13:37:59

Попередня тема - Наступна тема

Roma_Rex

Вступление
Имеется ноутбук с установленной Windows 8 (х86). Мне стало любопытно: как поведут себя старые приложения (игры) в новой ОС. Для эксперимента были выбраны игры StuntGP и Need For Speed 3 Hot Pursuit.
Что мы имеем
Обе игры установились и запустились только после включения поддержки 16-ти разрядных приложений. Очевидно, что поддержка таких приложений по-умолчанию в Windows 8 отключена.
Насколько я могу судить игры работают в режиме эмуляции и, как следствие идут мягко говоря, не плавно (<20 FPS), хотя, по понятным причинам должно выдавать стабильные 60 FPS.
Что делать
Собственно, постановка вопроса такая:
Можно ли каким то образом включить полноценную поддержку вышеназванных приложений в Windows 8? Возможно, проблемы в чем-то другом?
Поправьте меня, если что-то упустил.

Edd.Dragon

#1
Я бы был очень рад,если бы ПО из прошлого века вообще никак не шло на современных ОС. Противное означает, что современные ОС все еще на половину состоят из костылей для обратной поддержки, а их архитектура в целом страдает заторможенной эволюцией.

Для эмуляции же есть возможность создавать виртуальные компьютеры, устанавливая в них старые ОС. Правда в VirtualBox нет смысла ставить 98-ую - скорее всего не взлетит или взлетит, но не порадует. А XP работает великолепно даже на процессорах без аппаратной виртуализации. Ну в восьмерке ты фактически и пользуешься виртуальной недо-XP из коробки на базе собственного микрософтовского эмулятора, который хоть и давно развивается, но все же тормозной без аппаратной виртуализации. Так что, я бы порекомендовал сравнить с virtualBox-ом (или платным VMWare). И микрософтовскую виртуалку тоже можно скачать отдельным приложением для полноценной установки в него своих ОС.

Но! Кто сказал, что игры будут летать? Может они так устроены ))
Хотя обе используют DX, но vsync может быть как отключен, так и включен например в режиме "через 2 кадра", т.е. максимум 30 fps в 60-герцовом режиме. А может и вовсе там по таймеру вывод и рендеринг 20 раз в секунду. Кто знает, под капот же мы не заглядывали =)


P.S.: Все время вылетает из головы. Поддержка DX в общем-то наиболее нормальная в VMWare. Так что, эксперименты с DX-играми в виртуалках не всегда успешны. Так что, если не охота тратить время на эксперименты с троекратнйо установкой XP в разные виртуалки - смирись ))

И укажи, что за процессор у тебя.

Roma_Rex

VSync отключена в обоих играх, уверен на 100%! В StuntGP отключил эту функцию через файл config.cfg. Но в любом случае, даже при включенном VSync, таких проседаний ФПС быть не должно.
Процессор Intel Core2Duo T5550 (1,83GHz/2Mb Cache/677MHz FSB). Не самый современный, конечно, но все же...
2 ГБ ОЗУ, Radeon HD2400XT.
Т.е. как я понимаю, наиболее рациональным решением данной проблемы будет установка ХР вместе с играми в VirtualBox или VMWare?

Edd.Dragon

Ну вот, аппаратно виртуализацю твой процессор не поддерживает, т.е. как там выполняются команды игры - неизвестно. Каждая виртуализируемая и транслируемая в поддерживаемый код процессорная команда может и в пару реальных команд транслироваться, а может и в сотню. Как старые DX-ы поддерживаются (да еще и при условии режима совместимости с 16-битным приложением) - тоже кто знает. Может там реального аппаратного ускорения в итоге пшик.

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

Цитата: Roma_Rex від 03 Квітень 2013, 16:46:56Т.е. как я понимаю, наиболее рациональным решением данной проблемы будет установка ХР вместе с играми в VirtualBox или VMWare?
Ну наиболее рациональным решением будет просто установка XP не в виртуалку, а на отдельный раздел (второй системой).