At 14.48 23/10/2004, you wrote:
What are the advantages in using zones when allocating memory in kernel mode?
I assume you use "zone" as the old word for "lookaside lists". Since there only are two possible kernel-mode pools vs infinite user-mode heaps, they are a way to have a sort of specialized "private heap" for frequent, small allocations (like IRPs and MDLs). They spare you frequent calls to the heavier (and globally locking - I don't know if reentrancy issues allow you to have a lock-free implementation) pool allocator
Are there other ways to pre-allocate an address range to be used for small memory objects management (NP pool)?
Aside from rolling your own, no. Lookaside lists would still have the advantage of being traced and profiled