Plus speed que speed
Un système temps réel est un système d'exploitation multitâche qui doit avoir un temps de réponse à des sollicitations extérieures suffisamment court pour piloter sans risque des processus évoluant continuellement. En fait la notion de temps réel est liée à une contrainte : la machine doit être déterministe, c'est-à-dire garantir un délai de réaction qui ne sera jamais dépassé et permettra de faire fonctionner normalement un appareillage. Toutes les installations ne nécessitent pas une rapidité extrême mais le temps de prise en compte d'une interruption peut être de l'ordre de quelques microsecondes. En effet, il n'est pas question de scruter continuellement tout ce qui se passe, ce qui serait un énorme gaspillage. Ce sont les capteurs branchés à l'ordinateur qui font commuter par des signaux matériels des tâches qui sont maintenues en mémoire et auxquelles sont associés des niveaux de priorités pour le cas où plusieurs évènements interviendraient quasi simultanément. L'ensemble du logiciel, partagé en éléments plus ou moins indépendants doit se synchroniser pour garder un comportement cohérent et éventuellement fournir des informations à l'utilisateur (comme dans un avion).
Le temps réel peut aussi avoir certaines applications pour l'informatique grand public. Par exemple, puisque le multimédia s'est systématisé dans les ordinateurs personnels, pour réaliser de la visioconférence ces fonctionnalités permettraient de traiter de façon optimale plusieurs flux vidéo ou audio et une connexion par modem ou réseau en pénalisant au minimum le fonctionnement du système (ou même éviter qu'il ne se mélange les pinceaux dans certains cas exceptionnels). Il n'y a pas de conditions draconiennes pour l'utilisation de telles applications mais qui peut le plus peut le moins.
Chorus, qui est compatible Unix pour les utilisateurs, est quant à lui adapté à des problèmes industriels. Il est basé sur le concept de micro noyaux, des bases minimales intégrant entre autre les fonctionnalités temps réel, des modules additionnels étant chargés seulement quand c'est nécessaire. Il a été conçu pour gérer plusieurs processeurs pouvant être spécialisés et est capable de répartir des traitements de façon transparente et de se reconfigurer dynamiquement pour des besoins de performances ou en cas de panne. Il devrait être une base utile pour des systèmes particulièrement élaborés.