Light-industry-up.ru

Экосистема промышленности

X32 ABI

22-10-2023

x32 ABI — находящийся в стадии разработки проект двоичного интерфейса приложений для Linux, который позволяет компилировать программы для x32 ABI и работать в 64-разрядном режиме x86-64 с использованием 32-битных указателей и полей данных[1][2][3]. Хотя это ограничивает виртуальное адресное пространство программы до объема 4 Гб, это также уменьшает объем памяти занимаемых программами, а в некоторых случаях может позволить им работать быстрее[1][2][3]. Лучшие результаты во время тестирования были получены в тесте 181.mcf SPEC CPU 2000, для которого результат x32 версии ABI оказался на 32 % быстрее, чем для x86-64 версии[3][4].

История

Несколько человек обсуждали преимущества x86-64 ABI с 32-битными указателями после выпуска Athlon 64 в 2003 году, в частности, Дональд Кнут в 2008 году[5]. Затем был мало заметный публично прогресс реализации такого режима до 27 августа 2011 года, когда H. Peter Anvin объявил в списке рассылки ядра Linux, что он и HJ Lu работали над x32-ABI[6].

В тот же день Линус Торвальдс выразил обеспокоенность тем, что использование 32-разрядного значения времени в x32 ABI может привести к проблемам в будущем[7][8]. Это потому, что использование 32-разрядного значения времени приведет к переполнению значения времени в 2038 году[7][8]. Разработчики x32 ABI планируют изменить значения времени на 64-битные[3][9].

x32 ABI вошел в релиз ядра Linux 3.4.[10]

Примечания

  1. ↑ Kernel Log: x32 ABI gets around 64-bit drawbacks, www.h-online.com (13 сентября 2011). Проверено 1 ноября 2011.
  2. ↑ x32 - a native 32-bit ABI for x86-64, linuxplumbersconf.org. Проверено 12 июня 2012.
  3. ↑ x32-abi, Google Sites. Проверено 1 ноября 2011.
  4. 181.mcf SPEC CPU2000 Benchmark Description File, Standard Performance Evaluation Corporation (14 октября 1999). Проверено 1 ноября 2011.
  5. Recent News: A Flame About 64-bit Pointers (February 2008). Архивировано из первоисточника 26 сентября 2012. Проверено 15 мая 2012.
  6. RFD: x32 ABI system call numbers (27 August 2012). Архивировано из первоисточника 26 сентября 2012. Проверено 15 мая 2012.
  7. ↑ The x32 system call ABI, LWN.net (29 августа 2011). Проверено 1 ноября 2011.
  8. ↑ Re: RFD: x32 ABI system call numbers, LWN.net (26 августа 2011). Проверено 1 ноября 2011.
  9. Re: RFD: x32 ABI system call numbers, LWN.net (29 августа 2011). Проверено 1 ноября 2011.
  10. Linux 3.4 - Linux Kernel Newbies

Ссылки

  • Сайт разработчиков x32 ABI

X32 ABI.

© 2014–2023 light-industry-up.ru, Россия, Краснодар, ул. Листопадная 53, +7 (861) 501-67-06