Стремительное развитие архитектуры ARM (Advanced RISC Machine) ставит перед сообществом 1С важные вопросы. Если раньше эти процессоры были прерогативой исключительно смартфонов и планшетов, то сегодня мы видим их триумфальное шествие в сегментах ноутбуков (Apple Silicon M1/M2/M3), серверных решений (Ampere Altra) и даже отечественных разработок (процессоры «Байкал»). В этой статье мы подробно разберем, как обстоят дела с поддержкой ARM в экосистеме 1С, и проанализируем возможности запуска различных компонентов системы на этой архитектуре.
Для начала рассмотрим исторический контекст. Платформа 1С изначально создавалась под архитектуру x86, однако необходимость выхода на мобильный рынок заставила разработчиков из фирмы «1С» адаптировать код под ARM еще много лет назад. Проанализируем основные вехи этой адаптации:
ARMv7, ARM64 (AArch64) и ARM64e.Тонкого клиента, Толстого клиента и Конфигуратора для macOS.Выясним, в чем разница между полноценной работой и мобильными вариантами, о которых часто упоминается в обсуждениях. Многие пользователи путают Мобильную платформу (МП) и Мобильный клиент (МК).
Мобильная платформа — это фактически полноценная среда исполнения, которая включает в себя собственную СУБД (на базе SQLite). Рассмотрим ее особенности: она позволяет работать автономно, без постоянного подключения к центральному серверу. Весь код конфигурации должен быть специально адаптирован под мобильные требования. Однако, как отмечают эксперты, Мобильная платформа уже доказала, что ядро 1С может успешно функционировать на архитектуре ARM.
Мобильный клиент — это технология, позволяющая транслировать интерфейс основной конфигурации на мобильное устройство. Здесь мы видим более тесную связь с классической 1С:Предприятие 8. Разберем по шагам, что это дает: пользователь получает доступ к функционалу «большой» базы, но через ARM-интерфейс смартфона или планшета.
Проанализируем ситуацию с серверными решениями, которая наиболее интересна для системных администраторов. На сегодняшний день фирма «1С» официально выпускает дистрибутивы Сервера 1С:Предприятия для Linux ARM64. Это открывает колоссальные возможности для импортозамещения и экономии ресурсов.
Посмотрим на пример установки. Для работы на таких процессорах, как Baikal-M или серверных чипах Ampere, используются стандартные менеджеры пакетов в дистрибутивах типа Astra Linux или РЕД ОС. Разберем типичную последовательность действий для подготовки окружения:
# Обновление списка пакетов для архитектуры aarch64
sudo apt-get update
# Установка зависимостей, необходимых для работы сервера 1С
sudo apt-get install libwebkit2gtk-4.0-37 fonts-liberation fontconfig
# Установка пакетов платформы 1С (пример для версии 8.3.24)
sudo dpkg -i 1c-enterprise-8.3.24.XXXX-server_arm64.deb
sudo dpkg -i 1c-enterprise-8.3.24.XXXX-common_arm64.deb
Важно помнить, что при работе на Linux ARM64 необходимо использовать соответствующие версии СУБД. Например, PostgreSQL также должен быть скомпилирован под ARM64, что сейчас является стандартной практикой для большинства Linux-репозиториев.
Рассмотрим подробнее работу 1С на российских процессорах Baikal-M. Поскольку эти процессоры базируются на ядрах Cortex-A57, они полностью совместимы с инструкциями ARMv8. Платформа 1С на таких системах работает в нативном режиме, что исключает потери производительности на эмуляцию.
Однако проанализируем ситуацию с быстродействием: производительность одного ядра у текущих моделей ARM-процессоров общего назначения (не считая топовых серверных решений) зачастую ниже, чем у последних поколений Intel Core или AMD Ryzen. Поэтому для тяжелых файловых баз Байкалы могут казаться медленными. Оптимальный сценарий здесь — использование в качестве Тонкого клиента или для работы с небольшими базами в клиент-серверном варианте.
Выясним причины, по которым переход на ARM не происходит мгновенно для всех компонентов. Одной из главных проблем, упомянутых в обсуждении, является использование сторонних библиотек.
Платформа 1С активно взаимодействует с внешними компонентами (ВК). Рассмотрим типичные примеры:
Если сама платформа 1С уже пересобрана под ARM, то многие сторонние разработчики драйверов до сих пор предоставляют библиотеки (файлы .so или .dll) только для архитектуры x86. Без нативных библиотек ВнешниеКомпоненты просто не загрузятся в ARM-клиенте. Это критический момент, который нужно проверять перед миграцией предприятия на ARM-инфраструктуру.
Посмотрим на ситуацию с микрокомпьютерами типа Raspberry Pi. Благодаря наличию версии 1С для Linux ARM64, запуск системы на «малинке» стал реальностью, а не просто экспериментом. Рассмотрим сценарии использования:
1. Тонкий клиент: Raspberry Pi 4 или 5 с 4-8 Гб оперативной памяти отлично справляется с ролью дешевого рабочего места («тонкого терминала»).
2. Сервер лицензирования или небольшой веб-сервер: Можно развернуть Apache или Nginx вместе с расширением для 1С на Raspberry Pi для публикации небольших информационных баз.
Для реализации этого сценария проанализируем технические требования: вам потребуется 64-битная операционная система (Raspberry Pi OS 64-bit или Ubuntu ARM). Помните, что графическая подсистема 1С на Linux требует наличия библиотек GTK3 и WebKit2.
Подводя итог, можно с уверенностью сказать: 1С успешно работает на ARM процессорах. Мы прошли путь от простых мобильных приложений до нативных серверных решений и полнофункциональных клиентов для macOS и Linux.
Если вы планируете переход на ARM, рекомендуем придерживаться следующего алгоритма:
Linux ARM64 + PostgreSQL, так как она наиболее отработана на текущий момент.Таким образом, архитектура ARM больше не является препятствием для автоматизации на базе 1С, а напротив, предлагает новые способы оптимизации стоимости владения IT-инфраструктурой.