MHP

MHP

Diseño y Desarrollo de un Sistema Operativo de Tiempo Real basado en la norma uITRON 3.0

Introducción

El proyecto ITRON (Industrial The Real-time Operating system Nucleus) se centra en la creación de estándares para especificaciones de sistemas operativos multitarea en tiempo real, cuya utilización está orientada especialmente a sistema embebidos. Dentro de este proyecto se plantea la realización de un sistema operativo siguiendo esta norma y que se denomina EROS (Embedded Real-time Operating System).

Se realizará un prototipo sobre una plataforma PC-INTEL. La implementación buscará facilitar su posterior migración a otra plataforma, como las placas existentes en el mercado para Set-Top-Box. Para ello se dividirá el código que dependa del hardware del que no.


Descripción

Como se indicó anteriormente, en la arquitectura MHP se define una capa de hardware y otra de software dependiente del hardware sobre las que se implementarán las API. Con el fin de cubrir adecuadamente esta parte de la arquitectura global del Set-Top-Box (STB), se debe desarrollar un software que gestione los recursos hardware de manera eficiente.

Teniendo en cuenta las características de un STB y sus exigencias, se observa que:

Para realizar el Sistema Operativo de Tiempo Real y Multitarea (SOTRM) que se necesita, se ha decidido abordar un desarrollo propio adaptado a las necesidades de un STB. Se evita así tanto el uso de un sistema operativo existente no adecuado como el posible pago de royalties. Esto último iría en contra del objetivo de obtener un producto competitivo en el mercado, en una futura implementación comercial.

Para el diseño del Sistema Operativo se ha decidido utilizar la norma uITRON 3.02.00, que es de libre uso y de la que existen múltiples implementaciones en diferentes procesadores. Sus características de modularidad e independencia del hardware la hacen muy adecuada para cumplir los objetivos de adaptación a las características deseadas para un STB, y de poder portar fácilmente la implementación realizada de una plataforma a otra.


Objetivos

El objetivo del proyecto global es el de investigar en las tecnologías surgidas en torno a la televisión digital en general y del STB en concreto.

Por ello y con el objetivo de disponer de manera rápida y fácil de una implementación de Sistema Operativo con el que realizar pruebas, se ha decidido realizar un prototipo del SOTRM sobre una plataforma PC-INTEL.

Este prototipo debe implementar todas las funcionalidades que sean necesarias para el desarrollo del software de las capas superiores (gestión de tareas, definición de rutinas de servicio de interrupción, comunicación y sincronización entre tareas, etc.), así como de gestionar de manera eficiente todos los dispositivos hardware de que pueda disponer un STB (mando a distancia, decodificadores hardware, etc.).

Además, se ha tenido en cuenta en todo momento, como objetivo adicional, la idea de la portabilidad, aislando adecuadamente todas aquellas partes del sistema operativo dependientes del hardware, de tal manera que el sistema operativo que se desarrolle se pueda utilizar con los mínimos cambios posibles sobre la futura plataforma hardware de un STB comercial.


Método de Desarrollo

Se divide la implementación en dos partes:

Esta división no es perfecta, por lo que se tratará de explicar claramente los puntos conflictivos a la hora de una posterior migración a otra plataforma.


 

Código PC-INTEL

Se irá paso a paso, hasta conseguir un sector de arranque que cargue el sistema operativo desde un disket, pase a modo protegido y disponga todo lo necesario para permitir la entrada por teclado y la salida por pantalla. Además se verá como inicializar el sistema de interrupciones:


Con todo esto ya se puede realizar un sistema de ejemplo general que cargue y ejecute un kernel en MP y permita el uso del teclado y la pantalla.
 


Código de EROS

Este código se basa en lo visto anteriormente, añadiendo las funcionalidades del SOTR.

Características

Las características básicas de la implementacón son:

A continuación se mostrarán los pasos dados, orientados al objetivo inicial de un SOTR basado en la norma ITRON 3.0:
 


 

Estado Actual