Anda di halaman 1dari 55

SISTEMAS OPERATIVOS EMBEBIDOS, CE Y TIEMPO REAL

PRESENTADO A: CARLOS GOMEZ


PRESENTADO POR: BRIGETH CEBALLOS 908514
BEATRIZ SERNA 908558

UNIVERSIDAD NACIONAL DE COLOMBIA


SEDE MANIZALES
SISTEMAS OPERATIVOS
23 DE OCTUBRE DEL 2012

INDICE

INTRODUCCION...........2
MARCO TEORICO.....3
CUERPO..4
Introduccin...4
Historia y evolucin...5
Presentacin16
Estructura y Componentes del sistema...17
Plataformas sobre las que trabaja18
Proceso de instalacin...23
Gestin de procesos y del procesador.....25
Gestin de memoria.27
Gestin de memoria auxiliar...28
Gestin de entrada y salida....31
Gestin de comunicaciones y seguridad.31
Soporte a tiempo real..34
Soporte para la nube e integracin a ella (cloud computing).35
Anlisis comparativo con Linux y Windows XP...38
Estadsticas de utilizacin a nivel mundial...39
Otros aspectos.........43
RESUMEN..45
CONCLUSIONES..50
OBSERVACIONES....51
BIBLIOGRAFIA...52

INTRODUCCION

Un sistema operativo embebido es aquel que est integrado en los circuitos de los
dispositivos electrnicos, entre estos dispositivos encontramos electrodomsticos,
telfonos mviles, radios, televisores, automviles, lectores de cdigos de barras,
equipos mdicos, asistentes digitales personales (PDA), etc. Estos sistemas
suelen tener algunas caractersticas de los sistemas de tiempo real los cuales han
sido desarrollados con el fin de con el fin de garantizar el cumplimiento de forma
adecuada de las tareas teniendo en cuenta las restricciones de tiempo lo que hace
necesario que el sistema sea determinista; pero los sistema operativo embebido
tienen limitaciones de tamao, memoria y consumo de electricidad que los hace
especiales; y no suelen ser visibles.
Windows CE es otro ejemplo de sistema operativo embebido el cual es un
integrante de la familia Windows que tiene un objetivo especial, proveer un
moderno sistema operativo de plataforma cruzada, multihilado y de tamao
pequeo. Cuando se habla de tamao, se refiere a la cantidad de memoria y de
almacenamiento necesario para albergar al sistema.
Ha sido notable la importancia y el aumento de la utilidad de los sistemas
operativos embebidos, pues hoy en da estamos rodeados de todo tipo de
aparatos electrnicos y este tipo de sistema operativo es el ms comn en
muchos de ellos puesto que estn limitados a un nmero fijo y escaso de tareas.
El objetivo de esta compilacin bibliogrfica es el poder definir distintas etapas y
componentes que integran los sistemas operativos embebidos y que le han
permitido lograr un mejor rendimiento de todos los componentes electrnicos en el
cumplimiento de sus funciones. Se comprende la historia, evolucin y visin
general de los sistemas operativos embebidos, ce y de tiempo real, conceptos del
funcionamiento interno, gestin de procesos, de memoria, comunicacin y
seguridad, tambin se presentan estadsticas para medir las tendencias de uso de
estos en el mercado actual.
Conocer el funcionamiento y los detalles de este tipo de sistemas es importante
para tener una visin como desarrollador que finalmente es uno de los objetivos
de la carrera de Administracin de Sistemas Informticos reconociendo que

cualquier desarrollo va a necesitar estar sobre un sistema operativo particular de


acuerdo a las actividades que realice el mismo.
MARCO TEORICO

Como parte de la investigacin a realizar sobre los sistemas operativos embebidos


es necesario tener una base de conocimiento que responda a incgnitas
singulares como lo son:
Qu son sistemas operativos embebidos?, Qu caractersticas presentan?,
Cmo se comportan? y otros interrogantes; cuyas respuestas las mostraremos a
continuacin.
Un sistema operativo embebido es aquel que ha sido creado para un sistema
embebido, es decir, un sistema de computacin limitado a un nmero fijo y escaso
de tareas. Aqu no entran, evidentemente, los ordenadores personales ni los
mviles, tabletas o dispositivos avanzados que conocemos.
Una peculiaridad de los sistemas embebidos es que son un todo con las
aplicaciones que ejecutan, lo que quiere decir que en muchos casos no es posible
instalar en ellos ningn tipo de software adicional.
Un uso muy comn de los sistemas embebidos es en los sistemas de tiempo real,
entendindose por sistemas en tiempo real a aquellos sistemas en los que el
control del tiempo es vital para el correcto funcionamiento. Los sistemas en tiempo
real necesitan realizar ciertas operaciones o clculos en un lmite de tiempo.
Donde ese lmite de tiempo resulta crucial.
Algunas de las caractersticas de estos sistemas es que son dependientes. Dentro
del concepto de dependencia surgen otros como confiabilidad, mantenimiento,
seguridad y disposicin. Estos aplican para sistemas embebidos que funcionan en
fbricas o plantas industriales que corren durante todo el da. Tambin, los
sistemas embebidos tienen que ser eficientes, tanto en el consumo de energa
como el cdigo que ocupan para funcionar, esto se debe a la limitada capacidad
de memoria de almacenamiento que poseen.

INTRODUCCION

En la cotidianidad nos encontramos con miles de herramientas como el


microondas, el auto, el ascensor, el equipo de audio, el avin los cuales son
controlados por computadoras que normalmente no poseen una pantalla, un
teclado o disco rgido, y no responden a lo que comnmente denominamos PC.
Pero realmente nunca nos detenemos para preguntarnos como logra desarrollar
todas sus funciones, la pregunta que podra surgir es que acaso son
inteligentes?, pues no es as simplemente son sistemas de computacin limitado
a un nmero fijo y escaso de tareas. Descartando, evidentemente, los
ordenadores personales ni los mviles, tablets o dispositivos avanzados que
conocemos; que tienen integrado un sistema operativo embebido y de tiempo real
que les permite desarrollar las actividades repetitivas y sencillas, para las que
fueron diseados estos electrodomsticos.
Una particularidad de los sistemas embebidos es que son un todo
con las aplicaciones que ejecutan, lo que quiere decir que en muchos casos no es
posible instalar en ellos ningn tipo de software adicional.
Windows CE es otro ejemplo de sistema operativo embebido el cual es un
integrante de la familia Windows que tiene un objetivo especial, proveer un
moderno sistema operativo de plataforma cruzada, multihilado y de tamao
pequeo. Cuando se habla de tamao, se refiere a la cantidad de memoria y de
almacenamiento necesario para albergar al sistema.

HISTORIA SISTEMAS OPERATIVOS EMBEBIDOS Y TIEMPO REAL

A finales de los 40's el uso de computadoras estaba restringido a aquellas


empresas o instituciones que podan pagar su alto precio, y no existan los
sistemas operativos. En su lugar, el programador deba tener un conocimiento y
contacto profundo con el hardware, y en el infortunado caso de que su programa
fallara, deba examinar los valores de los registros y paneles de luces indicadoras
del estado de la computadora para determinar la causa del fallo y poder corregir
su programa, adems de enfrentarse nuevamente a los procedimientos de apartar
tiempo del sistema y poner a punto los compiladores, ligadores, etc; para volver a
correr su programa, es decir, enfrentaba el problema del procesamiento serial
(serial processing).
La importancia de los sistemas operativos nace histricamente desde los 50's,
cuando se hizo evidente que el operar una computadora por medio de tableros
enchufables en la primera generacin y luego por medio del trabajo en lote en la
segunda generacin se poda mejorar notoriamente, pues el operador realizaba
siempre una secuencia de pasos repetitivos, lo cual es una de las caractersticas
contempladas en la definicin de lo que es un programa. Es decir, se comenz a
ver que las tareas mismas del operador podan plasmarse en un programa, el cual
a travs del tiempo y por su enorme complejidad se le llam "Sistema Operativo".
As, tenemos entre los primeros sistemas operativos al Fortran Monitor System
(FMS) e IBSYS.
Posteriormente, en la tercera generacin de computadoras nace uno de los
primeros sistemas operativos con la filosofa de administrar una familia de
computadoras: el OS/360 de IBM. Fue este un proyecto tan novedoso y ambicioso
que enfrent por primera vez una serie de problemas conflictivos debido a que
anteriormente las computadoras eran creadas para dos propsitos en general: el
comercial y el cientfico. As, al tratar de crear un solo sistema operativo para
computadoras que podan dedicarse a un propsito, al otro o ambos, puso en
evidencia la problemtica del trabajo en equipos de anlisis, diseo e implantacin
de sistemas grandes. El resultado fue un sistema del cual uno de sus mismos
diseadores patentiz su opinin en la portada de un libro: una horda de bestias
prehistricas atascadas en un foso de brea.
Surge tambin en la tercera generacin de computadoras el concepto de la
multiprogramacin, porque debido al alto costo de las computadoras era necesario
idear un esquema de trabajo que mantuviese a la unidad central de procesamiento
ms tiempo ocupada, as como el encolado (spooling) de trabajos para su lectura
hacia los lugares libres de memoria o la escritura de resultados. Sin embargo, se

puede afirmar que los sistemas durante la tercera generacin siguieron siendo
bsicamente sistemas de lote.
En la cuarta generacin la electrnica avanza hacia la integracin a gran escala,
pudiendo crear circuitos con miles de transistores en un centmetro cuadrado de
silicn y ya es posible hablar de las computadoras personales y las estaciones de
trabajo. Surgen los conceptos de interfaces amigables intentando as atraer al
pblico en general al uso de las computadoras como herramientas cotidianas. Se
hacen populares el MS-DOS y UNIX en estas mquinas. Tambin es comn
encontrar clones de computadoras personales y una multitud de empresas
pequeas ensamblndolas por todo el mundo.
Para mediados de los 80's, comienza el auge de las redes de computadoras y la
necesidad de sistemas operativos en red y sistemas operativos distribuidos. La red
mundial Internet se va haciendo accesible a toda clase de instituciones y se
comienzan a dar muchas soluciones (y problemas) al querer hacer convivir
recursos residentes en computadoras con sistemas operativos diferentes. Para los
90's el paradigma de la programacin orientada a objetos cobra auge, as como el
manejo de objetos desde los sistemas operativos. Las aplicaciones intentan
crearse para ser ejecutadas en una plataforma especfica y poder ver sus
resultados en la pantalla o monitor de otra diferente (por ejemplo, ejecutar una
simulacin en una mquina con UNIX y ver los resultados en otra con DOS). Los
niveles de interaccin se van haciendo cada vez ms profundos.
En los ltimos 10 aos el mundo de las comunicaciones ha cambiado
drsticamente. A partir del ao 1993 con el surgimiento de la WWW, una buena
parte de la poblacin del mundo tuvo acceso a una red de datos global que
durante mucho tiempo fue de uso exclusivo de la comunidad acadmica
universitaria y del departamento de defensa de los Estados Unidos de Amrica.
Este acercamiento masivo hacia esta red de redes conocida como Internet, trajo
consigo muchas ventajas, la ms importante de estas es sin duda la posibilidad de
achicar las distancias. La World Wide Web, permiti a los usuarios de la red
acceder de manera simple a una gran cantidad de informacin e incluso de una
manera sencilla colocar la propia informacin al alcance de todos los dems
usuarios. El navegado se volvi una herramienta de uso cotidiano en el hogar.
Con el tiempo Internet permiti realizar tareas que hace 10 aos demandaran
das u horas en unos pocos minutos y dio origen a nuevas ideas. La posibilidad de
actuar a distancia usando a Internet como medio para poder realizar operaciones
de control o mantenimiento tambin empez a cobrar vigencia. Y es sobre esto lo
que versa una parte importante de este trabajo, que toma como punto de partida la
posibilidad y el alcance de usar a Internet como un medio de fcil acceso para
permitir el control y el mantenimiento de dispositivos electrnicos. Por ejemplo
usando un simple navegador se puede tener un panorama completo y en tiempo

real del estado de una planta industrial, una finca o el sistema de seguridad de una
vivienda, y esto puede ser controlado desde cualquier parte del mundo que tenga
una conexin a Internet disponible.
Los Sistemas Operativos Embebidos y de Tiempo Real surgen a finales de 70s y
80s.
Los sistemas embebidos se encuentran disponibles a cada momento de nuestra
vida. El horno microondas, el auto, el ascensor, el equipo de audio, el avin son
controlados por computadoras que normalmente no poseen una pantalla, un
teclado o disco rgido, y no responden a lo que comnmente denominamos PC.

EVOLUCIN SISTEMAS OPERATIVOS EMBEBIDOS Y TIEMPO REAL

1981: QMX primer SO de microkernel para PCs, soportado por la PC de


IBM.

1982: QMX primer SO para PCs que soport un disco rgido (5MB Davong).

1983: QMX primer SO para PCs que corre en una 80286 en modo
protegido.

1984: QMX uno de los primeros en ofrecer procesamiento distribuido


transparente para PCs.

1985: QMX primer SO de tiempo real que corri en la primera 80386 de


Compaq.

1990: QMX primer microkernel de SO de tiempo real certificado por POSIX.

1992: QMX primer SO de tiempo real para trabajar en red con tolerancia a
fallos (FLEETTM).

1993: El primer relase de NetBSD (la versin 0.8) vio el mundo el 20 de


Abril de 1993.

1994: QMX primer sistema de microkernel con ventanas embebible (el


Photon microGUI).

1995: Naci OpenBSD a raz de la expulsin de Theo de Raadt del grupo


de desarrollo de NetBSD.

1996: QMX primer microkernel basado en POSIX para sistemas


profundamente embebidos (QNX/Neutrino). 1996: Windows CE 1.0:
lanzado comercialmente en este ao y su cdigo fuente fue escrito desde
cero, Parcialmente compatible con el Windows tradicional pues soporta una
parte de la famosa API Win32. Independiente del hardware pues es
compatible con las arquitecturas ms comunes de 32 bits.

1997: QMX primer buscador de escritorio para la web de sistemas


embebidos (Voyager TM).

1997: Windows CE 2.0 Basado en la versin predecesora 1.0 vio la luz en


1997. Se aadi soporte para procesadores Intel y AMD Soporta pantallas
con resolucin de 24 bits, conexin de red LAN Soporte de tecnologa
ActiveX Incorpora la mquina virtual java. Soporte parcial MFC (Microsoft
Foundatin Classes, una librera de clases en C++ para programacin bajo
Windows, incluida en MS. Visual C++) Conectividad USB e infrarrojos.
Soporte FAT e impresin.

1998: primero en ajustar un OS, GUI, browser, servidor, marcador, TCP/IP,


y ms dentro de un disco de 1.44M (1.44M Disco de Demostracin)

2000: Primero en ofrecer un host y plataforma grfica para los diseadores


de OS embebidos

2000: WindowsCE 3.0, esta versin sali al mercado en este ao con el fin
de competir con el sistema operativo de PALM, incorporacin de las
interrupciones con prioridades, mayor eficiencia en la gestin de threats y
en las comunicaciones entre procesos, mayor capacidad de

almacenamiento, es la base del sistema operativo PocketPC 2002, que se


poda encontrar entonces en algunas PDA y telfonos.

2002: Windows CE 4.0: Sistema operativo mucho ms robusto y eficiente a


nivel multiproceso que la anterior versin. Mayor grado de comunicacin y
sincronizacin con el sistema Windows tradicional. De l naci en Junio del
2003 la conocida versin Windows Mobile 2003. Prcticamente fue un
cambio de nombre y unas aplicaciones aadidas. 2003: Se lanza Microsoft
Windows CE .Net 4.0

2004: Microsoft publica a Windows CE .Net 4.2 a principios de ao. Se


lanza Windows XP Embedded.

2005: Windows CE 5.0: Penltima versin de este sistema operativo


lanzado en Mayo. Mejora del software ofimtico y multimedia. Mejoras en el
stack bluetooth. De l naci la versin Windows Mobile 5.0 disponible en
multitud de telfonos mviles y PDAs.

2007: Windows CE 6.0: ltima versin de este sistema operativo lanzado a


principios del ao. Un 30% superior en prestaciones a su predecesor
Windows CE 5.0. Es posible acceder mediante API a un I/O en un ciclo de
100us. Los mayores cambios se encuentran en el Kernel. La arquitectura
del sistema operativo ha sido completamente revisada. Cada proceso es
capaz de direccionar 2GB (antes 32Mb). El n de procesos simultneos ha
aumentado de 32 a 32.000.

HISTORIA DE WINDOWS CE EMBEBIDO

El sistema operativo ce se cre a partir de los sistemas operativos ya existentes


de la familia Microsoft como Windows 9x, Windows NT, que sistemas ya creados
los cuales se dedicaban a la compatibilidad con las aplicaciones con los Hardware
existentes en cual pretendida integrar multitareas. Ya que lo Windows NT quera

era convertirse en el sistema operativo predilecto de las empresas. Sin embargo


Windows CE pretenda es: proveer un moderno sistema operativo de plataforma
cruzada, multihilado y de tamao pequeo. Esta ltima caracterstica es la
principal diferencia con Windows 95 y Windows NT. Cuando se habla de tamao,
se refiere a la cantidad de memoria y de almacenamiento necesario para albergar
al sistema operativo. En un principio cuando se desarrollaba Windows CE se le dio
el nombre de pegasus conjuntamente se estaba desarrollando un nuevo
dispositivo el cual tendra como sistema operativo el Windows CE, a este
dispositivo se le llamo Handheld PC (HPC) o PC de bolsillo. Esta fue una de las
primeras plataformas en aceptar el uso de Windows CE
Otro dispositivo conocido es: la Palm-size PC o "PC del porte de la palma" que es
ms pequeo que el anterior que no tiene teclado sino que se tiene un
reconocimiento de un sistema de tacto y un panel de entrada que aparece en la
pantalla.
Estos dispositivos cuentan con bateras para obtener poder y duran 20 horas con
mucho uso o con poco uso pueden durar una semana, como una regla general se
dice que los dispositivos que usan Windows CE tienen bateras con vida ms
corta. A diferencia de los Windows 9x o NT el sistema operativo Windows CE no
necesita ser reiniciado cada vez que el usuario desee utilizarlo, de hecho se
pueden configurar las mquinas para que cuando el usuario le haga una entrada
al sistema el dispositivo se active.
Estos dispositivos solo venan en una pequea tarjeta que se inserta en un HPC o
en un Palm-size PC.
Tomaremos como ejemplo HPC para mirar cual es el hardware que necesita el
cual nos permitir conocer cmo funciona este sistema operativo. Este dispositivo
el cual se le implemento el Windows CE fue uno de los primeros, las tendencias y
las tecnologas han cambiado
Un PC de Bolsillo o HPC casi siempre se compone de una pantalla de 480x240 o
640x240 en escala de gris, acompaada de un pequeo teclado. En vez de
mouse, el dispositivo tiene un panel de contacto que cubre la pantalla. Todo HPC
incluye un puerto serial y un puerto infrarrojo de 115 Kbps. Los sistemas tienen un
slot PCMCIA o un slot de mini tarjeta. La configuracin de la memoria fsica es
muy interesante en un HPC. Un PC de bolsillo tpico tiene 4 MB 8 MB de
memoria ROM y 2 MB 4 MB de RAM. La memoria ROM contiene al sistema

10

operativo y a la suite de aplicaciones de bolsillo que se venden con Windows CE


(Word y Excel), a los que se les ha bautizado como Pocket Word y Pocket Excel
(Word de Bolsillo y Excel de Bolsillo). Sin embargo, y debido a la naturaleza de la
memoria ROM las aplicaciones no pueden slo ejecutarse en ROM, las
aplicaciones no slo leen de memoria, sino que tambin escriben. Por lo tanto se
puede concluir que en la memoria ROM residen las instrucciones y valores de slo
lectura mientras que algo de RAM debe utilizarse para los valores que las
aplicaciones deseen escribir en algn momento. La memoria RAM necesaria para
el sistema operativo mismo es de cerca de 500 KB, y las aplicaciones en realidad
no ocupan mucho. Por ejemplo una instancia de Pocket Word utiliza solamente 16
K de RAM cuando se carga. La memoria RAM se divide en dos partes, una para la
RAM del sistema utilizada por el sistema operativo y las aplicaciones, y la otra
parte, denominada almacn de objeto, para el almacenamiento de datos. Los
archivos que se guardan en el almacn de objeto, no son guardados tal cual son,
sino que son comprimidos en un radio 2:1. Los HPCs no tiene unidades de disco
flexibles, ni discos duros, sin embargo se soporta SRAM y Tarjetas de PC Flash
ATRA en dispositivos con slots PC Card. Rompiendo con la tradicin, los HPC
actualmente no utilizan procesadores Intel o compatibles con Intel. En cambio, los
HPC actualmente soportan el uso de procesadores RISC: El Hitachi SH3, el NEC
VR4101 y el Phillips 3910 (los dos ltimos compatibles con el procesador MIPS).
Debido a que los procesadores NEC y Phillips utilizan un subconjunto comn de
las instrucciones MIPS, se puede decir que desde el punto de vista software,
solamente se soportan dos CPUs: MIPS y SH3.
Windows CE 1.00 y 1.01 fueron el primer paso en la creacin de un sistema
operativo Windows cuyo objetivo no era un PC. Si bien, mucha gente piensa que
CE significa "Compact Edition", la verdad es que ese nombre puede engaar al
programador y al usuario, porque al decir Edicin Compacta suena a "subconjunto
de Windows", y en realidad Windows CE fue escrito desde cero, a diferencia por
ejemplo de Windows 95 que fue escrito basado en Windows 3.x. Como se ha
dicho, la primera versin de Windows CE se embarc con los HPC.
Windows CE Windows CE fue el primer paso en la creacin de un sistema
operativo cuyo objetivo no era un PC. Mucha personas piensan que CE significa
Compact Edition, la verdad este nombre puede engaar al programador y al
usuario, porque al decir edicin compacta suena como una parte pequea de
Windows, pero en realidad Windows CE fue escrito desde cero, a diferencia por
ejemplo de Windows 95 que fue escrito basado en Windows 3.x. como se dijo
anteriormente la primera versin de Windows CE se embarc con los HPC.

11

EVOLUCION DE WINDOWS CE

La evolucin de Windows CE el cual se inici muy bsicamente fue incrementando


a medida que los usuarios fueron necesitando muchas ms aplicaciones en sus
dispositivos. Conoceremos un poco de la evolucin de Windows CE (versiones)
Windows CE 1.0.
Cdigo fuente fue escrito desde cero y fue lanzado comercialmente en el ao
1996. Parcialmente compatible con el Windows tradicional pues soporta una parte
de la famosa API Win32. Independiente del hardware pues es compatible con las
arquitecturas ms comunes de de 32 bits.
Windows CE 2.0
Basado en la versin predecesora 1.0 vi la luz en 1997. Se aadi soporte para
procesadores Intel y AMD Soporta pantallas con resolucin de 24 bits Conexin de
red LAN Soporte de tecnologa ActiveX Incorpora la mquina virtual java. Soporte
parcial MFC (Microsoft Foundatin Classes, una librera de clases en C++ para
programacin bajo Windows, incluida en MS. Visual C++) Conectividad USB e
infrarrojos Soporte FAT e impresin
Windows CE 3.0
Esta versin sali al mercado en el ao 2000 con el fin de competir con el sistema
operativo de PALM. Incorporacin de las interrupciones con prioridades. Mayor
eficiencia en la gestin de threats y en las comunicaciones entre procesos Mayor
capacidad de almacenamiento. Es la base del sistema operativo PocketPC 2002,
que se poda encontrar entonces en algunas PDA y telfonos.
Windows CE 4.0

12

Esta nueva versin del sistema operativo apareci en Marzo del ao 2002 Sistema
operativo mucho ms robusto y eficiente a nivel multiproceso que la anterior
versin. Mayor grado de comunicacin y sincronizacin con el sistema Windows
tradicional. De el naci en Junio del 2003 la conocida versin Windows Mobile
2003. Prcticamente fue un cambio de nombre y unas aplicaciones aadidas.
Windows CE 5.0
Penltima versin de este sistema operativo lanzado en Mayo del ao 2005.
Mejora del software ofimtico y multimedia. Mejoras en el stack bluetooth De l
naci la versin Windows Mobile 5.0 disponible en multitud de telfonos mviles y
PDAs.
Windows CE 6.0
ltima versin de este sistema operativo lanzado a principios de este ao. Un 30%
superior en prestaciones a su predecesor Windows CE 5.0 Es posible acceder
mediante API a un I/O en un ciclo de 100us Los mayores cambios se encuentran
en el Kernel. La arquitectura del sistema operativo ha sido completamente
revisada. Cada proceso es capaz de direccionar 2GB (antes 32Mb) El n de
procesos simultneos han aumentado de 32 a 32.000 ARQUITECTURA DE
WINDOWS CE

CARACTERSTICAS GENERALES

SISTEMAS OPERATIVOS EMBEBIDOS


Los sistemas embebidos y los de tiempo real son tecnologas inmersas en el diario
vivir y generalmente no se identifican fciles y tampoco se definen los sistemas
operativos que hacen posible su manipulacin y que a la vez administran los
recursos de dichos dispositivos para maximizar el desempeo.
Un sistema operativo embebido es aquel que est integrado en los circuitos de los
dispositivos electrnicos, entre estos dispositivos se encuentra electrodomsticos,

13

telfonos mviles, radios, televisores, automviles, lectores de cdigos de barras,


equipos mdicos, asistentes digitales personales (PDA), etc.
Estos sistemas suelen tener algunas caractersticas de los sistemas de tiempo real
pero tambin tienen limitaciones de tamao, memoria y consumo de electricidad
que los hace especiales y no suelen ser visibles.
Algunas caractersticas son:
Fiabilidad y seguridad: Un fallo en un sistema de control puede hacer que el
sistema controlado se comporte de forma peligrosa o antieconmica. Es
importante asegurar que si el sistema de control falla lo haga de forma que el
sistema controlado quede en un estado seguro, hay que tener en cuenta los
posibles fallos o excepciones en el diseo
Eficiencia: Gran parte de los sistemas de control deben responder con gran
rapidez a los cambios en el sistema controlado
Interaccin con dispositivos fsicos: Los sistemas empotrados interaccionan
con su entorno mediante diversos tipos de dispositivos que normalmente no son
convencionales (teclados, impresoras): convertidores A/D y D/A, pwm, entradas y
salidas digitales paralelo y serie, (interfases con sensores, actuadores, perifricos
especiales). Los componentes del software que controlan el funcionamiento de
estos dispositivos son, en general, dependientes del sistema concreto.
Robustez: Embarcados en sistemas con movimiento o que pueden ser
transportados, sujetos a vibraciones e incluso impactos (coches, robots,
instrumentacin porttil). No siempre trabajan en condiciones ptimas de
temperatura, humedad, y limpieza.
Entre las plataformas de los sistemas operativos embebidos tenemos:
QNX es un sistema operativo embebido desarrollado por QNX Software Systems
Ltd, para aplicaciones de dispositivos electrnicos, telecomunicaciones, sistemas
automotrices, etc.; que necesitan una gran confiabilidad, desempeo,
funcionalidades especficas, y una escalabilidad masiva.
Linux embebido es un sistema Linux tpico del cual se han removido programas
de utilidad, herramientas, y otros servicios del sistema que no son necesarios en
un ambiente embebido. Linux para los dispositivos embebidos comenz con el

14

soporte del kernel y el compilador para los microprocesadores ms populares de


32 bits: x86, ARM, PowerPC, MIPS y SH. Y luego continu con la aparicin de
diferentes distribuciones de Linux con soporte para caractersticas especficas de
los sistemas embebidos.
Windows XP para sistemas embebidos. Aunque Microsoft ha mantenido a los
fabricantes de sistemas operativos alternativos a Windows contra la pared en lo
que se refiere a equipos de sobremesa, su posicin en la batalla por la
supremaca en el terreno de los sistemas operativos para dispositivos que no
fueran PC era vulnerable. De ah que Microsoft da un paso ms en este sector,
lanzando la versin para dispositivos embebidos en la Conferencia para
desarrolladores de este tipo de sistemas que se celebra en Las Vegas. Esta
decisin parece ir en consonancia con las predicciones que apuntan a una
progresiva inclusin de microprocesadores en casi cualquier tipo de aparatos
(frigorficos, coches, etc).
DOS
est estrechamente ligado al progresivo desarrollo de los
microprocesadores de arquitectura x86 de Intel. Y es que es un sistema operativo
que hay que conocer porque sigue estando en vigor gracias a su estabilidad ya
que se desarrollaba en paralelo con la tecnologa de Intel e IBM y porque es un
sistema operativo muy simple, monousuario y monotarea. En otras palabras, DOS
slo ejecuta un programa cada vez
Java para sistemas embebidos. La tecnologa Java es cada vez ms utilizada en
sistemas embebidos avanzados, debido a sus capacidades inherentes de soporte
de red, optimizacin de dispositivos y procesado de datos. La mayora de las
caractersticas de la plataforma Java SE pueden ser ahora empleadas para el
desarrollo embebido, gracias a la capacidad cada vez mayor del nuevo hardware
disponible en el mercado.
SISTEMAS OPERATIVOS CE
Windows CE fue introducido en un conjunto de productos de PC de mano en el
ao 1996, pero posteriormente se transformo en un sistema operativo embebido
altamente configurable. Entre sus ventajas se encuentran que incluye un
subconjunto del API Win32 enfocado a los servicios que comnmente se
necesitan, as como una optimizacin en el consumo de energa. En este sistema
cuando se habla de tamao, se refiere a la cantidad de memoria y de
almacenamiento necesario para albergar al sistema.

15

Mientras se desarrollaba Windows CE se le dio el nombre de Pegasus y junto a l


se estaba diseando un nuevo dispositivo que lo tendra ms tarde como sistema
operativo. A este dispositivo se le llam Handheld PC (HPC) o PC de bolsillo. CE,
adicionando un conjunto completo de herramientas de desarrollo para la
construccin de productos de diseo sofisticados, con aplicaciones poderosas
para rodar en el hardware ms actual.
Es un sistema operacional vigoroso, en tiempo real, para el desarrollo gil de
dispositivos de ltima generacin conectados, inteligente y compacto. ste incluye
el software necesario para crear dispositivos basados en el Windows
Caractersticas
Windows CE da un soporte bastante completo a las caractersticas ms
avanzadas que encontramos en computadores empotrados, tanto de los
procesadores como de otros elementos hardware.
Es muy modular
La API de Windows CE est pensada para facilitar la portabilidad con los
sistemas operativos Windows para SSPG.
Plataforma
Windows CE soporta ms de 160 modelos de procesadores, pertenecientes a 5
tipos de arquitecturas distintas: ARM, MIPS, PowerPC, SH y x86 (modo protegido).
Son procesadores con una serie de caractersticas esenciales para este SO:
La cantidad de memoria necesaria para almacenar el sistema operativo depende
de los mdulos y funciones que necesite la plataforma. La versin mnima del SO,
que incluye el kernel y sistema de ficheros (servicios que veremos en la siguiente
seccin), ocupa unos 200 KB si se compila para un x86 en versin Release (400
KB en versin Debug). Una configuracin con el mximo nmero de mdulos
puede llegar casi a los 30 MB en una compilacin en modo debug para
procesadores de la familia MIPS.

SISTEMAS OPERATIVOS TIEMPO REAL

16

Un proceso o tarea de tiempo real es el que se ejecuta en conexin con algn


proceso, funcin o conjunto de sucesos externos al sistema informtico y que
debe cumplir uno o ms plazos para interactuar en forma correcta y eficiente con
el entorno exterior.
Caractersticas
Pequeo tamao (con una mnima funcionalidad asociada)
Cambios de contexto rpidos
Capacidad para responder rpidamente a interrupciones externas
Multitarea con herramientas de comunicacin entre procesos, como semforos y
seales
Uso de archivos secuenciales para almacenar datos a alta velocidad
Planificacin expropiativa basada en prioridades
Reduccin de los intervalos en los que estn deshabilitadas las interrupciones
Alarmas especiales y temporizadores

PRESENTACIN SISTEMAS OPERATIVOS EMBEBIDOS

Se entiende por sistemas embebidos a una combinacin de hardware y software


de computadora, sumado tal vez a algunas piezas mecnicas o de otro tipo,
diseado para tener una funcin especfica. Es comn el uso de estos dispositivos
pero pocos se dan cuenta que hay un procesador y un programa ejecutndose
que les permite funcionar. Esto ofrece un contraste con la computadora personal,
que si bien tambin est formada por una combinacin de hardware y software
ms algunas piezas mecnicas (discos rgidos, por ejemplo). Sin embargo la
computadora personal no es diseada para un uso especfico. Si no que es
posible darle muchos usos diferentes. Muchas veces un sistema embebido es un
componente de un sistema mucho ms grande, como por ejemplo los sistemas de
frenos o el sistema de inyeccin de combustible, en automviles actuales son
sistemas embebidos. Esta combinacin de software y hardware puede ser
reemplazada en muchos casos por un circuito integrado que realice la misma
tarea. Pero una de las ventajas de los sistemas embebidos es su flexibilidad. Ya
que a la hora de realizar alguna modificacin resulta mucho ms sencillo modificar
una lnea de cdigo al software del sistema embebido que reemplazar todo el
circuito integrado.

17

Un uso muy comn de los sistemas embebidos es en los sistemas de tiempo real,
entendindose por sistemas en tiempo real a aquellos sistemas en los que el
control del tiempo es vital para el correcto funcionamiento. Los sistemas en tiempo
real necesitan realizar ciertas operaciones o clculos en un lmite de tiempo.
Donde ese lmite de tiempo resulta crucial. Un ejemplo claro de un sistema de
tiempo real es el control de trfico areo.

ESTRUCTURA DE UN SISTEMA EMBEBIDO

Las principales caractersticas de un sistema embebido son el bajo costo y


consumo de potencia. Dado que muchos sistemas embebidos son concebidos
para ser producidos en miles o millones de unidades, el costo por unidad es un
aspecto importante a tener en cuenta en la etapa de diseo. Generalmente, los
sistemas embebidos emplean procesadores muy bsicos, relativamente lentos y
memorias pequeas para minimizar los costos. En estos sistemas la velocidad no
solo est dada por la velocidad del reloj del procesador, sino que el total la
arquitectura se simplifica con el fin de reducir costos. Normalmente, un sistema
embebido emplea perifricos controlados por interfaces seriales sincrnicas, las
cuales son muchas veces ms lentas que los perifricos empleados en un PC. Los
sistemas embebidos debern reaccionar a estmulos provenientes del ambiente,
respondiendo con fuertes restricciones de tiempo en muchos casos, por lo tanto,
un sistema se dice que trabaja en tiempo real si la informacin despus de la
adquisicin y tratamiento es todava vigente. Es decir, que en el caso de una
informacin que llega de forma peridica, los tiempos de adquisicin y tratamiento
deben ser inferiores al perodo de actualizacin de dicha informacin. Un sistema
embebido puede o no ser de tiempo de real dependiendo de los requerimientos
especficos de la aplicacin que se quiere implementar.
Los programas en estos sistemas se ejecutan minimizando los tiempos muertos y
enfrentando fuertes limitaciones de hardware, ya que usualmente no tienen discos
duros, ni teclados o monitores, una memoria flash reemplaza los discos y algunos
botones y una pantalla LCD normalmente reemplazan los dispositivos de interfaz.
El software que controla un dispositivo de hardware, por ejemplo en una memoria
ROM, Flash o un circuito integrado se conoce como Firmware. Tpicamente la
programacin en estos dispositivos se realiza en lenguaje ensamblador o en

18

lenguaje C, actualmente se han desarrollado algunas mquinas virtuales y otros


compiladores que permiten el diseo de programas ms complejos.
COMPONENTES DE UN SISTEMA EMBEBIDO
Un sistema embebido en principio estara formando por un microprocesador y un
software que se ejecute sobre este. Sin embargo este software necesitara sin
duda un lugar donde poder guardarse para luego ser ejecutado por el procesador.
Esto podra tomar la forma de memoria RAM o ROM, todo sistema embebido
necesitara en alguna medida una cierta cantidad de memoria, la cual puede
incluso encontrarse dentro del mismo chip del procesador. Adems de esto
normalmente un sistema embebido contara con una serie de salidas y entradas
necesarias para comunicarse con el mundo exterior. Debido a que las tareas
realizadas por sistemas embebidos son de relativa sencillez, los procesadores
comnmente usados cuentan con registros de 8 o 16 bits. En su memoria solo
reside el programa destinado a gobernar una aplicacin determinada. Sus lneas
de entrada/salida soportan el conexionado de los sensores y actuadores del
dispositivo a controlar y todos los recursos complementarios disponibles tienen
como nica finalidad atender a sus requerimientos. Estas son las nicas
caractersticas que tienen en comn los sistemas embebidos, todo lo dems ser
totalmente diferente para cada sistema embebido en particular debido a la
inmensa diversidad de aplicaciones disponibles.

PLATAFORMAS SOBRE LAS QUE TRABAJAN LOS SISTEMAS OPERATIVOS


EMBEBIDOS

Linux en sistemas embebidos


Linux est presente en muchas partes. Quiz an nohaya ganado la batalla en los
ordenadores personales, pero definitivamente es el nmer uno en el rea de los
sistemas embebidos. Sin saberlo, nos rodean miles de dispositivos que funcionan
con Linux Al contrario de lo que pueda parecer, Embedded Linux no es una
versin reducida de Linux. El calificativo embebido realmente hace referencia a
la funcionalidad de la aplicacin, no a la funcionalidad de Linux.La fiabilidad de
Linux es consecuencia directa de esta filosofa que lleva implcita la aportacin
altruista de miles de programadores de todo el mundo observando el cdigo,
mejorndolo, cambindolo y probndolo en miles de configuraciones posibles del
19

sistema. Linux para los dispositivos embebidos comenz con el soporte del kernel
y el compilador para los microprocesadores ms populares de 32 bits: x86, ARM,
PowerPC, MIPS y SH. Y luego continu con la aparicin de diferentes
distribuciones de Linux con soporte para caractersticas especficas de los
sistemas embebidos. Gracias a la disponibilidad del cdigo fuente, a la ausencia
de royalties y al soporte de los micros y tecnologas modernas, Linux est
actualmente atacando de forma feroz el mercado de los RTOS. 13 Uno de los
cambios fundamentales en Linux es la inclusin del proyecto uClinux en el kernel
principal. El proyecto uClinux (que puede pronunciarse como "u-c-linux" [en
ingls "you-see-Linux"], aunque en rigor debe escribirse con la letra griega "mu")
significa Linux para Microcontroladores. Esta variante de Linux ha sido un pila
fundamental para su aceptacin en el mercado embebido, y su inclusin en la
versin oficial debera aumentar an ms el desarrollo en este campo. Al contrario
que las variantes de Linux a las que estamos acostumbrados, en los sistemas
embebidos no tenemos todas las capacidades del kernel, debido a limitaciones de
hardware.
La principal diferencia en estas variantes es la ausencia de MMU (memory
management unit o "unidad de gestin de memoria" - lo que hace que un sistema
operativo pueda trabajar en modo protegido) integrada en el procesador. Aunque
suelen ser sistemas Linux multitarea, no tienen proteccin de memoria ni otras
caractersticas asociadas. (Sin proteccin de memoria, es posible que un proceso
aventurero lea los datos de otros procesos, o incluso que los haga colgarse.) Esto
reduce su utilidad en un sistema multiusuario, pero los hace ideales para una
agenda electrnica (PDA) de bajo coste o un dispositivo dedicado. Es difcil
exagerar la importancia de este cambio de arquitectura en Linux 2.6: hasta el
momento, todas las versiones seguan afectadas (por ms remotamente que
fuera) por las limitaciones inherentes al trabajo inicial de Linus en su Intel 80386.
Hay varias lneas nuevas de procesadores embebidos con soporte en Linux 2.6,
incluyendo la serie Hitachi H8/300, el procesador NEC v850, y la lnea de
procesadores embebidos m68k diseada por Motorola. stos ltimos son los ms
familiares para el usuario corriente de Linux, ya que estn en el corazn de las
agendas Palm Pilot desde el principio (la Palm 1000). Otros modelos, con
nombres tan sugerentes como DragonBall o ColdFire, son utilizados en sistemas y
placas de evaluacin fabricadas por Motorola, Lineo, Arcturus, y otras empresas.
Por desgracia, la v2.6 todava no permite usar otros procesadores m68k ms
antiguos sin MMU (como los procesadores 68000 utilizados en los primeros
Macintosh), pero es bastante probable que surjan proyectos amateur para incluir
stos sistemas y otros parecidos. Aunque no sea parte de la inclusin de uClinux
(al disponer de MMU), esta nueva revisin puede usarse tambin en los

20

procesadores de Axis Communications, la serie ETRAX CRIS (Code Reduced


Instruction Set, o "Conjunto Reducido de Instrucciones de Cdigo"). (Hay que
sealar que la inclusin de este procesador lleg durante el ciclo de
mantenimiento del kernel 2.4 -- bastante despus de que saliera la versin 2.4.0.)
Es un procesador embebido usado sobre todo en equipamiento de redes. El kernel
no incluye todava soporte para variantes sin MMU, pero varios proyectos externos
estn ya trabajando en ello. Adems de soporte para hardware, hay tambin
mejoras importantes resultantes de la integracin de sistemas embebidos en el
kernel principal.
Mientras que la mayora de ellas no son visibles, la robustez general del sistema
operativo se ve mejorada por cambios como la capacidad de construir un sistema
completo sin soporte de swap.
Windows XP para sistemas embebidos
Aunque Microsoft ha mantenido a los fabricantes de sistemas operativos
alternativos a Windows contra la pared en lo que se refiere a equipos de
sobremesa, su posicin en la batalla por la supremaca en el terreno de los
sistemas operativos para dispositivos que no fueran PC era vulnerable. De ah que
Microsoft da un paso ms en este sector, lanzando la versin para dispositivos
embebidos en la Conferencia para desarrolladores de este tipo de sistemas que se
celebra en Las Vegas. Esta decisin parece ir en consonancia con las
predicciones que apuntan a una progresiva inclusin de microprocesadores en
casi cualquier tipo de aparatos (frigorficos, coches, etc). Adems, con esta
iniciativa Microsoft hace frente a la competencia surgida por parte, por ejemplo, de
Linux que, segn muchos analistas, permite reducir costes, ya que no carga el
precio de los royalties. Tambin existe la opcin de utilizar un sistema propietario
como los desarrollados por la compaa Wind River Systems cuyo punto fuerte es
su gran capacidad para trabajar en tiempo real, su alta resistencia a fallos y la
posibilidad de procesar comandos de forma inmediata. Sera el caso, por ejemplo,
de aparatos mdicos que deben ser muy fiables y rpidos.

DOS en sistemas embebidos


Al ritmo que marcha la informtica, cualquiera dira que el DOS es un sistema
operativo antiqusimo, ya superado en gran medida por otros sistemas operativos
de escritorio como Windows y Linux y, en cierta forma, prcticamente olvidado.
Como si fuera algo de otro mundo. Sin embargo, hace tan slo diez aos casi
cualquier ordenador funcionaba con este sistema.
21

El DOS est estrechamente ligado al progresivo desarrollo de los


microprocesadores de arquitectura x86 de Intel. Y es que es un sistema operativo
que hay que conocer porque sigue estando en vigor gracias a su estabilidad.
Qu por qu es tan estable? Pues porque se desarrollaba en paralelo con la
tecnologa de Intel e IBM y porque es un sistema operativo muy simple,
monousuario y monotarea. En otras palabras, DOS slo ejecuta un programa cada
vez. Es obvio, que para un ordenador personal el DOS resulta bastante intil. Pero
y para un dispositivo electrnico? La mayora de ellos slo tienen que realizar
una tarea de forma repetitiva... Adems de su reducido tamao y de los escasos
recursos que necesita, por ejemplo ROM-DOS posee algunas caractersticas que
marcan la diferencia de forma significativa: RXE (Relocatable Executable): En
DOS, los programas se cargan en RAM antes de proceder a su ejecucin. La
tecnologa RXE permite convertir un programa estndar en un programa que se
puede ejecutar directamente desde ROM. ROM-DOS BUILD Utility: Permite aadir
y quitar caractersticas al sistema operativo, reduciendo as el tamao final del
kernel. Carga dinmica de drivers de dispositivo: ROM-DOSTM tiene la capacidad
de detectar el hardware y cargar drivers de dispositivo de forma dinmica, lo que
le permite auto configurarse segn el entorno. Entre otros aparatos, este sistema
operativo podemos encontrarlo en:
Cmaras digitales
Dispositivos de captura de datos
Cajeros automticos
Dispositivos GPS

Java para sistemas embebidos


Sun Microsystems, Inc., creadora y mxima defensora de la tecnologa Java,
amplia su oferta para el mercado de desarrollo embebido con el lanzamiento de
dos nuevas ediciones de Java Platform Standard Edition (Java SE). Se trata de
una versin "headless" con un tamao reducido que emplea menos de 23 Mb de
espacio de almacenamiento, y de una versin para usuarios de PowerPC.
La tecnologa Java es cada vez ms utilizada en sistemas embebidos avanzados,
debido a sus capacidades inherentes de soporte de red, optimizacin de
dispositivos y procesado de datos. La mayora de las caractersticas de la
plataforma Java SE pueden ser ahora empleadas para el desarrollo embebido,
22

gracias a la capacidad cada vez mayor del nuevo hardware disponible en el


mercado. La versin "headless" (sin soporte grfico) de Java SE requiere slo 23
Mb de espacio de almacenamiento y es ideal para desarrolladores de software
para dispositivos embebidos que quieran aprovechar las slidas capacidades de
red y procesamiento, y el rendimiento de la tecnologa Java. Por su parte, la
plataforma para PowerPC es una versin estable de Java SE diseada
especficamente para el procesador PowerPC, que actualmente est muy
extendido entre desarrolladores de dispositivos embebidos a gran escala (no
telfonos mviles). Hay dos tendencias convergentes en el mercado de
dispositivos actuales: una es que la potencia y capacidad de escalar del
procesador segn dicta la ley de Moore- hace posible la aparicin de plataformas
ms pequeas y ms potentes para su uso en dispositivos embebidos; y la otra es
que ms y ms dispositivos se estn conectando a Internet todos los das. Esto
significa que el mercado de dispositivos embebidos est evolucionando
rpidamente y quiz est convirtindose en el principal entorno informtico para
este siglo", afirma Jos Manuel Estrada, arquitecto Java en Sun Java SE ofrece a
los desarrolladores de dispositivos embebidos la capacidad para desplegar
aplicaciones en mltiples plataformas hardware, y cuenta con caractersticas como
genricos, plantillas y compiladores que no estn disponibles en ningn otro
lenguaje de programacin. Java Native Interface (JNI) proporciona a los
desarrolladores la capacidad de acceder a sus libreras de cdigo C/C++
directamente, sin necesidad de reescribir cdigo. Adems, los desarrolladores
pueden acceder a un amplio abanico de cdigo libre y de fuente abierta, as como
participar junto a otros desarrolladores de software Java en proyectos en
comunidad como NetBeans, Tomcat, Apache, Derby y muchos otros. Es
importante sealar que las nuevas versiones de Java SE no restan valor a la
plataforma Java Platform Micro Edition (Java ME). La tecnologa Java ME sigue
siendo una plataforma estndar de primera lnea para el desarrollo embebido
tradicional en dispositivos con poca memoria y potencia de procesador (tales
como telfonos mviles, PDAs, procesadores embebidos en pequeas
impresoras, copiadoras, etc.). Paralelamente a las dos nuevas versiones de Java
SE, Sun tambin ha anunciado un nuevo servicio de ajuste y pruebas para
optimizar el rendimiento de la plataforma Java SE en despliegues embebidos
Windows CE es un sistema operativo modular compuesto de varios elementos
software. Estos elementos son interfaces compatibles con Win32 y estas
interfaces permiten que cada uno de los elementos software puedan integrarse
entre s. Cada elemento comprende varios componentes de nivel ms bajo y los
diseadores del sistema tienen la posibilidad de incluir o excluir estos
componentes de nivel ms bajo segn sus necesidades.

23

Es posible que un desarrollador excluya mdulos como USER y GDI, obteniendo


as un Windows CE sin interfaz de usuario. Esta caracterstica permite ahora, que
Windows CE funcione en sistemas empotrados (Embedded Systems) en los
cuales todo es controlado mediante memoria ROM y no hay interfaz de usuario, ya
que por lo general los sistemas empotrados son automatizaciones donde no hay
intervencin humana. Windows CE debido a su tamao, es ideal para realizar
trabajo en tiempo real; permite llevar la API Win32 a sistemas automatizados de
tiempo real.
Comenzando por el fondo, los principales elementos que conforman el sistema
operativo son:
La capa de abstraccin OEM denominada OAL (OEM Abstraction Layer), que
incluye la administracin de poder, los drivers de dispositivos y los servicios de las
tarjeta de PC (PC Card); EL Kernel de Windows CE, USER, GDI, sistemas de
archivos y bases de datos; Los protocolos de comunicaciones IRDA y TCP/IP;
Las distintas APIs; La conectividad remota, Internet Explorer para Windows CE
El shell. Como se dijo anteriormente un diseador puede incluir o excluir algunos
de estos elementos (por ejemplo, el Internet Explorer) segn sus necesidades.

PROCESO DE INSTALACIN DE UN SISTEMAS OPERATIVOS EMBEBIDOS


Los pasos necesarios para la instalacin de los sistemas embebidos son:
1. Conocer la arquitectura hardware del dispositivo.
2. Configurar el kernel incluyendo los controladores para esos dispositivos y
eliminar lo que no sirve.
3. Crear el script de configuracin y ejecucin de la aplicacin embebida.
4. Configurar y compilar la busybox incluyendo la aplicacin y el script.
5. Compilar el kernel
6. Prueba de ejecucin
La arquitectura

24

Para generar el kernel correcto es necesario conocer lo ms posible la


arquitectura subyacente. Si disponemos del manual o datasheet del dispositivo
podemos determinar los controladores necesarios. Si este no es nuestro caso,
podemos arrancar con una distribucin linux live (Ej. Ubuntu) y determinar que
controladores son los necesarios analizando los mdulos cargados y el rbol de
ficheros generados bajo /sys.
Configuracin del Kernel
El configurar correctamente el kernel es necesario para que tenga una huella
pequea pero con toda la funcionalidad requerida.
1. Seleccionar la arquitectura "ms cercana/compatible" .
2. Deshabilitar "Enable loadable modules support", para
inscrutar los
controladores dentro de la imagen y no depender de mdulos externos.
3. Seleccionar el modo apropiativo. Si ese el caso se necesita poca latencia,
luego se selecciona el modo Apropiativo "Preemption Model->Preemptible
Kernel. Si por el contrario el sistema procesa transacciones a modo de servidor
es conveniente usar "No force preemption". Por defecto el kernel usa el trmino
medio, Voluntary Preemption.
4. Reloj. Si la aplicacin necesita temporizacin de alta precisin se debe de
activar el temporizador de alta resolucin.
5. Dispositivos de bloque. Activar unicamente los controladores SATA/PATA/IDE
de el dispositivos.
6. USB. Es habitual habilitar el uso de USB 2.0 y la clase USB HID para poder
usar teclados, ratones, etc. Se deshabilita todo lo dems.
7. Sistema de archivos. Seleccionamos el sistema de archivos que necesitemos
(recomendable sistema de archivos con Jourling, ej. ext3 o reiserfs). En
sistemas con poco disco suele usarse a menudo el JFFS2 como sistemas de
archivos para memorias flash.
8. Video Linux. Normalmente se deshabilita.
9. sonido
Despus de seleccionar los controladores necesarios se procede a generar una
imagen del kernel "normal". En este caso se debe construir un kernel que despus
de inicializarse no monte un sistema de archivos dentro de un disco duro
(procedimiento normal), sino que monte un sistema de archivos temporal que va
comprimido y embebido dentro de la propia imagen del kernel.

25

Para lograr esto se debe especificar un fichero especial que sirve de gua para
generar este sistema de archivos.
Aplicacin embebida
El objetivo de generar este kernel es poder correr la aplicacin en un sistema
embebido. Se debe procurar generar la aplicacin teniendo muy en cuenta la
arquitectura subyacente y aprovechando todo su potencial. Es recomendable si
procede, generar un ejecutable esttico e incluir herramientas de depuracin
remota o diagnsticos (ejecucin, estado temperatura, carga de trabajo, logs, etc).
Una vez compilado lo agregamos a la lista de construccin de imagen la imagen
con la correspondiente entrada "file". El fichero init invocar la aplicacin al final de
la configuracin.
Compilacin del kernel.
Ya que se puede construir la imagen del kernel de forma habitual ("make") o segn
los requisitos (compilacin cruzada), se la podr implementar en el sistema
embebido.
GESTIN DE PROCESOS Y DEL PROCESADOR SISTEMAS OPERATIVOS
EMBEBIDOS

Un microprocesador es una implementacin en forma de circuito integrado (IC) de


la Unidad Central de Proceso CPU de un ordenador. Frecuentemente nos
referimos a un microprocesador como simplemente CPU, y la parte de un
sistema que contiene al microprocesador se denomina subsistema de CPU.
Los microprocesadores varan en consumo de potencia, complejidad y coste. Los
hay de unos pocos miles de transistores y con coste inferior a 2 euros (en
produccin masiva) hasta de ms de cinco millones de transistores que cuestan
ms de 600 euros.
Los subsistemas de entrada/salida y memoria pueden ser combinados con un
subsistema de CPU para formar un ordenador o sistema integrado completo.

26

Estos subsistemas se interconectan mediante los buses de sistema (formados a


su vez por el bus de control, el bus de direcciones y el bus de datos).
El subsistema de entrada acepta datos del exterior para ser procesados mientras
que el subsistema de salida transfiere los resultados hacia el exterior. Lo ms
habitual es que haya varios subsistemas de entrada y varios de salida. A estos
subsistemas se les reconoce habitualmente como perifricos de E/S.
El subsistema de memoria almacena las instrucciones que controlan el
funcionamiento del sistema. Estas instrucciones comprenden el programa que
ejecuta el sistema. La memoria tambin almacena varios tipos de datos: datos de
entrada que an no han sido procesados, resultados intermedios del procesado y
resultados finales en espera de salida al exterior.
Es importante darse cuenta de que los subsistemas estructuran a un sistema
segn funcionalidades. La subdivisin fsica de un sistema, en trminos de
circuitos integrados o placas de circuito impreso (PCB) puede y es normalmente
diferente. Un solo circuito integrado (IC) puede proporcionar mltiples funciones,
tales como memoria y entrada/salida.
Un micro controlador (MCU) es un IC que incluye una CPU, memoria y circuitos de
E/S. Entre los subsistemas de E/S que incluyen los micro controladores se
encuentran los temporizadores, los convertidores analgico a digital (ADC) y
digital a analgico (DAC) y los canales de comunicaciones serie. Estos
subsistemas de E/S se suelen optimizar para aplicaciones especficas (por
ejemplo audio, video, procesos industriales, comunicaciones, etc.).
Hay que sealar que las lneas reales de distincin entre microprocesador, micro
controlador y microcomputador en un solo chip estn difusas, y se denominan en
ocasiones de manera indistinta unos y otros.
En general, un SE consiste en un sistema con microprocesador cuyo hardware y
software estn especficamente diseados y optimizados para resolver un
problema concreto eficientemente. Normalmente un SE interacta continuamente
con el entorno para vigilar o controlar algn proceso mediante una serie de
sensores. Su hardware se disea normalmente a nivel de chips, o de
interconexin de PCB, buscando la mnima circuitera y el menor tamao para una

27

aplicacin particular. Otra alternativa consiste en el diseo a nivel de PCB


consistente en el ensamblado de placas con microprocesadores comerciales
GESTIN DE MEMORIA DE UN SISTEMAS OPERATIVOS EMBEBIDOS

Cualquiera de las funcionalidades de los sistemas embebidos estn compuestas


de tres aspectos: procesamiento, almacenamiento y comunicacin. El
procesamiento es la transformacin de los datos, el almacenamiento es la
retencin de los datos para su posterior uso, y la comunicacin es la transferencia
de los datos. Cada uno de estos aspectos debe ser implementado. Se usan
procesadores para el procesamiento, memoria para el almacenamiento, y buses
para la comunicacin
La mayora de los sistemas operativos modernos convencionales usan memoria
virtual paginada, donde la pgina es la unidad de proteccin y asignacin de la
memoria. El uso de procesos y proteccin de memoria en sistemas embebidos es
muy importante; si se utiliza un nico espacio de direcciones para todas las
aplicaciones, una falla de software de una aplicacin puede resultar en la
corrupcin de la memoria, ocasionando una falla de sistema. La desventaja, sin
embargo, es que la proteccin de memoria requiere que el CPU soporte MMU
(Memory Management Unit), lo cual resulta en un CPU ms complejo.
A diferencia de los sistemas operativos convencionales, la mayora de los
sistemas operativos embebidos estn enfocados a un CPU simple, que
usualmente no tiene MMU. Adems el resto del sistema tiene memoria limitada,
poco o ningn espacio en disco; as que usualmente no usan memoria virtual.
Por ejemplo, los sistemas Linux embebido y QNX no soportan paginacin, esto
quiere decir que los datos, texto y pila comparten un espacio contiguo de memoria.
Esto implica que no existe proteccin a nivel de memoria, por ejemplo, la pila
podra crecer hasta ocupar el espacio de texto o datos; o un proceso podra leer o
escribir datos de otro proceso.
Por otro lado, Windows CE tiene un manejo de memoria ms elaborado. Soporta
parcialmente memoria virtual paginada (esto implica soporte de TLB (Translation
Lookaside Buffer) en el CPU; y brinda proteccin de memoria a nivel de procesos
e hilos.

28

Memoria real
La memoria real o principal es en donde son ejecutados los programas y procesos
de una computadora y es el espacio real que existe en memoria para que se
ejecuten los procesos. Por lo general esta memoria es de mayor costo que la
memoria secundaria, pero el acceso a la informacin contenida en ella es de ms
rpido acceso. Solo la memoria cache es ms rpida que la principal, pero su
costo es a su vez mayor.

GESTIN DE MEMORIA AUXILIAR DE UN SISTEMAS OPERATIVOS


EMBEBIDOS

La memoria auxiliar (llamada tambin memoria fsica o memoria externa) que


almacena informacin a largo plazo, incluso despus de apagar el equipo. La
memoria auxiliar corresponde a los dispositivos magnticos de almacenamiento
como por ejemplo el disco duro, dispositivos pticos de almacenamiento como los
CD-ROM y DVD-ROM, y a las memorias de slo lectura.
SISTEMA DE ARCHIVOS (ZFS).
ZFS, es el sistema de archivos dinmico del sistema operativo Solaris. Con 16
millones de millones ms de capacidad que los sistemas de archivos 64-bit
existentes, ZFS virtualmente es el nico sistema de archivos con capacidad de
almacenamiento prcticamente ilimitada, lo que hace de Solaris el mejor de la
industria para el almacenamiento de datos.
Este sistema de archivo ofrece:
Administracin sencilla:
ZFS automatiza y consolida complicados conceptos de almacenamiento, con lo
que se reduce la sobrecarga administrativa en un 80 por ciento.
Integridad de datos:
ZFS protege todos los datos con sumas de comprobacin de 64 bits que detectan
y corrigen el dao de datos silenciosos.

29

Escalabilidad:
ZFS, el primer sistema de archivos de 128 bits, ofrece una capacidad de 16.000
millones de veces superior a la de los sistemas de 32 64-bits.
Rendimiento:
El modelo transaccional elimina la mayor parte de las restricciones tradicionales
sobre la orden de emisin de E/S, con lo que se consiguen increbles mejoras en
el rendimiento.
Al tiempo que simplifica en gran medida el trabajo de los administradores del
sistema, ZFS ayuda a incrementar los beneficios econmicos de una organizacin.
Como ZFS est diseado sobre conjuntos de almacenamiento virtual (a diferencia
de los sistemas de archivos tradicionales que requieren un administrador de
volmenes), la creacin y eliminacin de sistemas de archivos resultan mucho
menos complicadas. ZFS acta para las aplicaciones como un sistema de
archivos POSIX estndar, no se requiere conexin mediante puertos. Pero para
los administradores, presenta un modelo de almacenamiento por conjuntos que
eliminan el antiguo concepto de volmenes, as como todos los problemas
relacionados con la administracin de particiones, el abastecimiento y el tamao
del sistema de archivos. Del conjunto de almacenamiento comn de ZFS se
pueden extraer miles (incluso millones) de sistemas de archivos y cada uno de
ellos consume nicamente la cantidad de espacio que necesita. El ancho de
banda de E/S combinado de todos los dispositivos de ese conjunto de
almacenamiento est siempre disponible para cada sistema de archivos.
Dos de los objetivos de la creacin del sistema de archivos ZFS consisten en
deshacerse de numerosos conceptos de administracin complicados y
automatizar muchas tareas administrativas comunes.
Por ejemplo, la creacin de un conjunto de almacenamiento, el incremento de un
conjunto y la adicin o eliminacin de un sistema de archivos se pueden realizar
con un nico comando sencillo, en lugar del proceso de varios pasos (format,
newfs, edit/etc/vfstab etc.) habitual en los sistemas de archivos y administradores
de volmenes tradicionales.
Observemos el siguiente caso: para crear un conjunto, crear tres sistemas de
archivos y, a continuacin, incrementar el conjunto (5 pasos lgicos) se requieren

30

5 comandos sencillos de ZFS, frente a los 28 pasos necesarios con un sistema de


archivos y administrador de volmenes tradicionales.
Adems, estos comandos son de tiempo constante y se completan en unos
segundos, mientras que con frecuencia se requieren horas para configurar los
sistemas de archivos y volmenes tradicionales. En el caso mencionado
anteriormente, ZFS reduce el tiempo necesario para completar estas tareas de 40
minutos a menos de 10 segundos.
La interfaz de la lnea de comandos de ZFS simplifica drsticamente la
administracin. Se orienta a las tareas, por lo que los administradores pueden
expresar las tareas que desean llevar a cabo en lugar de tener que memorizar o
buscar comandos crpticos.
Los datos se pueden daar de diferentes modos, como por ejemplo un error de
sistema o una interrupcin del suministro elctrico inesperada, pero con ZFS se
elimina este temor por lo desconocido. ZFS impide el dao a los datos ya que
mantiene la coherencia de los mismos en todo momento. Todas las operaciones
son transaccionales. De este modo, no slo se mantiene la coherencia sino
tambin se eliminan todas las restricciones sobre la orden de E/S y se permite que
el conjunto de los cambios se realice correctamente o se produzca un error.
Todas las operaciones utilizan asimismo la tcnica de copia por escritura (copy-onwrite). Los datos en directo nunca se sobrescriben. ZFS escribe los datos en un
nuevo bloque antes de cambiar los punteros de datos y confirmar la escritura. La
tcnica de copia por escritura ofrece varias ventajas:

Estado en disco siempre vlido.


Copias de seguridad coherente y fiable.
Capacidad de deshacer datos hasta un punto en el tiempo conocido.

Los administradores ya no tendrn que ejecutar laboriosos procedimientos de


recuperacin, como por ejemplo fsck, incluso si el sistema se cierra de un modo
indebido.
Asimismo, ZFS es un sistema de archivos que realiza sumas de comprobacin de
64 bits de un extremo a otro en todos los datos para evitar el dao de datos
silencioso. Cuando se leen datos, se verifica la suma de comprobacin con el fin
de garantizar que se devuelven los datos que escribi la aplicacin.

31

ZFS puede llevar a cabo la recuperacin de datos automtica en una


configuracin reflejada o RAID. Cuando una copia se daa, ZFS lo detecta
mediante la suma de comprobacin y utiliza otra copia para repararla.
GESTIN DE ENTRADA Y SALIDA, DISPOSITIVOS QUE SOPORTA UN
SISTEMA OPERATIVO EMBEBIDO
Una de las principales funciones del sistema operativo es la gestin de los
recursos de la computadora y, en concreto, de los dispositivos perifricos. El
gestor de Entrada/Salida debe controlar el funcionamiento de todos los
dispositivos de Entrada/Salida para alcanzar los siguientes objetivos:

Facilitar el manejo de los dispositivos perifricos. Para ello ofrecer una


interfaz sencilla, uniforme y fcil de utilizar entre los dispositivos, y gestionar
los errores que se pueden producir en el acceso a los mismos.

Ofrecer mecanismos de proteccin que impidan a los usuarios acceder sin


control a los dispositivos perifricos.

Las rutinas que el sistema emplea para ejecutar operaciones de E/S estn
diseadas para eliminar las diferencias entre los dispositivos y los tipos de acceso.
No existe distincin entre acceso aleatorio y secuencial, ni hay un tamao de
registro lgico impuesto por el sistema.
El sistema mantiene una lista de reas de almacenamiento temporal (buffers),
asignadas a los dispositivos de bloques. El Kernel usa estos buffers con el objeto
de reducir el trfico de E/S. Cuando un programa solicita una transferencia, se
busca primero en los buffers internos para ver si el bloque que se requiere ya se
encuentra en la memoria principal (como resultado de una operacin de lectura
anterior).
GESTIN DE COMUNICACIONES Y SEGURIDAD EN UN SISTEMA OPERATIVO
EMBEBIDO
Existe un sin nmero de sistemas embebidos que se pueden conectar a diferentes
tipos de redes o Internet para mejorar sus caractersticas y desempeo,
actualmente cuentan con elementos de hardware embebido, permitiendo que
desde artefactos electrodomsticos hasta grandes equipos industriales puedan ser

32

gobernados de forma remota por medio de conexiones a Internet y puedan ser


inclusive controlados por medio de telfonos celulares empleando una
combinacin de las tecnologas actuales. Es de esta forma, por ejemplo, cmo se
pueden cambiar los valores de setpoint de reguladores de temperatura y encender
o apagar los electrodomsticos de una casa, haciendo una simple llamada
telefnica o accediendo a un sitio Web.
Estas caractersticas representan una nueva escala de riesgos, ya que no solo es
la integridad de la informacin la que se ve comprometida con estos sistemas, sino
al incluir diferentes actores que pueden ser gobernados por un atacante, se
pueden generar estragos mucho ms graves que la prdida de informacin o el
cese de un servicio, como sucede normalmente en los incidentes de seguridad.
Cambiar la temperatura de un recinto puede ser vital para algunas personas en
pocas de invierno o verano. El ataque combinado a varios de estos elementos
puede causar sobrecargas a las centrales de energa si se realiza el encendido
simultneo de mltiples elementos en las horas pico de consumo. Adicionalmente
se puede realizar monitoreo del estado de dichos elementos y de esta forma se
puede determinar los horarios en que una vivienda se encuentra vaca hacindola
vulnerable a robos y dems ataques fsicos Por razones de costos, muchos de
estos sistemas emplean procesadores sencillos, en los cuales los aspectos de
seguridad son relegados a un segundo plano.
Existe un compromiso entre el costo y la seguridad que se puede lograr con estos
sistemas ya que un poco ms de dinero, invertido en la adicin de algn tipo de
seguridad puede representar gran diferencia para las compaas que ensamblan
millones de unidades al ao, afectando la competitividad de dichas empresas,
pero en contraste con los incidentes de seguridad de los sistemas de informacin
convencionales, recuperar informacin o restablecer un servicio puede requerir
ciertos esfuerzos e inversin, pero revertir una muerte o una lesin fsica es
imposible. En la medida en que las funciones de los dispositivos de hardware
embebido se vuelven ms complicadas, las herramientas para trabajar con estos
se deben mejorar.
A menudo la forma para realizar mantenimiento y diagnstico de estos dispositivos
de hardware es conectarlos a una red local o una terminal de programacin, lo
cual puede generar riesgos adicionales debidos a ingresos no autorizados a la
configuracin y lectura del estado e historial de diagnsticos del equipo. Existen
diferentes mtodos de solucionar estos problemas, principalmente controlar el

33

acceso a los equipos es clave. Estas soluciones pueden ser en algunos casos
sencillas, y combina diferentes niveles de seguridad, pero pueden traer consigo
algunos problemas:

Una de las soluciones consiste en la utilizacin de un esquema de


contraseas con el objeto de tener una barrera de primer nivel a los
ingresos no autorizados. Sin embargo, hoy en da se logra muy poco con
solo este tipo de proteccin dado que las contraseas usualmente viajan
por las redes en forma de texto no codificado. Tener diferentes contraseas
para cada equipo tambin puede ser fuente de problemas, debido a que los
usuarios normalmente deben escribirlas, compartirlas con otros usuarios e
incluso incluirlas en scripts para ingreso automtico, lo cual elimina la
proteccin de acceso accidental.
Existen diferentes tipos de protocolos orientados a generar seguridad en
dispositivos simples como el SNMP Simple Network Management Protocol,
el cual fue diseado para obtener datos y programar dispositivos simples y
es usado normalmente para monitorear nodos conectados a la red. Existen
otros protocolos como SSH, SSL, IPSEC, e IKE entre otros, los cuales
proporcionan un medio ms seguro para establecer comunicacin con este
tipo de dispositivos.
Existen otros mtodos ms sofisticados, como el Sistema de autenticacin
Kerberos desarrollado por el MIT el cual se basa en tres principios de
seguridad a saber, autenticacin, autorizacin, y sistema de cuentas de
usuario. Este es un sistema de autenticacin de propsito general, en el
cual los usuarios demuestran su identidad para acceder a cada servicio y el
sistema decide si el usuario tiene acceso o no a dicho servicio. A medida
que los dispositivos electrnicos, desde un PDA hasta un router, pasando
por telfonos celulares y tarjetas inteligentes avanzan tecnolgicamente,
tambin avanza la complejidad de los ataques a los que estos se enfrentan
El punto de la seguridad en estos dispositivos es lo que ms frena la
adopcin de dichas tecnologas para prcticas de comercio electrnico,
segn los resultados de encuestas recientes que revela que el 47% de las
personas que tienen dispositivos mviles no se animan a este tipo de
prcticas por temores concernientes a la seguridad de sus transacciones

34

Siempre que se va a analizar problemas de seguridad en informtica se


debe tener la confidencialidad, integridad, disponibilidad, autenticacin,
rastreabilidad y no-repudio. Es por esto que en el mundo de los dispositivos
mviles y PDAs existe una variedad de protocolos y estndares como el
WEP del IEEE Estndar 802.11, el WTLS del WAP y el SSL que sirven para
protegerlos desde un punto de vista funcional, pero cuando se trata de
sistemas embebidos debe tenerse tambin en cuenta algunos aspectos
crticos como:
o Muchos sistemas embebidos no tienen la suficiente capacidad de
procesamiento para las exigencias de seguridad.
o Los dispositivos que operan con bateras como los celulares y PDAs
no tienen la suficiente autonoma de funcionamiento ni los suficientes
recursos de memoria para implementar medidas de seguridad.
o Los diferentes tipos de ataques que pueden sufrir estos dispositivos
como los ataques por software y los ataques fsicos entre otros,
hacen que los sistemas tengan que ser diseados de manera que
aun cuando alguien tenga acceso a ellos fsica o lgicamente sigan
siendo seguros. Podra asegurarse entonces que la encriptacin de
los datos no es suficiente por varios motivos, entre ellos el alto costo
de procesamiento de los algoritmos de encriptacin y el hecho de
que los protocolos pueden no ser efectivos en los sistemas
embebidos, por ejemplo en un dispositivo que reciba aplicaciones
desarrolladas por terceros, cada tercero tendra que conocer ya sea
el algoritmo o las llaves con las cuales se realiza la encriptacin
Algunas soluciones pueden ser: firewalls, detectores de intrusos,
aplicaciones en criptografa, antivirus, administracin de memoria y
dump memory.

SOPORTE A TIEMPO REAL EN UN SISTEMAS OPERATIVOS EMBEBIDOS


El soporte de red es importante en sistemas embebidos ya que les facilita
comunicarse con el mundo exterior, as como su actualizacin. QNX contiene
comunicacin de red de bajo nivel en su microkernel; Windows CE posee varias
pilas de comunicacin a nivel de kernel (IP, PPP, IrDA,
35

etc.).
Linux embebido por su parte posee un soporte de red heredado de los ambientes
cliente/servidor soportados por Linux, ofreciendo pilas de red y protocolos de
Internet.
Un sistema embebido complejo puede utilizar un sistema operativo como apoyo
para la ejecucin de sus programas, sobre todo cuando se requiere la ejecucin
simultnea de los mismos. Cuando se utiliza un sistema operativo lo ms probable
es que se tenga que tratar de un sistema operativo de tiempo real (RTOS).
Un sistema operativo de tiempo real (SOTR o RTOS -Real Time Operating System
en ingls), es un sistema operativo que ha sido desarrollado para aplicaciones de
tiempo real. Como tal, se le exige correccin en sus respuestas bajo ciertas
restricciones de tiempo. Si no las respeta, se dir que el sistema ha fallado. Para
garantizar el comportamiento correcto en el tiempo requerido se necesita que el
sistema sea predecible (determinista).
Caractersticas Generales

No utiliza mucha memoria


Cualquier evento en el soporte fsico puede hacer que se ejecute una tarea
Multi-arquitectura (puertos de cdigo para otro tipo de UCP)
Muchos tienen tiempos de respuesta predecibles para eventos electrnicos

En la actualidad hay un debate sobre qu es tiempo real. Muchos sistemas


operativos de tiempo real tienen un programador y diseos de controladores que
minimizan los periodos en los que las interrupciones estn deshabilitadas, un
nmero llamado a veces duracin de interrupcin. Muchos incluyen tambin
formas especiales de gestin de memoria que limitan la posibilidad de
fragmentacin de la memoria y aseguran un lmite superior mnimo para los
tiempos de asignacin y retirada de la memoria.

SOPORTE PARA LA NUBE E INTEGRACION A ELLA (CLOUD COMPUTING)

La generalizacin del termino cloud computing, la popular nube, como paradigma de


todo tipo, tanto organizativo como de diseo de sistemas, comporta una interesante
reflexin.

36

Si la nube permite a los clientes y usuarios poder


obtener funcionalidades a travs de servicios de
los cuales solo conocen su contrato de servicio
pero ignoran el diseo y la localizacin, para
qu leer un documento como el que tiene entre
las manos?
Muchas veces olvidamos que los servicios han de
ser fabricados, y que para eses trabajo, hay que
prepararse y hacerlo bien, muy bien, ya que
nuestros clientes son en la mayora de los casos desconocidos y si nuestro producto
no es correcto, simplemente nos dejaran.
As pues, por encima de la nube estn los usuarios i clientes, tanto finales como los
profesionales que reutilizan los servicios, y por debajo, los constructores y
suministradores de esos servicios.
Esta doble visin, no excluyente ya que los constructores pueden ser a si mismo
clientes cuando reutilizan servicios, estar presente en todo el documento que tiene
entre manos.
El software en la instrumentacin virtual
El software es el componente ms importante de un instrumento virtual. Con la
herramienta de software apropiada los ingenieros y cientficos pueden crear
eficientemente sus propias aplicaciones, diseando e integrando las rutinas que
requiere un proceso especfico. Tambin pueden crear las interfaces de usuario que
mejor satisfagan el objetivo de la aplicacin y de aqullos que van a interactuar con
ellas. Pueden definir cmo y cundo la aplicacin adquiere datos desde el
dispositivo, cmo los procesa, manipula y almacena los datos y cmo se presentan
los resultados al usuario.
Disponiendo de un software poderoso, se puede dotar a los instrumentos con
capacidades de inteligencia y de toma de decisiones de manera tal que se adapten
cuando las seales medidas varen inadvertidamente o cuando se requiera mayor o
menor potencia de procesamiento.

37

Una importante ventaja que provee el software es la modularidad. Cuando se trata


de un gran proyecto, el equipo de trabajo generalmente aborda la tarea dividindola
en unidades funcionales
manejables (metodologa top-down). Estas tareas
subsidiarias son ms manejables y ms fciles de probar dadas las menores
dependencias que podran causar comportamientos inesperados.
En este contexto se puede disear un instrumento virtual para solucionar cada una
de estas tareas subsidiarias y luego reunirlas en un sistema completo para resolver
la tarea de mayor envergadura. La facilidad con la cual se puede realizar esta
divisin de tarea depende en mayor medida de la arquitectura subyacente en el
software.

SOLARIS 11 EXPRESS
Esta versin del sistema operativo se puede utilizar slo para pruebas y desarrollo e
incluye capacidades de visualizacin de redes.
Oracle ha lanzado Solaris 11 Express, una versin del sistema operativo Solaris
pensada exclusivamente para desarrolladores y que tambin sirve como un adelanto
del lanzamiento de la versin comercial de Solaris 11 para el prximo ao 2011. El
lanzamiento de Solaris 11 Express se produce unos meses despus de que Oracle
anunciara que no ofrecer ms soporte al proyecto OpenSolaris, una distribucin de
cdigo abierto de Solaris, para centrarse en la versin comercial del sistema
operativo. Solaris 11 Express, tiene compatibilidad binaria con ms de 11.000
aplicaciones desarrolladas por terceros en cerca de 1.000 sistemas SPARC y
basados de x86.
Principales caractersticas distintivas de Solaris 11 Express
a) Ha mejorado las caractersticas de disponibilidad y ha mejorado el tiempo de
inactividad del sistema a la mitad. Adems, los tiempos de arranque son slo
ahora de decenas de segundos.
b) Capacidades de virtualizacin de red, integracin con el portal de soporte
online de Oracle y mejoras en el sistema de archivo ZFS.
c)

Mejoras en la gestin de los datos, ya que ahora se incluyen nuevas


caractersticas avanzadas de almacenamiento como la deduplicacin, cifrado
y las mejoras relacionadas con la tecnologa ZFS mencionada anteriormente.

38

d) Escalabilidad: La versin actual del sistema operativo puede soportar cientos


de threads y unos pocos terabytes de memoria, pero la nueva versin escala
hasta miles de threads y cientos de terabytes de memoria. Adems,
incorporar virtualizacin y seguridad.
e) Cloud Computing, enfocndose en la compatibilidad con nuevo hardware que
soportar enormes volmenes de threads y sistemas de memoria, adems de
cientos de gigabits de I/O.
f) Mejoras en su Administracin: El administrador de sistemas de Solaris 11
Express ofrece una serie de cambios en la instalacin, parches, reparto de
aplicaciones y otras reas. En su pgina web, Oracle ofrece una serie de
recursos para ayudar con la transicin.

ANLISIS COMPARATIVO CON LINUX Y WINDOWS 7.

Windows ce presenta un sistema dividi en 220modulos, cada uno dividido en


varios componentes, los cuales son ROMables y comprimibles, ademas soporta
cinco procesadores ARM/StrongARM, MIPS, PPC, SuperH, y x86 y un
sobconjunto de la API Win 32, en cuanto a conectividad cuenta con el ActiveSync,
que es la sincronizacin activa netre el PC de sobremesa y el dispositivo CE. Y
tambin posse el remote API, un control remoto del dispositivo desde una
aplicacin en el PC.
En cuanto a Linux sabemos que es un sistema libre, cualquiera lo puede usar,
modificar y descubrir, es adems muy estable y es difcil que se quede colgado,
los servidores que lo usan pueden funcionar durante meses sin parar, es

39

extremadamente seguro, tiene varios sistemas de proteccin y no existe virus para


Linux.
Ahora bien si hablamos de Windows 7 sabemos que pertenece a Microsoft, nica
compaa que lo puede modificar, las licencias son demasiado costosas, es poco
estable, es comn verse obligado a reiniciar el sistema, los servidores no admiten
mas all de un par de semanas sin reiniciar, adems de ser muy poco seguro y
para el cual existen miles de virus que vulneran el sistema, solo lee y escribe sus
propios sistemas de archivos y presenta incompatibilidades entre algunas de sus
versiones.
La comparacin de Microsoft Windows y el sistema operativo de Linux es un tema
comn de la discusin entre sus usuarios. Windows es el sistema operativo ms
importante bajo una licencia propietaria de software, mientras que Linux es el
sistema operativo ms importante bajo una licencia libre de software. Sin
embargo, la mayora de los sitios de distribuciones de Linux tambin disponen de
componentes propietarios (tales como los controladores compilados de blob
binario, que proveen los fabricantes de hardware para su instalacin normal)
En noviembre de 2007, Linux era el sistema operativo del 85% de las
supercomputadoras ms poderosas (comparado con el 1,2% de Windows.En
febrero de 2008, cinco de las diez empresas ms confiables proveedoras de
internet usaban Linux, mientras que slo dos usaban Windows.
Los defensores de software libre discuten que la fuerza clave de Linux es que
respeta lo que ellos consideran para ser las libertades esenciales de usuarios: la
libertad de correrlo, Para estudiar y cambiarlo, y para redistribuir copias con o sin
cambios.
ESTADISTICAS DE UTILIZACION A NIVEL MUNDIAL
En el sitio de estadsticas StatCounter se puede apreciar que a enero de 2010, la
distribucin de uso de sistemas operativos de escritorio, obtenida al contabilizar
las visitas a los sitios web que monitorizan:
Windows XP es el sistema operativo ms extendido en el mundo con un 69.36%
de usuarios
Le sigue Windows Vista con un 21.78%
MacOSX con un 4.32%

40

Windows 7 con un 2.35%


y GNU/Linux con un 'pequeo' 0,68%
StatCounter Global Stats - Browser, OS, Search Engine including Mobile Market
Share
Sin embargo, haciendo el anlisis por regiones, la cosa vara un poco, y tenemos
resultados curiosos, como que en Europa Linux lo usa un 1,06% de los
internautas, mientras que en Norteamrica (EE.UU. Canad y Mxico) el
porcentaje es tan bajo que ni siquiera aparece reflejado en las estadsticas.
Por pases igualmente resulta llamativo por ejemplo que mientras en Espaa Linux
tiene un 1.66% de penetracin, en Alemania un 1,14% y en Francia un 1,87%
(quizs el ms alto en el mundo), en otros sitios como Argentina o Chile (por citar
dos pases de los que en este foro hay representantes) el uso de Linux no llegar a
estar siquiera contemplado en la estadstica... aunque por ejemplo en EE.UU o
Japn tampoco.
En EE.UU en cambio Apple tiene por ejemplo un 10.2% del mercado.
En fin, que aunque Kalli tenga este hilo abierto, la cosa va an despacio en lo que
a sistemas de escritorio se refiere.
Ranking de sistemas operativos Febrero 2010:
1. Windows XP: 65.49%
2. Windows Vista: 16.51%
3. Windows 7: 8.92%
4. Mac OS X 10.5: 2.21%
5. Mac OS 10 x 6: 1.88%
6. Linux: 0.98%
7. Mac OS X 10.4: 0.72%
8 Java ME 0.64%
8. Windows 2000: 0.56%
MarketShare ha publicado los ltimos datos de la cuota de mercado de los
sistemas operativos durante el pasado mes de Diciembre. En total, se han
analizado ms de 22 ms de sistemas operativos, y ha habido alguna sorpresa
que otra.

41

Evidentemente, las dos sorpresas mayores son Windows Vista y Linux. Mientras
que Vista, el que ha sido llamado el fracaso del ao, est colocado como el
segundo sistema operativo ms usado, Linux se coloca el sptimo con una cuota
irrisoria del 0.63%, frente al 76.91% de XP y el 10.48% de Vista.
Antes de nada, hay que aclarar que estas estadsticas son recopiladas tras
millones y millones de acceso a miles de pginas webs, por lo que los servidores
dedicados no son contabilizados. Por tanto, de alguna manera esa cuota de Linux
implica nicamente a los usuarios de escritorio, al igual que XP respecto a XP
Server.
Por el resto no hay nada sorprendente. Mac sigue adelante en su cruzada y el
iPhone ha desbancado totalmente a Windows CE (Mobile), y la sorpresa -que ya
no lo es tanto- es la cantidad de gente que an siguen usando Windows 2000 y
98. Y ms abajo an, con un 0.2%, est Windows 95, que con sus 11 aos, an
sigue estando presente en muchos hogares del mundo.
GNU/Linux ocupa un lugar destacado como segundo sistema operativo que
sirve web en Internet.
En algunos de los rastreos de Netcraft tambin se han incluido datos sobre
sistemas operativos; dos rastreos en 2001, los de junio de 2001 y septiembre de
2001, revelaron que GNU/Linux es el segundo sistema operativo para servidores
de web y ha ido ganando constantemente aceptacin desde febrero de 1999. Este
recuento no se hizo por nombre de servidor como se hace con el de programas
servidores de web, sino por direcciones IP, o sea los identificadores nicos de
cada mquina visible en Internet.
Una pequea aclaracin sobre las fechas: Netcraft da la fecha de cada estudio
segn el momento de la ltima tanda de rastreos, no el de publicacin del informe.
Por eso la revisin con fecha de "junio de 2001" se public en julio, y cubre
resultados
de
revisiones
de
sistemas
operativos
desde
marzo.
Aqu tenemos un resumen del estudio de Netcraft:
Grupo
de
Porcentaje Porcentaje
sistemas
Composicin
(marzo)
(junio)
operativos
Windows

49.2%

49.6%

Windows

42

2000,

NT4,

NT3,

Windows 95, Windows 98


[GNU/]Linux

28.5%

29.6%

[GNU/]Linux

Solaris

7.6%

7.1%

Solaris 2, Solaris 7, Solaris 8

BSD

6.3%

6.1%

BSDI
BSD/OS,
NetBSD, OpenBSD

2.4%

2.2%

AIX, Compaq Tru64, HP-UX,


IRIX, SCO UNIX, SunOS 4 y
otros

2.5%

2.4%

MacOS, NetWare, sistemas


operativos cerrados de IBM

Desconocidos 3.6%

3.0%

Sistemas operativos que el


detector de Netcraft no identifica

Otros UNIX

Otros
UNIX

no-

FreeBSD,

Se pueden interpretar estas tablas de forma muy distinta segn lo lo que se


pretenda medir. Si queremos el porcentaje de sistemas abiertos, tendremos que
sumar una parte de los BSD (FreeBSD, NetBSD, y OpenBSD), varios de los
cuales son tambin abiertos, de modo que al menos un 6.1% se aade al 29,6%
de GNU/Linux. En consecuencia, es ms que razonable afirmar que una tercera
parte de los ordenadores servidores de web usan sistemas operativos abiertos.
Hay adems diferencias geogrficas. Por ejemplo, GNU/Linux supera a Windows
en Alemania, Hungra, la Repblica Checa y Polonia.
Entre los sitios web muy conocidos que utilizan GNU/Linux se encuentran La Casa
Blanca, Google, y el proveedor lder de alojamiento web Rackspace. Ms sitios
web harto conocidos que utilizan otros sistemas abiertos son, por
ejemplo Yahoo y Sony de Japn, que usan FreeBSD.
Si lo que le interesa es la proporcin del mercado de servidores de web entre
"UNIX y Windows", la puede encontrar tambin en la siguiente suma. Todos los
sistemas operativos Windows se han reunido en un nico nmero, sean Windows

43

95/98/ME o Windows NT/2000 aunque haya profundas diferencias. Una


agrupacin anloga de los ordenadores UNIX produce un total del 44,8% para
sistemas de tipo UNIX en marzo de 2001, comparado con el 49,2% de Windows.
Ntese que estas cifras probablemente diferiran mucho si estuviesen basadas en
direcciones de web en lugar de direcciones IP; ya que una clara mayora de
direcciones de web se encuentran en sistemas de tipo UNIX. Segn Netcraft,
"Aunque Apache ejecutndose en varios sistemas UNIX corre en ms sitios que
Windows, Apache est fundamentalmente instalado en empresas de hosting e
ISPs (proveedores de servicios de Internet) que albergan tantos sitios como
pueden en un nico ordenador para ahorrar costes". De ah la diferencia en las
cifras.

OTROS ASPECTOS

WINDOWS EMBEDDED UNA OPCIN COMO SISTEMA OPERATIVO DE


ESCRITORIO?

44

Un sistema Embedded es un
equipo con un propsito
determinado, integrado en el
sistema que controla. Necesita
especificaciones particulares y
realiza tareas predefinidas.
Embedded significa encajado,
embutido,algo metido dentro
de otra cosa. Es un sistema
operativo para plataformas de
32
bits
adaptables
y
ampliables, que demanden
conectividad y amplio soporte
para el desarrollo de aplicaciones. Es la versin industrial del Windows XP
Profesional. Basado en los mismos binarios que el Windows XP Profesional. Se
eligen solo las funciones y servicios que se necesitan. Herramientas rpidas y
potentes para la creacin de imgenes propias para cada aplicacin. Este sistema
operativo es el que usan los ATM (cajeros automticos), surtidores, puntos de
venta, algunas consolas y maquinas de videojuegos, etc.
Para el desarrollo de Windows XP Embedded existen una serie de herramientas:
Target Analyzer(TA): Genera informacin sobre la composicin hardware.
Component Designer(CD): Creacin de componentes personalizados.
Target Designer(TD): Seleccin y configuracin de los componentes para generar
la imagen final S.O. Se usa para crear y generar el sistema
Windows Embedded es una versin de la plataforma Windows construida en base
a mdulos, lo que permite crear un sistema a medida. Si Windows XP o Vista
incluyen gran cantidad de programas como el reproductor de medios Windows
Media Player o el navegador web Internet Explorer, Windows Embedded deja
fuera todo esto para permitir utilizarlo como mdulo, de forma que a aquellos
clientes que no les interese el reproductor, pueden dejarlo fuera de su sistema.
El uso habitual de Windows Embedded es para la creacin de sistemas
empotrados; un ejemplo podra ser un navegador GPS, en el cual se quiere
ofrecer un rango de funciones restringido pero a la vez que pueda actualizarse por

45

software con cierta comodidad cuando as lo quiera el fabricante. Es por ello que
este sistema se encuentra a la venta solamente para fabricantes de hardware,
aunque en Internet disponemos de una demo que nos permite utilizar una
instalacin bsica durante 120 das.
APLICACIONES DE LOS SISTEMAS OPERATIVOS EMBEBIDOS
Los lugares donde se pueden encontrar los sistemas empotrados son numerosos
y de varias naturalezas. A continuacin se exponen varios ejemplos para ilustrar
las posibilidades de los mismos:
Puntos de servicio o venta (POS, Point Of Service). Las cajas donde se paga la
compra en un supermercado son cada vez ms completas, integrando teclados
numricos, lectores de cdigos de barras mediante lser, lectores de tarjetas
bancarias de banda magntica o chip, pantalla alfanumrica de cristal lquido, etc.
El sistema empotrado en este caso requiere numerosos conectores de entrada y
salida y unas caractersticas robustas para la operacin continuada.
Puntos de informacin al ciudadano. En oficinas de turismo, grandes almacenes,
bibliotecas, etc. existen equipos con una pantalla tctil donde se puede pulsar
sobre la misma y elegir la consulta a realizar, obteniendo una respuesta
personalizada en un entorno grfico amigable.
Decodificadores y set-top boxes para la recepcin de televisin. Cada vez existe
un mayor nmero de operadores de televisin que aprovechando las tecnologas
va satlite y de red de cable ofrecen un servicio de televisin de pago
diferenciado del convencional. En primer lugar envan la seal en formato digital
MPEG-2 con lo que es necesario un procesado para decodificarla y mandarla al
televisor. Adems viaja cifrada para evitar que la reciban en claro usuarios sin
contrato, lo que requiere descifrarla en casa del abonado. Tambin ofrecen un
servicio de televisin interactiva o web-TV que necesita de un software especfico
para mostrar pginas web y con ello un sistema basado en procesador con salida
de seal de televisin.
Sistemas radar de aviones. El procesado de la seal recibida o reflejada del
sistema radar embarcado en un avin requiere alta potencia de clculo adems de
ocupar poco espacio, pesar poco y soportar condiciones extremas de
funcionamiento (temperatura, presin atmosfrica, vibraciones, etc.).
Equipos de medicina en hospitales y ambulancias UVI mvil.
46

Mquinas de revelado automtico de fotos.


Cajeros automticos.
Pasarelas (Gateways) Internet-LAN.
RESUMEN
SISTEMAS OPERATIVOS EMBEBIDOS
Un sistema operativo embebido es aquel que ha sido creado para un sistema
embebido, es decir, un sistema de computacin limitado a un nmero fijo y escaso
de tareas. Aqu no entran, evidentemente, los ordenadores personales ni los
mviles, tablets o dispositivos avanzados que conocemos. Una peculiaridad de los
sistemas embebidos es que son un todo con las aplicaciones que ejecutan, lo que
quiere decir que en muchos casos no es posible instalar en ellos ningn tipo de
software adicional.
Algunas caractersticas son:

Fiabilidad y seguridad
Eficiencia
Interaccin con dispositivos fsicos
Robustez

Entre las plataformas de los sistemas operativos embebidos tenemos:


Linux embebido es un sistema Linux tpico del cual se han removido programas
de utilidad, herramientas, y otros servicios del sistema que no son necesarios en
un ambiente embebido. Linux para los dispositivos embebidos comenz con el
soporte del kernel y el compilador para los microprocesadores ms populares de
32 bits: x86, ARM, PowerPC, MIPS y SH. Y luego continu con la aparicin de
diferentes distribuciones de Linux con soporte para caractersticas especficas de
los sistemas embebidos.
DOS Es un sistema operativo que hay que conocer porque sigue estando en vigor
gracias a su estabilidad ya que se desarrollaba en paralelo con la tecnologa de
Intel e IBM y porque es un sistema operativo muy simple, monousuario y
monotarea. En otras palabras, DOS slo ejecuta un programa cada vez

47

Java para sistemas embebidos. La tecnologa Java es cada vez ms utilizada en


sistemas embebidos avanzados, debido a sus capacidades inherentes de soporte
de red, optimizacin de dispositivos y procesado de datos.
GESTIN DE MEMORIA AUXILIAR DE UN SISTEMAS OPERATIVOS
EMBEBIDOS

La memoria auxiliar (llamada tambin memoria fsica o memoria externa) que


almacena informacin a largo plazo, incluso despus de apagar el equipo. La
memoria auxiliar corresponde a los dispositivos magnticos de almacenamiento
como por ejemplo el disco duro, dispositivos pticos de almacenamiento como los
CD-ROM y DVD-ROM, y a las memorias de slo lectura.
SISTEMA DE ARCHIVOS (ZFS).
ZFS, es el sistema de archivos dinmico del sistema operativo Solaris. Con 16
millones de millones ms de capacidad que los sistemas de archivos 64-bit
existentes, ZFS virtualmente es el nico sistema de archivos con capacidad de
almacenamiento prcticamente ilimitada, lo que hace de Solaris el mejor de la
industria para el almacenamiento de datos.
SISTEMAS OPERATIVOS CE
Windows CE fue introducido en un conjunto de productos de PC de mano en el
ao 1996, pero posteriormente se transform en un sistema operativo embebido
altamente configurable. Entre sus ventajas se encuentran que incluye un
subconjunto del API Win32 enfocado a los servicios que comnmente se
necesitan, as como una optimizacin en el consumo de energa. En este sistema
cuando se habla de tamao, se refiere a la cantidad de memoria y de
almacenamiento necesario para albergar al sistema.
Caractersticas

Windows CE da un soporte bastante completo a las caractersticas ms


avanzadas que encontramos en computadores empotrados, tanto de los
procesadores como de otros elementos hardware.

Es muy modular

48

La API de Windows CE est pensada para facilitar la portabilidad con los


sistemas operativos Windows para SSPG.

Plataforma
Windows CE soporta ms de 160 modelos de procesadores, pertenecientes a 5
tipos de arquitecturas distintas: ARM, MIPS, PowerPC, SH y x86 (modo protegido).
Son procesadores con una serie de caractersticas esenciales para este SO:
SISTEMAS OPERATIVOS TIEMPO REAL
Un proceso o tarea de tiempo real es el que se ejecuta en conexin con algn
proceso, funcin o conjunto de sucesos externos al sistema informtico y que
debe cumplir uno o ms plazos para interactuar en forma correcta y eficiente con
el entorno exterior.
Caractersticas

Pequeo tamao (con una mnima funcionalidad asociada)

Cambios de contexto rpidos

Capacidad para responder rpidamente a interrupciones externas

Multitarea con herramientas de comunicacin entre procesos, como


semforos y seales

COMPONENTES DE UN SISTEMA EMBEBIDO


Un sistema embebido en principio estara formando por un microprocesador y un
software que se ejecute sobre este. Sin embargo este software necesitara sin
duda un lugar donde poder guardarse para luego ser ejecutado por el procesador.
Esto podra tomar la forma de memoria RAM o ROM, todo sistema embebido
necesitara en alguna medida una cierta cantidad de memoria, la cual puede
incluso encontrarse dentro del mismo chip del procesador.
PROCESO DE INSTALACIN
Los pasos necesarios para la instalacin de los sistemas embebidos son:

49

1. Conocer la arquitectura hardware del dispositivo.


2. Configurar el kernel incluyendo los controladores para esos dispositivos y
eliminar lo que no sirve.
3. Crear el script de configuracin y ejecucin de la aplicacin embebida.
4. Configurar y compilar la busybox incluyendo la aplicacin y el script.
5. Compilar el kernel
6. Prueba de ejecucin

GESTIN DE MEMORIA
Cualquiera de las funcionalidades de los sistemas embebidos estn compuestas
de tres aspectos: procesamiento, almacenamiento y comunicacin. El
procesamiento es la transformacin de los datos, el almacenamiento es la
retencin de los datos para su posterior uso, y la comunicacin es la transferencia
de los datos. Cada uno de estos aspectos debe ser implementado. Se usan
procesadores para el procesamiento, memoria para el almacenamiento, y buses
para la comunicacin
Memoria real
La memoria real o principal es en donde son ejecutados los programas y procesos
de una computadora y es el espacio real que existe en memoria para que se
ejecuten los procesos. Por lo general esta memoria es de mayor costo que la
memoria secundaria, pero el acceso a la informacin contenida en ella es de ms
rpido acceso. Solo la memoria cache es ms rpida que la principal, pero su
costo es a su vez mayor.
SOPORTE A TIEMPO REAL
Un sistema embebido complejo puede utilizar un sistema operativo como apoyo
para la ejecucin de sus programas, sobre todo cuando se requiere la ejecucin
simultnea de los mismos. Cuando se utiliza un sistema operativo lo ms probable
es que se tenga que tratar de un sistema operativo de tiempo real (RTOS).
ANLISIS COMPARATIVO CON LINUX Y WINDOWS 7.
50

Windows ce presenta un sistema dividi en 220modulos, cada uno dividido en


varios componentes, los cuales son ROMables y comprimibles, ademas soporta
cinco procesadores ARM/StrongARM, MIPS, PPC, SuperH, y x86 y un
sobconjunto de la API Win 32, en cuanto a conectividad cuenta con el ActiveSync,
que es la sincronizacin activa netre el PC de sobremesa y el dispositivo CE. Y
tambin posse el remote API, un control remoto del dispositivo desde una
aplicacin en el PC.
En cuanto a Linux sabemos que es un sistema libre, cualquiera lo puede usar,
modificar y descubrir, es adems muy estable y es difcil que se quede colgado,
los servidores que lo usan pueden funcionar durante meses sin parar, es
extremadamente seguro, tiene varios sistemas de proteccin y no existe virus para
Linux.
Ahora bien si hablamos de Windows 7 sabemos que pertenece a Microsoft, nica
compaa que lo puede modificar, las licencias son demasiado costosas, es poco
estable, es comn verse obligado a reiniciar el sistema, los servidores no admiten
ms all de un par de semanas sin reiniciar, adems de ser muy poco seguro y
para el cual existen miles de virus que vulneran el sistema, solo lee y escribe sus
propios sistemas de archivos y presenta incompatibilidades entre algunas de sus
versiones.

CONCLUSIONES

El control del usuario es generalmente mucho mayor en un sistema


operativo en tiempo real que en un sistema operativo ordinario. En sistema
operativo tpico que no sea en tiempo real, el usuario no tiene control sobre
la funcin de planificacin del sistema operativo. En un sistema en tiempo

51

real resulta esencial permitir al usuario un control preciso sobre la prioridad


de las tareas.

A diferencia de los sistemas operativos convencionales, la mayora de los


sistemas operativos embebidos estn enfocados a un CPU simple, que
usualmente no tiene MMU. Adems el resto del sistema tiene memoria
limitada, poco o ningn espacio en disco; as que usualmente no usan
memoria virtual.

Los sistemas operativos embebidos y de tiempo real han venido


evolucionando de forma constante y presentando da tras das nuevos
beneficios para su uso, otorgando mayor capacidad de almacenamiento,
mayor rapidez y mejor desempeo.

OBSERVACIONES

Los sistemas Linux embebido y QNX no soportan paginacin, esto quiere


decir que los datos, texto y pila comparten un espacio contiguo de memoria.
Esto implica que no existe proteccin a nivel de memoria, por ejemplo, la
pila podra crecer hasta ocupar el espacio de texto o datos; o un proceso
podra leer o escribir datos de otro proceso.

52

Para las personas que quieran entender de forma clara el funcionamiento


de un sistema operativo embebido, primero deben estudiar como algunas
implementaciones realizan el manejo de abstracciones bsicas del sistema,
de lo contrario les dificultara el entendimiento de estos sistemas operativos
embebidos.

Una particularidad de los sistemas embebidos es que son un todo


con las aplicaciones que ejecutan, lo que quiere decir que en muchos casos
no es posible instalar en ellos ningn tipo de software adicional.

BIBLIOGRAFIA

Asi son los sitemas operativos de cajeros, consultada el 18 de


octubre de 2012 URL: http://onsoftware.softonic.com/sistemasembebidos-y-usos-cotidianos

PDF Sistemas Embebidos y Sistemas Operativos Embebidos,


universidad central de Venezuela, autor: David Perez. Consultado el
17 de octubre del 2012

53

Sistema embebido, consultado el 18 de octubre de 2012 URL:


http://es.wikipedia.org/wiki/Sistema_embebido

Sistemas de tiempo real y empotrado, consultado el 17 de octubre de


2012URL:http://es.scribd.com/doc/32547554/46/Windows-CEcaracteristicas

Sistemas embebidos, consultado el 25 de octubre de 2012 URL:


http://server-die.alc.upv.es/asignaturas/PAEEES/2005-06/A07%20
%20Sistemas%20Embebidos.pdf

Bitcora sobre GNU/Linux y software libre: Sistemas operativos


embebidos, consultado 19 de octubre de 2012
URL:http://gnujavier.blogspot.com/2011/06/sistemas-operativosembebidos.html

54

Anda mungkin juga menyukai