- 1、本文档共23页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
nesC中文手册
nesC 1.1 语言参考手册
David Gay, Philip Levis, David Culler, Eric Brewer
2003 .5
1 简介
nesC 是对 C 的扩展 [2] ,它基于体现 TinyOS 的结构化概念和执行模型而设
计 [1] 。 TinyOS 是为传感器网络节点而设计的一个事件驱动的操作系统,传
感器网络节点拥有非常有限的资源 ( 举例来说., 8K 字节的程序储存器,512 个
字节的随机存取储存器) 。TinyOS 用 nesC 重新编写。本手册描述 nesC 的 1.1
版本, 在第 3 段中概述了它与1.0 版的不同。
nesC 基本概念如下:
结构和内容的分离: 程序有组件构成, 它们装
配在一起 ( 配线 ) 构成完整程序. 组件定义
两类域, 一类用于它们的描述 ( 包含它们的接口
请求名称) ,另一类用于它们的补充。组件内部
存在作业形式的协作。控制线程可以通过它的接
口进入一个组件。这些线程产生于一件作业或硬
件中断。
根据接口的设置说明组件功能。 接口可以由
组件提供或使用。被提供的接口表现它为使用者
提供的功能,被使用的接口表现使用者完成它的
作业所需要的功能。
接口有双向性: 它们叙述一组接口供给者 (指
令)提供的函数和一组被接口的使用者(事件)实现
的函数。这允许一个单一的接口能够表现组件之
间复杂的交互作用 (举例来说.,当某一事件在一
个回调之前发生时,对一些事件的兴趣登记) 。这
是危险的,因为 TinyOS 中所有的长指令 (举例
来说. 发送包)是非中断的; 他们的完成由一个事
件( 发送完成)标志。 通过叙述接口,一个组件
不能调用发送指令除非它提供 sendDone 事件的
实现。通常指令向下调用,比如, 从应用组件到
那些比较靠近硬件的调用,而事件则向上调用。特
定的原始事件与硬件中断是关联的 (这种关联是
由系统决定的,因此在本参考手册中不作进一步
描述) 。
组件通过接口彼此静态地相连。这增加运行
时效率,支持 rubust 设计, 而且允许更好的程序
文档评论(0)