// Box: Core Allocation // Purpose: SuperSlab allocation/deallocation(割り当ての出入口 Box) // // Responsibilities: // - Allocate SuperSlab with ACE-aware sizing // - Free SuperSlab with LRU cache integration // - Defer slab‑level details to Slab Management Box // // Dependencies: // - ss_os_acquire_box (OS-level mmap/munmap) // - ss_cache_box (LRU cache + prewarm) // - ss_stats_box (statistics) // - ss_ace_box (ACE-aware size selection) // - ss_slab_management_box (bitmap operations) // - hakmem_super_registry (registry integration) // // API: // - superslab_allocate() - main allocation entry // - superslab_free() - deallocation with LRU cache #ifndef SS_ALLOCATION_BOX_H #define SS_ALLOCATION_BOX_H #include "hakmem_tiny_superslab.h" #include // SuperSlab allocation (ACE-aware) SuperSlab* superslab_allocate(uint8_t size_class); // SuperSlab deallocation (LRU cache integration) void superslab_free(SuperSlab* ss); #endif // SS_ALLOCATION_BOX_H