On 30 Oct 2012, at 3:04 PM, Gavin Lambert wrote: > Quoth Larry Baker: >> I've tried those solutions too -- no good. I decided that was >> because those are kernel memory allocation policies, and have no >> effect on user memory allocation. Is that correct? > > Not entirely. User-mode malloc typically requests a chunk of memory from > the kernel (which is subject to kernel allocation policies) and then > subdivides this internally for further requests (from the same process > only).
I thought I've read somewhere though that SLUB/SLAB/SLOB (the different kernel allocation policies) come into play only when the allocations are small enough (your reference to "subdivides"?) to be made from the minimum chunk actually allocated from RAM allocator. And, that it is the power-of-2 RAM allocator that is causing the problems for memory constrained systems. It is also my impression that SLUB/SLAB/SLOB have no effect on the power-of-2 RAM allocator, or whatever might be used in place of it, e.g., the non-power-of-2 allocator, page_alloc2. > This does mean that with each new process started a bit of memory > becomes unavailable to other processes until they exit; depending on the > pattern of new processes starting and how much memory they're allocating > this can lead to fragmentation. > > The precise details vary a bit depending on which libc you're using and how > you have it configured. > > > _______________________________________________ > uClinux-dev mailing list > uClinux-dev@uclinux.org > http://mailman.uclinux.org/mailman/listinfo/uclinux-dev > This message was resent by uclinux-dev@uclinux.org > To unsubscribe see: > http://mailman.uclinux.org/mailman/options/uclinux-dev Larry Baker US Geological Survey 650-329-5608 ba...@usgs.gov _______________________________________________ uClinux-dev mailing list uClinux-dev@uclinux.org http://mailman.uclinux.org/mailman/listinfo/uclinux-dev This message was resent by uclinux-dev@uclinux.org To unsubscribe see: http://mailman.uclinux.org/mailman/options/uclinux-dev