Почти:
Технически драйверы устройств реализуют или предоставляют ожидаемые функции для интерфейса (который является просто API, см. Ниже или спецификацию функции), причем интерфейсом являются функции ввода-вывода и управления питанием. Драйверы устройств являются «слоем».
Двоичный интерфейс приложения, или ABI, относится к тому, как функции и системные вызовы работают на уровне ассемблера. ABI отвечает на вопрос: я - функция, как мне получить мои параметры (сформировать стек? из регистров? и т. д.) Два двоичных файла, которые подчиняются одному и тому же стандарту ABI, могут использовать или вызывать функции друг друга.
Интерфейс прикладного программирования, скорее всего, то, что вы имеете в виду. API - это четко определенные функции, включая имя функции, обязательные параметры и подробное описание того, что делает функция, что позволяет программистам пользоваться услугами, предлагаемыми другим двоичным файлом. ABI просто занимается "связью", а не определением того, что конкретно пытается достичь.