cintiki

来源:互联网 发布:java培训机构排名知乎 编辑:程序博客网 时间:2024/04/29 22:14
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中的源代码与硬件平台相关以外,其他目录中的源代码都尽可能与硬件无关。编译时,根据指定的平台来链接对应的代码。
0 0