| Família de SO | sistema operatiu de temps real |
|---|---|
| Versió inicial | 1985 |
| Versió estable | |
| Llicència | llicència BSD |
| Equip | |
| Desenvolupador(s) | Texas Instruments |
| Més informació | |
| Lloc web | ti.com… (anglès) |
TI-RTOS és unsistema operatiu en temps real desenvolupat perTexas Instruments (TI) que inclou unSDK que incorpora, a part d'unkernel anomenat "TI-RTOS Kernel" (antigament conegut com a "SYS/BIOS",[1] i que evolucionà de "DSP/BIOS")[2] que gestiona totes les funcionalitats del RTOS, certprogramari intermediari per afegir diferents funcionalitats, com protocols de connectivitat perTCP/IP iUSB, unsistema de fitxers de tipusFAT, icontroladors de dispositius per a certs components de TI, de manera ràpida per al programador que desenvolupi en alguna de les seves plataformes desistemes incrustats.
Inicialment elnucli de TI-RTOS va ésser concebut com un sistema operatiu en temps real per executar-se en unprocessador de senyals digitals per l'empresa Spectron Microsystems i es va anomenarSPOX. També van desenvolupar eines per treballar-hi.Posteriorment Texas Instruments va adquirir Spectron Microsystems i va unificar SPOX i les eines en un sol producte que va anomenarDSP/BIOS. Més tard es va estendre la seva compatibilitat a altres tipus de microcontroladors i es va canviar el seu nom aSYS/BIOS per acabar formant part el 2014 de l'ecosistema TI-RTOS com aTI-RTOS Kernel.

TI-RTOS incorpora els següents components per agilitzar el desenvolupament d'aplicacions per a sistemes encastats ja siguin basats en DSP com en micro controladors de Texas Instruments.
El seu nom es SYS/BIOS i es pot utilitzar de la mateixa manera que el nom TI-RTOS Kernel, són equivalents. Es tracta d'un nucli de temps real escalable que està dissenyat per aplicacions que requereixenplanificació isincronització a temps real o també per instrumentació en temps real, i no té cap cost inicial ni per ús. Per cumplir amb la restricció de temps real el rendiment de totes lescrides de sistema és determinista.
La seva arquitectura és modular de manera que a l'executable final compilat tan sols s'inclouran els mòduls que seràn necessaris. A més, elsobjectes es poden crear de manera dinàmica o estàtica; si es defineixen de manera estàtica l'executable final ocuparà menys espai. Proveeix estructures per suportar comunicació i sincronització entretasques comsemàfors, mailboxes, esdeveniments i missatges de longitud variable. Suportainterrupcions i es poden desactivar si no es necessiten. Els diferentsmòduls que proporcionen certs serveis de manera independent, aquests es poden configurar i cridar a través d'unaAPI. Un exemple el podem trobar a l'hora d'utilitzarsemàfors en TI-RTOS, hem d'utilitzar el mòdulti.sysbios.knl.Semaphore i configurar-lo perquè quan s'iniciï el sistema generi certes instàncies de semàfors per a després poder utilitzar-los cridant a l'API per a poder modificar el seu estat i fins i tot crear-ne de nous, eliminar-los i aturar-los temporalment. Tots els mòduls que incorpora Ti-RTOS poden ser desactivats a l'hora de compilar elnucli per així optimitzar la mida que ocupa elprogramari.
El software dedepuració e instrumentació és configurable i es pot retirar una vegada l'aplicació és en producció, permetent la millora de l'eficiència i minimitzar la memòria utilitzada. Tota la informació relativa a la instrumentació com són logs i traces es guarden al host per evitar la necessitat de més memòria al desenvolupar l'aplicació.
SYS/BIOS s'afegeix automàticament amb la instal·lació de la suite TI-RTOS, que es pot descarregar individualment o des de l'entorn de desenvolupament integrat Code Composer Studio v6.0, encara que també es pot descarregar individualment.
S'incorporen certs controladors que poden ésser cridats a través d'unaAPI per a facilitar l'ús de perifèrics suportats. Per poder definir quins controladors i componenets utilitzar en una aplicació es poden triar utilitzant la interfície gràfica dins CCStudio.
TI-RTOS incorpora drivers per a perifèrics de comunicació com per aEthernet,WiFi,I²C,SPI,UART iUSB. També hi ha per a poder utilitzar sistemes de fitxers i connectar dispositius per USB itargetes SD (a través d'SPI), fins i tot per a connectar càmeres per a obtenció d'imatges. Així com utilitats més bàsiques com poder controlar pins d'entrada/sortida (GPIO), per a controlar timers per implementarwatchdogs o fins i tot per a controlar senyalsmodulades per amplada de polsos.
TI-RTOS Networking (antigament conegut com a NDK o Network Developers Kit) és un component ajuda al desenvolupador per afegir capacitats de connexió en xarxa, ja que combina la pila de protocols tant deIPv4 comIPv6 i permet utilitzar directament protocols comTCP,UDP,ICMP,IGMP,IP, i ARP en aplicacions de mandra transparent a la implementació dels mateixos. També s'incorporen protiocols d'aplicació comHTTP,TELNET,TFTP,DNS,DHCP. Fins i tot accés a protocols de més baix nivell comEthernet o ports sériePPP o PPPoE.
Per a poder utilitzar aquest component es necesari utilitzar TI-RTOS Kernel i afegir-lo al Code Composer Studio i es pot utilitzar sense llicències addicionals.
TI-RTOS proporciona software per fer possible la comunicació en a un sistema amb múltiples cores, per mitjà d'APIs desenvolupades a l'efecte. Texas Instruments ha utilitzat diferents solucions a la comunicació entre cores. El primer producte va ser DSP Bridge que estaba destinat als dispositius OMAP de primera generació i que actualment no té noves versions ni manteniment. Posteriorment es va utilitzar DSP/BIOS Link destinat donar suport a altra generació de dispositius i que actualment també está sense manteniment ni noves versions. Syslink 2.x és un producte que actualment està en producció té suport pero els nous dissenys de sistemes encastats amb disposisitius TI es fan amb IPC 3.x[4] que actualment té un desenvolupament actiu.
TI-RTOS proporciona un component d'instrumentació anomenatUIA (Unfied Instrumentation Architecture), que defineix APIs i la forma de transportar les dades per permetre al software encastat registrar les dades d'instrumentació per utilitzar-les per exemple al CSS,[5] encara que es pot fer servir individualment. Aquest component s'integra conjuntament amb altre anomenatDVT que ofereix entre altres coses una interfície d'usuari per accedir al software d'instrumentació. Des del CCS es pot accedir a aquest components per mitjà de les seves eines RTOS Analyzer i la System Analyzer.
Les funcionalitats de System Analyzer són les següents:
El sistema de fitxers que s'utilitza és el FatFS,[6] un sistema de fitxers genèric desenvolupat perChaN com a projecte personal de codi lliure. És conforme amb ANSI C (C89), independent de la plataforma i destinat a sistemes encastats basats en microcontroladors.
Té les següents limitacions:
La majoria dels components de TI-RTOS són publicats sotaLlicència BSD, és a dir que qualsevol usuari pot recompilar elkernel utilitzant elcodi font.