ABI significa interface binária de aplicativos ou application binary interface.
Application Binary Interface (ABI) é uma interface entre dois módulos de programa binários, um desses módulos é uma biblioteca ou sistema operacional(Windows, Linux, Android…) e o outro é um programa que está sendo executado por um usuário.
Uma ABI define como as estruturas de dados ou rotinas computacionais são acessadas em código de máquina e trabalha em um nível baixo, dependente do hardware(peças físicas do computador). É diferente de uma API que é independente de hardware e trabalha em um nível alto. Um formato geralmente legível por humanos.
Um aspecto comum é que o ABI determina como os dados são fornecidos como entrada ou lidos como saída de rotinas computacionais.
Quem deve se preocupar com ABI?
Aderir a uma ABI (que pode ou não ser oficialmente padronizada) geralmente é o trabalho de um compilador, do sistema operacional ou autor de biblioteca.