sylixos标准工程移植到Lite版本

1. 概述
     针对低端处理器(如ARM M系列处理器)的开发工作,翼辉信息推出了SylixOS Lite工程版本。SylixOS Lite版本工程属于SylixOS轻量级工程,与标准的SylixOS工程相比裁剪掉部分功能(如GDB调试、虚拟内存管理、动态装载、部分网络功能等)。
    由于SylixOS Lite版本不支持动态装载,本文档介绍基于SylixOS标准开发环境下的中间件移植到SylixOS Lite版本的方法,如在标准版本下开发内核模块工程、动态库工程移植到Lite版本的方法。本文档以在标准版本下开发的uORB中间件为例,介绍如何移植该中间件到Lite版本。
2. 实例
    本实例以uORB为例,介绍标准版本移植到Lite版本的过程。
2.1 标准开发版本
    uORB标准版本下由内核模块和动态库组成,即内核模块工程和动态库工程,如图 2.1所示。

图 2.1 标准开发版本

2.2 内核模块移植到Lite版本
    由于SylixOS Lite版本不支持动态装载,所以Lite版本不支持内核模块工程。内核模块移植到Lite版本需将该工程加载到Lite版本BSP工程目录下,同时在系统启动时加载该模块。
    将内核模块代码放到BSP工程目录下参与编译,如图 2.2所示。

图 2.2  BSP工程结构

同时在系统启动时加载该模块,如图 2.3所示在系统启动函数中调用初始化接口。

图 2.3  系统启动加载内核模块

2.3 移植动态库到Lite版本
    移植动态库到Lite版本,需将代码移植到Lite版本BSP工程中参与编译,如图 2.2所示。
    动态库在BSP工程中参与编译后,需将动态库提供的接口加入符号表中,应用程序即可以调用符号表中的函数接口。SylixOS下将函数接口添加到符号表中需在函数定义前添加“LW_SYMBOL_EXPORT”符号,uORB动态库移植过程中需在相应的函数接口前添加此符号,如图 2.4所示。

图 2.4  添加导入符号表命令

添加到符号表编译后,应用程序即可调用该库中的函数接口。

原文地址:http://blog.51cto.com/12558126/2068610

时间: 2024-10-08 16:13:39

sylixos标准工程移植到Lite版本的相关文章

[MFC] VS2013版本MFC工程移植到VC6.0上

:VS虽号称“宇宙最强IDE”,但是有时候安装包太大,动不动就几个G:而且安装好之后也会多出很多几乎很难用到的部分,这对于那些处女座的人如何忍受!本文不是吐槽,而是给出一种在应急场景下,不用安装新版本几个G的IDE,而是将高版本的工程移植到低版本的IDE中,并使其工作和调试的解决方法~ VS2013版本MFC工程移植到VC6.0上 1.场景再现 我最近搞了个ubuntu系统,并在virtualbox中装了个win7用于安装设计PCB和嵌入式集成开发环境Keil.项目需要,得用到我之前写的一个将图

Vxworks工程移植到SylixOS应用笔记

1.适用范围 该应用笔记适用帮助用户在RealEvo-IDE开发环境中移植Vxworks应用程序,并部署到SylixOS操作系统上运行,使用到的开发工具为RealEvo-IDE集成开发环境. 2.准备工作2.1 环境准备在使用之前,须安装有翼辉信息开发的集成开发套件,由于系统上安装的防火墙软件或者杀毒软件,可能会影响到集成开发软件的使用,因此,在使用本套件前请关闭计算机上的windows防火墙以及杀毒软件.因后续操作需要在模拟器上进行展示,所以在进行后续章节操作前,请完成mini2440模拟器的

SylixOS Lite版本中断优先级设置

非Lite版本中断关闭方式 SylixOS向用户提供arch层关中断的接口,其接口名称为archIntDisable(),调用该函数将禁用所有外设的中断. 在ARM体系结构体中,对于ARM系列.Cortex-A系列的芯片,arch层接口archIntDisable()的实现方式如程序清单1.1所示. 程序清单1.1 非Lite版本的arch层中断关闭方式 FUNC_DEF(archIntDisable) MRS R0 , CPSR ORR R1 , R0, #0x80 MSR CPSR_c, R

ubuntu12.10 cocos2dx 2.2.1 工程移植到安卓

1.到项目文件的proj.android目录下,编辑build_native.sh文件,指定NDK和cocos2dx路径 export NDK_ROOT=/home/liyuchen/dev/android-ndk-r9d export NDK_MODULE_PATH=/home/liyuchen/dev/cocos2d-x-2.2.1/cocos2dx 2.执行脚本 ./build_native.sh 此处报错多与ndk版本有关 3.在eclipse中(已经配置好android sdk和ndk

SylixOS音频驱动移植

1. 适用范围 本文档为实现Nuc970平台音频驱动的方法总结,以此提供一些SylixOS音频驱动移植方法的参考. 2. 原理概述 2.1 Codec编解码芯片 声音信号分为模拟信号和数字信号,Codec编解码芯片主要功能就是实现模拟信号与数字信号的互相转换. 本文调试的Codec型号为NAU8822L,其结构如图 2-1所示. 图 2-1 NAU8822L编解码芯片 其中主要使用到的是以下三个部分: Mixer  混音器设备,它的作用是将多个信号组合或者叠加在一起. 由输入混音器(input

将普通工程转为mvn标准工程(main resources)

It is sometimes required to change the default source folder working on the java project. One best example for this could be when normalizing the project to maven.mvn标准工程是 src/main/java src/main/resource and the like one, you might need to change it.

Vivado SDK 2014.2 创建新工程后,BSP版本不对的解决办法

问题描述如下: 1. 使用Vivado SDK 2014.2已经创建了工程,但是此时,hdf文件增加了外设,需要重新创建工程以更新SDK中的外设描述: 2. 使用新的hdf创建工程后,发现system.mss文件中有些外设的BSP包名称显示为红色,把system.mss改成可编辑模式后,看到外设对于的BSP包版本不对: 3. 由于外设的BSP包版本不对,导致工程编辑错误,无法生成elf文件. 解决办法: 使用新的hdf文件重新创建工程之前,先在Xilinx Tools --> Repositor

移植SDL最新版本(转)

原文出自:http://blog.csdn.net/flyyang123456789/article/details/17223485 首先 将所要移植的包准备好  有 SDL2-2.0.1.tar.gz  SDL2_gfx-1.0.0.tar.gz  SDL2_image-2.0.0.tar.gz  SDL2_ttf-2.0.12.tar.gzSDL2_mixer-2.0.0.tar.gz SDL2_net-2.0.0.tar.gztslib-1.4.tar.bz2(gfx 依赖)freety

Android Eclipse下工程移植到Android Studio详细步骤

重新申请了一台电脑之后,最近开始试着使用Android studio对项目进行开发,安装好studio之后首先要做的就是之前Eclipse上面项目的移植问题,今天尝试了几个不同的项目,顺便参考了不同的网上资料,资料比较多,就想着自己整理一份以备不时之需,开始具体的步骤: 1.Eclipse上要一直项目的输出,选中项目右键 --> Export --> Android --> Generate Gradle build files,接下来Next,选中要移植的项目Finish,项目中如果出