Программы написанные для выполнения в 32 битной операционной системе ms Windows будут совместимы

Содержание

Хотя я понимаю, что нет фундаментальной причины, по которой программа, написанная для 32-разрядного оборудования / ОС, не запускалась на 64-разрядном оборудовании / ОС, на практике я обнаружил много программ, предназначенных для 32-разрядных версий Windows, которые не работают. работают на 64-битных версиях Windows. Примеры включают ряд популярных утилит безопасности (большинство продуктов от Norton и Check Point Zone Alarm) и несколько игр (я пытался запустить Grand Theft Auto 4 уже несколько недель, но безрезультатно — конечно, это может быть связано с любым количеством других проблем, связанных с GTA4, но это ни здесь, ни там).

Я слышал, что несовместимость программы может возникнуть из-за чего-то столь же простого, как нежелание запускаться из папки «Program Files (x86)», но каковы другие причины? Почему антивирусный сканер или брандмауэр, написанный для 32-битной системы, не запускается в 64-битной системе? Почему игра не запускается, если все теоретически обратно совместимо?

Как перейти с 32-х битной системы на 64-х битную. С подробным описанием.

27.12.2008 03:52

Оператор pass в Python — это простая концепция, которую могут быстро освоить даже новички без опыта программирования.

Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции — это способ манипулировать массивами и играть с массивами данных. Благодаря.

Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний.

Все о массиве Dependency и его связи с useEffect.

Toor — Travel Booking Angular Template один из лучших Travel int x; int y; >// Array of twenty GPoints GPoint[] myArr = malloc(20 * sizeof(GPoint); GPoint* myPointer = myArr; int index = GetIndexAffectedPoint(); // Invert X and Y for the point myPointer += 8*index; swap(myPointer);

Я знаю, что этот пример довольно наивен, но в любом случае в этом коде вы предполагаете, что ваша структура имеет длину 8 байтов (4 байта целого числа x и 4 байта целого числа y), но в 64-битной системе фактически вдвое длиннее так что вы в конечном итоге поменяете неправильную точку . такие вещи часто случаются на языках низкого уровня, особенно при попытке повысить производительность .

Это проблема, когда вы берете 32-битный код и перекомпилируете его как 64-битный без исправления этих предположений. Однако вопрос был в 32-битных приложениях, работающих в 64-битной ОС. В этом случае унаследованный код в вашем примере будет работать нормально.

Источник: reddeveloper.ru

Обеспечение программы, написанной для 32-разрядной Windows, совместимо с 64-разрядной версией Windows

Хотя я понимаю, что нет основополагающей причины, что программа, написанная для 32-разрядных аппаратных/ОС, не должна запускаться на 64-битном оборудовании/ОС, на практике я нашел много программ, предназначенных для 32-разрядных версий Windows что не будет работать в 64-разрядных версиях Windows. Примеры включают ряд популярных утилит безопасности (большинство продуктов от Norton и Check Point Zone Alarm) и несколько игр (я пытался получить Grand Theft Auto 4 для запуска в течение нескольких недель, но безрезультатно — конечно, это может быть связано с любым количеством других проблем, связанных с GTA4, но ни здесь, ни там).

Читайте также:
Температура Windows 10 программа

Какая разница между windows 32 bit и 64 bit

Я слышал, что несовместимость программы может возникнуть из-за чего-то такого простого, что вы не хотите запускать из папки «Program Files (x86)», но каковы некоторые другие причины? Почему антивирусный сканер или брандмауэр, написанный для 32-разрядной системы, не запускается в 64-битной системе? Почему игра не запускается, когда все теоретически обратно совместимо?

ОТВЕТЫ

Ответ 1

Здесь представлено лучшее объяснение, которое в основном говорит о том, что 32-разрядные программы запускаются на уровне эмуляции, который не позволяет получить доступ к системе из собственных программ, запущенных в 64-разрядной среде:

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

Здесь, что MSDN должен сказать по этому поводу:

Ответ 2

В этой теме много дезинформации.

Когда 32-разрядное приложение запускается в 64-битных окнах:

  • Большинство проблем совместимости возникают, когда приложение пытается установить драйвер режима ядра. 32-разрядный драйвер не может быть установлен в 64-разрядной ОС. Это, безусловно, проблема с брандмауэром. Он пытается подключиться к стеку драйверов TCP/IP.
  • НЕТ ЭМУЛЯТОРА! 32-битный объектный код выполняется процессором полностью на полной скорости.
  • Поддержка старого 16-битного кода не поддерживается. Это сломало множество инсталляторов.
  • Доступ к правильным папкам обычно не является проблемой. Когда 32-разрядная программа открывает файл, скажем,% windir%system32 , ОС автоматически перенаправляет его на% windir%syswow64. То же самое для некоторых частей реестра. Здесь есть несколько потенциальных ошибок, но они, как правило, предполагают, что различные функции WINAPI Get. Directory() возвращают те же строки, что и в Windows 95.
  • Было ли это скомпилировано 10 лет назад или только вчера, тогда указатели C/С++ по-прежнему 32-битные (4 байта) и весь код, который только что предположил, что, включая SendMessage()! — до сих пор работает. Проблема с 8-байтовым указателем не входит в изображение до тех пор, пока вы не начнете конвертировать в 64-битные компиляторы.

Ответ 3

Драйверы — это другая история о том, что программы: http://support.microsoft.com/kb/896456

Zone Alarm использует специальный 32-разрядный драйвер, созданный Check Point для мониторинга. Вероятно, это то, что создает проблему с этим приложением. Что касается Grand Theft Auto 4? Я понятия не имею.

Ответ 4

Может быть любое количество причин.

Любое приложение, запрограммированное на низком уровне, может ожидать 32-битный регистр. Хорошим примером является аварийный драйвер зоны, отправленный novatrust. GTA4 может использовать сборку для повышения производительности в нескольких точках, что может привести к чему угодно или даже просто предположить 32 бита на С++. Например, введите следующий код:

struct GPoint < int x; int y; >// Array of twenty GPoints GPoint[] myArr = malloc(20 * sizeof(GPoint); GPoint* myPointer = myArr; int index = GetIndexAffectedPoint(); // Invert X and Y for the point myPointer += 8*index; swap(myPointer);

Читайте также:
Список доверенных программ Windows

Я знаю, что пример довольно наивный, но в любом случае в этом коде вы предполагаете, что у вас структура длиной 8 байтов (4 байта целого числа x и 4 байта для y-целого), но в 64-битной системе на самом деле в два раза больше, поэтому вы в конечном итоге замените неправильную точку. такие вещи случаются много на языках низкого уровня, особенно при попытке повысить производительность.

Ответ 5

Ответ 6

Приложения безопасности — плохой пример. Все они выполняют неподтвержденные вещи против недокументированных вещей. Изменения между одной 32-разрядной версией Windows для следующего достаточно, чтобы разбить их, не переходя к 64-разрядной версии.

Тем не менее, есть некоторые совместимые прокладки, которые исправляют ваш код на 32-разрядном, который не будет, когда приложение 64-разрядное. Это связано с тем, что Microsoft предполагает, что вы протестировали его на 64-разрядной версии.

Один полученный результат имеет .NET-приложения. При работе в 32-разрядной системе exe имеет jitted до 32 бит, где есть совместимость прокладки, чтобы исправить ваши ошибки. Если ваш клиент работает в 64-разрядной системе, исполняемый файл будет разделен на 64 бита, где эти совместимые прокладки, защищенные вами от вас, будут больше не.

У Chris Jackson была хорошая запись в блоге об этом: Удаление приложений на 64-битной Windows Vista

Ответ 7

Проблема, вероятно, в драйверах. С играми это, вероятно, какая-то слизистая схема DRM. Попытайтесь получить трещины без CD для игры, чтобы вы могли запускать ее без DRM.

Ответ 8

Если вы используете файловую систему или реестр, убедитесь, что доступ к правильным папкам. В качестве x86-программы вы, вероятно, захотите получить доступ к «Программным файлам (x86)», «SysWOW64», «WOW6232Node» и таким папкам вместо x64.

Продукты с приложениями x86, такими как Norton и Check Point Zone Alarm, не могут запускать драйвер x86, так как драйверу требуется x64, чтобы он мог работать под управлением операционной системы.

Источник: utyatnishna.ru

Вопрос: поддерживает ли Windows 10 32-битные приложения?

Microsoft предлагает 64-битную ОС в Windows 10, которая запускает все 64-битные и все 32-битные программы. Это правильный выбор операционной системы. Проблема в том, что Microsoft ТАКЖЕ дает клиентам возможность установить 32-битную Windows 10, которая не будет запускать 64-битные программы. … 32-битная версия по своей сути менее безопасна.

Поддерживает ли Windows 10 32-битные приложения?

В общем, да, можно. тот факт, что они 32-битные, не имеет значения. И 64-битная Windows 10, и 32-битная Windows 10 могут запускать 32-битные программы.

Как долго Microsoft будет поддерживать 32-разрядные приложения?

Microsoft начала, что обещает быть очень долгим процессом, прекращения поддержки 32-разрядных версий своей последней операционной системы. Он начался 13 мая 2020 года. Microsoft больше не предлагает OEM-производителям 32-разрядную версию операционной системы для новых ПК.

Как установить 32-битную программу в Windows 10?

Как установить 32-битное программное обеспечение на 64-битную Windows?

  1. Нажмите одновременно клавиши «Windows» + «S», чтобы открыть Поиск.
  2. Введите «Панель управления» и выберите первый вариант. …
  3. Нажмите на опцию «Программы», а затем выберите кнопку «Включить или выключить компоненты Windows». …
  4. Установите флажок «Информационные службы Интернета» и нажмите «ОК».

Будет ли Windows 10 работать с 64-битными программами?

WOW64 — это эмулятор x86, который позволяет 32-разрядным приложениям на базе Windows без проблем работать в 64-разрядной Windows. … 32-разрядное приложение может определить, работает ли оно под WOW64, вызвав функцию IsWow64Process (используйте IsWow64Process2, если нацелено на Windows 10).

Читайте также:
Лучшие программы для загрузочной флешки Windows

Можете ли вы запустить 32-битную ОС на 64-битной системе?

Вообще говоря, 32-битные программы могут работать в 64-битной системе, но 64-битные программы не будут работать в 32-битной системе. … Хотя можно установить 32-разрядную операционную систему на 64-разрядную систему, лучше всего установить 64-разрядную версию, если это возможно.

32-битная версия устарела?

В сфере традиционных ноутбуков и настольных компьютеров с Windows 32-разрядные системы уже в значительной степени устарели. Если вы пойдете покупать новый компьютер в этой категории, вы почти наверняка получите 64-битный процессор. Даже процессоры Intel Core M 64-разрядные. … В мире смартфонов / планшетов 32-битная версия работает дольше.

Можно ли купить 32-битный компьютер?

Неа. Так. Две компании, производящие процессоры для настольных ПК, в 32 году не производят новых 2017-разрядных процессоров для настольных ПК. Независимо от того, покупает ли какая-нибудь ДРУГАЯ компания старые запасы для сборки настольного компьютера с 32-разрядным процессором…

Кто еще использует 32 бит?

да. Многие 32-битные ПК все еще используются в школах, домах и на предприятиях. Они служат своей цели и на самом деле не нуждаются в обновлении до 64-разрядного оборудования. Кроме того, существуют миллиарды встроенных микроконтроллеров, которые являются 32-битными, 16-битными или 8-битными.

Что такое 32-битный и 64-битный компьютер?

В вычислительной технике существуют процессоры двух типов: 32-битные и 64-битные. … 32-разрядная система может получить доступ к 232 адресам памяти, то есть к 4 ГБ ОЗУ или в идеале к физической памяти, она также может получить доступ к более чем 4 ГБ ОЗУ. 64-битная система может получить доступ к 264 адресам памяти, то есть фактически к 18 квинтиллионам байт ОЗУ.

Как я могу преобразовать 32-битное программное обеспечение в 64-битное?

3 решения для запуска 64-битных программ в 32-битной Windows 7/8/10

  1. №1. Загрузите и установите 32-битную версию программы на 32-битную ОС — обычный способ.
  2. №2. Обновление Windows 10/8/7 с 32-разрядной до 64-разрядной — лучший выбор.
  3. №3. Используйте VMware для запуска 64-разрядных программ, приложений и программного обеспечения — альтернатива.

32-битные программы работают быстрее на 64-битных?

64-разрядная версия Windows обрабатывает большие объемы оперативной памяти (ОЗУ) более эффективно, чем 32-разрядная система. Чтобы запустить 64-разрядную версию Windows, ваш компьютер должен иметь 64-разрядный процессор. … Дополнительные биты не заставляют ваш компьютер работать быстрее.

Как я могу изменить 32-битную на 64-битную?

Определите 64-битную совместимость с помощью настроек

  1. Открыть настройки.
  2. Нажмите «Система».
  3. Щелкните О себе.
  4. Проверьте сведения об установленной оперативной памяти.
  5. Убедитесь, что информация составляет 2 ГБ или больше.
  6. В разделе «Характеристики устройства» проверьте сведения о типе системы.
  7. Подтвердите, что информация читает 32-разрядную операционную систему, процессор на базе x64.

1 центов 2020 г.

Как узнать, 32-разрядный или 64-разрядный ваш компьютер?

Как узнать, на моем компьютере установлена ​​32-разрядная или 64-разрядная версия Windows?

  1. Нажмите кнопку «Пуск», затем выберите «Настройки»> «Система»> «О программе». Откройте О настройках.
  2. Справа в разделе Технические характеристики устройства см. Тип системы.

Что мне делать — 32 или 64 бит?

32-разрядная операционная система обычно позволяет использовать только до 4 гигабайт ОЗУ для ОС или любой из установленных программ. … 64-разрядная операционная система обеспечивает гораздо больший доступ к оперативной памяти и ее емкость.

Источник: frameboxxindore.com

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru