zephyr 是 Linux 基金会推出的面向物联网的 RTOS,与 Linux 相比 footprint 非常小。虽然是第一版,但是源代码是风河的 Rocket,应该本身就是比较成熟了。
目前在本地的环境上试了一下。
下面是相关的记录。
1. 代码的下载
$ git clone https://gerrit.zephyrproject.org/r/zephyr zephyr-project
2. SDK 下载
$ wget https://nexus.zephyrproject.org/content/repositories/releases/org/zephyrproject/zephyr-sdk/0.7.2-i686/zephyr-sdk-0.7.2-i686-setup.run
这是个自解压包,直接执行:
$ chmod +x zephyr-sdk-0.7.2-i686-setup.run
$ ./zephyr-sdk-0.7.2-i686-setup.run
注:这里可以选择安装在如$HOME目录,所以可以不用 sudo
3. 设置配置文件
设置 $HOME下的 .zephyrrc 文件,这里的 /opt/zephyr-sdk 需要sdk的安装目录。
$ cat ~/.zephyrrc
export ZEPHYR_GCC_VARIANT=zephyr
export ZEPHYR_SDK_INSTALL_DIR=/opt/zephyr-sdk
EOF
4. 编译测试程序
编译之前要执行代码库里的脚本:
$ source zephyr-env.sh
4.1. 编译 zephyr/samples/hello_world/nanokernel
$ make -C zephyr/samples/hello_world/nanokernel qemu
最后编译完成后会启动 qemu 虚拟环境,显示 hello, world 这一句话。
4.2. 编译 zephyr/samples/hello_world/microkernel
$ make -C zephyr/samples/hello_world/microkernel qemu
最后编译完成后会启动 qemu 虚拟环境,显示 hello, world 这一句话。
4.2. 编译 针对ARM的 zephyr/samples/hello_world/microkernel
$ cd zephyr/samples/hello_world/microkernel
$ make distclean
$ make BOARD=qemu_cortex_m3 ARCH=arm qemu
4.2. 编译其他 samples
如 shell 的使用示例:
$ cd zephyr/samples/shell
$ make BOARD=qemu_cortex_m3 ARCH=arm qemu
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
机房租用,北京机房租用,IDC机房托管, http://www.e1idc.net