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. java工作两年了,连myBatis中的插件机制都玩不懂,那你工作危险了!

    插件的配置与使用 在mybatis-config.xml配置文件中配置plugin结点,比如配置一个自定义的日志插件LogInterceptor和一个开源的分页插件PageInterceptor: & ...

  2. Visual Studio使用Git忽略不想上传到远程仓库的文件

    前言: 作为一个.NET开发者而已,有着宇宙最强IDE:Visual Studio加持,让我们的开发效率得到了更好的提升.我们不需要担心环境变量的配置和其他代码管理工具,因为VS有丰富的拓展工具.废话 ...

  3. (1)Hello World

    语出<论语·卫灵公>:子贡问为仁.子曰:"工欲善其事,必先利其器.居是邦也,事其大夫之贤者,友其士之仁者." 2020年11月终于下定决心开始 Visual C++ 的 ...

  4. VueCli 4.0+ 版本安装插件与VueCLI 旧版本的不同

    通过VueCli 脚手架 4+ 版本创建的项目,在引入插件文件并配置时,是通过 import {Create* } ,旧版本是直接导入全部,在配置相应的文件时,重新new 一个:然后再通过Vue 进行 ...

  5. iPhone/iOS开启个人热点的相关位置调整小结

    冬至已到,圣诞将近,最近公司项目实在太多,三四个项目反复的切换真的让人焦头烂额,趁今天有点空,把维护的三个项目顺利送出,刚好可以缕缕思路,记录一下最近遇到的问题.说不着急那是假的,客户一天天的催的确实 ...

  6. 【mq读书笔记】如何保证三个消息文件的最终一致性。

    考虑转发任务未成功执行,此时消息服务器Broker宕机,导致commitlog,consumeQueue,IndexFile文件数据不一致. commitlog,consumeQueue遍历每一条消息 ...

  7. [BUGCASE]Webpack打包报JavaScript堆内存泄漏的错误

    一.问题描述 执行npm run build之后报错: 报错信息: FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript he ...

  8. Django匆匆一眼却解答了多年疑惑

    Django 是 Python 的 一款 Web 开发框架,另外还有 Tornado,Flask,Twisted.为什么我要选择学 Django?原因很简单,上家公司来了个网易的测开,就是用 Djan ...

  9. python虚拟环境相关设置备忘

    sudo  pip install virtualenv #安装虚拟环境 sudo pip install virtualenvwrapper #安装虚拟环境管理工具nano ~/.bashrc #修 ...

  10. Splay树求第k大模板

    今天上午借着休息日得机会手撸了一下模板,终于对着模板调出来了.prev和next占用了std namespace里面的东西,然后报警我上次给关了所以.....就花了3个小时吧. inline加不加无所 ...