應用程式二進制接口(application binary interface,ABI)
ABI掩蓋了各種細節,例如:調用約定(控制著函式的參數如何傳送以及如何接受返回值);系統調用的編碼和一個套用如何向作業系統進行系統調用;以及在一個完整的作業系統ABI中,對象檔案的二進制格式、程式庫等等。一個完整的ABI,像Intel二進制兼容標準 (iBCS) ,允許支持它的作業系統上的程式不經修改在其他支持此ABI的操作體統上運行。其他的 ABI 標準化細節包括 C++ name decoration 和同一個平台上的編譯器之間的調用約定,但是不包括跨平台的兼容性。
在Unix風格的作業系統
存在很多運行在同一硬體平台上互相相關但是不兼容的作業系統(尤其是Intel 80386兼容系統)。有一些努力嘗試標準化ABI,以減少銷售商將程式移植到其他系統時所需的工作。然而,直到現在還沒有很成功的例子,雖然Linux標準化工作組正在為Linux做這方面的努力。