关于SYS/BIOS
1.什么是SYS/BIOS
SYS/BIOS是一个可拓展的实时内核。用于实时调度和同步的应用程序或实时的设备。SYS/BIOS提供了抢占式多线程,硬件抽象,实时分析和配置工具。SYS/BIOS的设计是为了最大限度地减少对内存和CPU的要求。
SYS/BIOS的优点:
(1)所有的SYS/BIOS对象可以配置成静态或动态。
(2)为了尽量减少对内存消耗,APIs(应用程序接口)是模糊化的,只有程序用到的APIs才连接到可执行程序。此外,静态配置的对象可省去创建对象的命令。
(3)错误检查和调试是可配置的,并且可以从代码中完全去除,以最大限度地提高性能并降低使用内存的大小。
(4)几乎所有的系统调用都提高确定的性能,使应用程序能够可靠地满足实时要求。
(5)为提高性能,设备数据(如logs和traces)在主机上被格式化。
(6)提供了多种线程模型:HWI,SWI,tsak,idle,periodic,functions等。用户可以根据需求选择不同的优先级别,阻塞特性。
(7)支持线程之间的通信与同步机制。包括旗语,邮箱,事件,gates和可变长度的消息(variable-lengthmessageing)。
(8)动态内存管理服务提高大小可变的和固定大小的快分配。
(9)中断调度程序处理低级的保存/恢复操作,可完全用C语言写中断服务程序。
(10)系统服务支持中断的启用/禁用和中断向量的阻塞,包括多路复用中断向量到多个源。
2.SYS/BIOS与DSP/BIOS的区别
(1)SYS/BIOS可用于包含DSP在内的其他处理器。
(2)SYS/BIOS在XDCtools中使用配置技术。
(3)兼容DSP/BIOS5.4或者更早版本的应用程序,但不再支持PIP模块。
(4)Task和SWI最高有32级优先级。
(5)提供了新的定时器模块,应用程序可直接配置和使用定时器。
(6)所有的内核对象可以被静态或者动态建立。
(7)额外的堆管理器,称为HeapMultiBuf,能够快速精确的分配可变大小的内存,减少内存碎片。
(8)内存管理器更加灵活,支持并行堆,开发人员也可以方便地添加自定义堆。
(9)Eventobject 支持task挂起多个事件,包括semaphores,mailboxes,messagequeues和用户定义的事件。
(10)Gateobject支持优先继承。
(11)Hookfunction 可用于HWI,SWI,task等。
(12)可在操作系统中构建参数检查接口,系统调用参数值无效时启用。
(13)允许SYS/BIOSAPIs 按照标准模式处理错误,可高效地处理程序错误,不需要捕捉返回代码。此外,用户可以方便地在SYS/BIOS发生错误时,停止应用程序的运行,因为所有的错误可以被传递到一个处理句柄中。
(14)系统日志和执行图的实时分析(RTA)工具支持动态和静态创建的任务。
(15)日志记录功能新增时间戳,高达6word的log入口,如果需要,额外的存储可将事件记录到多个日志。
(16)除了总的CPU负载还支持每个任务的CPU负载统计。
本文参考:牛金海 《TMS320C66x KeyStone 架构多核DSP入门与实例精解》
关于SYS/BIOS相关推荐
- TI 实时操作系统SYS/BIOS使用总结
1:概述: SYS/BIOS 是一个可扩展的实时的操作系统.具有非常快速的响应时间(在中断和任务切换时达到较短的延迟),响应时间的确定性,强壮的抢占系统,优化的内存分配和堆栈管理(尽量少的消耗和碎片) ...
- DSP在SYS/BIOS下串口(UART)接收之环形队列
众所周知串口收/发数据是以字节为单位的位传输通信协议. 当串口接收数据按固定数据长度接收:则可能会由于传输过程中出现丢数据,发送端少发数据或多发数据导致接收错位无法正确获取数据. 为了解决数据接收错位 ...
- 【TI-mmWave】三、CCS Projects导入报错:This project requires product SYS/BIOS v6.73.1.01, or equivalent......
项目场景: 刚刚上手TI的mmWave IWR6843,按一. 毫米波(mmWave) 上手TI IWR1443--mmWave Vital Signs (生命体征实验)这位大佬的步骤进行SDK.CC ...
- SYS/BIOS内存分配相关问题
问题描述: 需要更改SYS/BIOS的内存分配,不能单纯地更改cmd文件中的地址和数据长度,SYS/BIOS中的地址需要通过更改/新建RTSC Platform文件来进行更改/分配. 解决方案: 情况 ...
- TI-RTOS Kernel(SYS/BIOS)---内存模块
本章描述了在SYS/BIOS中内存使用的相关问题 文章目录 Background Memory Map Choosing an Available Platform Creating a Custom ...
- TI-RTOS Kernel(SYS/BIOS)---SYS/BIOS简介
本章提供了SYS/BIOS及其与TI-RTOS和其他TI-RTOS组件的关系 什么是SYS/BIOS SYS/BIOS是一个可扩展的实时内核.它被设计为实时调度和同步或实时监测.提供抢先多线程.硬件抽 ...
- TI-RTOS Kernel(SYS/BIOS)---线程模块
本章描述了SYS/BIOS程序可以使用的线程类型 文章目录 SYS/BIOS 启动流程 线程模块概览 线程类型 线程的选择使用 线程特征的比较 线程优先级 释放和抢占 钩子 在SMP系统上使用SYS/ ...
- TI-RTOS Kernel(SYS/BIOS)---同步模块
本章描述了可用于同步访问共享资源的模块 文章目录 信号量 信号量的例子 Event模块 隐式地释放事件 Gates 基于抢占的Gate实现 GateHwi GateSwi GateTask 基于信号量 ...
- SYS/BIOS API---Clock模块
系统时钟管理器(System Clock Manager) 概述 #include<ti/sysbios/knl/Clock.h> 函数 细节 系统时钟管理器负责SYS/BIOS中的所有定 ...
- TI OS --- 中文版SYS/BIOS之 API的帮助
编程接口的参考帮助系统 在TI-RTOS.SYS/BIOS及其TI-RTOS的其它组件里,编程接口的参考帮助系统称为"CDOC". 1. 为了打开在线帮助系统,在CCS里选择He ...
最新文章
- 蓝桥杯 【基础练习】 特殊回文数
- 九度 题目1548:平面上的点
- 37.递推:Pell数列
- oracle建job
- pythondifflib详解_用python标准库difflib比较两份文件的异同详解
- 如何限制修改IP地址
- java中的greeting_JAVA基础知识——字符串
- 用最通俗易懂的语言告诉你什么是信息熵
- python字典操作首字母与星期的对应_python小课堂10 - 基本数据类型终篇集合和字典...
- MATLAB中ones()函数的用法
- Jpcap包的安装与配置
- Java——线程回顾汇总:同步/生产者消费者模式/定时调度
- HDFS中Locality 为什么介于0~1之间?与HBase之间有什么关系?
- Lotus Miner和分布式设置
- 各品牌电脑进入BIOS的按键
- [前端] 键盘事件常用操作
- IBM磁盘阵列配置教程
- ARDUINO 积木式编辑器整理
- /\s+/g和/\s/g的区别
- 安卓小游戏:俄罗斯方块