buddy_system_allocator

buddy_system_allocator 是實作基本夥伴系統分配器的第三方 Crate。這可供 LockedHeap 實作 GlobalAlloc,以便使用標準 alloc Crate,如先前所見,或用來分配其他位址空間。例如,我們可能會想針對 PCI BAR 分配 MMIO 空間:

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Speaker Notes

  • PCI BAR 的對齊情形一律會等於其大小。
  • 使用 src/bare-metal/useful-crates/allocator-example/ 下的 cargo run 執行範例 (在 Playground 中,範例會因為 Crate 依附元件而無法執行)。