SylixOS:自主实时操作系统
SylixOS 实时操作系统综述
-
SylixOS 是国内唯一一款内核自主化率达到 100% 的大型实时操作系统(依据工信部评估报告), 具有完全自主可控的技术能力,满足国产化需求;
-
SylixOS 是一款开源操作系统,可靠性、安全性更容易验证;
-
SylixOS 支持对称多处理器(SMP)平台 ,并且具有实时进程及动态加载机制,满足多部门分布式软件开发需求,支持各部门应用软件在操作系统上的集成;
-
处理器跨平台支持,支持 ARM、MIPS、PowerPC、x86 等架构处理器,支持主流国产通用处理器,如飞腾 1500A、龙芯 2F、龙芯 3A等,便于用户在升级硬件平台的时候,进行应用程序的移植,减少移植的工作量;
-
SylixOS 产品成熟,编程简便,系统架构简洁,配合专用的集成开发环境 RealEvo-IDE 及硬件模拟器 RealEvo-Simulator,便于系统开发与调试,加快软件研发速度,缩短产品研制周期;
-
针对不同的处理器提供优化的驱动程序,提高系统整体性能;
-
硬实时内核,调度算法先进高效,性能强劲;
-
SylixOS 应用编程接口符合 GJB7714-2012《军用嵌入式实时操作系统应用编程接口》, 符合 IEEE、ISO、IEC 相关操作系统编程接口规范,用户已有应用程序可方便的迁移到 SylixOS 上。
系统开源
SylixOS 是一款开源实时操作系统,在嵌入式系统中应用具有如下优势:
-
适用嵌入式开发嵌入式系统的开发工作主要是在非标准硬件平台上开展的,基于开源系统,将使系统移植和定制化开发更加容易。
-
提高系统可靠性嵌入式系统的首要要求是安全、可靠。开源系统的安全性和可靠性更容易验证,代码允许公众审查,其 Bug 也易于发现和修补,代码质量更有保障。
-
降低使用风险用户可以获取系统源代码,培育自己的团队对系统进行维护,不需要担心操作系统原有版本升级后,旧版本系统无人维护等风险。
-
便于故障定位嵌入式系统在开发过程中,很容易出现图形显示、网络通讯、外设异常等故障,开源系统可避免闭源系统带来的故障定位难、排查周期长、影响研发进度等问题,提高故障定位的效率。
-
技术透明度高开源系统的发展由社区推动,用户可以随时获取到最新信息,甚至参与到系统的演变中,系统的发展不再受限于一家公司的意愿,用户可以了解系统的未来发展规划和方向。
SylixOS 作为抢占式多任务硬实时操作系统,具有如下功能特点:
-
兼容 IEEE 1003(ISO/IEC 9945)操作系统接口规范
-
兼容 POSIX 1003.1b(ISO/IEC 9945-1)实时编程标准
-
支持国军标 GJB7714-2012 操作系统接口规范
-
优秀的实时性能(任务调度与切换算法时间复杂度为 O(1))
-
支持无限多任务
-
抢占式调度支持 256 个优先级
-
支持虚拟进程
-
支持优先级继承,防止优先级翻转
-
极其稳定的内核,很多基于 SylixOS 开发的产品都需要 7x24 小时不间断运行
-
支持紧耦合同构多处理器(SMP),例如:ARM Cortex-A9 SMPCore、Intel Duo Core(TM)、 龙芯3、 飞腾1500A
-
支持标准 I/O、多路 I/O 复用与异步 I/O 接口
-
支持多种新兴异步事件同步化接口,例如:signalfd、timerfd、eventfd 等
-
支持众多标准文件系统:TPSFS(掉电安全)、FAT、YAFFS、ROOTFS、PROCFS、NFS、ROMFS 等
-
支持文件记录锁,可支持数据库
-
支持内存管理单元(MMU)
-
支持第三方 GUI 图形库,如:Qt、Microwindows、μC/GUI 等
-
支持动态装载应用程序、动态链接库以及内核模块
-
支持标准 TCP/IPv4/IPv6 双网络协议栈,提供标准的 socket 操作接口
-
支持 AF_UNIX, AF_PACKET, AF_INET, AF_INET6 协议域
-
内部集成众多网络工具,例如:FTP、TFTP、NAT、PING、TELNET、NFS 等
-
内部集成 Shell 接口、支持环境变量(兼容常用 Linux Shell 操作)
-
支持众多标准设备抽象,如:TTY、BLOCK、DMA、ATA、SATA、GRAPH、RTC、PIPE 等
-
支持多种工业设备或总线模型,如:CAN、I2C、SPI、SDIO 、PCI/PCIE、1553B、USB 等
-
提供高速定时器设备接口,可提供高于主时钟频率的定时服务
-
支持热插拔设备
-
支持设备功耗管理
-
提供内核行为跟踪器,方便进行应用性能与故障分析