此文章仅代表个人的见解,有不对之处,希望朋友予以纠正。
[erlang alloc]
Erlang Vm底层申请内存有两种方式。
1: malloc调用。通过操作系统的malloc调用,主要用于堆栈的内存申请。
2: mseg调用。用于向操作系统申请缓冲块,以页为单位。不会出现半页的情况。刚好与操作系统的缓冲块相吻合。
erlts_alloc is an Erlang Run-Time System internal memory allocator library. erlts_alloc provides the Erlang Run-time system with a number of memory allocators.
erlts_alloc 提供了一系列的内存分配器。这些内存分配器将会调用上面申请操作系统内存的两种方式。malloc和mseg。
如下:
Allocators:
temp_alloc:
Allocator used for temporary allocations.
通常用于临时内存分配
eheap_alloc: