看下erl_bif_info.c
BIF_RETTYPE system_info_1(BIF_ALIST_1)
{
...
} else if (BIF_ARG_1 == am_heap_type) {
#if defined(HYBRID)
return am_hybrid;
#else
return am_private;
#endif
...
}
也就是说目前只打算支持私有堆和混合堆。
# erl
Erlang (BEAM) emulator version 5.6.5 [source] [smp:2] [async-threads:0] [hipe] [kernel-poll:false]
Eshell V5.6.5 (abort with ^G)
1> erlang:system_info(heap_type).
private
私有堆模式。
# erl -hybrid
erlexec: Error 2 executing '/usr/local/lib/erlang/erts-5.6.5/bin/beam.hybrid'.
根本没有生成beam.hybrid 可执行文件
于是重新编译系统
./configure --enable-hybrid-heap && make && make install
还是没有hybrid。
找了半天发现
Makefile.in
[color=red]# Until hybrid is nofrag, don't build it.[/color]
#BUILD_HYBRID_EMU=@ERTS_BUILD_HYBRID_EMU@
BUILD_HYBRID_EMU=no
强行改成yes,编译出错.查看源代码发现hybird INCREMENTAL模式的代码根本没写完。
唉,他们吹出去了,东西还没做好!
目前还不能享受先进科技 大佬们加油呀!!!
BIF_RETTYPE system_info_1(BIF_ALIST_1)
{
...
} else if (BIF_ARG_1 == am_heap_type) {
#if defined(HYBRID)
return am_hybrid;
#else
return am_private;
#endif
...
}
也就是说目前只打算支持私有堆和混合堆。
# erl
Erlang (BEAM) emulator version 5.6.5 [source] [smp:2] [async-threads:0] [hipe] [kernel-poll:false]
Eshell V5.6.5 (abort with ^G)
1> erlang:system_info(heap_type).
private
私有堆模式。
# erl -hybrid
erlexec: Error 2 executing '/usr/local/lib/erlang/erts-5.6.5/bin/beam.hybrid'.
根本没有生成beam.hybrid 可执行文件
于是重新编译系统
./configure --enable-hybrid-heap && make && make install
还是没有hybrid。
找了半天发现
Makefile.in
[color=red]# Until hybrid is nofrag, don't build it.[/color]
#BUILD_HYBRID_EMU=@ERTS_BUILD_HYBRID_EMU@
BUILD_HYBRID_EMU=no
强行改成yes,编译出错.查看源代码发现hybird INCREMENTAL模式的代码根本没写完。
唉,他们吹出去了,东西还没做好!
目前还不能享受先进科技 大佬们加油呀!!!