西南IT社区
    • 注册
    • 登录
    • 搜索
    • 主页
    • 问答
    • 话题
    • 热门
    • 圈子
    • 工作机会
    • 活动
    • 项目

    无限传感器网络操作系统TinyOS

    技术答疑
    tinyos 无限传感器网络操作系统
    1
    1
    11
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • B
      banyuankang9 最后由 编辑

        TinyOS 是一款自由和开源的基于元件(component-based)的操作系统和平台,它主要针对无线传感器网络(WSN, wireless sensor network)。TinyOS 是用 nesC 程序编写的嵌入式操作系统,其作为一系列合作项目的结果。 它的首先出现是做为 UC Berkeley 和 Intel Research 合作实验室的杰作,用来嵌入智能微塵当中,之后慢慢演变成一个国际合作项目,即 TinyOS 联盟。
      TinyOS 应用程序是用 nesC 编写,它是 C programming language 的一个分支对于感知网络的内存限制问题作了优化。它的补充工具主要来自于 Java 形式和 shell script 的 front-ends。其他的相关的库和工具,例如 NesC 编译器和 Atmel AVRbinutils toolchains,大部分用 C 编写。

        TinyOS 程序由基于组件的软件工程 software component 建构,它们中一些表现了硬件的抽象概念, 组件用接口互相连接。TinyOS 为普通的抽象描述(abstractions)提供了接口和组件,例如数据包通信(packet communication),路由,感知(sensing),行为(actuation)和储存。

        TinyOS 完全的 non-blocking:它配备了一个单独的堆栈。因此所有的持续超过几百微秒 I/O 操作都以异步进行并且带有回叫功能(callback)。为了使本地的编译器更加出色地优化交叉呼叫边界(optimize across call boundaries),TinyOS 用 nesC 的特性去连接这些回叫,叫作事件(events)。non-blocking 系统可以让 TinyOS 在单一存储器下保持高度的协同性(concurrency)。它强迫程序用 stitching together many small event handlers 的方法编写复合逻辑。为了支持更高的计算量,TinyOS 提供了任务(tasks),其比 Deferred Procedure Call and interrupt handler bottom halves 小。

        一个 TinyOS 组建可以发布一个任务,操作系统可以把它排入列表以待之后执行。任务是没有优先权的并且按照 FIFO 运行。 这个简单的协同模型是典型的满足了以 I/O 为中心的应用,但这样的模型对于 CPU 负荷重的应用程序来说不是太好的,因为它会导致向 OS 多次提出线程间协同处理的请求(but its difficulty with CPU-heavy applications has led to several proposals for incorporating threads into the OS.)。

        TinyOS 代码与程序代码进行静态连接,然后用 GNU toolchain。编译到一个小的二进制系统中。 它的联盟为 TinyOS 的应用,提供完整的开发平台。
      e5363f09-a709-4e6a-8612-02e0439bc9f2-image.png

      1 条回复 最后回复 回复 引用 0
      • First post
        Last post
      使用HTML构建办公软件 使用HTML构建办公软件 使用HTML构建办公软件
      B
      F
      漫
      成
      Y
      洋
      书
      Y
      D
      U
      Y
      娇
      玩
      1
      光
      A
      庆
      小
      U
      Y
      L
      I
      Z
      I
      Y

      西南地区IT社群(QQ)
      云南
      【昆明网页设计交流吧】243627302
      【昆明nodejs交流吧】 243626749
      【VUE】838405306
      【云南程序员总群】343606807
      【昆明UI设计】104031254
      【云南软件外包】15547313
      贵州
      【PHP/java源码/站长交流群】55692114
      四川
      【成都Java/JavaWeb交流】86669225
      【vaScript+PHP+MySql】116270060
      【UI设计/设计交流学习群】135794928
      重庆
      【诺基亚 JAVA游戏博物馆】 559479780
      【PHP,Java,Python,C++接单】 442103442
      西藏
      社群
      昆明网页设计交流吧
      友情链接
      • Funtask
      • Funtask 社区
      • SUWIS
      ©2019-2021 滇ICP备20006698号