AMD64/ЧаВо

From Gentoo Wiki
< AMD64
Jump to:navigation Jump to:search
This page is a translated version of the page AMD64/FAQ and the translation is 100% complete.


Часто задаваемые вопросы по Gentoo AMD64.

См. также
Смотрите также главный ЧаВо, или ЧаВо по Portage для ответов на часто задаваемые вопросы о менеджере пакетов. Так же существует раздел ЧаВо в Руководстве. Для ответов на часто задаваемые вопросы касаемо документации, вики и редактирование вики посетите ЧаВо вики. Так же существует архитектуро-специфичные ЧаВо, такие как: PPC/FAQ, MIPS/FAQ и Alpha/FAQ.
Article status
This article has some todo items:


Введение

Этот документ содержит наиболее часто задаваемые вопросы об использовании Gentoo на системах с архитектурой amd64. Многие из этих вопросов изначально были заданы на форумах, в IRC и различных списках рассылки. Проект AMD64 осуществляет поддержку Gentoo Linux для данной архитектуры. Если у вас есть предложения или вопросы по этому ЧаВо, вы можете оставить свой комментарий в соответствующей странице обсуждения.

Установка

В чём разница между AMD64 и EM64T?

Оба понятия относятся к 64-битным процессорам, от AMD (AMD64) и Intel (EM64T) соответственно. AMD производит 64-битные процессоры в рамках серий Athlon 64, Opteron, Turion, Neo, Phenom, FX, AX/EX/CX, Ryzen и EPYC. Intel — в рамках серий Core 2, Core i "X", Celeron, Xeon и Pentium (все на базе архитектуры Core 2 и позже). Некоторые последние версии старых чипов Pentium 4 и Xeon также поддерживают EM64T.

AMD выпустила первые 64-битные процессоры раньше Intel. В силу этих исторических причин архитектура всех x86-64-совместимых процессоров обозначается в Gentoo ключевым словом amd64. Так что «AMD64» — это общее обозначение для 64-битных чипов от AMD и Intel.

Какие CFLAGS следует использовать?

Следует использовать простые CFLAGS, чтобы избежать проблем с системой в будущем. Поддерживаемые как на системах с AMD, так и с Intel (EM64T) CFLAGS: -O2 -march=native -pipe.

Какое ядро использовать?

Вы можете использовать практически все ядра, доступные через Portage. Мы рекомендуем sys-kernel/gentoo-sources, поскольку это ядро спроектировано специально для Gentoo Linux. Оно содержит множество ориентированных на AMD64 патчей, и поэтому является единственным ядром, официально поддерживаемым проектом Gentoo/AMD64.

Убедитесь, что параметр ядра IA32_EMULATION включён.

root #cd /usr/src/linux
root #make menuconfig
ЯДРО Включение эмуляции IA32
Executable file formats / Emulations  --->
  [*] IA32 Emulation
Предупреждение
Отключение этого параметра может привести к ошибкам на системах с multilib.

Увеличится ли производительность, если использовать 64-битную систему вместо 32-битной?

Это сложный вопрос. В некоторых случаях наблюдается улучшение производительности, в некоторых — нет. В повседневной работе между 64- и 32-битностью почти нет разницы. На 64-битных системах (как правило) быстрее выполняются вычисления над числами с плавающей запятой, они часто используются мультимедиа-приложениями и приложениями для 3D-рендеринга. Возможно, вам будут интересны статьи с Linux.com «Производительность в 64-битном Gentoo Linux» и «64-битные Linux и BSD неуклонно взрослеют». Также есть отличная тема на нашем форуме «Статья: Производительность в 64-битном Gentoo Linux».

Большинство систем теперь являются 64-разрядными, если нет особых требований.

Что такое multilib, и как его использовать?

Любой процессор архитектуры AMD64 может запускать 32-битный код, так же, как и 64-битный. Но нельзя запустить 32-битное приложение с 64-битными библиотеками или наоборот. Можно, однако, нативно (без эмуляции) запустить 32-битное приложение, если все нужные ему разделяемые библиотеки доступны в 32-битном виде. Выберите поддержку multilib или её отсутствие, выбрав соответствующий профиль. Стандартный профиль включает поддержку multilib.

Предупреждение
Переключение с профиля без multilib на профиль multilib на данный момент не поддерживается, так что обдумайте своё решение дважды, прежде чем выбрать профиль без поддержки multilib. Если вы не уверены, выберите multilib

Как сделать 32-битный chroot?

Смотрите 32bit chroot guide.

Можно ли обновить систему с x86 до AMD64 с помощью emerge -e @world?

Таким способом обновиться невозможно в силу некоторых различий между сборками для x86 (32-битными) и amd64 (64-битными). Вы можете установить новую систему, воспользовавшись AMD64 Handbook.

Имейте в виду, что двоичные файлы, созданные на системе с x86, скорее всего, не смогут быть прочитаны пакетами на системе с AMD64. В частности, некоторые базы данных, такие как OpenLDAP, не могут быть просто перенесены "как есть". Перед попыткой восстановления базы данных на системе с AMD64, необходимо сделать дамп в независимый от архитектуры формат, например, в текстовый файл. Файлы баз данных MySQL, Berkley DB и SQLite не зависят от архитектуры и могут быть свободно перемещены после того, как соответствующие сервисы и демоны, если таковые имеются, будут полностью остановлены.

Оборудование

Будут ли работать бинарные драйвера NVIDIA/ATI?

Да, NVIDIA и ATI предоставляют работающие на AMD64 драйвера. Можно установить или x11-drivers/nvidia-drivers, или x11-drivers/xf86-video-ati. При возникновении других вопросов об этих драйверах, обратитесь к руководству по nvidia-drivers или ATI FAQ.

Как задействовать технологии Cool'n'Quiet/PowerNow/SpeedStep?

Необходимо скомпилировать ядро с поддержкой этих возможностей. Просто включите перечисленные ниже параметры:

ЯДРО Параметры ядра для Cool'n'Quiet/PowerNow/SpeedStep
Power management and ACPI options --->
  [*] Device power management core functionality
  [*] ACPI (Advanced Configuration and Power Interface) Support --->
    <*>   Processor
    <*>     Thermal Zone
  CPU Frequency scaling --->
  [*] CPU Frequency scaling
         Default CPUFreq governor (ondemand) --->
  -*-   'performance' governor
  <*>   'userspace' governor for userspace frequency scaling
  -*-   'ondemand' cpufreq policy governor
  <*>   ACPI Processor P-States driver
  CPU Idle  --->
    -*- CPU idle PM support

Затем установите sys-power/cpupower и отредактируйте /etc/conf.d/cpupower любым текстовым редактором.

ФАЙЛ /etc/conf.d/cpupowerПример конфигурационного файла
# Параметры, передаваемые cpufreq при старте (через утилиту `cpupower`)
START_OPTS="--governor ondemand"
  
# Параметры, передаваемые cpufreq при остановке (через утилиту `cpupower`)
STOP_OPTS="--governor performance"

Теперь введите следующую команду, чтобы убедиться в том, что демон cpupower будет запускаться во время загрузки системы:

root #rc-update add cpupower boot
Заметка
Вам может пригодиться Руководство по управлению питанием, которое содержит больше советов по управлению питанием CPU.

Приложения

Я хочу установить пакет foo, но emerge выводит: (masked by: ~amd64 keyword)

Это означает, что пакет находится в «тестовой» части дерева. Более подробную информацию можно найти в man-странице Portage (man portage), в разделе Настольной книги AMD64 Смешивание ветвей ПО или статье Добавление ключевого слова для отдельного пакета.

Я хочу установить пакет foo, но emerge выводит: (masked by: missing keyword)

Это означает, что пакет не был достаточно протестирован. Из этого не обязательно следует, что пакет не работает. Его можно размаскировать, установив для пакета другую архитектуру (или набор архитектур). В следующем примере показано, как сделать, чтобы Portage допускал установку данного пакета на любой архитектуре:

root #echo "category/packagename **" >> /etc/portage/package.accept_keywords
root #emerge packagename

Если пакет хорошо работает на вашей системе, пожалуйста, откройте запрос в Gentoo's Bugzilla, чтобы команда проекта AMD64 смогла установить архитектуру для пакета, и другие пользователи получили бы пользу.

Предупреждение
Не следует вызывать команды вроде ACCEPT_KEYWORDS="~x86" emerge packagename. Это наверняка «поломает» дерево Portage и сделает систему непригодной к использованию.

Смотрите также

  • Project:AMD64
    This page is based on a document formerly found on our main website gentoo.org.
    The following people contributed to the original document: Simon Stelling, Luis Medinas, Gerald J. Normandin Jr., Xavier Neys,
    They are listed here because wiki history does not allow for any external attribution. If you edit the wiki article, please do not add yourself here; your contributions are recorded on each article's associated history page.