Каково текущее состояние реализации x32 ABI в Ubuntu по состоянию на 14.04?

Примечания к выпуску 14.04 содержат следующее предложение:

Поддержка XI ABI (64-битный режим с 32-битными указателями) также была введена.

Я думаю, это заслуживает немного большего объяснения. Когда вы используете поисковую систему, чтобы узнать больше о «x32 ABI», вы можете найти в лучшем случае статью в Википедии , но в основном это Phoronix и Slashdot, которые не кажутся очень полезными.

Я хотел бы увидеть некоторые проницательные ответы на:

  • Как или что из x32 ABI в настоящее время реализовано в 14.04?
    • Включено ли оно по умолчанию в 14.04 в 64-разрядной версии или для настройки x32 ABI требуются дополнительные действия?
    • Какие компоненты или какое программное обеспечение могут использовать x32 ABI?
  • Существуют ли реальные преимущества для машины / установки, использующей x32 ABI?
    • Каково потребление памяти по сравнению с 32-битными и 64-битными установками по умолчанию?

В идеале ABI x32 должен был принести лучшее из обоих миров вместе: большинство улучшений скорости x86-64 и более низкое потребление памяти для пользователей на старом 64-битном оборудовании, не имеющем много оперативной памяти .

11
задан 13 April 2017 в 15:24

1 ответ

На установке на 64 бита Вы будете, испытывая большие различия в использовании памяти (специально для приложения как хром, Firefox, mysql и приложений Java).

Это - известного побочного эффекта OSs на 64 бита так или иначе, 64 бита приносят также некоторое другое преимущество.

Здесь это прибывает x32 ABI: функция ядра, которая предназначена точно для ограничения этой проблемы.

, Что является x32 ABI:
согласно этот pdf это обеспечивает преимущество отличной памяти по сравнению с нормальной ОС на 64 бита (даже 40%-е улучшение).

Теперь, если я 've понял , x32-ABI требует :

  • Ядро Linux 3,4 скомпилированных с CONFIG_X86_X32=y
  • Gcc 4.7
  • Binutils 2.22
  • Glibc 2.16
  • , Перекомпилировавшим все системные библиотеки, требуемые приложением, с gcc-mx32

, Как попробовать его
, Новое ядро имеет необходимый флаг по умолчанию, таким образом, Вам нужно [только 119] упакованный, скомпилированный правильным способом (здесь, хинду наверняка управляет;)
На Ubuntu я не уверен там никакой repository/ppa для этого, так или иначе у Debian и Arch есть некоторое решение:

инструкция Debian

Arch

0
ответ дан 13 April 2017 в 15:24