[Erlang]虚拟机学习杂记

时间:2022-08-09 16:13:29
原创文章,转载请注明出处:服务器非业余研究http://blog.csdn.net/erlib 作者Sunface
联系邮箱:cto@188.com

1.获取已加载模块中的所有原子
33> beam_lib:chunks(fac, [atoms]).{ok,{fac,[{atoms,[{1,fac},
{2,state},
{3,erlang},
{4,'-'},
{5,'*'},
{6,module_info},
{7,get_module_info}]}]}}

2.虚拟机内部的原子索引表(index table)
hash_table用来保存唯一的条目入口
array用来保存顺序
只能插入
索引表保存的是原子、已加载模块、模块导出函数
[Erlang]虚拟机学习杂记

3.对于一个新启动的erlang/otp,原子索引表中有6842个原子

4.模拟实现Atom table,Export table,Code table
git clone https://github.com/studzien/hack-erlang-vm.git -b v2