Возможно ли запускать 64-битные приложения в 32-разрядной операционной системе, если аппаратное обеспечение составляет 64 бит?

У меня есть ПК с 64-разрядным оборудованием.

Я установил 32-разрядный дистрибутив Ubuntu, и я хотел бы узнать, можно ли запускать на нем 64-битные приложения (например, Mac OS X Snow Leopard).

  • Драйвер устройства чтения карт не установлен правильно, но тот же самый драйвер, используемый для работы
  • Как проверить, поддерживает ли мое оборудование 64-разрядную версию в Windows?
  • Почему мне пришлось копировать usbscan.sys?
  • Почему для 64-разрядной версии Windows 7 требуется больше памяти, чем 32-разрядная?
  • Как определить причину возобновления спящего режима в Windows 7?
  • Спасение Windows XP после форматирования загрузочного диска
  • Существуют ли какие-либо преимущества для работы 64-разрядной ОС на 4 ГБ ОЗУ?
  • Установка Windows 8.1 x64 без поддержки PrefetchW?
  • 3 Solutions collect form web for “Возможно ли запускать 64-битные приложения в 32-разрядной операционной системе, если аппаратное обеспечение составляет 64 бит?”

    32-разрядная версия Mac OS X может запускать 64-разрядные приложения на 64-битном оборудовании.

    Причина этого в том, что ядро ​​OS X (Darwin) действительно работает в режиме подпрограммы совместимости в длинном режиме.

    Windows и Linux этого не делают и обеспечивают более чистый срез между x86 и x64. В Windows или Linux вы можете запускать 64-битные ядра и 64-битные драйверы (и запускать как 64-разрядные, так и 32-разрядные программы) или 32-разрядные ядра и 32-разрядные драйверы (и запускать только 32-разрядные и 16-разрядные программы).

    Обратите внимание, что 16-разрядный код реального режима не работает в длинном режиме, и, следовательно, Mac OS X, вероятно, не сможет запускать 16-разрядные программы, если они существуют для Mac OS X, и если Mac OS X работает в длинном режиме (включая режим совместимости). Windows также не может запустить 16-битный режим реального режима в режиме 64 бит.

    VMware Fusion или Parallels, работающие на 32-разрядной Mac OS X на 64-битном оборудовании, запускают 64-битных гостей.

    Каждый 32-разрядный процесс, работающий на 32-битной Mac OS X на 64-битном оборудовании, получает, я думаю, 4 ГБ виртуального адресного пространства пользователя и 4 ГБ виртуального адресного пространства ядра. 64-битные процессы получают, я предполагаю, 8 ТБ пользовательского виртуального адресного пространства и 4 ГБ виртуального адресного пространства ядра (потому что ядро ​​работает в 32-битном режиме).

    Ядро Mac OS X (как и большинство программ Mac OS X) – универсальный двоичный код, содержащий двоичный код для PowerPC, x86 (32 бит) и x64 (64 бит). Переключение с одной платформы на другую «просто» загружает соответствующую часть двоичного файла. Код x86 проверяет, доступен ли длинный режим, и, если возможно, переключается в длинный режим и работает в режиме совместимости для достижения желаемого результата.

    NB: В то время как Mac OS X Snow Leopard не запускается на PowerPC, ядро ​​по-прежнему содержит код PowerPC, предположительно потому, что его могут использовать бинарники PowerPC. Бинарные файлы PowerPC по-прежнему работают на компьютерах x86 и x64.

    Если у вас есть процессор, поддерживающий аппаратную виртуализацию (новейшие Intels) и программное обеспечение VM для его поддержки, в ОС VM можно установить 64-битную ОС, когда ОС хоста 32 бит. Затем вы можете запустить 64-битное приложение внутри виртуальной машины. Но это примерно так же близко, как я вижу, что вы получаете.

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

    Причина, по которой это работает в OS X, заключается в том, что в 10.5 32-битное ядро ​​получило возможность копировать между 32-битным и 64-битным пользовательским адресным пространством и имеет некоторые 64-битные обработчики для таких вещей, как trap / syscall. Это, по сути, гибридное ядро, которое не требует 64-битных драйверов, но обладает определенными 64-битными возможностями.

    Давайте будем гением компьютера.