SylixOS 工具链和标准 GCC 的区别
SylixOS 工具链和标准 GCC 的区别
Q:
翼辉工具链和标准工具链 GCC 的区别?
gcc
面向 xxx 操作系统一般都叫作 arm-xxx-eabi-gcc,比如 arm-sylixos-eabi-gcc
。
首先,gcc 不仅是编译器,同时提供了 c/c++ 运行所必须的内建库和运行时支持,这些库要在多线程甚至多核上稳定运行,需要依赖于操作系统所提供的一些关键性原语服务,这些服务在 gcc 裸机开发工具链里面是没有的,这就存在很大风险,我们的 gcc 编译器解决了这个问题,让编译器内建库可以很好的与操作系统服务融合。
其次,这些内建库优化空间很大,针对不同 cpu 兼容指令集,SylixOS 的 gcc 工具链提供了很多优化,主要优化不同架构的驱动。
更多扩展知识见:
参考文章:SylixOS 的 GCC 编译工具链介绍
参考文章:RealEvo-IDE 5.x.x升级指南
Related Articles
SylixOS 的 GCC 编译工具链介绍
问:翼辉的 gcc 编译工具链是基于 GNU 编译器套件的哪个版本进行优化的? RealEvo-IDE 编译工具链说明 翼辉的 gcc 工具链是 基于 GNU 编译器套件 gcc version 4.9.3 针对不同 CPU 兼容指令集进行优化。不同架构工具链版本差异请查看具体工具链内部。 注:RealEvo-IDE(4.0.0)以前,所使用的编译器版本主要为4.9.3,是2014 年开 发的版本,随着cpu 的推陈出新和gcc 的发展,需要升级编译器方能支持新的 cpu 和体验进年来gcc ...
SylixOS 使用 FPU 应该注意什么?
Q: 使用 FPU 应该注意什么 SylixOS 支持浮点协处理器,每一个任务(线程有自己的 FPU 上下文,可以独立的进程浮点运算),但是, SylixOS 内核代码包括内核模块,中断函数,BSP包等等,强烈不建议使用 FPU 指令。因为没有独立的 FPU 上下文,除非操作系统启动时,参数 kfpu为 yes,这样操作系统在中断中会切换 FPU 的上下文,但是这将造成操作系统中断延迟加大。所以,除非兼容老的系统,其他情况不建议在内核和中断中使用 ...
IDE 交叉编译工具链更换
问:如何更换 IDE 的交叉编译工具链? 1、打开 IDE 的安装目录,此处以我的安装目录为例,如下图所示为 SylixOS 自带的交叉编译工具链。 2、将修改的交叉编译工具链进行相应的替换。 3、重启 IDE 即可使用新的交叉编译工具链。
SylixOS 的编译工具链优化等级是怎样的?
Q:SylixOS 的 IDE 开发环境中,配置工具链中的 release 和 debug 选项优化等级是怎样的? 在 SylixOS 的 IDE 中编译工具链 release 是 O2 优化等级,debug 是 O0 优化等级。
SylixOS Kill 命令使用和 linux 的区别
Q:SylixOS Kill 命令使用和 linux 的区别 相同点: 就是发送信号给指定的进程 不同点 linux kill 只能 kill 一个进程, 一般使用格式是 kill - 数字 进程号 eg: kill -9 3567 sylixos kill 能 kill 一个进程或者线程,一般使用的格式是 kill tid/pid, 或者kill -n signo pid/tid eg: kill 3 或者 kill -n 9 3 kill tid/pid 默认发送的信号是 SIGKILL ...