diff options
Diffstat (limited to 'microkernel/mach/gnumach/memory_management.mdwn')
-rw-r--r-- | microkernel/mach/gnumach/memory_management.mdwn | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/microkernel/mach/gnumach/memory_management.mdwn b/microkernel/mach/gnumach/memory_management.mdwn index 4e237269..477f0a18 100644 --- a/microkernel/mach/gnumach/memory_management.mdwn +++ b/microkernel/mach/gnumach/memory_management.mdwn @@ -188,3 +188,18 @@ License|/fdl]]."]]"""]] patch <braunr> (more kernel memory, thus more physical memory - up to 1.8 GiB - but then, less user memory) + + +# IRC, freenode, #hurd, 2013-06-06 + + <nlightnfotis> braunr: quick question, what memory allocation algorithms + does the Mach use? I know it uses slab allocation, so I can guess buddy + allocators too? + <braunr> no + <braunr> slab allocator for kernel memory (allocation of buffers used by + the kernel itself) + <braunr> a simple freelist for physical pages + <braunr> and a custom allocator based on a red-black tree, a linked list + and a hint for virtual memory + <braunr> (which is practically the same in all BSD variants) + <braunr> and linux does something very close too |