BT Sözlüğü › Programlama › Donanım soyutlama katmanı (HAL)

Donanım soyutlama katmanı (HAL)

Programlama Svenska → Güncellendi: 2026-11-02

Yazmaç adreslerini ve çipler arasındaki farkları uart_write() gibi fonksiyonların arkasına saklayan ince bir yazılım katmanı.

HAL yoksa uygulama çevre birimi yazmaçlarını doğrudan kurcalar ve mikrodenetleyiciyi her değiştirişinizde baştan yazılması gerekir. HAL varsa uygulama bir arayüzü çağırır, yalnızca alttaki katman değişir. Windows NT 1993'te bu şekilde kuruldu: hal.dll çekirdeği anakart ayrıntılarından ayırdı ve aynı sistem x86, MIPS ve Alpha üzerinde çalışabildi. Android'de de kameralar ve sensörler için HAL modülleri vardır.

Gömülü dünyada bu ya üreticinin kütüphanesidir (ST'nin STM32Cube HAL'i gibi) ya da topluluğunun (Rust'ın embedded-hal'i gibi); orada bir sensör sürücüsü belirli bir çipe değil, trait'lere göre yazılır. Süregelen şikâyet, genelliğin bedelinin olmasıdır: bir pini çeviren HAL çağrısı elli çevrim sürerken bir yazmaç yazımı bir çevrimde biter. Bu yüzden birçok projede, önemli olduğu tek kesme dışında her yerde HAL kullanılır.

← Sözlüğe dön