SylixOS 概述
SylixOS 是一款大型嵌入式实时操作系统,诞生于 2006 年,起初它只是一个小型多任务调度器,经过多年开发,SylixOS 目前已经成为一个功能完善、性能卓越、可靠稳定的嵌入式系统软件开发平台。与 SylixOS 类似的实时操作系统中,全球比较知名的有 VxWorks(主要应用于航空航天、军事与工业自动化领域)、RTEMS(起源于美国国防部导弹与火箭控制实时系统)等。

SylixOS 作为抢占式多任务硬实时操作系统,具有如下功能与特点:
 兼容 IEEE1003(ISO/IEC9945)操作系统接口规范;
 兼容 POSIX 1003.1b(ISO/IEC 9945-1)实时编程的标准;
 优秀的实时性能(任务调度与切换、中断响应算法都是 O(1)时间复杂度算法);
 支持无限多任务;
 抢占式调度支持 256 个优先级;
 支持协程(windows 称为纤程);
 支持虚拟进程;
 支持优先级继承,防止优先级反转;
 极其稳定的内核,很多基于 SylixOS 开发的产品都需要 7×24 小时不间断运行;
 内核占用 CPU 率低;
 柔性体系(Scalable);
 核心代码使用 C 语言编写,可移植性好;
 支持紧耦合同构多处理器(SMP),例如:ARM Cortex-A9 SMP Core;
 独一无二的硬实时多核调度算法;
 支持标准 I/O、多路 I/O 复用与异步 I/O 接口;
 支持多种新兴异步事件同步化接口,例如:signalfd、timerfd、eventfd 等;
 支持众多标准文件系统:TpsFS、FAT、YAFFS、RAMFS、NFS、ROMFS 等;
 支持文件记录锁,可支持数据库;
 支持统一的块设备 Cache 模型;
 支持内存管理单元(MMU);
 支持第三方 GUI 图形库,如:Qt、Microwindows、emWin 等;
 支持动态装载应用程序、动态链接库以及模块;
 支持扩展系统符号接口;
 支持标准 TCP/IPv4/IPv6 双网络协议栈,提供标准的 socket 操作接口;
 支持 AF_ROUTE、AF_UNIX、AF_PACKET、AF_INET、AF_INET6 协议域;
 内部集成众多网络工具,例如:FTP、TFTP、NAT、PING、TELNET、NFS 等;
 内部集成 shell 接口、支持环境变量(与 Linux 操作习惯基本兼容);
 内部集成可重入 ISO/ANSI C 库(支持 80%以上标准函数);
 支持众多标准设备抽象,如:TTY、BLOCK、DMA、ATA、GRAPH、RTC、PIPE
 等。同时支持多种工业设备或总线模型,如:PCI、USB、CAN、I2C、SPI、SDIO等;
 提供高速定时器设备接口,可提供高于主时钟频率的定时服务;
 支持热插拔设备;
 支持设备功耗管理;
 内核、驱动、应用程序支持 GDB 调试;
 提供内核行为跟踪器,方便进行应用性能与故障分析。

SylixOS 应用领域

 SylixOS 采用抢占式、多任务、硬实时的方式来设计整个操作系统。其技术实现的核心目标是实时可控,稳定可靠。所以 SylixOS 适用于(但不限于)以下对实时性和稳定性要求尤为突出的领域:
 工业实时控制领域:主要包括工业机器人系统、现场安全监控与防护系统、工业现场总线通信管理系统等;
 航空航天领域:主要包括航空器飞控系统、航空航天数据采集与记录系统、高精度测绘系统,航空航天通信系统等;
 国防安全领域:主要包括加密通信系统、传感器终端系统、虚拟仪表系统、数据采集与记录系统、火控系统等;
 金融终端领域:主要包括 POS 收费系统、终端支付系统、ATM 自动柜员机等;
 高可靠民用领域:主要包括汽车行驶记录仪系统、车辆及船用发动机中央控制系统、生产线测试系统、医疗仪器系统、分布式无人值守系统等。

RealEvo-IDE 和 SylixOS

RealEvo-IDE 的主要功能是 SylixOS 工程管理和程序调试。RealEvo-IDE 可以创建SylixOS Base 工程、创建 SylixOS BSP 工程、创建 SylixOS App 工程、创建 SylixOS Shared Lib
工程、创建 SylixOS Kernel Module 工程及创建 SylixOS Kernel Static Lib 工程等。支持一键推送调试、手动启动调式、通过串口调试、动态库调试及 Attach 到进程调试,所有调试方
式在多线程调试时都支持 Non-stop 模式。
RealEvo-IDE 运行于宿主机上,通过网络或串口与目标机交互。RealEvo-IDE 的交叉编译器在宿主机上编译生成可以在目标机上运行的 SylixOS 镜像文件,交叉调试器实现了宿主机与目标机之间的前后台调试。
RealEvo-IDE 主要集成以下开发工具:
 针对平台优化的编译工具链;
 强大的多平台模拟器;
 优秀的设计与测试工具;
 性能分析工具;
 代码覆盖率分析工具;
 友好的代码编辑器;
 远程系统访问工具;
 

        RealEvo-IDE主界面

初识SylixOs的更多相关文章

  1. Android动画效果之初识Property Animation(属性动画)

    前言: 前面两篇介绍了Android的Tween Animation(补间动画) Android动画效果之Tween Animation(补间动画).Frame Animation(逐帧动画)Andr ...

  2. 初识Hadoop

    第一部分:              初识Hadoop 一.             谁说大象不能跳舞 业务数据越来越多,用关系型数据库来存储和处理数据越来越感觉吃力,一个查询或者一个导出,要执行很长 ...

  3. python学习笔记(基础四:模块初识、pyc和PyCodeObject是什么)

    一.模块初识(一) 模块,也叫库.库有标准库第三方库. 注意事项:文件名不能和导入的模块名相同 1. sys模块 import sys print(sys.path) #打印环境变量 print(sy ...

  4. 初识IOS,Label控件的应用。

    初识IOS,Label控件的应用. // // ViewController.m // Gua.test // // Created by 郭美男 on 16/5/31. // Copyright © ...

  5. UI篇(初识君面)

    我们的APP要想吸引用户,就要把UI(脸蛋)搞漂亮一点.毕竟好的外貌是增进人际关系的第一步,我们程序员看到一个APP时,第一眼就是看这个软件的功能,不去关心界面是否漂亮,看到好的程序会说"我 ...

  6. Python导出Excel为Lua/Json/Xml实例教程(一):初识Python

    Python导出Excel为Lua/Json/Xml实例教程(一):初识Python 相关链接: Python导出Excel为Lua/Json/Xml实例教程(一):初识Python Python导出 ...

  7. 初识SpringMvc

    初识SpringMvc springMvc简介:SpringMVC也叫Spring Web mvc,属于表现层的框架.Spring MVC是Spring框架的一部分,是在Spring3.0后发布的 s ...

  8. 初识redis数据类型

    初识redis数据类型 1.String(字符串) string是redis最基本的类型,一个key对应一个value. string类型是二进制安全的.意思是redis的string可以包含任何数据 ...

  9. Redis初识、设计思想与一些学习资源推荐

    一.Redis简介 1.什么是Redis Redis 是一个开源的使用ANSI C 语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value 数据库,并提供多种语言的API.从2010 年 ...

随机推荐

  1. 简单实用的Boom 3D进阶使用教程分享

    对于初学者来说,简单体验Boom 3D的3D环绕音效,就可以通过普通耳机享受到高品质耳机的动人音效.而对于进阶者来说,Boom 3D灵活的预设功能,能让其享受到自由调整均衡器.低音的乐趣. 图1:Bo ...

  2. LeetCode 010 Regular Expression Matching

    题目描述:Regular Expression Matching Implement regular expression matching with support for '.' and '*' ...

  3. rest-framework:权限组件

    一 权限简介 只用超级用户才能访问指定的数据,普通用户不能访问,所以就要有权限组件对其限制 二 局部使用 from rest_framework.permissions import BasePerm ...

  4. 基于React.js网页版弹窗|react pc端自定义对话框组件RLayer

    基于React.js实现PC桌面端自定义弹窗组件RLayer. 前几天有分享一个Vue网页版弹框组件,今天分享一个最新开发的React PC桌面端自定义对话框组件. RLayer 一款基于react. ...

  5. MAC下go语言的安装和配置

    Mac下安装一些文件都是比较简单的.安装了brew以后,很多的程序只要一条命令就搞定了. brew install go 安装好go语言以后主要是配置go_path,和go_root的地址. go_r ...

  6. 2016 ACM/ICPC ECNA Regional I.Waif Until Dark(最大流)

    这是一道ECNA的16年题,问有n个小朋友,m个玩具,不同孩子有不同喜好的玩具,每个玩具可能属于一个类别,同一类别的玩具最多只能用一定次数,问最大匹配 这个就很裸的二分图,掏出dinic板子,首先最后 ...

  7. PyQt转换显示Python-OpenCV图像实现图形化界面的视频播放

    ☞ ░ 前往老猿Python博文目录 ░ 一.引言 在Python-OpenCV中显示图像时调用的是一个单独的窗口,有时我们需要将这些图像显示在PyQt的图形化界面上,这样就可以将整个图像显示与PyQ ...

  8. moviepy音视频剪辑:与time时间线相关的变换函数freeze_region、make_loopable、speedx、time_mirror、time_symmetrize介绍

    ☞ ░ 前往老猿Python博文目录 ░ 一.引言 在<moviepy音视频剪辑:moviepy中的剪辑基类Clip详解>介绍了剪辑基类的fl.fl_time.fx方法,在<movi ...

  9. Python类知识学习时的部分问题

    Python的富比较方法__eq__和__ne__之间的关联关系分析 Python的富比较方法__le__.ge__之间的关联关系分析 Python的富比较方法__lt.__gt__之间的关联关系分析 ...

  10. 第 6 篇 Scrum 冲刺博客

    每天举行会议 会议照片: 昨天已完成的工作与今天计划完成的工作及工作中遇到的困难: 成员姓名 昨天完成工作 今天计划完成的工作 工作中遇到的困难 蔡双浩 实现关注,被关注功能 补充注释,初步查找bug ...