Для получения триального ключа
заполните форму ниже
Team License (базовая версия)
Enterprise License (расширенная версия)
* Нажимая на кнопку, вы даете согласие на обработку
своих персональных данных. См. Политику конфиденциальности

Запросите информацию о ценах
Новая лицензия
Продление лицензии
--Выберите валюту--
USD
EUR
RUB
* Нажимая на кнопку, вы даете согласие на обработку
своих персональных данных. См. Политику конфиденциальности

Бесплатная лицензия PVS-Studio для специалистов Microsoft MVP
* Нажимая на кнопку, вы даете согласие на обработку
своих персональных данных. См. Политику конфиденциальности

Для получения лицензии для вашего открытого
проекта заполните, пожалуйста, эту форму
* Нажимая на кнопку, вы даете согласие на обработку
своих персональных данных. См. Политику конфиденциальности

Мне интересно попробовать плагин на:
* Нажимая на кнопку, вы даете согласие на обработку
своих персональных данных. См. Политику конфиденциальности

Ваше сообщение отправлено.

Мы ответим вам на


Если вы так и не получили ответ, пожалуйста, проверьте папку
Spam/Junk и нажмите на письме кнопку "Не спам".
Так Вы не пропустите ответы от нашей команды.

>
>
В macOS 10.15 более не поддерживаются 3…

В macOS 10.15 более не поддерживаются 32-битные приложения. Что вы можете сделать?

15 Окт 2019

7 октября 2019 года Apple выпустила в свет новую версию своей операционной системы для Mac, macOS Catalina. Версия 10.15 содержит множество изменений и улучшений. Одно из значимых – полный отказ от 32-битных приложений. Будучи разработчиком таких приложений для macOS, что вы можете сделать? Правильно, портировать приложение на 64-битную платформу. Будет ли приложение работать правильно с первого раза? Возможно. Зависит от сложности и объёма кода. Но, скорее всего, разработчики столкнутся с множеством неочевидных ошибок, которые можно заранее выявить с помощью PVS-Studio.

0680_macOS_64bit_ru/image1.png

Введение

Несмотря на то, что технически запуск 32-битных приложений в 64-битной среде возможен, Apple решила более не идти по этому пути и завершить процесс перехода на 64-битную платформу, начатый ею ещё 10 лет назад. Для пользователя это означает, что если разработчик их любимого приложения вовремя не озаботился его переводом на 64-битную платформу, то приложение просто перестанет работать в обновленной macOS Catalina.

Нельзя сказать, что решение Apple было неожиданным: уже в 2018 году на конференции Worldwide Developers Conference компания говорила, что macOS Mojave станет последней версией macOS с поддержкой 32-битных программ. Вероятно, большинство разработчиков популярных приложений успешно мигрировали на 64-разряда к выходу macOS Catalina, или завершают переход.

Нужно отметить, что при кажущейся простоте, перевод приложения на 64-битную платформу содержит массу "подводных камней". А если часть приложения написана с использованием языка С++, то от разработчика может потребоваться глубокое понимание механизмов работы с памятью и указателями, а также учет многих неочевидных нюансов. В данном случае полезно воспользоваться инструментом, позволяющим проконтролировать корректность кода именно с учетом перехода с 32 на 64-битную платформу. Например, статическим анализатором кода PVS-Studio.

64-битные диагностики

Анализатор PVS-Studio содержит в своем составе специальную группу диагностик для этого случая. Вообще, PVS-Studio как инструмент изначально создавался для целей анализа С/C++ кода при поиске именно ошибок миграции на 64 бита, и только впоследствии развился в анализатор более общего назначения: были добавлены языки C# и Java, появилась возможность поиска потенциальных уязвимостей, поддержка стандартов безопасного кодирования (MISRA, например) и многое другое.

За прошедшее время нами накоплен большой опыт по вопросам перехода на 64-битную платформу, написаны статьи. Одна из хороших статей на эту тему: "Коллекция примеров 64-битных ошибок в реальных программах". Статья довольно старая, но проблемы, описанные в ней, не теряют актуальности и сегодня. Рекомендую к прочтению, особенно если вы планируете или уже работаете над переводом своих приложений на 64 бита (будь то приложения на С++ для macOS или любой другой операционной системы).

Включить 64-битные предупреждения можно следующим образом:

Windows/Visual Studio

В окне просмотра предупреждений есть кнопка включения всей группы 64-битных диагностик:

0680_macOS_64bit_ru/image2.png

Linux/macOS

При запуске анализатора из консоли необходимо включить 64-битные диагностики как в анализаторе, так и в генераторе отчётов:

pvs-studio-analyzer analyze ... -a 5 ...
plog-converter ... -a "64:1,2,3"

Заключение

Ну и, конечно, ничто не мешает вам скачать и попробовать анализатор PVS-Studio на своем коде. Удачи в борьбе с 64-битными и другими ошибками!

Популярные статьи по теме
Простая ошибка при кодировании - не значит нестрашная ошибка

Дата: 19 Апр 2017

Автор: Андрей Карпов

Популяризируя статический анализатор кода PVS-Studio, мы обычно пишем статьи для программистов. Однако, на некоторые вещи программисты смотрят одностороннее. Именно поэтому и существуют менеджеры про…
Как обнаружить переполнение 32-битных переменных в длинных циклах в 64-битной программе?

Дата: 22 Мар 2016

Автор: Андрей Карпов

Одна из проблем, с которой сталкиваются разработчики 64-битных приложений, это переполнение 32-битных переменных в очень длинных циклах. С этой задачей хорошо справляется анализатор кода PVS-Studio (…
Возможен ли запуск 64-битных приложений в 32-битной операционной системе?

Дата: 08 Дек 2015

Автор: Андрей Карпов

В настоящее время широко распространены 64-битные ОС [1]. Но и 32-битные ОС еще присутствуют на рынке в достаточно большом количестве. Многие современные программные средства разрабатываются исключит…
Как перенести проект размером в 9 млн строк кода на 64-битную платформу?

Дата: 03 Авг 2015

Автор: Евгений Рыжков, Илья Иванов

Недавно наша команда завершила миграцию на 64-битную платформу довольного большого проекта (9 млн строк кода, 300Mb исходников). Проект занял полтора года. Хотя в силу NDA мы не можем привести назван…
64-битный код в 2015 году: что нового в диагностике возможных проблем?

Дата: 21 Май 2015

Автор: Сергей Васильев

64-битные ошибки достаточно тяжело обнаружить, так как они сродни бомбе замедленного действия: могут дать о себе знать далеко не сразу. Статический анализатор PVS-Studio облегчает задачу поиска и исп…

Комментарии (0)

Следующие комментарии
Этот сайт использует куки и другие технологии, чтобы предоставить вам более персонализированный опыт. Продолжая просмотр страниц нашего веб-сайта, вы принимаете условия использования этих файлов. Если вы не хотите, чтобы ваши данные обрабатывались, пожалуйста, покиньте данный сайт. Подробнее →
Принять