Linux відмовиться від застарілого та непопулярного інтерфейсу x32 ABI

Розробники операційної системи Linux планують вилучити з ядра інтерфейс x32 ABI, інтегрований ще у 2012 році. Себастьян Анджей Сивіор із компанії Linutronix запропонував повністю відмовитися від цієї технології через її застарілість та низьку популярність. Якщо спільнота не висловить суттєвих заперечень, інтерфейс остаточно видалять із ядра ОС до 2027 року.

Інтерфейс x32 ABI створювали для оптимізації споживання оперативної пам’яті 64-бітними програмами. Він дозволяв процесорам працювати в гібридному режимі: використовувати переваги 64-бітної архітектури, але обмежуватися 32-бітними вказівниками. Завдяки зменшенню розміру вказівників удвічі (з 8 до 4 байтів), дані краще вміщувалися у кеш-пам’ять процесора, що теоретично підвищувало продуктивність системи.

Попри технічні переваги, x32 ABI мав серйозні недоліки. Головним обмеженням став ліміт оперативної пам’яті: процеси, що взаємодіють з інтерфейсом, не можуть використовувати понад 4 ГБ ОЗП. Окрім цього, технологія суттєво ускладнювала роботу розробників і вимагала додаткової підтримки від компіляторів. Оскільки x32 ABI впровадили лише в Linux, а Windows та macOS його проігнорували, незначний приріст продуктивності не виправдав складнощів із його підтримкою.