`
mryufeng
  • 浏览: 969855 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

erlang的beam模拟器

阅读更多
beam 模拟器有3种
1.  beam                         默认的
2.  beam.smp               支持多处理器的
3.  beam.hybrid            支持混合堆的


我们允许erl的时候 在linux下实际运行的是shell脚本

#!/bin/sh
ROOTDIR=/usr/local/lib/erlang
BINDIR=$ROOTDIR/erts-5.5.5/bin
EMU=beam
PROGNAME=`echo $0 | sed 's/.*\///'`
export EMU
export ROOTDIR
export BINDIR
export PROGNAME
exec $BINDIR/erlexec ${1+"$@"}

这个脚本给erlexec 设置写必须的环境变量 具体调用那个模拟器是在erlexec里面根据 参数区分 -smp -hybrid来分别调用不同
的beam


Note:  beam.smp主线程的的poll 是select 而不是我们想要的epoll, 是因为主线程的select实际上只是等待中断 没有其他的事情可做。
分享到:
评论
2 楼 mryufeng 2007-08-02  
Linux test98 2.6.22.1 #2 SMP Wed Jul 25 12:03:23 CST 2007 i686 i686 i386 GNU/Linux

otp_src_R11B-5

你用strace看下清清楚楚。
1 楼 cryolite 2007-08-02  
<br/>
你用的是哪个版本,os呢<br/>
<br/>
<strong>mryufeng 写道:</strong><br/>
<div class='quote_div'> <br/>
Note: 默认的erlang configure make出来的beam有问题 比如beam.smp的poll 是select 而不是我们想要的epoll.<br/>
<br/>
只能自己make的微调参数来解决。<br/>
</div>
<br/>
<br/>

相关推荐

Global site tag (gtag.js) - Google Analytics