Android’s Binder

Binder is bound to the CPU, D-Bus (and hence kdbus), is bound to RAM.

  • Binder
    • 會 block
    • synchronous calling CPU
    • 會直接把 CPU 執行權轉交給 callee (類似 system call 那樣)
    • 過程中幾乎不會有 scheduling 發生
    • 設計和 D-Bus 比起來比較不彈性,use-cases 也較受限,但可以執行非常快,overhead 非常低,適合手機這種 device
  • D-Bus
    • 用 RAM 來 queue 住訊息 (會照順序)
    • asynchronous
    • 運作方式為 create-store-forward