SylixOS嵌入式硬实时操作系统
SylixOS是一款嵌入式硬实时操作系统,同其类似的操作系统,全球比较知名的还有VxWorks(主要应用于航空航天、军事与工业自动化领域)、RTEMS(起源于美国国防部导弹与火箭控制实时系统)、ThreadX(主要应用于航空航天与数码通讯)等。 从全球范围上看,SylixOS作为实时操作系统的后来者,在设计思路上借鉴了众多实时操作系统的设计思想,其中就包括RTEMS、VxWorks、ThreadX等,使得具体性能参数上达到或超过了众多实时操作系统的水平,成为国内实时操作系统的最优秀代表之一。
主要特点有:
| 优秀的实时性能(任务调度与切换、中断响应算法都是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调试 | 
| 提供内核行为跟踪器,方便进行应用性能与故障分析 | 
请阅读SylixOS源码包下的introduction.pdf文件
第三方库支持情况 http://code.google.com/p/sylixos/wiki/WikiSylixOS_StdLibrary
怎样编译并运行 SylixOS http://code.google.com/p/sylixos/wiki/HOWTO
详细情况请查询 http://www.sylixos.com
注意, 由于授权问题 SylixOS 仅开放少量 BSP 代码,如有需要请联系作者。
开发环境
图形界面可以使用QtCreator开发
终端
 
开发工作区
 
评论
