SylixOS:实时操作系统

SylixOS 是支持 SMP 调度的原创大型硬实时操作系统 ,其诞生可以摆脱国内一些关键性设备对国外嵌 入式操作系统的依赖,为国内的嵌入式信息技术行业提供一个全新的选择。

为了保证 SylixOS 能够持续开发,并且吸引大批开发人员参与测试,SylixOS 目前是以公开源代码项目的形式存在。

SylixOS 实时操作系统综述

1.   SylixOS 内核自主化率达到 100% (依据工信部评估报告), 拥有完全自主可控的技术能力,满足国产化需求;
2.   SylixOS 是一款开源操作系统,可靠性、安全性更容易验证;
3.   SylixOS 支持对称多处理器(SMP)平台 ,并且具有实时进程及动态加载机制,满足多部门分布式软件开发需求,支持各部门应用软件在
      操作系统上的集成;
4.   处理器跨平台支持,支持 ARM、MIPS、PowerPC、x86、SPARC、DSP、RISC-V、C-SKY 等架构处理器,支持主流国产通用处理器,如
     飞腾全系列、龙芯全系列、中天微CK810 、兆芯全系列等,便于用户在升级硬件平台的时候,进行应用程序的移植,减少移植的工作量;
5.   SylixOS 产品成熟,编程简便,系统架构简洁,配合专用的集成开发环境 RealEvo-IDE 及硬件模拟器 RealEvo-Simulator,便于系统开发
      与调试,加快软件研发速度,缩短产品研制周期;
6.   针对不同的处理器提供优化的驱动程序,提高系统整体性能;
7.   硬实时内核,调度算法先进高效,性能强劲;
8.   SylixOS 应用编程接口符合 GJB7714-2012《军用嵌入式实时操作系统应用编程接口》, 符合 IEEE、ISO、IEC 相关操作系统编程接口
      规范,用户已有应用程序可方便的迁移到 SylixOS 上。
9.   SylixOS 支持国家标准可信计算。



系统开源

SylixOS 是一款开源实时操作系统,在嵌入式系统中应用具有如下优势:
1.   适用嵌入式开发
      嵌入式系统的开发工作主要是在非标准硬件平台上开展的,基于开源系统,将使系统移植和定制化开发更加容易。
2.   提高系统可靠性
      嵌入式系统的首要要求是安全、可靠。开源系统的安全性和可靠性更容易验证,代码允许公众审查,其 Bug 也易于发现和修补,代码质
      量更有保障。
3.   降低使用风险
      用户可以获取系统源代码,培育自己的团队对系统进行维护,不需要担心操作系统原有版本升级后,旧版本系统无人维护等风险。
4.   便于故障定位
      嵌入式系统在开发过程中,很容易出现图形显示、网络通讯、外设异常等故障,开源系统可避免闭源系统带来的故障定位难、排查周期
      长、影响研发进度等问题,提高故障定位的效率。
5.   技术透明度高
      开源系统的发展由社区推动,用户可以随时获取到最新信息,甚至参与到系统的演变中,系统的发展不再受限于一家公司的意愿,用户可
      以了解系统的未来发展规划和方向。



SylixOS 作为抢占式多任务硬实时操作系统,具有如下功能特点:

1.   兼容 IEEE 1003(ISO/IEC 9945)操作系统接口规范
2.   兼容 POSIX 1003.1b(ISO/IEC 9945-1)实时编程标准
3.   支持国军标 GJB7714-2012 操作系统接口规范
4.   优秀的实时性能(任务调度与切换算法时间复杂度为 O(1))
5.   支持无限多任务
6.   抢占式调度支持 256 个优先级
7.   支持虚拟进程
8.   支持优先级继承,防止优先级翻转
9.   极其稳定的内核,很多基于 SylixOS 开发的产品都需要 7x24 小时不间断运行
10. 支持紧耦合同构多处理器(SMP),例如:ARM Cortex-A9 SMPCore、Intel/AMD 全系列 、龙芯全系列、飞腾 全系列、Freescale
     i.MX6 系列、Xilinx Zynq-7000 、Zynq UltraScale+ MPSoC 系列多核处理器
11. 根据项目需求可以支持1~2秒启动
12. 支持标准 I/O、多路 I/O 复用与异步 I/O 接口
13. 支持多种新兴异步事件同步化接口,例如:signalfd、timerfd、eventfd 等
14. 支持众多标准文件系统:TPSFS(掉电安全)、FAT、YAFFS、ROOTFS、PROCFS、NFS、ROMFS 等
15. 支持文件记录锁,可支持数据库
16. 支持内存管理单元(MMU)
17. 支持第三方 GUI 图形库,如:Qt、Microwindows、μC/GUI 等
18. 支持动态装载应用程序、动态链接库以及内核模块
19. 支持标准 TCP/IPv4/IPv6 双网络协议栈,提供标准的 socket 操作接口
20. 支持 AF_UNIX, AF_PACKET, AF_INET, AF_INET6 协议域
21. 内部集成众多网络工具,例如:FTP、TFTP、NAT、PING、TELNET、NFS 等
22. 内部集成 Shell 接口、支持环境变量(兼容常用 Linux Shell 操作)
23. 支持众多标准设备抽象,如:TTY、BLOCK、DMA、ATA、SATA、GRAPH、RTC、PIPE 等
24. 支持多种工业设备或总线模型,如:CAN、I2C、SPI、SDIO 、PCI/PCIE、1553B、USB 等
25. 提供高速定时器设备接口,可提供高于主时钟频率的定时服务
26. 支持热插拔设备
27. 支持设备功耗管理
28. 提供内核行为跟踪器,方便进行应用性能与故障分析



网络通信

SylixOS 支持完善的网络功能以及丰富的网络工具:
1.   支持 10M/100M/1G/10G 以太网;
2.   支持 wireless net framework;
3.   支持 Mesh 网络和 MAODV 自组网协议;
4.   支持主流的 WiFi 和 3G/4G 模块、网卡冗余、虚拟网卡、网桥;
5.   支持 IPv4/IPv6 双网络协议栈,提供标准的 socket 接口;
6.   支持 AF_UNIX、AF_PACKET、AF_INET、AF_INET6、AF_ROUTE 协议域;
7.   支持众多网络工具,例如:FTP、TFTP、NAT、PING、TELNET、NFS、PPP、KidVPN、VLAN ;
8.   支持主流工业实时以太网,例如:EtherCAT;
9.   支持丰富的网络中间件,例如: SNTP、libxemail、libcurl、GoAhead-WebServer、DHCP-Server、ACE、TAO、OpenDDS、LCM、
     pcap、Tcpdump、NcFTP Client、SNTP Server、noPoll、Boa 等;
10. 支持内置规则防火墙、外挂网络防火墙。



QoS 服务质量

QoS(Quality of Service服务质量)用于在有限的网络带宽资源下,为不同服务提供不同质量的数据传输保障。
SylixOS 支持传输服务优先级(Priority)和可靠数据传输(Don't drop)两种 QoS 模型:
1.   传输服务优先级(Priority)功能支持8个优先级度量,高优先级数据分组优先得到系统服务,保证实时性;
2.   可靠数据传输(Don't drop)功能支持可靠的数据交付,设置为可靠数据传输的数据,不会因为突发性数据传输拥 塞引起数据分组丢弃。
QoS 服务配置灵活,功能完善,可以根据不同使用场景进行设定,例如基于网络的语音通话服务,使用高优先级 的 QoS 数据传输,可以保证在网络拥塞时语音服务声音流畅、无爆音、不失真。



网络安全

SylixOS 在网络安全方面做了大量的工作,用以保障基于 SylixOS 操作系统设计的网络相关设备安全性。SylixOS 网络协议栈在设计时就已经考虑了网络安全相关需求,在协议栈关键位置都留有足够的 HOOK 点,方便网络安全检测与防护软件与协议栈对接,同时 SylixOS 也提供了诸多内建与外挂的安全防护模块,最大限度的防御网络攻击行为。

内建网络安全模块:
1:网络登陆黑白名单管理系统:

SylixOS 内建有一套通过用户登陆行为判断攻击的“登陆黑白名单管理模块”,一旦检测到有针对用户登陆方面的攻击发生,立即会隔离发起攻击的可疑机器(加入黑名单),同时经过一个可设置的冷却时间(也可设置为永久被隔离)后才再次允许对方访问 SylixOS 设备。此模块的保护功能针对 SylixOS 内部所有的内建网络服务模块均有效。

2:网络数据包过滤器:

SylixOS 内建有一套功能强大的网络数据包过滤器,可根据用户设置的规则过滤掉指定的数据包,这些规则包括:MAC 地址、IP 地址(区间)、TCP 端口、UDP 端口等,能够保护一些关键性系统服务仅针对指定的机器开放,例如:一些数据共享服务,可通过规则设计,仅提供局域网内部机器使用,外部网络机器不可访问。

外挂网络安全模块:
网络安全防火墙

此模块功能强大,使用方便,可有效抵御常见的网络攻击,例如:单播、组播、广播网络风暴;报文重放攻击;ARP 欺骗攻击;ARP 泛洪攻击;TCP SYN、ACK 泛洪攻击等。



图形显示

翼辉信息提供 RealEvo-QtSylixOS 软件,方便用户在 Qt Creater 上开发调试应用界面。
1.   支持多屏显示、OpenGL、VNC 远程显示;
2.   支持 Qt、Microwindows、μC/GUI、MiniGUI 等图形用户界面(GUI),支持 Qwt 等第三方 Qt 控件库;
3.   支持触摸屏、键盘、鼠标,支持输入设备热插拔。



文件存储

1.   支持众多标准文件系统: FAT、YAFFS、ROOTFS、PROCFS、NFS、ROMFS 等;
2.   支持 SylixOS 专利文件系统:TpsFs(掉电安全文件系统),彻底解决嵌入式行业文件存储掉电安全问题;
3.   支持文件记录锁与数据库;
4.   文件系统支持 POSIX 标准的 I/O 操作;
5.   文件存储介质支持 NOR FLASH、NAND FLASH、eMMC、SD、CF、IDE 硬盘、SATA 硬盘、U盘、NVMe 固态存储。



了解更多 SylixOS