Chinaunix首页 | 论坛 | 博客
  • 博客访问: 31204
  • 博文数量: 7
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 50
  • 用 户 组: 普通用户
  • 注册时间: 2015-10-30 15:43
个人简介

NO NO NO

文章分类

全部博文(7)

文章存档

2015年(7)

我的朋友

分类: 嵌入式

2015-11-06 12:24:29

Contiki是一个高度可移植的操作系统,它的设计就是为了获得良好的可移植性,因此源代码的组织很有特点。本文为大家简单介绍Contiki的源代码组织结构以及各部分代码的作用。
        打开Contiki源文件目录,可以看到主要有apps、core、cpu、doc、examples、platform、tools等目录。下面将分别对各个目录进行介绍。
        core
core目录下是Contiki的核心源代码,包括网络(net)、文件系统(cfs)、外部设备(dev)、链接库(lib)等等,并且包含了时钟、I/O、ELF装载器、网络驱动等的抽象。
        cpu
   cpu目录下是Contiki目前支持的微处理器,例如arm、avr、msp430等等。如果需要支持新的微处理器,可以在这里添加相应的源代码。
        platform
platform目录下是Contiki支持的硬件平台,例如mx231cc、micaz、sky、win32等等。Contiki的平台移植主要在这个目录下完成。这一部分的代码与相应的硬件平台相关。
        apps
apps目录下是一些应用程序,例如ftp、shell、webserver等等,在项目程序开发过程中可以直接使用。使用这些应用程序的方式为,在项目的Makefile中,定义APPS = [应用程序名称]。在以后的示例中会具体看到如何使用apps。
        examples
examples目录下是针对不同平台的示例程序。
        doc
doc目录是Contiki帮助文档目录,对Contiki应用程序开发很有参考价值。使用前需要先用Doxygen进行编译。
        tools
tools目录下是开发过程中常用的一些工具,例如CFS相关的makefsdata、网络相关的tunslip、模拟器cooja和mspsim等等。
        为了获得良好的可移植性,除了cpu和platform中的源代码与硬件平台相关以外,其他目录中的源代码都尽可能与硬件无关。编译时,根据指定的平台来链接对应的代码。
转载地址:http://www.iotdev.net/thread-87-1-1.html

阅读(1653) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~