Jeff's allocator revolves around object caching.
Jeff的分配器是围绕对象缓存进行的。
The allocator can't coalesce free space into larger blocks.
分配程序不能将空闲空间拼合为更大的内存块。
Linux provides abstractions over 4kb buffers, such as the slab allocator.
Linux提供了对4K b缓冲区的抽象,例如slab分配器。
Individual inode cache objects are allocated from the inode_cache slab allocator.
从inode_cacheslab分配器分配单个inode缓存对象。
Initializing the slab allocator and creating slab caches for VFS, buffer cache, etc.
初始化slab分配器并为VFS、缓冲区高速缓存等创建slab高速缓存。
At present, the maximum pool size per process for this allocator is limited to 512mb.
目前,对于这个分配器,每个进程的最大池大小限制为512MB。
A final optimization-again, contiguous block related-is the block allocator for ext4.
这是最后一个与相邻块相关的优化,即针对ext4的块分配器。
However, doing so can impose significant costs; in fact the cost would be unacceptable in this allocator.
尽管如此,这么做可能导致巨大的开销;事实上在该分配器中这个开销是无法接受的。
As you can see, in this allocator, freeing memory is done in constant time, using a very simple mechanism.
如您所见,在这个分配程序中,内存的释放使用了一个非常简单的机制,在固定时间内完成内存释放。
Ext4 fixes this with a block allocator that allocates multiple blocks at a time, likely contiguous on disk.
ext4使用块分配器修复了这个问题,它能够在磁盘上一次分配多个块。
Since it operates on the system break (a global variable), it cannot coexist with any other allocator or with mmap.
由于它对系统中断点(一个全局变量)进行操作,所以它不能与其他分配程序或者mmap一起使用。
It frees every memory block you created earlier and invalidates all the Pointers returned from the allocator routines.
该方法释放您先前创建的内存块,并使得从分配程序例程返回的所有指针失效。
However, over the years, the allocator has evolved to make trade-offs that the majority of users find to be acceptable.
尽管如此,这些年来,这个分配器已经进化到做了一些大部分用户都可以接受的取舍。
The allocator has never been given a specific name. Most people just call it Doug Lea\'s Malloc, or dlmalloc for short.
许多人将它称为Doug Lea的Malloc,或者简称为dlmalloc.
The Linux slab allocator uses these ideas and others to build a memory allocator that is efficient in both space and time.
Linuxslab分配器使用了这种思想和其他一些思想来构建一个在空间和时间上都具有高效性的内存分配器。
The slab allocator used in Linux is based on an algorithm first introduced by Jeff Bonwick for the SunOS operating system.
Linux所使用的slab分配器的基础是Jeff Bonwick为SunOS操作系统首次引入的一种算法。
Within in_pcballoc, the kernel's memory allocator function is called, which allocates memory to the Internet control block.
在 in_pcballoc 中,调用了内核的内存分配器函数,该函数将内存分配给Internet控制块。
If locality were the only goal, an allocator might always allocate each successive chunk as close to the previous one as possible.
如果局部化是唯一的目标,分配器可能总是尽可能接近的分配每个连续的块。
As they discuss, minimizing space by minimizing wastage (generally due to fragmentation) must be the primary goal in any allocator.
和他们讨论的一样,通过最小化浪费(通常由分段导致)而最小化空间对于任何分配器来说都必须是一个主要目标。
It does not seem possible for a general-purpose allocator to also serve as general-purpose memory error testing tool such as Purify.
把一个一般用途分配器也当作一般用途内存错误检测工具(像是Purify)使用看上去是不可能的。
Mempool_alloc is for allocating objects; if the mempool allocator fails to provide memory, then the pre-allocation pool will be used.
mempool_alloc用来分配对象;如果内存池分配器无法提供内存,那么就可以用预分配的池。
Once the input factory is set up with a custom event allocator, every event reader created from it will use it to create event objects.
当输入工厂通过定制事件分配器建好之后,从其中创建的每一个事件读取器都将使用它来创建事件对象。
Once the input factory is set up with a custom event allocator, every event reader created from it will use it to create event objects.
当输入工厂通过定制事件分配器建好之后,从其中创建的每一个事件读取器都将使用它来创建事件对象。
应用推荐