Запуск 64-битных программ в 32-битном режиме

64bit_icon_20090824В Mac OS X Snow Leopard 64-битность вышла на новый уровень: многие системные приложения были переведены на 64-разрядную архитектуру, более того, даже ядро и системные расширения стали 64-битными. Казалось бы, зачем может понадобиться запускать программу, поддерживающую 64-битность, в старом, 32-битном режиме?

Для ответа на данный вопрос почитайте нашу предыдущую запись. Как видно на примере Logic Studio, иногда 64-разрядность делает невозможными ряд функций. Сейчас мы покажем, как запустить 64-битное приложение Mac OS X в 32-разрядном режиме.

Для начала рекомендуем удостовериться, что приложение работает в 64 битах. Запустите проверяемую программу, а потом запустите через Spotlight или из папки Программы/Служебные программы утилиту Мониторинг системы. Обратите внимание на столбец «Тип»: 32-битную программу выдаст обычная надпись Intel:

Опознание 64-битных программ
Опознание 64-битных программ

Обратите внимание — если программа поддерживает 64-битный режим, то она будет запускаться по умолчанию именно в нём. Режим работы ядра на поведение программ не влияет; даже если ядро в 32-битах, это не мешает программам запускаться в 64-битном режиме. Подробнее об этом можно прочесть тут.

Настроить режим работы программы можно из её свойств. Кликните правой кнопкой по интересующему вас приложению и выберите пункт «Свойства» (или выберите его мышкой и нажмите на клавиатуре Cmd+I). У каждой программы, рассчитаной на архитектуру x64, в верхней секции обнаружится следующий пункт:

Safari как пример 64-битного софта
Safari как пример 64-битного софта

Думаем, нет смысла обяснять, что случится, если вы поставите галочку «Открыть в 32-битном режиме».

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

itunes32
А вот iTunes 64-битность не держит

Кстати, всё вышеописанное прекрасно работает в Mac OS X Leopard, правда, 64-разрядных программ для Леопарда гораздо меньше, а из встроенных в Mac OS X — вообще одно (шахматы).