Если быть более точным, у меня есть 64-разрядный процессор (Intel Core 2 Duo). Когда у меня были установлены Windows XP и Windows 7 (обе 32-битные), они могли запускать старые приложения для DOS и 616-битные Windows.
Теперь я установил 64-разрядную версию Windows 7. Почему он больше не может запускать те же приложения?
изменён fixer1234 19k
6 ответов 6
Насколько я понимаю, это потому, что при работе в длинном режиме (собственно x64) сам процессор не поддерживает переход в 16-битный режим. Смотрите Википедию. Таким образом, для поддержки 16-битного режима NTVDM (16-битный уровень в Windows) должен полностью эмулировать 16-битный процессор.
Я предполагаю, что они взвесили повторную реализацию уровня эмуляции по сравнению с использованием уже существующего программного обеспечения для виртуализации (VirtualPC, VirtualBox), и было решено сократить VDM.
ответ дан Matt Sieker 503
Поскольку 64-битные дескрипторы имеют 32 значащих бита:
Обратите внимание, что 64-разрядная версия Windows не поддерживает запуск 16-разрядных приложений для Windows.
unsupported 16 bit application | 16 bit application solution
Основная причина в том, что дескрипторы имеют 32 значащих бита в 64-битной Windows.
Поэтому дескрипторы не могут быть усечены и переданы 16-разрядным приложениям без потери данных.
В Windows программы передают «дескрипторы» ОС и наоборот (это числа, которые ОС использует для уникальной идентификации конкретного ресурса, такого как окно).
Для поддержки 16-битных программ 32-битная Windows генерирует только дескрипторы, которые имеют 16 значащих битов — 16 старших бит игнорируются ОС (даже если программы не используют этот факт в своих интересах). Таким образом, ни одна программа не может взаимодействовать с более чем 2 16 объектами, что на самом деле довольно мало.
Однако, чтобы улучшить это, 64-битная Windows увеличила количество значащих бит в дескрипторе до 32. Но теперь это означает, что дескрипторы нельзя передавать в 16-битные программы без потери информации. Таким образом, 16-битные программы не могут работать в 64-битной Windows.
Источник: poweruser.guru
Как запустить действительно старое программное обеспечение на 64-битном ПК: 6 методов
Постепенно обратная совместимость Windows исчезает. Ваша 64-разрядная установка Windows 10 не может запускать программное обеспечение из 16-разрядной эпохи. По крайней мере, не изначально. Для большинства людей это не главная проблема. Windows 3.1, последняя 16-разрядная версия Windows, появилась на рынке в 1992 году.
Run 16 BIT Applications and Games on a Windows 10 64 bit Computer in 2019
Если у вас есть старое программное обеспечение, которое вам нужно запустить, это создает проблему. Вот как вы боретесь и получаете старое 16-битное программное обеспечение и игры и работаете на Windows 10.
Как вы запускаете 16-битные программы в 64-битной Windows?
Итак, ваша 64-битная установка Windows 10 не может запустить 16-битное программное обеспечение. Однако вам нужно знать, что вы можете виртуализировать или эмулировать 16-разрядную программу или игру в Windows 10. Настройка виртуальной машины для запуска старой версии Windows — это простой способ еще раз погрузиться в старые игры. ,
1. Режим Windows XP
В Windows 7 была классная функция, известная как режим Windows XP . Режим Windows XP был полной виртуальной машиной Windows XP, которую вы могли запустить. Он был прост в использовании и сделал доступ к Windows XP из Windows 7 доступным для всех.
К сожалению, Windows XP Mode не сделал прыжок ни к Windows 8, ни к Windows 10. Но, не волнуйтесь. Вы можете следовать моему руководству о том, как легально скачать Windows XP бесплатно Руководство показывает, как именно загрузить режим Windows XP, импортировать его в виртуальную машину и запустить, чтобы вы могли играть в свои любимые старые игры.
2. Настройка собственной виртуальной машины для старых игр
У вас есть старый диск с Windows? Используйте виртуальную машину, например VirtualBox или VMware Workstation, для создания виртуальной среды. VirtualBox или VMware Workstation позволяет вам создать виртуальный компьютер, используя ваш старый установочный диск. Еще лучше, если у вас все еще есть старый код лицензии.
Установка старой версии Windows не займет много времени. Не знаете что делать? Следуйте инструкциям Бена Стегнера Как использовать VirtualBox: руководство пользователя для удобного прохождения.
3. Запустите Windows 3.1 в DOSBox
DOSBox практически не имеет себе равных, когда дело доходит до инструментов, позволяющих играть в ваши старые игры. Но знаете ли вы, что DOSBox может работать с полной операционной системой Windows 3.1? Windows 3.1 была в основном большой программой MS-DOS, что означает, что она очень хорошо работает со средой эмуляции DOSBox.
Да, это Windows 3.1, работающая в DOSBox, с Chip’s Challenge.
Вы можете следовать этому руководству, чтобы узнать, как загрузить Windows 3.1 в DOSBox. Это займет немного времени, и вам нужна ваша собственная версия Windows 3.1 для загрузки (она старая, но не бесплатная).
4. Запустите старое программное обеспечение Windows в Wine (Mac https://gadgetshelp.com/windows/kak-zapustit-deistvitelno-staroe-programmnoe-obespechenie-na-64-bitnom-pk-6-metodov/» target=»_blank»]gadgetshelp.com[/mask_link]
Почему 64-разрядная ОС не может запустить 16-разрядное приложение?
Если быть более конкретным, у меня есть 64-разрядный процессор (Intel Core 2 Duo). Когда у меня были установлены Windows XP и Windows 7 (оба 32-разрядные), они могли запускать старые DOS и 616-разрядные Windows приложения.
теперь я установил 64-разрядную версию Windows 7. Почему он больше не может запускать те же приложения?
задан fixer1234
25.04.2023 4:21 3064
6 ответов
от моего понимания, это потому, что при работе в длинном режиме (x64 родной), сам процессор не поддерживает переход в 16-битный режим. См.Википедия. Таким образом, для поддержки 16-битного режима NTVDM (16-битный уровень в Windows) должен полностью эмулировать 16-битный процессор.
Я полагаю, что они взвесили повторную реализацию уровня эмуляции против использования уже существующего программного обеспечения виртуализации (VirtualPC, VirtualBox) для обработки этого, и было решено сократить VDM.
отвечен Matt Sieker 2023-04-26 12:09
, потому что 64-разрядные ручки 32 бит:
обратите внимание, что 64-разрядная версия Windows не поддерживает запуск 16-разрядных приложений Windows.
Основная причина заключается в том, что дескрипторы имеют 32 значащих бита в 64-разрядной версии Windows.
Поэтому дескрипторы не могут быть усечены и переданы 16-разрядным приложениям без потери данных.
в Windows, программы проходят вокруг «ручки» к ОС и наоборот (которые являются числами, которые ОС использует для уникальной идентификации конкретного ресурса, например окна).
для поддержки 16-битных программ, 32-битная Windows только генерирует дескрипторы, которые имеют 16 значащих битов — 16 верхних битов игнорируются ОС (даже если программы не должны использовать этот факт). Поэтому программа не может взаимодействовать с более чем 2 16 объекты, что на самом деле довольно низко.
однако, улучшить это 64-разрядная версия Windows увеличила число значащих битов в дескрипторе до 32. Но теперь это означает, что хэндлы не могут быть переданы 16-битным программам без потери информации. Так что 16-битные программы не запускаются на 64-битной Windows.
отвечен Mehrdad 2023-04-26 14:26
для Windows, это потому, что x86 версии операционной системы включает в себя 16-разрядную эмуляцию, которая позволяет им запускать эти старые процессы DOS. В версиях x64 они уже должны эмулировать выполнение x86 (они называют это WoW64), чтобы позволить 32-разрядным процессам работать, и я думаю, что использование Wow64 для дальнейшей эмуляции 16-разрядного эмулятора вызвало слишком много проблем.
несколько распознанных 16-битных процессов будут запущены, потому что эмуляция жестко запрограммирована для их обработки, но остальные не работают, потому что эмуляция не включена в x64.
отвечен SqlRyan 2023-04-26 16:43
поправьте меня, если я ошибаюсь, но, насколько я понимаю, именно из-за специфической для Windows проблемы NTVDM использует виртуальный режим 8086. Режим совместимости на процессорах x64 (работает в длинном режиме) поддерживает полный «чистый» защищенный режим, 16 и 32 бит от того, что я нашел здесь:http://en.wikipedia.org/wiki/Long_mode, но не некоторые из 386 дополнений, таких как виртуальный режим 8086. Таким образом, он не поддерживается, скорее всего, потому, что он не окупается для Microsoft, чтобы перепрограммировать NTVDM, что, вероятно, потребует добавления дополнительной эмуляции, поскольку некоторые 16-разрядные приложения защищенного режима могут использовать virtual 8086, даже если большинство из них этого не делают. Я полагаю, что с достаточным трудом можно написать что-то быстрее, чем dosbox, работающий в длинном режиме, так как есть аппаратная поддержка 16-битных приложений.
отвечен MichaelS 2023-04-26 19:00
Я думаю, что наиболее вероятной причиной является то, что лишь небольшой процент владельцев ПК на самом деле хотят иметь возможность запускать старые 16-битные приложения на их новом 64-битном оборудовании. Microsoft, вероятно, полагал, что это не стоило их, продолжая поддерживать 16-битные приложения.
отвечен Stephen C 2023-04-26 21:17
ситуация отличается для приложений Dos и 16-битных приложений windows.
для Dos приложений проблема в том, что режим virtual 8086 недоступен в режиме long. Это ограничение архитектуры ЦП.
для 16-битных приложений Windows (которые работают в 16-битном защищенном режиме) причина в том, что MS не была готова выполнить работу по реализации подходящего уровня совместимости. Забавно вино прекрасно работал с 16 битных Windows приложений на 64-разрядных Linux.
отвечен plugwash 2023-04-26 23:34
Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]
Ваш ответ
Опубликуйте как Гость или авторизуйтесь
Опубликовать ответ
Похожие вопросы про тегам:
- Что такое Smsistub (подсистема Win 16)?
- Как определить разрядность AAC
- Есть ли способ преобразовать 16-битное приложение DOS в 32-битное?
- Принудительно запустить приложение в 32-разрядном процессе на 64-разрядной Windows [дубликат]
- Windows 7 Ultimate 32 бит до 64 бит [дубликат]
- Не удается выполнить запись в реестр при установке Microsoft Access 2010-ошибка 1406
- PDFToPrinter для Windows открывает GUI на некоторых машинах
- Установка Windows на Acer Iconia Tab 8 W W1-810
- Кто-нибудь знает, как установить новую видеокарту на Thinkpad T400?
- Как перейти с Windows 7 на Windows Vista?
- Как я могу уменьшить яркость экрана моего компьютера?
- Сценарий PowerShell для повторной установки принтера, установите значение по умолчанию, если он был по умолчанию
Недавние вопросы
- 7 Какое максимальное количество разделов можно создать на жестком диске?
- 3 Таблица прилипает к верхней части страницы, как ее удалить?
- 6 При двусторонней печати как исправить, что задняя страница печатается вверх ногами?
- 4 Как превратить оглавление в простой форматированный текст?
- 5 Что значит 1Rx8 и 2Rx8 для оперативной памяти и совместимы ли они?
- 10 Копирование и вставка в Windows PowerShell
- 13 Сочетание клавиш для сворачивания удаленного рабочего стола
- 1 Как включить фон рабочего стола на удаленном компьютере?
- 5 Как сделать ярлык на рабочем столе доступным для всех пользователей в Windows 10
- 1 Зачем Windows 10 нужна служба очереди сообщений и почему она установлена по умолчанию?
Недавние публикации
Наушники Wireless и True Wireless: чем они отличаются?
Не включается iPad: причины и решения проблемы
Как ускорить передачу данных по Bluetooth
Как правильно приобрести подержанный iPhone?
Каковы преимущества фотоэлектрической системы?
5 лучших USB–пылесосов для клавиатуры
Как выбрать чехол-аккумулятор для смартфона
Мобильный телефон Razr: новая складная раскладушка от Motorola стоит 1200 евро
Компания Nothing: смартфон Phone 2 должен быть «более премиальным» и выйти в этом году
UMTS — История технологии сотовой связи
Выбор домена
3D-печать: будущее массового производства
Искусственный интеллект в малом бизнесе: как улучшить эффективность и конкурентоспособность
Ошибки, которых стоит избегать при продвижении сайта
Высокие технологии в Windows: что это такое и как их использовать в своих приложениях
- Кошка – радость в доме
- Услуги клининга у метро Озерки
Акции IT-компаний [02.06]
Apple | $173,24 | +0,81% | ![]() |
Amazon | $114,49 | -1,94% | ![]() |
Microsoft | $325,19 | +3,61% | ![]() |
$123,44 | +2,11% | ![]() |
|
Netflix | $364,74 | -0,03% | ![]() |
Intel | $27,45 | -5,34% | ![]() |
$254,49 | +2,11% | ![]() |
|
Tesla | $185,54 | +1,44% | ![]() |
Tencent | $322,40 | -3,01% | ![]() |
Цитата дня
Своим успехом я обязана тому, что никогда не оправдывалась и не принимала оправданий от других.
- Какое максимальное количество разделов можно создать на жестком диске?
- Таблица прилипает к верхней части страницы, как ее удалить?
- При двусторонней печати как исправить, что задняя страница печатается вверх ногами?
- Как превратить оглавление в простой форматированный текст?
Источник: kompsekret.ru