嵌入式实时操作系统-SylixOS


SylixOS 是一款嵌入式硬实时操作系统,同其类似的操作系统,全球比较知名的还有 VxWorks (主要应用于航空航天、军事与工业自动化领域)、RTEMS (起源于美国国防部导弹与火箭控制实时系统)、ThreadX (主要应用于航空航天与数码通讯) 等。 从全球范围上看,SylixOS 作为实时操作系统的后来者,在设计思路上借鉴了众多实时操作系统的设计思想,其中就包括 RTEMS、VxWorks、ThreadX 等,使得具体性能参数上达到或超过了众多实时操作系统的水平,成为国内实时操作系统的最优秀代表之一。
主要特点
大型实时操作系统
μs 级中断响应与任务抖动延时,100% 内核自主化率,数百万行内核代码,全面支撑功能复杂、规模庞大应用场景,确保系统在高负载下稳定高效运行。
便捷的开发体验
SylixOS 基于 LongWingTM 内核,POSIX 兼容超过 98%,支持 C++20、JavaScript、Go、Python 等高级语言,提供 RealEvo-IDE 集成开发环境。
丰富的软硬件生态
支持主流及所有国产处理器架构,提供完善的 BSP ,为高端高性能处理器提供全面支持,优化系统资源管理,确保高效可靠运行,并适配数百款行业中间件。
稳定承载行业应用
已批量应用于卫星、火箭、飞机、机器人、PLC、数控、高铁、汽车、电力等领域,大型设备装机量超 200 万台,设备持续不间断运行超 15 年。
翼辉信息于2015年成立,开始对SylixOS进行加速完善和商业推广。虽然公司是2015年创立的,但SylixOS本身早在2006年就由创始人韩辉先生发布了V1.0.0版本,那时还是一个简单的RTOS,随着功能越来越完善,可靠性越来越得到验证,SylixOS逐步演化成立国内屈指可数的大型实时操作系统。
SylixOS内核是完全自主研发的,不过有些外围组件是移植的第三方开源软件,比如yaffs文件系统,lwip网络协议栈等,Linux,Vx等也是同样会用到一些第三方开源软件的。同Linux类似,SylixOS也是参考其他Unix系统,独立从头研发的一款类Unix系统,也尊从了一切皆文件的设计哲学,并提供了POSIX标准接口,且第一作者都是在大学期间就完成了第一个版本,只不过这次是黄皮肤黑眼睛的中国人。
它虽学习借鉴了其他操作系统,也移植了少部分第三方开源软件,但本质依旧是自主可控的国产操作系统。因为它国人从头独立自主研发,经历了漫长的技术积累与迭代,趟过了无数艰难bug,才完成了当前功能性能都可匹敌国外老牌大型实时操作系统的国产化系统。最终的成果固然价值连城,其实现的过程也是非常宝贵的。即便国外把一个成熟的系统源码和版权都买给你,你虽可以很正常使用,但由于缺乏这个实现过程,没有技术和人才的积累,一旦出现深层次的问题,是没有能力解决的;再有就是没有一个技术的连续演进和深入掌握,是不能继续进行创新和迭代。核心的技术,必须由自己一点点掌握,别人是不会给你的,就是给了你也拿不住。
为了让客户信服,翼辉对SylixOS系统源码进行了开源,任何人都可以自由免费的下载到SylixOS系统源码,是不是真国产一看便知。再就是由第三方进行了源码测评,出具了工信息部认可的自主代码率评估结果。其内核自主化率达到 100%;完整源代码自主化率高达 89.1%。是目前自主化率最高的国产操作系统之一。
系统架构图

先进的系统内核与环境支持
硬实时内核
支持多核硬实时调度
基于优先级的抢占式任务调度
支持同优先级任务调度
任务调度时间与负载无关,时间复杂度为 O(1)
互斥量支持优先级继承和天花板算法,防止优先级翻转
支持实时进程
支持中断嵌套
完整的异构多算力簇调度支持,同时满足强实时性计算要求
全球率先支持大小核调度的商用实时操作系统
SMP 多核调度
支持 SMP 多核调度,天生满足负载均衡,支持亲和度模型
支持大小核 “算力簇亲和调度”与“算力感知自动调度适配器”
动态感知 SMT 同步多线程(HT 超线程)处理器物理 CPU 拓扑,智能分配任务到物理核心来提高实时性
超线程优化调度器与大小核动态调度器协同工作,更好的支持大型复杂 CPU 实时运算
支持 NUMA(非统一内存访问)架构
支持用户任务紧耦合在指定的 NUMA 节点
支持紧耦合任务优先使用 NUMA 节点亲和的物理内存
NUMA 架构处理器上可同时保持强实时性和高吞吐率
动态装载
其应用程序动态装载功能,能够让业务逻辑与系统平台分离开发、独立升级。例如相关算法的变更、应用功能的增减等,仅需更新相关的组件即可。动态装载使项目开发、维护、量产等过程更加便捷、高效。此外,SylixOS 支持进程安全退出,强制退出时不会影响其它进程,并支持信号、管道、共享内存等多种跨进程通信方式。SylixOS 支持为每个进程提供独立的动态库环境,满足不同生态软件对公共库的多版本需求。
完善的处理器支持
其支持十大国内外主流处理器架构,支持飞腾、龙芯、中天微、兆芯、全志、瑞芯微、M78 、复旦微、华睿、申威、平头哥等,实现了对国产处理器的全面覆盖。
便捷的开发体验
RealEvo 集成开发环境
RealEvo-IDE 集设计、开发、调试、仿真、部署、测试功能于一体,针对翼辉操作系统提供一站式开发解决方案。同时,RealEvo-IDE 提供了强大的生态工具集,加速各行业生态软件与 SylixOS 操作系统的融合,使行业应用和中间件能够方便快速地在 SylixOS 上适配运行。
丰富的调试分析手段
SylixOS 支持在线调试,只需一根网线,即可快速调试应用程序。不依赖硬件调试器,节约硬件成本,提升开发效率。
强大的内核监控器实现线程和进程状态跟踪、中断测量、内存使用率统计、IO 系统分析等功能,可用于复杂场景下应用程序、系统内核、BSP 以及驱动程序的图形化分析
支持内存跟踪,快速定位内存泄漏以及越界问题
内置死锁检测命令,方便用户解决死锁问题
性能分析工具可帮助用户查找系统性能瓶颈
详细的异常栈信息输出,帮助用户定位异常原因
多种开发语言
除传统 C/C++ 开发语言外,SylixOS 还支持 JavaScript 、Golang 、Python 以及 Lua 等业务开发语言。先进的开发语言可以实现更高的开发效率、更灵活的软件设计、更丰富的产品功能、更少的软件缺陷以及更加可控的产品生命周期管理方法。
广泛的图形组件与 GPU 支持
SylixOS 支持常见的嵌入式图形库,方便用户进行图形开发。
Qt5、LVGL、MiniGUI、emWin、AWTK。
先进的网络功能

良好的网络兼容性
SylixOS 支持 BSD Socket 和强大的网络路由协议,从容应对各类网络任务场景。
强劲的网络性能
支持 QoS 服务质量、多队列和 TSO、GSO 等现代网络卸载技术,提供足够强劲的网络性能。
异构网络融合能力
支持虚拟网卡、RapidIO、FC、RDMA 等各项专用网络,满足各类异构网络需求。
高可用的网络冗余能力
支持 bonding、PRP 等多项网络技术,为不同需求的网络冗余备份提供更多选择。
满足时间敏感性网络通信需求
提供网卡 poll 模式、EtherCAT、TSN 等技术,满足时间敏感性网络通信需求。
稳定的网络安全机制
提供防火墙,报文加密过滤,用户访问控制,实体认证,黑白名单管理等安全组件。
丰富的文件系统
SylixOS 支持 TpsFs、GlusterFS 、RAMFS、ROMFS、YAFFS、NFS、ISO9660 等多种文件系统。
TpsFs 掉电安全文件系统
TpsFs 是采用翼辉专利技术实现的掉电安全文件系统,彻底解决嵌入式行业文件存储掉电安全问题。

其具备以下特点:
读写性能卓越
64 位文件系统,EB 级文件长度
支持硬链接,软链接,文件锁
多种技术保证故障恢复能力
写入模式选择精确到文件级
高效的目录管理算法
支持掉电安全与安全删除
轻松管理百万级文件数
GlusterFS 分布式存储
SylixOS 支持高可用分布式文件系统 GlusterFS,是全球率先支持大型分布式文件系统的实时操作系统。

其具备以下特点:
支持 PB 级存储容量
良好的扩展性
支持大批量客户端并行访问
丰富的存储池类型
无中心对称式架构
对应用程序透明
高可用性
灵活部署
软硬件生态
与各大知名硬件厂商展开深度合作
翼辉操作系统全面支持 ARM、PowerPC、MIPS、x86、SPARC、DSP、RISC-V、C-SKY 处理器架构及各类 GPU、网卡等组件。
支持众多第三方中间件
翼辉操作系统支持数量众多的第三方中间件,满足各类应用需求。
提供全栈国产软硬件平台,助力信创生态
翼辉操作系统底层适配飞腾、龙芯、全志、瑞芯微、兆芯、海光、复旦微等国产处理器,中间件支持达梦、天智、天谋数据库、国遥、超图、中电科 GIS、武汉蓝星 GUI、傲拓、奥特斯 IEC61131-3 工业运行时。
SylixOS 实时容器版(ECS)继承了 SylixOS 卓越的硬实时性和强大的跨平台基因,支持丰富的 CPU 体系结构和处理器;ECS 容器具有可打包的隔离环境,可以保证应用在开发与部署阶段的环境一致性;ECS 容器内的应用可使用 SylixOS 全部的应用编程 API 和 POSIX API,可向前兼容低版本应用程序,无需修改即可运行在容器内;将 VSOA 组件导入 ECS 容器内,可实现应用程序微服务化。
其文档中心提供了不错的参考。
Wiki页面亦有相当的维护。
最新版本:
项目主页:https://www.acoinfo.com/product/system/sylixos
主要特点
优秀的实时性能(任务调度与切换、中断响应算法都是O(1)时间复杂度算法) |
支持无限多任务 |
抢占式调度支持256个优先级 |
支持协程(windows称为纤程) |
支持虚拟进程 |
支持优先级继承,防止优先级翻转 |
极其稳定的内核,很多基于SylixOS开发的产品都需要7x24小时不间断运行 |
内核CPU占用率低 |
柔性体系(Scalable) |
核心代码使用C编写,可移植性好 |
支持紧耦合同构多处理器(SMP),例如:ARM Cortex-A9 SMPCore |
全世界独一无二的硬实时多核调度算法 |
支持标准I/O接口 |
支持多种新兴异步事件同步化接口,例如:signalfd、timerfd、eventfd等 |
支持IEEE POSIX操作系统接口规范 |
支持众多标准文件系统:FAT、YAFFS、ROOTFS、PROCFS、NFS、ROMFS等等 |
支持文件记录锁,可支持数据库 |
支持统一的块设备CACHE模型 |
支持内存管理单元(MMU) |
支持第三方GUI图形库,如:Microwindows、µC/GUI、ftk等等 |
支持动态装载应用程序、动态链接库以及模块 |
支持扩展系统符号接口 |
支持标准TCP/IPv4/IPv6双网络协议栈,提供标准的socket操作接口 |
支持AF_UNIX, AF_INET, AF_INET6协议域 |
内部集成众多网络工具,例如:FTP、TFTP、NAT、PING、TELNET、NFS等等 |
内部集成shell接口、支持环境变量(与Linux操作习惯基本兼容) |
内部集成可重入ISO/ANSI C库(支持80%以上标准函数) |
支持众多标准设备抽象,如:TTY、BLOCK、DMA、ATA、GRAPH、RTC、PIPE等。同时支持多种工业设备或总线模型,如:CAN、I2C、SPI、SDIO等 |
提供高速定时器设备接口,可提供高于主时钟频率的定时服务 |
支持热插拔设备 |
支持设备功耗管理 |
设备模型支持多路I/O复用接口与异步I/O接口 |
内核、驱动、应用程序支持GDB调试 |
提供内核行为跟踪器,方便进行应用性能与故障分析 |
大型实时操作系统
μs 级中断响应与任务抖动延时,100% 内核自主化率,数百万行内核代码,全面支撑功能复杂、规模庞大应用场景,确保系统在高负载下稳定高效运行。
便捷的开发体验
SylixOS 基于 LongWingTM 内核,POSIX 兼容超过 98%,支持 C++20、JavaScript、Go、Python 等高级语言,提供 RealEvo-IDE 集成开发环境。
丰富的软硬件生态
支持主流及所有国产处理器架构,提供完善的 BSP ,为高端高性能处理器提供全面支持,优化系统资源管理,确保高效可靠运行,并适配数百款行业中间件。
稳定承载行业应用
已批量应用于卫星、火箭、飞机、机器人、PLC、数控、高铁、汽车、电力等领域,大型设备装机量超 200 万台,设备持续不间断运行超 15 年。
翼辉信息于2015年成立,开始对SylixOS进行加速完善和商业推广。虽然公司是2015年创立的,但SylixOS本身早在2006年就由创始人韩辉先生发布了V1.0.0版本,那时还是一个简单的RTOS,随着功能越来越完善,可靠性越来越得到验证,SylixOS逐步演化成立国内屈指可数的大型实时操作系统。
SylixOS内核是完全自主研发的,不过有些外围组件是移植的第三方开源软件,比如yaffs文件系统,lwip网络协议栈等,Linux,Vx等也是同样会用到一些第三方开源软件的。同Linux类似,SylixOS也是参考其他Unix系统,独立从头研发的一款类Unix系统,也尊从了一切皆文件的设计哲学,并提供了POSIX标准接口,且第一作者都是在大学期间就完成了第一个版本,只不过这次是黄皮肤黑眼睛的中国人。
它虽学习借鉴了其他操作系统,也移植了少部分第三方开源软件,但本质依旧是自主可控的国产操作系统。因为它国人从头独立自主研发,经历了漫长的技术积累与迭代,趟过了无数艰难bug,才完成了当前功能性能都可匹敌国外老牌大型实时操作系统的国产化系统。最终的成果固然价值连城,其实现的过程也是非常宝贵的。即便国外把一个成熟的系统源码和版权都买给你,你虽可以很正常使用,但由于缺乏这个实现过程,没有技术和人才的积累,一旦出现深层次的问题,是没有能力解决的;再有就是没有一个技术的连续演进和深入掌握,是不能继续进行创新和迭代。核心的技术,必须由自己一点点掌握,别人是不会给你的,就是给了你也拿不住。
为了让客户信服,翼辉对SylixOS系统源码进行了开源,任何人都可以自由免费的下载到SylixOS系统源码,是不是真国产一看便知。再就是由第三方进行了源码测评,出具了工信息部认可的自主代码率评估结果。其内核自主化率达到 100%;完整源代码自主化率高达 89.1%。是目前自主化率最高的国产操作系统之一。
系统架构图

先进的系统内核与环境支持
硬实时内核
支持多核硬实时调度
基于优先级的抢占式任务调度
支持同优先级任务调度
任务调度时间与负载无关,时间复杂度为 O(1)
互斥量支持优先级继承和天花板算法,防止优先级翻转
支持实时进程
支持中断嵌套
完整的异构多算力簇调度支持,同时满足强实时性计算要求
全球率先支持大小核调度的商用实时操作系统
SMP 多核调度
支持 SMP 多核调度,天生满足负载均衡,支持亲和度模型
支持大小核 “算力簇亲和调度”与“算力感知自动调度适配器”
动态感知 SMT 同步多线程(HT 超线程)处理器物理 CPU 拓扑,智能分配任务到物理核心来提高实时性
超线程优化调度器与大小核动态调度器协同工作,更好的支持大型复杂 CPU 实时运算
支持 NUMA(非统一内存访问)架构
支持用户任务紧耦合在指定的 NUMA 节点
支持紧耦合任务优先使用 NUMA 节点亲和的物理内存
NUMA 架构处理器上可同时保持强实时性和高吞吐率
动态装载
其应用程序动态装载功能,能够让业务逻辑与系统平台分离开发、独立升级。例如相关算法的变更、应用功能的增减等,仅需更新相关的组件即可。动态装载使项目开发、维护、量产等过程更加便捷、高效。此外,SylixOS 支持进程安全退出,强制退出时不会影响其它进程,并支持信号、管道、共享内存等多种跨进程通信方式。SylixOS 支持为每个进程提供独立的动态库环境,满足不同生态软件对公共库的多版本需求。
完善的处理器支持
其支持十大国内外主流处理器架构,支持飞腾、龙芯、中天微、兆芯、全志、瑞芯微、M78 、复旦微、华睿、申威、平头哥等,实现了对国产处理器的全面覆盖。
便捷的开发体验
RealEvo 集成开发环境
RealEvo-IDE 集设计、开发、调试、仿真、部署、测试功能于一体,针对翼辉操作系统提供一站式开发解决方案。同时,RealEvo-IDE 提供了强大的生态工具集,加速各行业生态软件与 SylixOS 操作系统的融合,使行业应用和中间件能够方便快速地在 SylixOS 上适配运行。
丰富的调试分析手段
SylixOS 支持在线调试,只需一根网线,即可快速调试应用程序。不依赖硬件调试器,节约硬件成本,提升开发效率。
强大的内核监控器实现线程和进程状态跟踪、中断测量、内存使用率统计、IO 系统分析等功能,可用于复杂场景下应用程序、系统内核、BSP 以及驱动程序的图形化分析
支持内存跟踪,快速定位内存泄漏以及越界问题
内置死锁检测命令,方便用户解决死锁问题
性能分析工具可帮助用户查找系统性能瓶颈
详细的异常栈信息输出,帮助用户定位异常原因
多种开发语言
除传统 C/C++ 开发语言外,SylixOS 还支持 JavaScript 、Golang 、Python 以及 Lua 等业务开发语言。先进的开发语言可以实现更高的开发效率、更灵活的软件设计、更丰富的产品功能、更少的软件缺陷以及更加可控的产品生命周期管理方法。
广泛的图形组件与 GPU 支持
SylixOS 支持常见的嵌入式图形库,方便用户进行图形开发。
Qt5、LVGL、MiniGUI、emWin、AWTK。
先进的网络功能

良好的网络兼容性
SylixOS 支持 BSD Socket 和强大的网络路由协议,从容应对各类网络任务场景。
强劲的网络性能
支持 QoS 服务质量、多队列和 TSO、GSO 等现代网络卸载技术,提供足够强劲的网络性能。
异构网络融合能力
支持虚拟网卡、RapidIO、FC、RDMA 等各项专用网络,满足各类异构网络需求。
高可用的网络冗余能力
支持 bonding、PRP 等多项网络技术,为不同需求的网络冗余备份提供更多选择。
满足时间敏感性网络通信需求
提供网卡 poll 模式、EtherCAT、TSN 等技术,满足时间敏感性网络通信需求。
稳定的网络安全机制
提供防火墙,报文加密过滤,用户访问控制,实体认证,黑白名单管理等安全组件。
丰富的文件系统
SylixOS 支持 TpsFs、GlusterFS 、RAMFS、ROMFS、YAFFS、NFS、ISO9660 等多种文件系统。
TpsFs 掉电安全文件系统
TpsFs 是采用翼辉专利技术实现的掉电安全文件系统,彻底解决嵌入式行业文件存储掉电安全问题。

其具备以下特点:
读写性能卓越
64 位文件系统,EB 级文件长度
支持硬链接,软链接,文件锁
多种技术保证故障恢复能力
写入模式选择精确到文件级
高效的目录管理算法
支持掉电安全与安全删除
轻松管理百万级文件数
GlusterFS 分布式存储
SylixOS 支持高可用分布式文件系统 GlusterFS,是全球率先支持大型分布式文件系统的实时操作系统。

其具备以下特点:
支持 PB 级存储容量
良好的扩展性
支持大批量客户端并行访问
丰富的存储池类型
无中心对称式架构
对应用程序透明
高可用性
灵活部署
软硬件生态
与各大知名硬件厂商展开深度合作
翼辉操作系统全面支持 ARM、PowerPC、MIPS、x86、SPARC、DSP、RISC-V、C-SKY 处理器架构及各类 GPU、网卡等组件。
支持众多第三方中间件
翼辉操作系统支持数量众多的第三方中间件,满足各类应用需求。
提供全栈国产软硬件平台,助力信创生态
翼辉操作系统底层适配飞腾、龙芯、全志、瑞芯微、兆芯、海光、复旦微等国产处理器,中间件支持达梦、天智、天谋数据库、国遥、超图、中电科 GIS、武汉蓝星 GUI、傲拓、奥特斯 IEC61131-3 工业运行时。
SylixOS 实时容器版(ECS)继承了 SylixOS 卓越的硬实时性和强大的跨平台基因,支持丰富的 CPU 体系结构和处理器;ECS 容器具有可打包的隔离环境,可以保证应用在开发与部署阶段的环境一致性;ECS 容器内的应用可使用 SylixOS 全部的应用编程 API 和 POSIX API,可向前兼容低版本应用程序,无需修改即可运行在容器内;将 VSOA 组件导入 ECS 容器内,可实现应用程序微服务化。
其文档中心提供了不错的参考。
Wiki页面亦有相当的维护。
最新版本:
项目主页:https://www.acoinfo.com/product/system/sylixos