首页 理论教育 如何进行配件连接与规范实现

如何进行配件连接与规范实现

时间:2023-06-28 理论教育 版权反馈
【摘要】:在模块命名范围内的函数与变量仅能供模块自己访问,其他组件不能直接访问。配件也包括规范和实现两个组成部分。有一类配件位于最上层,将其他组件连接成为一个完整的应用,称为顶层配件。顶层配件源文件的扩展名仍然是“.nc”。除了顶层配件外,TinyOS下的其他配件都是系统或其他组件能够使用的抽象。在这样的配件规范中要声明提供的接口、使用的接口。对于这些自己声明的接口,配件还需要通过输出接口方式来实现。

如何进行配件连接与规范实现

前一节介绍了模块实现。模块实现代码负责分配状态和定义可执行逻辑。在模块命名范围内的函数与变量仅能供模块自己访问,其他组件不能直接访问。如果模块A要调用模块B的函数,需要将模块B中的函数名字映射到模块A中。在nesC中,这种映射是通过配件连接(wiring)两个组件的接口来实现的。

基于连接,配件能够将现有组件组织成一个新的抽象,这是nesC区别于C的一个主要方面。尽管配件的语法非常简单(仅有几个操作符:->、<-和=),但是,对于熟悉了诸如C这样的全局范围编程模式的编程人员来说,这种编程模式是较为陌生的,应该作为重点来学习

配件也包括规范和实现两个组成部分。有一类配件位于最上层,将其他组件连接成为一个完整的应用,称为顶层配件。顶层配件在其规范中既不提供接口也不使用接口。每个应用都对应着一个顶层配件。在\opt\tinyos-2.x\apps\目录下的每一个应用中,都有一个顶层配件的源文件。对于顶层配件的命名,有一个非强制性约定:顶层配件名字的最后几个字母是AppC,表明这是一个完整应用的顶层配件。顶层配件源文件的扩展名仍然是“.nc”。(www.xing528.com)

除了顶层配件外,TinyOS下的其他配件都是系统或其他组件能够使用的抽象。在这样的配件规范中要声明提供的接口、使用的接口。对于这些自己声明的接口,配件还需要通过输出接口方式来实现。

配件的规范在上一节中已经详细描述,本节主要讨论配件的实现。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈