`
cryolite
  • 浏览: 580388 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

节点与模块

阅读更多
一、节点的启动和连接

测试环境中,节点的启动,longname风格,cookie为abc
$ erl -name node1@10.0.0.11 -setcookie abc

$ erl -name node2@10.0.0.22 -setcookie abc


节点间的连接,
(node2@10.0.0.22)1> net_kernel:connect_node('node1@10.0.0.11').

或者
(node2@10.0.0.22)1> net_adm:ping('node1@10.0.0.11').



二、在所有连接的节点上装载指定的程序模块

要解决的问题是:在一台机器上编译的模块如何加载到其它机器的节点上。

通过c模块中的nl函数实现,如下
c:nl(Module) -> void()
Load module on all nodes.

使用nl可以将模块远程装载到其它的节点上,即使那些节点没有此模块的代码

io模块中也有一个nl函数,不过该函数表示写一个new line
io_lib模块中也有一个nl,含义同上

注意:c模块代表命令接口(Command Interface)的意思;该模块的文档称:该模块中的函数仅用于在Erlang shell中使用,使用时模块名前缀可以省去

查nl源码如下:
nl(Mod) ->
    case code:get_object_code(Mod) of
	{_Module, BeamBinary, Fname} ->
            rpc:eval_everywhere(code,load_binary,[Mod,Fname,BeamBinary]);
	Other ->
	    Other
    end.


rpc:eval_everywhere(code,load_binary,[Mod,Fname,BeamBinary])最终执行
eval_everywhere([node()|nodes()], Module, Function, Args)
也就是说在[node()|nodes()]的节点列表中的每个节点上执行code:load_binary(Mode, Fname, Bin)

code:get_object_code(Module) -> {Module, Binary, Filename} | error
此函数在code path中模块Module的二进制目标代码。Binary是包含此模块目标代码的二进制数据对象,如果要在分布式系统中远程装载代码,例如在远程节点Node中装载模块Module可以这样:
...       
{_Module, BeamBinary, Filename} = code:get_object_code(Module),
rpc:call(Node, code, load_binary, [Module, Filename, BeamBinary]),
...


其它
查看,编译好的beam目标文件的源代码
{ok,{_,[{abstract_code,{_,AC}}]}} = beam_lib:chunks(BeamBinary,[abstract_code]).
      io:fwrite("~s~n", [erl_prettypr:format(erl_syntax:form_list(AC))]).
分享到:
评论

相关推荐

    计算网络节点模块内连通度和模块间连通度

    在复杂网络分析中,节点的模块内连通度和模块间连通度是两个关键的量化指标,它们有助...在“计算网络节点模块内连通度和模块间连通度”这个主题中,深入探讨和应用这些理论将有助于我们更好地理解微生物网络的复杂性。

    易语言节点与XML转换模块

    在“易语言节点与XML转换模块”中,我们主要讨论的是如何在易语言环境中处理XML数据,并进行节点与XML之间的相互转换。 XML(Extensible Markup Language)是一种标记语言,广泛用于数据交换和存储,其结构清晰、...

    选煤厂无线点检系统节点模块节能的设计与实现

    选煤厂无线点检系统利用CC2430低...节点的能量主要消耗在通信模块、处理器模块及传感器模块,文章深入分析了节点的传感器模块及处理器模块能量消耗,采用主动式感应及动态能量管理策略,极大限度地减少了节点的能量消耗。

    参考资料-中建模块化节点工期计划表范本.zip

    在IT行业中,尤其是在项目管理领域,模块化节点工期计划表是一种高效的工作组织工具。这个"参考资料-中建模块化节点工期计划表范本.zip"压缩包文件提供了中国建筑(中建)公司使用的标准模板,旨在帮助项目经理和...

    18.温湿度传感器DHT11_CC2530DHT11_ZigBee_zigbeecc2530DHT11_DHT-11节点模块_d

    通过“ZigBeecc2530DHT11_DHT-11节点模块_ducka2k”标签,我们可以推测项目可能使用了特定的库或者开发者工具,如Ducka2k,来简化开发过程。这个库可能包含了与DHT11传感器交互和ZigBee通信的函数,帮助开发者快速...

    基于linux3.16内核模块,手动创建设备节点

    5. **驱动模块与设备节点的关联** 在驱动模块中,我们需要注册设备节点,通常使用`register_chrdev_region()`函数声明设备号范围,并用`cdev_init()`和`cdev_add()`将字符设备驱动与设备节点关联起来。 6. **...

    2_4GHz无线传感器网络节点通信模块的设计与实现

    2_4GHz无线传感器网络节点通信模块的设计与实现!

    易语言源码易语言节点与XML转换模块源码.rar

    易语言源码易语言节点与XML转换模块源码.rar 易语言源码易语言节点与XML转换模块源码.rar 易语言源码易语言节点与XML转换模块源码.rar 易语言源码易语言节点与XML转换模块源码.rar 易语言源码易语言节点与XML...

    航电1394总线节点设计实现

    1394总线作为新一代飞机航空电子系统的网络传输总线,其节点模块设计的重要性不言而喻,以1394总线协议为依据,结合总线系统的需求背景,设计了一种航电1394总线节点接口模块。该模块基于标准化、通用化的设计思想,...

    节点与XML易语言转换模块源码

    "节点与XML易语言转换模块源码"是一个易语言编程资源,它提供了将数据类型(如易语言中的类)与XML之间相互转换的功能。易语言是中国自主研发的一种面向对象的、可视化的程序设计语言,它的设计目标是让编程变得简单...

    电信设备-一种基于CPCI接口的SpaceWire总线节点通讯模块.zip

    **电信设备:基于CPCI接口的SpaceWire总线节点通讯模块** 在现代电信系统中,高效的数据传输和处理是至关重要的。本知识点将深入探讨一种采用CPCI(CompactPCI)接口的SpaceWire总线节点通信模块,它是电信设备中...

    电信设备-一种基于PCI接口的SpaceWire总线节点通讯模块.zip

    《基于PCI接口的SpaceWire总线节点通讯模块》 在现代电信设备中,高效的数据传输和处理能力至关重要。本文将深入探讨一种利用PCI(Peripheral Component Interconnect)接口实现的SpaceWire总线节点通信模块,该...

    易语言根据配置项目找节点模块

    本文将深入探讨“易语言根据配置项目找节点模块”这一主题,解析其核心概念、实现原理以及相关应用。 首先,我们要明白配置项目在软件开发中的角色。配置项目通常是指应用程序运行时需要的一些设定值,它们可以影响...

    易语言源码根据配置项目找节点模块源码.rar

    《易语言源码:解析配置项目与节点模块》 易语言是一种中文编程语言,它以其易学易用的特点,深受广大编程爱好者的喜爱。在易语言的开发过程中,理解和掌握如何根据配置项目寻找节点模块的源码是至关重要的。这份...

    cpp-nginx一致性哈希模块支持虚节点可动态剔除不健康节点

    本文将详细探讨"cpp-nginx一致性哈希模块支持虚节点可动态剔除不健康节点"这一主题。 一致性哈希是为了解决分布式缓存、负载均衡等问题而设计的,它的核心思想是在一个哈希空间中均匀分布键(keys),使得当节点...

    基于CC2531+CC2591的WSN节点通信模块设计

    至于无线通信模块的设计原理,需要考虑到CC2531和CC2591之间RF信号的连接,如何通过匹配链路保证信号的稳定传输,以及天线与RF信号之间的匹配。此外,还需要考虑电源模块的退耦滤波设计,以确保整个系统的稳定运作。...

    一种无线传感器节点中无线通信模块的设计

    3. **系统集成**:将设计好的无线通信模块与其他传感器节点组件(如处理器、电源管理单元等)进行有效的集成,以形成完整的传感器节点系统。 综上所述,通过对无线传感器节点的设计要求的分析,结合具体的nRF401...

    易语言源码节点与XML转换模块源码.rar

    本模块“易语言源码节点与XML转换”是针对易语言的一种扩展,它涉及到数据结构的表示以及数据交换格式XML的处理。 XML(可扩展标记语言)是一种广泛应用的数据交换格式,常用于不同系统间的数据传输和存储。它以树...

    节点配置模块源码-易语言

    节点配置模块 之 类_节点子程序 前两天,有位朋友说:"如何用文本来匹配子程序指针,其实用 节点 类型是完全可以做到的. 而且, 节点 取值也是非常快的. 比找自定义数据 类型中的文本,快不知多少. 配置子程序指针有什么...

    IEEE三机九节点simulink模型.zip_IEEE3机9节点simulink模型_IEEE节点+simulink_IEEE

    总结来说,IEEE三机九节点Simulink模型是电力系统分析的重要工具,它将复杂的电力系统理论与直观的可视化仿真相结合,帮助我们理解和预测电力系统的动态行为。通过深入研究和应用这个模型,不仅可以掌握电力系统的...

Global site tag (gtag.js) - Google Analytics