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. 如何使用ABBYY FineReader 处理无法识别的字符?

    在识别PDF文档时,我们可能会遇到文档中存在多种语言.多种不同类型文字字符的情况.在ABBYY FineReader 15(Windows系统)OCR文字识别软件的默认语言数据下,可能无法识别PDF文 ...

  2. 到底为什么不要用SELECT *

    SELECT * 无论工作还是面试,说到sql优化,比说的一个问题就是,代码中sql不要出现 SELECT *,之前一直也没有深入去研究研究,为什么,只是记住了,代码中注意了,但是就在今天逛某某论坛时 ...

  3. Linux没有netstat和ifconfig命令问题

    安装了精简版命令行centos7系统,运行netsta查看端口和ifconfig查看IP命令都提示找不到命令. 解决方法: yum search ifconfig 通过yum search 这个命令我 ...

  4. Java基础教程——正则表达式

    正则表达式·Regular Expression 正则表达式就是一个用于匹配字符串的模板,正则表达式并不仅限于某一种语言,但是在每种语言中有细微的差别. 主要用到的对象: java.util.rege ...

  5. [GIT]获取git最新的tag

    背景 公司前端项目在Jenkins中打包,每次打包需要将新tag回推到仓库中.但是打包失败后如果不删除tag的话下次打包就会失败,需要手动删除,所以在Jenkinsfile中就需要在打包失败时自动删除 ...

  6. Linux(Ubuntu16.04)下的MediaWiki的部署启动

    一.服务器部分 使用XAMPP配置MediaWiki部署所需要的环境. 1. 查看服务器的版本与位数: sudo lsb_release -a      //查看系统版本 uname -a       ...

  7. 在运行tsc编译.ts文件时,“因为在此系统上禁止运行脚本” 怎么解决?

    tsc : 无法加载文件 C:\Users\Administrator\AppData\Roaming\npm\tsc.ps1,因为在此系统上禁止运行脚本.有关详细信息,请参阅 https:/go.m ...

  8. CentOS下搭建文件共享服务

    nfs部署以及优化 Server端配置 安装rpm服务包 yum install -y nfs-utils 创建数据挂载点 mkdir -p /data 编辑exports文件 vi /etc/exp ...

  9. Nebula Flink Connector 的原理和实践

    摘要:本文所介绍 Nebula Graph 连接器 Nebula Flink Connector,采用类似 Flink 提供的 Flink Connector 形式,支持 Flink 读写分布式图数据 ...

  10. 最常用的分布式ID解决方案,你知道几个

    一.分布式ID概念 说起ID,特性就是唯一,在人的世界里,ID就是身份证,是每个人的唯一的身份标识.在复杂的分布式系统中,往往也需要对大量的数据和消息进行唯一标识.举个例子,数据库的ID字段在单体的情 ...