nesC语言基础
发布时间:2012/4/2 14:21:42 访问次数:2224
nesC是对C的扩展,它基于体现TinyOS的结构化CP5549BMT概念和执行模型而设计。TinyOS是为传感器网络节点而设计的一个事件驱动的操作系统,传感器网络节点拥有非常有限的资源(例如,8kB的程序储存器,512B的随机存取储存器),nesC在设计时强调组件化的编程思想,提高开发的方便性和代码的有效性,其基本特性如下。
①结构和内容的分离。程序由组件( component)构成,它们装配在一起(“连接(wiring)”)构成完整程序。
②根据接口(interface)的设置说明组件功能。接口可以由组件提供或使用。接口有双向性。接口实际上是提供者组件( provider)和使用者组件(user)之间的一个多功能交互通道。
③组件通过接口彼此静态地相连。这增加运行时效率,使设计更健壮,而且允许更好的程序静态分析。
一个nesC程序的基本组成是组件,一介组件是一个木.nc文件。每个组件可以完成一定的工作,一个应用程序(app) -般有一个称为Main的组件作为程序的执行体(类似于C的main函数),Main调用其他的组件以实现程序的功能。Main调用其他组件,以及一个组件调用其他的组件(这种方式是通过“接口”(interface)的实现)。接口可以看作是组件实现的一组函数声明,接口既可以包括命令( command),也可以包括事件(event)。在nesC中有两种类型的组件,分别称为模块( module)和配置(configuration)。不同组件接口之间的关系是通过配置来描述的,而组件提供的接口中的函数功能在模块中描述其实现过程。理解接口、组件、模块、配置的含义和相互之间的关系是掌握nesC语言的关键,下面分别对其进行阐述。
①结构和内容的分离。程序由组件( component)构成,它们装配在一起(“连接(wiring)”)构成完整程序。
②根据接口(interface)的设置说明组件功能。接口可以由组件提供或使用。接口有双向性。接口实际上是提供者组件( provider)和使用者组件(user)之间的一个多功能交互通道。
③组件通过接口彼此静态地相连。这增加运行时效率,使设计更健壮,而且允许更好的程序静态分析。
一个nesC程序的基本组成是组件,一介组件是一个木.nc文件。每个组件可以完成一定的工作,一个应用程序(app) -般有一个称为Main的组件作为程序的执行体(类似于C的main函数),Main调用其他的组件以实现程序的功能。Main调用其他组件,以及一个组件调用其他的组件(这种方式是通过“接口”(interface)的实现)。接口可以看作是组件实现的一组函数声明,接口既可以包括命令( command),也可以包括事件(event)。在nesC中有两种类型的组件,分别称为模块( module)和配置(configuration)。不同组件接口之间的关系是通过配置来描述的,而组件提供的接口中的函数功能在模块中描述其实现过程。理解接口、组件、模块、配置的含义和相互之间的关系是掌握nesC语言的关键,下面分别对其进行阐述。
nesC是对C的扩展,它基于体现TinyOS的结构化CP5549BMT概念和执行模型而设计。TinyOS是为传感器网络节点而设计的一个事件驱动的操作系统,传感器网络节点拥有非常有限的资源(例如,8kB的程序储存器,512B的随机存取储存器),nesC在设计时强调组件化的编程思想,提高开发的方便性和代码的有效性,其基本特性如下。
①结构和内容的分离。程序由组件( component)构成,它们装配在一起(“连接(wiring)”)构成完整程序。
②根据接口(interface)的设置说明组件功能。接口可以由组件提供或使用。接口有双向性。接口实际上是提供者组件( provider)和使用者组件(user)之间的一个多功能交互通道。
③组件通过接口彼此静态地相连。这增加运行时效率,使设计更健壮,而且允许更好的程序静态分析。
一个nesC程序的基本组成是组件,一介组件是一个木.nc文件。每个组件可以完成一定的工作,一个应用程序(app) -般有一个称为Main的组件作为程序的执行体(类似于C的main函数),Main调用其他的组件以实现程序的功能。Main调用其他组件,以及一个组件调用其他的组件(这种方式是通过“接口”(interface)的实现)。接口可以看作是组件实现的一组函数声明,接口既可以包括命令( command),也可以包括事件(event)。在nesC中有两种类型的组件,分别称为模块( module)和配置(configuration)。不同组件接口之间的关系是通过配置来描述的,而组件提供的接口中的函数功能在模块中描述其实现过程。理解接口、组件、模块、配置的含义和相互之间的关系是掌握nesC语言的关键,下面分别对其进行阐述。
①结构和内容的分离。程序由组件( component)构成,它们装配在一起(“连接(wiring)”)构成完整程序。
②根据接口(interface)的设置说明组件功能。接口可以由组件提供或使用。接口有双向性。接口实际上是提供者组件( provider)和使用者组件(user)之间的一个多功能交互通道。
③组件通过接口彼此静态地相连。这增加运行时效率,使设计更健壮,而且允许更好的程序静态分析。
一个nesC程序的基本组成是组件,一介组件是一个木.nc文件。每个组件可以完成一定的工作,一个应用程序(app) -般有一个称为Main的组件作为程序的执行体(类似于C的main函数),Main调用其他的组件以实现程序的功能。Main调用其他组件,以及一个组件调用其他的组件(这种方式是通过“接口”(interface)的实现)。接口可以看作是组件实现的一组函数声明,接口既可以包括命令( command),也可以包括事件(event)。在nesC中有两种类型的组件,分别称为模块( module)和配置(configuration)。不同组件接口之间的关系是通过配置来描述的,而组件提供的接口中的函数功能在模块中描述其实现过程。理解接口、组件、模块、配置的含义和相互之间的关系是掌握nesC语言的关键,下面分别对其进行阐述。
上一篇:TinyOS操作系统
上一篇:接口(Interface)