При заказе VPS или выборе образа ОС почти всегда предлагают выбрать архитектуру: 32-бит или 64-бит. Большинство просто берёт 64-бит по умолчанию — и это правильно. Но понимать, в чём разница и почему 32-битные системы постепенно исчезают, полезно.
Что такое разрядность и зачем она нужна
Разрядность — это размер машинного слова: сколько бит процессор может обработать за один такт и, главное, сколько адресов оперативной памяти он способен адресовать.
Грубо говоря, это как размер ящика, в который складывают данные для обработки. Чем ящик больше — тем больше данных помещается за один раз.
Практически это означает следующее:
- 32-битный процессор работает с адресами длиной 32 бита → максимальный объём ОЗУ: 2³² байт = 4 ГБ
- 64-битный процессор работает с адресами длиной 64 бита → теоретический максимум: 2⁶⁴ байт = ~17 миллиардов ГБ
Реальный предел у современных серверов — несколько терабайт, но это уже ограничение железа, а не архитектуры.
Главное отличие: лимит оперативной памяти
Вот где разница ощущается сильнее всего. 32-битная система видит не более 4 ГБ ОЗУ — физически. Даже если в сервере стоит 32 ГБ, 32-битная ОС будет использовать только 4 ГБ. Остальное для неё просто не существует.
Существовал обходной путь — технология PAE (Physical Address Extension), позволявшая 32-битным ядрам Linux адресовать до 64 ГБ ОЗУ. Но это костыль с ограничениями: один процесс всё равно не мог использовать более 4 ГБ.
На практике это означает: любой современный VPS с более чем 4 ГБ ОЗУ требует 64-битной ОС. Иначе деньги за RAM просто выброшены.
Производительность: есть ли разница?
Да, но не всегда в пользу 64-бит.
64-битная система быстрее при:
- работе с большими объёмами данных (базы данных, виртуализация, рендеринг);
- многопоточных задачах — 64-битные регистры позволяют обрабатывать больше данных за такт;
- операциях с числами с плавающей точкой.
32-битная система не медленнее при:
- простых задачах с небольшим объёмом данных;
- запуске легковесных утилит и скриптов.
Для серверных задач — веб, базы данных, контейнеры — 64-бит всегда предпочтительнее.
Совместимость программ
64-битная ОС может запускать как 64-битные, так и 32-битные программы (в Linux для этого нужны пакеты lib32 или multiarch). Обратное невозможно: 32-битная система не запустит 64-битный бинарник.
Большинство современного серверного ПО выпускается только в 64-битных сборках. Node.js, PostgreSQL, Redis, Docker — у всех актуальные версии рассчитаны на x86_64. 32-битные пакеты либо не обновляются, либо убраны из официальных репозиториев.
На Ubuntu, например, поддержка 32-битных образов прекращена начиная с версии 20.04 — официальных ISO для установки больше нет.
Как проверить разрядность системы
Посмотреть архитектуру текущей ОС:
uname -m
Вывод x86_64 — система 64-битная. i686 или i386 — 32-битная.
Подробнее об архитектуре процессора:
lscpu | grep Architecture
Проверить, поддерживает ли процессор 64-бит (флаг lm — Long Mode):
grep -o 'lm' /proc/cpuinfo | head -1
Если вывод lm — процессор поддерживает 64-бит. Пустой вывод — только 32-бит.
Названия архитектур: разбираемся в терминах
В документации, образах ОС и пакетных менеджерах встречаются разные обозначения — они всё об одном:
| Разрядность | Синонимы |
|---|---|
| 32-бит | x86, i386, i686, IA-32 |
| 64-бит | x86_64, amd64, x64 |
amd64 — название появилось потому, что 64-битное расширение архитектуры x86 разработала AMD (процессор Opteron, 2003 год). Intel затем лицензировала эту разработку. Несмотря на название, amd64 работает на процессорах обоих производителей.
Сравнительная таблица
| Характеристика | 32-бит (x86) | 64-бит (x86_64) |
|---|---|---|
| Максимум ОЗУ | 4 ГБ | Теоретически ~17 млрд ГБ |
| Размер регистров | 32 бит | 64 бит |
| Скорость обработки больших данных | Ниже | Выше |
| Запуск 32-битных программ | Да | Да (с доп. библиотеками) |
| Запуск 64-битных программ | Нет | Да |
| Поддержка Ubuntu 20.04+ | Нет | Да |
| Актуальность для серверов | Устарела | Текущий стандарт |
Что выбирать для VPS
Ответ однозначный: только 64-бит. Причин несколько:
Любой современный VPS выдаёт больше 4 ГБ ОЗУ. Даже базовые тарифы часто идут с 2–4 ГБ, а более серьёзные конфигурации — с 8, 16, 32 ГБ. На 32-битной ОС это всё будет потеряно.
Серверный софт не выходит в 32-битных сборках. Docker, актуальные версии баз данных, новые ядра — всё ориентировано на x86_64.
Дистрибутивы прекращают поддержку 32-бит. Ubuntu, Debian, CentOS — 32-битные серверные образы либо уже убраны, либо заморожены без обновлений безопасности.
32-битные системы сегодня встречаются только в специфических случаях: старое встраиваемое железо, промышленные контроллеры, легаси-окружения, где замена невозможна. Для нового сервера — только 64-бит.
Итог
32-бит — архитектура с лимитом в 4 ГБ ОЗУ и без поддержки современного ПО. 64-бит — текущий стандарт без практических ограничений по памяти. Для любого нового VPS вопрос выбора не стоит.
Подобрать сервер с нужной конфигурацией можно в каталоге PQ.Hosting — все доступные образы ОС там 64-битные.