Índice. 1. Introducción. 2. Orígenes de Windows CE 2.1. Contexto en el que nace Windows CE 2.2. Desarrollo de Windows CE 2.3. Breve resumen histórico



Documentos relacionados
Introducción a las redes de computadores

Capítulo 5. Cliente-Servidor.

COLEGIO COMPUESTUDIO

Redes de Área Local: Configuración de una VPN en Windows XP

Guía de selección de hardware Windows MultiPoint Server 2010

Windows Server Windows Server 2003

UNIVERSIDAD TECNICA DEL NORTE

UNIVERSIDAD TECNOLOGICA ECOTEC DIEGO BARRAGAN MATERIA: Sistemas Operativos 1 ENSAYO: Servidores BLADE

SCT Software para la calibración de transductores de fuerza. Versión 3.5. Microtest S.A.

COMO CONFIGURAR UNA MAQUINA VIRTUAL EN VIRTUALBOX PARA ELASTIX

Especificaciones de Hardware, Software y Comunicaciones

INSTITUTO TECNOLÓGICO DE COLIMA LIC. EN INFORMÁTICA

Guía de uso del Cloud Datacenter de acens

Lección 5: Bloc de notas Estudio de la aplicación Bloc de notas, utilizada para escribir sencillos documentos de texto de tamaño reducido.

Internet Information Server

UNIVERSIDAD DE SALAMANCA

Operación Microsoft Windows

CAPÍTULO 1 Instrumentación Virtual

App para realizar consultas al Sistema de Información Estadística de Castilla y León

Tecnología IP para videovigilancia... Los últimos avances han hecho posible conectar cámaras directamente a una red de ordenadores basada en el

Symantec Desktop and Laptop Option

1 Introducción. 2 Requisitos del sistema. Control de presencia. V.1.0 Manual de instrucciones. Control de presencia. V.1.0 Manual de instrucciones

Los mayores cambios se dieron en las décadas de los setenta, atribuidos principalmente a dos causas:

I NTRODUCCIÓN 1. ORDENADOR E INFORMÁTICA

Sistemas Operativos Windows 2000

WINDOWS : TERMINAL SERVER

Características del software

Archivo de correo con Microsoft Outlook contra Exchange Server

CONFIGURACIÓN TERMINAL SERVER EN WINDOWS 2003

ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA Sistemas Embebidos Act 11: Reconocimiento Unidad 3 LECTURA 1

Gestión Dispositivos Móviles Dexon Software

ACCESS CONTROL. Aplicación para control y gestión de presencia. (Versión. BASIC) 1 Introducción. 2 Activación del programa

CAPÍTULO 4 ANÁLISIS DE IMPLEMENTACIONES

Manual de uso de la plataforma para monitores. CENTRO DE APOYO TECNOLÓGICO A EMPRENDEDORES -bilib

MANUAL DE USUARIO PARA LA INSTALACION DE LOS AGENTES COMMVAULT SIMPANA 9.0

Crear una red Inalámbrica

GLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo.

Instalación del sistema operativo Microsoft Windows Server 2008 Standard Edition x86

Escritorio remoto y VPN. Cómo conectarse desde Windows 7

Trabajo TICO Unidad 2: Sistemas Operativos. Guillermo Jarne Bueno.

Sistemas de almacenamiento informático

INFORMÁTICA IE. Términos a conocer y conceptos básicos. World Wide Web (WWW):

Sumario Instalación MDT V

Manual instalación Windows 8. Instalar Windows 8 paso a paso

Redes de área local: Aplicaciones y servicios WINDOWS

Beneficios estratégicos para su organización. Beneficios. Características V

Especificaciones de Hardware, Software y Comunicaciones

Sistema de Control de Accesos API-WIN

Administración de la producción. Sesión 2: Sistema Operativo (Microsoft Windows XP)

AGREGAR COMPONENTES ADICIONALES DE WINDOWS

Sistema Operativo Windows

Recall SIP. Guía de Instalación y Configuración Versión 3.7

ACTIVIDADES TEMA 1. EL LENGUAJE DE LOS ORDENADORES. 4º E.S.O- SOLUCIONES.

REDES DE ÁREA LOCAL. APLICACIONES Y SERVICIOS EN WINDOWS

Visualización y modelado de elementos geográficos en dispositivos móviles. Capítulo 5: Aplicaciones cliente

INTELIGENTE Y VERSÁTIL

SIGAN 1.0 SISTEMA DE INFORMACIÓN DE GESTIÓN ADMINISTRATIVA DE NÓMINA

Modulo I. Introducción a la Programación Web. 1.1 Servidor Web.

El ordenador es un dispositivo electrónico que permite almacenar información, modificarla y generar nueva información.

Los requerimientos básicos necesarios para poder navegar dentro del Curso Open Office Writer con Accesibilidad se dividen en:

SIEWEB. La intranet corporativa de SIE

Cliente Citrix ICA Windows CE Tarjeta de consulta rápida

MENU MULTIINICIO WINDOWS XP

PRACTICA CAPITULO 2 MODULO 1 PROTOCOLOS Y LA FUNCIONALIDAD DE LA CAPA DE APLICACIÓN

Escritorios virtuales

Descripción. Este Software cumple los siguientes hitos:

Centro Universitario de Ciencias Exactas e Ingenierías DIVISION DE ELECTRONICA Y COMPUTACION

GUÍA RÁPIDA DE. Instalación de Nokia Connectivity Cable Drivers

Studium, Campus Virtual de la Universidad de Salamanca.

GedicoPDA: software de preventa

Guía de acceso a Meff por Terminal Server

COPIAS DE SEGURIDAD AUTOMÁTICAS DE DIRECCIONES CALLEÇPAÑA

Capítulo 1 Introducción a la Computación

Desde el punto de vista físico en un ordenador se pueden distinguir los siguientes elementos:

Emerson Network Energy Center, ENEC Lite, es. Multilenguaje. Navegación intuitiva. Multiusuario. Seguridad. Mantenimiento y control

computadoras que tienen este servicio instalado se pueden publicar páginas web tanto local como remotamente.

UF0513 Gestión auxiliar de archivo en soporte convencional o informático

Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA

Familia de Windows Server 2003

HOSTING TIPOS DE ALOJAMIENTO WEB EN INTERNET

Servicio de Informática Vicerrectorado de Tecnologías de la Información y la Comunicación

Solución: Descargar e instalarse el componente desde la página Web de Microsoft:

Una computadora de cualquier forma que se vea tiene dos tipos de componentes: El Hardware y el Software.

Person IP CRM Manual MOBILE

Sistema de marketing de proximidad

CAPÍTULO II. Gráficos Dinámicos.

Guía de inicio rápido a

Notas para la instalación de un lector de tarjetas inteligentes.

Windows Server 2012: Infraestructura de Escritorio Virtual

Instalación del Software Magaya

OLIMPO Servidor Universal

UNIVERSIDAD DE ORIENTE FACULTAD DE ICIENCIAS ECONOMICAS LAS REDES I. Licda. Consuelo Eleticia Sandoval

Proyecto Tecnológico Prof. Carolina Quinodóz 6º2º - TM

VOIP LA NUEVA REVOLUCION

ESCUELA NORMAL PROF. CARLOS A CARRILLO

GUÍA RÁPIDA DE. Instalación de los Controladores para cable de conectividad Nokia

Manual de software. Dynamic Cloud. 10/2014 MS-Dynamic_Cloud v1.2

CONCEPTOS BASICOS. Febrero 2003 Página - 1/10

CAPITULO IV. HERRAMIENTAS DE CÓDIGO ABIERTO

La compañía Autodesk presenta la nueva versión de su aclamado

Transcripción:

Índice 1. Introducción 2. Orígenes de Windows CE 2.1. Contexto en el que nace Windows CE 2.2. Desarrollo de Windows CE 2.3. Breve resumen histórico 3. Objetivos del sistema operativo 3.1 Sistemas a los que se dirige 3.3 Objetivos y limitaciones 4.Características y arquitectura 4.1 Características 4.2 Arquitectura de Windows CE 4.2.1 OAL (OEM Abstraction Layer) 4.2.2 Controladores (drivers) de dispositivos 4.2.3 APIs 4.2.4 Shell y Internet explorer 4.2.5 Kernel 4.5.6 Threads y procesos 4.3. Arquitectura de memoria de Windows CE 5. Tecnologías 5.1 Tecnologías de emulación 5.2 Platform builder 5.3 Trabajo en tiempo real 6. Aplicaciones 6.1 Windows Mobile 6.2 Windows Automotive 7. Servicios de red y comunicaciones 8. Conclusiones y futuro del sistema. 9. Bibliografía 1

Índice de figuras Figura 1: Logo del primer prototipo de Windows CE Figura 2: Escritorio de Windows CE 2.0 Figura 3: Versión Windows CE 3.0 utilizada para HPC. Figura 4: Handheld-PC Figura 5: Primer Pocket-PC de Apple Figura 6: Windows CE 5.0 con Platform Builder Figura 7: Diseño esquemático de la arquitectura de Windows CE Figura 8. En esta figura se observa como Windows CE ofrece una capa (OAL) para la adaptación de los dispositivos. El fabricante es el encargado de implementar las funciones correspondientes al nivel OAL. Figura 9: Windows Mobile 2003 incorporado en la versión CE 4.0 Figura 10: Teléfonos y PDAs con WMobile Figura 11: Logo de Windows Automotive Figura 12: Windows Automotive en un coche Figura 13. En la figura se muestran los componentes de los sistemas de comunicaciones de Windows CE Figura 14: Ovation ix 2

Este documento se centra en las novedades que aporta la versión Windows CE 5.0 a las versiones anteriores, prestando especial atención a sus nuevas funcionalidades y vías de aplicación. Ofreciendo, en primer lugar una visión global del sistema operativo y una introducción a su arquitectura. 1. Introducción Microsoft Windows CE es un sistema operativo de 32 bits diseñado para satisfacer las necesidades de los organizadores personales, sistemas empotrados y dedicados. Esto incluye las herramientas de Empresa como controladores industriales, hubs, y terminales de punto de venta, así como productos del consumidor como cámaras y teléfonos. Windows 95 y Windows 98 se dedican a entregar compatibilidad con las aplicaciones y hardware existentes, mientras intentan entregar nuevas características como la multitarea. El objetivo de Windows CE es proveer un moderno sistema operativo de plataforma cruzada, multihilado y de tamaño pequeño. Esta última característica es la principal diferencia con Windows 95 y Windows NT. Cuando se habla de tamaño, se refiere a la cantidad de memoria y de almacenamiento necesario para albergar al sistema operativo. 2. Orígenes de Windows CE En esta sección veremos los propósitos y motivaciones de la creación de Windows CE, información que proporcionará una idea global del sistema operativo. 2.1. Contexto en el que nace Windows CE Los avances tecnológicos y el mundo de la informática han permitido crear aparatos de tamaño muy reducido y con funcionalidades muy específicas para satisfacer necesidades informáticas personales. Son sistemas con limitaciones en sus especificaciones, que sólo disponen de aquellos elementos necesarios para llevar a cabo su función particular. Como por ejemplo podemos pensar en un PC de bolsillo que en vez de ratón tiene un panel de contacto que cubre la pantalla, lo que lo hace más portable o en un sistema de control de un automóvil donde no tiene sentido usar un teclado (el conductor no puede usar las manos) y se han de buscar alternativas como el reconocimiento de voz. También se han desarrollado numerosos dispositivos que incluyen un computador programable y cuyo funcionamiento depende de sistemas de mayor tamaño: funcionamiento denominado empotrado. Debido a la existencia de este tipo de dispositivos y en vista de su uso y desarrollo en el futuro surge la necesidad de crear un sistema operativo que se adapte a sistemas empotrados con diferentes funcionalidades por limitados que sean. Por eso, Microsoft creó Windows CE, un sistema operativo flexible y adaptable a cualquier tipo de dispositivo. 3

2.2. Desarrollo de Windows CE Figura 1: Logo del primer prototipo de Windows CE Mientras se desarrollaba Windows CE se le dió el nombre de Pegasus y junto a él se estaba diseñando un nuevo dispositivo, que tendría más tarde a Windows CE como sistema operativo. A este nuevo dispositivo se le llamó Handheld PC (HPC) o PC de bolsillo y el proyecto de su desarrollo se denominó Pulsar. El equipo de Pulsar tuvo grandes limitaciones de hardware, tenían que trabajar con poca memoria, crear código muy eficiente, garantizar una respuesta rápida del sistema, utilizar procesadores limitados, etc. Todas estas restricciones son debidas al tamaño de los dispositivos a los que se enfocan y al coste que han de tener éstos para tener éxito comercialmente. 2.3. Breve resumen histórico Windows CE 1 Windows CE 1.00 y 1.01 fueron el primer paso en la creación 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 engañar al programador y al usuario, porque al decir Edición 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. Windows CE 1.x presenta las siguientes características: Compatibilidad con Windows. Windows CE soporta el modelo de programación Win32, sin embargo sólo soporta un subconjunto de todo el mundo Win32. Al igual que Windows NT y Windows 9x, Windows CE realiza multitarea con desalojo. El formato para los archivos ejecutables y librerías son los mismos que los de Windows 9x y NT. Aunque Windows CE no puede ejecutar aplicaciones de Windows de forma arbitraria (en otras palabras, cualquier aplicación Windows), es relativamente fácil portar la mayoría de las aplicaciones a Windows CE. Consume pocas cantidades de RAM. Todos los componentes de Windows CE se pueden ejecutar en ROM, reduciendo la necesidad de RAM. NO se requiere flash memory o una unidad de disco (aunque ambos son soportados). Independiente del hardware del sistema. Windows CE trabaja en una variedad de microprocesadores de 32 bits y no requiere una arquitectura de hardware particular. 4

Windows CE 2 A mediados de 1997 se comenzó a distribuir una versión beta de Windows CE 2.0, que en realidad mantiene la misma estructura de componentes que Windows CE 1.x, sin embargo presenta avances importantes: Soporte para los procesadores Intel y AMD. La serie 82x de los procesadores PowerPC de Motorola. Pantalla con colores de hasta 24 bits. Conexiones LAN mediante el protocolo NDIS. Subconjunto de ActiveX. Java Virtual Machine. Visual Basic Script. Subconjunto de MFC para Windows CE. Figura 2: Escritorio de Windows CE 2.0 La figura superior muestra a Windows CE 2.0, y como puede verse soporta colores, algo que Windows CE 1.x no hacia. En la versión 2.01 se agrega soporte para FAT32, fast IRDA, USB y poder imprimir. Windows CE 3 En abril del año 2000 nace Windows CE 3, provocando un sustancial cambio en la dirección del equipo de desarrollo Windows Mobile. Con el lanzamiento de este producto Microsoft tomó la decisión de competir con el bien conocido y establecido Palm-OS basado en PDAs. Esta decisión evolucionó la interfaz de Figura 3: Versión Windows CE 3.0 utilizada para HPC. usuario de las PDAs que comenzaron a llamarse Pocket-PC. Esta versión mejora la compatibilidad de Windows, dando soporte en tiempo real a procesos complejos. Ofrece nuevos servicios kernel (del núcleo), como soporte para interrupciones jerarquizadas y mejora en la respuesta de threads haciendo que el sistema responda adecuadamente ante eventos e interrupciones. Estas características en tiempo real hacen al CE 3.0 ideal para usos industriales tales como robótica, dispositivos de prueba y medida y dispositivos lógicos programables. 5

Con mayor capacidad de almacenaje y de uso de archivos, comunicaciones entre procesos, y soporte de red, Windows CE 3.0 opera fácilmente en entornos de escritorio basados en Microsoft Windows NT y Microsoft Windows 2000. Windows CE 4 Su primera aparición fue en marzo del año 2002, pero no fue hasta junio del 2003 que quedo completamente implantado, gracias al surgimiento de Windows Mobile 2003 (Pocket PC 2003). Windows CE se mostró robusto, multi-funcional y capaz de trabajar en diferentes plataformas. Por estas razones quedo claro que Windows CE estaba aquí para quedarse. Microsoft en menos de doce meses logró incorporar a esta versión dos versiones menores de Platform Builder, de esta manera surgieron las versiones de Windows CE 4.1 y 4.2. Sin embargo el problema en estas versiones fue que realmente el sistema operativo no se pudo adaptar a todos los dispositivos empotrados, esto es porque las imágenes que guarda el sistema son pensadas para programadores y no para usuarios finales que necesitan de un diseño ergonómico. 3. Objetivos del sistema operativo 3.1. Sistemas a los que se dirige Anteriormente hemos mencionado los dos tipos de sistemas a los que se dirige Windows CE: sistemas empotrados y organizadores personales. Por un lado, los sistemas empotrados han de formar parte de un sistema mayor e interactuar con él. Ésta interacción podría ser necesaria en tiempo real (imaginemos, por ejemplo, un sistema empotrado que gestione los movimientos de un robot industrial). Además, este tipo de sistemas han de poderse adaptar bien al entorno en que se integran, que puede llegar a ser muy diverso (hemos comentado el caso del robot industrial que no necesitaría tener una pantalla de calidad, pero otros casos pueden requerir, por ejemplo, de una buena presentación gráfica en una pantalla pequeña o una entrada de datos por reconocimiento de voz, etc.). Esto muestra la gran cantidad de sistemas empotrados y dedicados a los que Windows CE debe dar servicio. También hemos hablado de organizadores personales que hoy en día se han convertido en un elemento cotidiano, por lo que pretenden concentrar en un único aparato muchas de las actividades de los usuarios y Windows CE ha de ser capaz de gestionarlo. Para empezar, como herramienta de organización, deberá tener la función de agenda, dietario, calendario, etc., además puede ser útil para guardar documentos, trabajar con hojas de cálculo, editores de texto, redactar y enviar correo electrónico, etc. Además, debido a lo cotidiano actualmente de los elementos multimedia, debería incorporar sistemas de visualización de video, reproducción y grabación de sonido, cámara fotográfica, GPS, etc. Como ejemplo de estos dispositivos vemos a continuación: 6

Handheld-PC Un handheld-pc o HPC casi siempre se compone de una pantalla de 480x240 o 640x240 en escala de gris, acompañada de un pequeño teclado. En vez de ratón, 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 minitarjeta. La configuración de la memoria física es muy Figura 4: Handheld-PC interesante en un HPC. Un PC de bolsillo típico tiene 4 MB ó 8 MB de memoria ROM y 2 MB ó 4 MB de RAM. La memoria ROM contiene al sistema 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. Sin embargo, y debido a la naturaleza de la memoria ROM las aplicaciones no pueden sólo ejecutarse en ROM, las aplicaciones no sólo leen de memoria, sino que también escriben. Por lo tanto se puede concluir que en la memoria ROM residen las instrucciones y valores de sólo lectura mientras que algo de RAM debe utilizarse para los valores que las aplicaciones deseen escribir en algún momento. La memoria RAM necesaria para el sistema operativo versión 1.0 es de cerca de 500 KB (la versión 5.0 necesita 350KB). Las aplicaciones no requieren demasiada cantidad de memoria, 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 almacén de objeto, para el almacenamiento de datos. Los archivos que se guardan en el almacén de objeto, no son guardados tal cual son, sino que son comprimidos en un radio 2:1. Los HPCs no tienen unidades de disco flexibles, ni discos duros, sin embargo se soporta SRAM y Tarjetas de PC Flash ATRA en dispositivos con slots PC Card. Pocket-PC Windows CE también funciona con otros dispositivos denominados PDA(Personal Digital Assistant), que son más pequeños que los HPC y que carecen de teclado, reemplazado por un reconocimiento de un sistema de tacto y un panel de entrada que aparece en pantalla. Figura 5: Primer Pocket-PC de Apple PocketPC, igual que HPC, también contiene una memoria RAM y otra ROM. La ROM aquí siempre será una memoria flash aunque puede ser de 2 tipos: 1) NOR, pequeña, con una capacidad de entre 1 y 32 MB, corta vida, lenta a la hora de borrar y escribir y cara; aunque, por otro lado, soporta una tecnología llamada XIP (Execute in Place), que permite ejecutar el código binario de la ROM directamente, sin necesidad de copiarlo primero en la RAM. 7

2) NAND, de mayor capacidad (16 MB - 512 MB o más), mayor vida, barata, más rápida al borrar y escribir pero que necesita ejecutar desde la RAM. Hay muchos tipos de memoria RAM dependiendo de ciertos parámetros, p.ej., podemos encontrar memorias estáticas (SRAM) y dinámicas (DRAM). Las diferencia principal es que la SRAM guarda los datos mientras esté encendida, es más rápida y sofisticada y, por tanto, más cara. La forma en que utilizan dichas memorias es similar a como lo hacen los HCPs. 3.2. Objetivos y limitaciones Windows CE está condicionado por una serie de limitaciones propias de los sistemas a los que se destina. El sistema operativo tendrá que ser flexible y adaptable en cuanto a sus funciones: cada uno de los sistemas empotrados tiene una función propia diferente de los demás y una tarea muy específica Por eso, Windows CE es un sistema operativo modular que permite que cada fabricante pueda seleccionar las partes del sistema operativo que necesita para su dispositivo y pueda compilarlas de forma que sólo se incorpore aquello que sea necesario, optimizando el funcionamiento y reduciendo los costes de fabricación del cliente, puesto que estará limitando al máximo las necesidades de memoria y componentes de su dispositivo. Flexible en cuanto a los recursos: de un sistema a otro los recursos de los que se disponen pueden variar mucho. Podemos encontrarnos con un dispositivo sin teclado, o sin pantalla, teniendo que ser capaz de trabajar con los recursos mínimos, limitados por los dispositivos de entrada/salida. Bajo coste económico y pequeño tamaño: en el caso de los organizadores personales es imprescindible para que tenga éxito. Conlleva la minimización del número de recursos internos necesarios y limitación de memoria de la que dispone ya que tiene un coste relativamente alto y ocupa espacio. Ha de ser capaz de trabajar con diferentes procesadores (todos de 32 bits): debe ser un sistema adaptable a diferentes configuraciones. Ha de ser capaz de interactuar con otras máquinas: las comunicaciones son un elemento importante del sistema, se deben incorporar todos los sistemas y protocolos habituales. 4. Características y arquitectura Figura 6: Windows CE 5.0 con Platform Builder Esta versión recibe el nombre de Macallan y fue anunciada a principios del año 2003. Será la versión sucesora del Windows CE 4.2. Esta diseñada, desde el principio, para el mercado de los sistemas empotrados. Windows CE 5.0 combina un avanzado sistema operativo empotrado, que trabaja en tiempo real, con poderosas herramientas para crear rápidamente los dispositivos empotrados del futuro. Contiene características que cualquier programador necesita para desarrollar e implementar dispositivos 8

hechos a la medida de la aplicación para la cual serán utilizados, esto incluye también dispositivos como los Pocket PCs y Smartphones. Las herramientas en Windows CE 5.0 están optimizadas para la próxima generación de sistemas empotrados, que necesitan poder comunicarse de manera eficaz a las redes y tener sólidos protocolos de comunicaciones, un núcleo (kernel) que trabaja en tiempo real, contenidos multimedia y capacidades de acceso a Internet. Sus características y su arquitectura se ven desarrolladas en el siguiente apartado. 4.1 Características Las principales características de la nueva versión serán un entorno de desarrollo integrado, que permite a los desarrolladores trabajar en un entorno gráfico y utilizar la interfaz de línea de comandos desde la misma herramienta; y un soporte de hardware más amplio, con más de 50 controladores que facilitarán la vida a los desarrolladores. También se han tenido en cuenta en esta versión la seguridad y fiabilidad, con todos los parámetros de sus componentes establecidos con la máxima seguridad por omisión, según la compañía; así como la realización de informes de errores, que permiten a los fabricantes de dispositivos que se conectan a Internet conseguir informes de los problemas que tienen los usuarios con sus productos. Para soportar dispositivos más centrados en el apartado multimedia, Microsoft ha incluido en Windows CE 5.0 soporte para Direct3D, el modelo de programación y gráficos basado en DirectX que forma parte del sistema operativo Windows de escritorio. Esta tecnología será útil para nuevos dispositivos como centros multimedia portátiles (Portable Media Centers), un nuevo tipo de productos basados en Windows CE cuyo lanzamiento esta previsto para el año que viene. Aplicaciones Para realizar aplicaciones para Windows CE, Microsoft ofrece una gran familia de lenguajes de programación, entre ellos: Visual Studio.Net: utiliza todas las características del Compact Framework.Net que funciona con standards públicos de Internet para permitir la integración con aplicaciones existentes y nuevas capaces de ejecutarse en cualquier plataforma. Embedded Visual C++: plataforma IDE que brinda un nuevo nivel de productividad para Windows CE, permitiendo un desarrollo de aplicaciones sin comprometer la flexibilidad, el rendimiento o el control. Drivers Un aspecto clave del diseño modular de Windows CE es que permite que tanto diseñadores de hardware (IHVs, independent hardware vendors) como de software (ISVs, independent software vendors) implementen drivers que soporten su propio hardware sin necesidad de soporte por parte de Microsoft. En particular, Windows CE provee la infraestructura necesaria para que un IHV o ISV pueda desarrollar drivers para los siguientes dispositivos: de almacenamiento, multimedia, de red (NDIS, 10/100 Ethernet, Bluetooth, inalámbricas), 9

que necesiten puertos serie o paralelo, que utilicen Smart Cards, o de expansión vía PCMCIA, Compact Flash, USB y IEEE 1394. Todos estos drivers forman parte de librerías dinámicas (DLLs) y utilizan las APIs standard de Windows CE en su implementación (basadas en Win32). BSP-Board Support Packages Una característica importante de Windows CE es el soporte que brinda el paquete de soporte de tablero (BSP, Board Support Packages). Un BSP es el software que implementa los drivers del dispositivo en ejecución para un tablero estándar de desarrollo (SDB, Standard Development Board). Un BSP contiene archivos de fuente, archivos binarios, o ambos. Se puede utilizar un BSP para implementar rápidamente un sistema operativo en un SDB y evaluar sus características. La versión 5.0 contará aún con más BSPs que las versiones anteriores. Esto, junto con las mejoras en el kernel, permite un ciclo de despliegue del sistema operativo más corto. Procesadores soportados ARM, MIPS, SuperH, x86. Windows CE 5.0 soporta estos cuatro procesadores de 32 bits: Se puede ejecutar sobre distintas arquitecturas de procesadores Real-time Support. Esta característica significa que el sistema tiene capacidad para responder a eventos externos en un periodo de tiempo relativamente corto sin bloquearse y dándoles la prioridad adecuada. Funciones USB Para poder imprimir a través del puerto USB, esta versión instala un driver PCL como driver de impresión por defecto. También permite la utilización de USB 2.0 gracias a la instalación de drivers de bus que permiten cargar los drivers de cliente. Otra característica importante es que esta versión añade un driver para posibilitar el almacenamiento de datos en USB de la misma forma que sucede en versiones de escritorio. Requisitos para trabajar con Windows CE 5.0 Procesador Pentium II de 266-MHz o posteriores; se recomienda un procesador de 500-MHz Microsoft Windows 2000 Professional con Service Pack 4 o Windows XP Professional con SP1 Microsoft.NET Framework, versión 1.1 128 MB de RAM; 192 MB de RAM son requeridos para poder ejecutar el emulador 10

1.7 GB de espacio en disco duro para una típica instalación con un solo microprocesador; aproximadamente 17 GB para instalar el producto entero, incluyendo el Platform Builder CD-ROM o DVD-ROM drive Puerto paralelo bidireccional para cargar una imagen del sistema operativo cuando no se usa una conexión Ethernet. 4.2. Arquitectura de Windows CE 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 pueda integrarse entre sí. Cada elemento comprende varios componentes de nivel más bajo y los diseñadores del sistema tienen la posibilidad de incluir o excluir estos componentes de nivel más bajo según sus necesidades. La siguiente figura muestra los elementos de la arquitectura de Windows CE. Applications Embedded Shell Windows CE Shell Services Remote Connectivity WIN32 APIs COREDLL, WINSOCK, OLE, COMMCTRL, COMMDLG, WININET, TAPI Kernel Library GWES Device Manager File Manager IrDA TCP/IP OAL Bootloader Drivers Device drivers File drivers OEM Hardware Figura 7: Diseño esquemático de la arquitectura de Windows CE 4.2.1 OAL (OEM Adaptation Layer) El OAL (OEM Adaptation Layer, es decir, la interfaz entre Windows CE y el aparato físico) permite que los fabricantes programen sus propias funciones de control de hardware (drivers) adaptándose a la interfaz que se les proporciona, que incluye rutinas de servicio a interrupciones e interfaces para funcionalidades específicas del hardware como puede ser la alimentación, permitiendo que el sistema operativo se ejecute en cualquier configuración de hardware o características como el "encendido instantáneo" que permiten que los dispositivos Windows CE sean apagados y luego encendidos instantáneamente si el dispositivo tiene RAM no volátil (respaldada con 11

baterías). De esta forma, un fabricante no ha de tener complicaciones a la hora de hacer que su dispositivo pueda funcionar en Windows CE. Windows CE 5.0 incluye una OAL con calidad de producción. Esto significa que se ha mejorado la manipulación de componentes mediante bibliotecas de código, estructuras de directorios para reutilizar código, archivos centralizados de configuración, y una arquitectura consistente a través de distintas familias de procesadores y plataformas de hardware. Figura8. En esta figura se observa como Windows CE ofrece una capa (OAL) para la adaptación de los dispositivos. El fabricante es el encargado de implementar las funciones correspondientes al nivel OAL. 4.2.2 Controladores (drivers) de dispositivos Windows CE trabaja con dos tipos de drivers, los nativos (incorporados en el sistema operativo para el hardware que está siempre presente en el dispositivo como el teclado en un HPC) y los que son instalables (proporcionados por los fabricantes e instalables en tiempo de ejecución para periféricos que pueden agregarse). Permitiendo así que los fabricantes creen sus controladores de una forma bastante directa a través de las interfaces disponibles. Para todos los drivers de dispositivos soportados, Windows CE tiene un conjunto bien definido de DDI o Device Driver Interfaces (Interfaces del Driver del Dispositivo) para los cuales los diseñadores escriben. Windows CE 5.0 facilita las infraestructuras necesarias para que los fabricantes puedan desarrollar los drivers de los dispositivos de las siguientes categorías: Multimedia devices (display/graphics, audio, AV/C, printer, and Direct X-enabled) Almacenamiento(storage device) Networking peripherals (NDIS, 10/100 Ethernet, Bluetooth, wireless) Input devices Serial and parallel devices Smart card peripherals Expansion peripherals via PCMCIA, Compact Flash, USB, and IEEE 1394 busses Windows CE directamente soporta varios tipos de dispositivos, tales como teclados, ratón, paneles de tacto, puertos seriales, módems, pantallas, slots de PC Card, 12

procesadores de audio, parlantes, puertos paralelos, disco ATA o unidades de "flash card". 4.2.3 APIs Windows CE exporta un subconjunto de Win32 API, a lo que se debe gran parte del éxito comercial de Windows CE ya que la API de Win32 ya era conocida por la mayoría de desarrolladores, facilitando así tanto la creación de aplicaciones para el nuevo sistema como la migración de aplicaciones existentes de otros sistemas Microsoft a Windows CE. Un dispositivo con Windows CE ha de tener conectividad con otros sistemas Windows (ordenadores personales de sobremesa), con Internet y con otros dispositivos Windows CE. Para ello Windows CE utiliza como protocolo principal el TCP/IP, mejorado en este caso para la comunicación sin cable (wireless). Junto con los protocolos de comunicaciones, Windows CE provee varias de las APIs familiares para comunicaciones de Windows, incluyendo Windows sockets, comunicación por puerto serie, telefonía, WinINet (FTP y HTTP), LAN (NDIS), entre otros. También se dispone de una API propia de acceso remoto para poder trabajar con un PC. Esta API de sincronización se denomina ActiveSync y su arquitectura es abierta para que cualquiera pueda crear su propio sistema de sincronización personalizado. 4.2.4 Shell La shell provee a un usuario de la interfaz de objetos necesaria para utilizar las aplicaciones del sistema operativo Windows CE en un dispositivo portátil. Dichos objetos pueden ser reales, como ficheros y carpetas; virtuales, como la papelera de reciclaje; o pueden ser objetos remotos a los que se accede a través de una red. Windows CE proporciona el código de fuente para la shell. El usuario puede modificar este código para crear sus propias shells. La shell de Windows CE consiste en una serie de módulos y componentes, destinados cada uno a una función específica de la shell. 4.2.5 Kernel El kernel es la parte principal del sistema operativo ya que es la que se encarga de planificar y sincronizar las tareas, procesar las excepciones e interrupciones, cargar las aplicaciones y gestionar la memoria virtual. Al igual que Windows NT y Windows 9x, Windows CE presenta un sistema multitarea con desalojo basado en prioridad, también provee una rica variedad de primitivas de sincronización, incluyendo semáforos, mutex y eventos. El Kernel de Windows soporta la ejecución de programas en ROM o RAM. También implementa paginación bajo demanda para las aplicaciones que se almacenan comprimidas y/o se almacenan en un medio que soporta ejecución en el lugar (como lo es para RAM o ROM). El kernel tiene una rutina de bajo nivel de servicios de interrupción y baja latencia de hilo (a los hilos se les puede asignar la CPU y hace 13

cambio de contexto en menos de 100 microsegundos en un HPC a 33 MHz). Esto permite que Windows CE sea utilizado en muchos tipos de sistemas de tiempo real. Windows CE utiliza el mismo sistema de procesos y threads utilizado por Windows NT y que se explican a continuación. Ya hemos comentado que se trata de un sistema operativo multitarea y que para planificar la ejecución de las tareas dispone de un sistema de prioridades y un algoritmo que controla su planificación. 4.2.6. Threads y procesos Un proceso es la representación de una aplicación que se está ejecutando, mientras que los threads son los diferentes flujos (o tareas), que se ejecutan dentro de un proceso. Es decir, tendremos un proceso por aplicación, pero podremos tener varios threads por proceso. Esto puede llegar a ser muy útil en determinados casos; en vez de ejecutar tantas veces una aplicación como tareas queramos hacer, creando así varios procesos (y consumiendo los recursos correspondientes), podemos crear 1 thread para cada tarea, ejecutando una única vez la aplicación y ahorrándonos los recursos (memoria) que consume un proceso. Cuando decimos que Windows CE es un sistema operativo multithread, estamos diciendo que puede ejecutar varios threads de un mismo proceso simultáneamente. Hasta hace poco, la mayoría de sistemas sólo podían ejecutar un thread por proceso, forzando al resto de tareas a esperar a que ese thread acabase para poder realizar su trabajo. Con Windows CE esto no es así, si un proceso tiene varias tareas independientes entre sí y éstas tienen la misma prioridad, se ejecutan simultáneamente repartiendo el tiempo de procesador. Cuando se ejecuta una aplicación se está creando un proceso. Dicho proceso dividirá sus funciones en tareas (como mínimo una, que se crea a la vez que el proceso), representadas para el sistema operativo en forma de threads. El proceso es quien gestiona los threads que de él dependen y la interacción entre ellos. 4.3. Arquitectura de Memoria de Windows CE Se ha dicho en la sección anterior que Windows CE soporta multitarea y multihilos con prioridad de forma similar a como lo hacen Windows NT y Windows 9x. Sin embargo, al momento de administrar memoria las cosas cambian radicalmente. Windows CE oculta al programador la administración de memoria física del dispositivo y mantiene la idea de memoria virtual. El gran cambio es que Windows CE no provee 4 GB de memoria virtual a cada nuevo proceso que arranca. Windows CE al momento de partir crea un espacio de direcciones virtuales de 4 GB pero que es único para todos los procesos. El objetivo de estas direcciones virtuales es hacer transparente para el desarrollador cualquier aspecto de la memoria física del dispositivo. El tamaño de este espacio de direcciones viene determinado por los procesadores que utilizarán Windows CE, que al ser de 32 bits, permiten trabajar con 232 direcciones (4 Gbytes). Para gestionar su uso, se divide dicho espacio en dos bloques, destinando los 2 primeros GB de direcciones a la memoria virtual usada por los procesos y el resto al direccionamiento de memoria física. Una parte de los 2 primeros GB se divide a su vez en 33 bloques (slots) de 32 MB, cada uno destinado a un proceso. De esta manera asignamos un espacio de direcciones diferente a cada proceso y conseguimos así que no se produzcan interferencias entre procesos. 14

Al igual que en Windows NT y Windows 9x la memoria sigue siendo asignada por páginas. Para ello se usa un sistema de paginación con TLB (Translation Look-aside Buffer) virtual. En Windows NT el tamaño de la página depende del procesador, en Windows CE también y va desde 1 KB hasta 4 KB. Se puede pensar que tener un espacio de direcciones común entre todos los procesos puede que hagan a Windows CE un sistema inestable sin embargo esa posibilidad se elimina al momento en que Windows CE implementa protección no a nivel de espacio de direcciones sino que a través de protección de páginas. 5. Tecnologías 5.1. Tecnología de emulación La tecnología de emulación del Windows CE simula el comportamiento del hardware que soporta esta plataforma, permitiendo a los programadores crear, referirse, y probar nuevas y existentes plataformas en las que se basa Windows CE sin hardware adicional. Usando la última tecnología de emulación en la versión 5.0, los programadores pueden probar aplicaciones en paralelo a las plataformas en el mismo ambiente de emulación, reduciendo el tiempo y por lo tanto el coste total. Estas tecnologías de emulación soportan los siguientes tipos de hardware: Puerto paralelo. Provee un puerto paralelo que se puede mapear directamente a un puerto LPT Puerto serie. Provee dos puertos serie que se pueden mapear directamente a puertos COM. Ethernet. Permite la utilización de una tarjeta Ethernet a través del protocolo IP Pantalla. Permite especificar el tamaño de la pantalla a utilizar, desde 80 x 64 píxeles hasta 1024 x 768 píxeles. Se puede especificar una resolución de 8, 16 o 32 bits por píxel. Teclado y ratón. Audio. Provee soporte básico de audio, incluyendo líneas de entrada y salida y micrófono. 5.2. Platform Builder El Platform Builder de Microsoft genera un Ambiente Integrado de Desarrollo (IDE) para realizar diseños empotrados a medida, basados en el sistema operativo Windows CE. Platform Builder para Windows CE 5.0 viene con todas las herramientas de desarrollo necesarias para diseñar, crear, construir y para probar una plataforma basada en Windows CE. El IDE proporciona un solo espacio de trabajo integrado donde se puede trabajar en diseños y proyectos. Con este programa seremos capaces de desarrollar un sistema operativo a medida de nuestra aplicación. Para poder realizar esto necesitamos implementar un paquete de soporte de tablero (BSP, sección 4.1.1.) y un cargador de arranque concreto de nuestro dispositivo. Se puede utilizar el Platform Builder para elegir una plantilla de diseño, para crear un diseño de sistema operativo, para construir la imagen de arranque y para descargar esta imagen a nuestro dispositivo. 5.3. Trabajo en tiempo real 15

El funcionamiento en tiempo real es esencial para las respuestas críticas que se requieren en sistemas empotrados de alto rendimiento. Hay muchas definiciones del trabajo en tiempo real. En el contexto de la familia de sistemas operativos empotrados de Windows, utilizaremos la definición que fue adoptada por el Control de Arquitectura Abierto y Modular (OMAC): un sistema en tiempo real duro es un sistema que fallaría si sus requisitos de sincronización no son resueltos; un sistema en tiempo real suave puede tolerar variaciones significativas en la entrega de servicios del sistema operativo como interrupciones o contadores de tiempo. El Windows CE es un sistema operativo en tiempo real duro. Debido a ser un sistema operativo en tiempo real duro, el Windows CE provee de importantes tecnologías para el desarrollo en tiempo real de las aplicaciones, incluyendo: 256 niveles de prioridad de threads. Proporciona mayor flexibilidad en controlar la programación de threads dentro de un sistema empotrado. Interrupciones jerarquizadas. Permite que las interrupciones de alto nivel de prioridad se ejecuten inmediatamente, para no tener que esperar la finalización de una interrupción de prioridad baja. El núcleo (kernel) puede jerarquizar tantas interrupciones según la capacidad del CPU. Inversión de la prioridad. Se refiere a una situación en la cual se retrasa la ejecución de un thread de prioridad de alto nivel, porque otra aplicación esta utilizando los mismos recursos que este thread. Para corregir esta situación y liberar el thread de alta prioridad, Windows CE permite que el thread de baja prioridad herede el thread más crítico y funcione hasta que libere su uso del recurso. 6. Aplicaciones Windows CE 5.0 es un sistema operativo modular formado por una serie de componentes (cada una de ellas es un archivo.lib), esto permite que el SO se pueda usar sobre infinidad de dispositivos, desde lavadoras o DVDs hasta Smarphones o PDAs, ya que dependiendo del hardware puedes elegir las características que sean necesarias. Además te permite empezar el sistema sin necesidad de tener montado el hardware con lo que se pueden conseguir ciclos de producción más efectivos. Las BSPs y Device drivers te permiten construir el software necesario para que funcione sobre un hardware determinado. Como ya hemos dicho se usa en dispositivos tales como decodificadores de televisión, routers inalámbricos, monitores sin cables, juegos, impresoras multifuncionales, entre otros. Todas estas aplicaciones dieron paso a muchas más y abrieron todo un mundo nuevo de posibilidades. Para poder exprimirlo al máximo, Microsoft, partiendo del SO Windows CE, desarrolló otros similares como el Windows Mobile, destinado a móviles inteligentes y de última generación, y el Windows Automotive, con funciones específicas para coches. A continuación se describe las funcionalidades del sistema operativo que están disponibles para el usuario final: ActiveSync: Esta tecnología proporciona la ayuda para sincronizar datos entre una computadora de escritorio basado en Windows y los dispositivos de Microsoft basados en Windows CE. File viewers: Esta tecnología proporciona una manera de leer archivos comunes de Microsoft Office como los archivos PDF. Remote Desktop Protocol: 16

Esta tecnología permite a usuarios conectar remotamente con una computadora de escritorio que funciona con Windows XP profesional, o a un servidor que funciona con Microsoft Windows NT Server 4.0, Terminal Server Edition o posterior. Windows Messenger: Esta tecnología combina voz y texto en tiempo real con capacidad de transferencia de archivos. User Help: Esta tecnología le permite incluir archivos de la ayuda al usuario en la shell. 6.1. WINDOWS MOBILE A partir del sistema WCE, surge el Windows Mobile, una plataforma flexible e innovadora para aplicaciones basadas en Pocket-PC y Smartphones. Entre sus características destacan que es una plataforma de una potente capacidad, reduce el tiempo y coste de desarrollo, incrementa las oportunidades del mercado y tiene acceso a fuentes de desarrollo y ayuda. Este sistema se aplica en teléfonos móviles Figura 9: Windows Mobile inteligentes y de última generación y PDAs con teléfono 2003 incorporado en la versión CE 4.0 integrado. Soportan tanto pantallas de cristal líquido como TFT, pueden sincronizarse con otros ordenadores y utilizar programas como el pocket Excel, pocket Word, pocket Windows media player, etc., es decir, tienen su propia versión de los programas más habituales de Windows para navegar por Internet, crear documentos o reproducir música. Figura 10: Teléfonos y PDAs con WMobile 6.2. WINDOWS AUTOMOTIVE Basado en el sistema operativo Windows CE 5.0, Microsoft Windows Automotive 5.0 es una plataforma rápida, útil y avanzada que aúna toda la tecnología actual y la industria del automóvil para integrarla en los vehículos. Este software dota a la industria automovilística de una plataforma capaz de generar soluciones end-to-end en un rango que va desde sistemas de navegación con Figura 12: Windows Automotive en un coche gráficos en 3 dimensiones hasta funciones sencillas como kits de manos libres para el teléfono móvil. Figura 11: Logo de Windows Automotive Windows Automotive puede ser utilizado para multitud de funciones como pueden ser: sistemas de navegación, sistemas de entretenimiento, sistemas de información, dispositivos multifunción o dispositivos sensoriales en vehículos. 17

7. Servicios de red y comunicaciones. Micosoft Windows CE proporciona a los dispositivos la capacidad de conectarse y comunicar con otros dispositivos y con la gente sobre redes sin hilos o cableadas. La siguiente lista muestra las tareas que los drivers, protocolos e interfaces de programación (API s) de Windows CE permiten: -OEM: se denominan así los fabricantes que pueden crear dispositivos (networkconnected devices) como PDA s, Smartphones, cámaras digitales o gateways. -Los vendedores independientes del software (ISVs) y las empresas pueden crear aplicaciones y servicios usando APIs tales como Extensible Markup Language (XML), SOAP, Winsock, Message Queuing (MSMQ) y Media Sense. -Los vendedores de hardware independientes (IHVs) pueden crear drivers de red usando la Network Driver Interface Specification (NDIS) 5.1 y las herramientas de prueba de NDIS - por ejemplo 802.11, Bluetooth, GPRS, CDMA, y Ethernet. Windows CE también incluye características inalámbricas tales como Bluetooth, 802.11 (802.1x, protocolo extensible de autentificación y la configuración automática 802.11), y Media Sense; características de servidor como características de acceso remoto (RAS)/ Point-to-Point Tunneling Protocol (PPTP) y File Transfer Protocol (FTP) y servicios y API s como RTC Client API, Winsock 2.2, y Object Exchange Protocol (OBEX). La siguiente ilustración muestra la arquitectura de red y comunicaciones de Windows CE y continuación se describen sus características. 18

Figura 13. En la figura se muestran los componentes de los sistemas de comunicaciones de Windows CE -802.1X Authentication: IEEE 802.1x es un estándar que proporciona acceso autentificado a redes 802.11 sin hilos y a redes de Ethernet cableadas. -Bluetooth: Tecnología sin hilos de corto alcance que permite la comunicación de datos entre dispositivos. También proporciona la capacidad de usar un teléfono móvil Bluetooth como módem, intercambiando información con otros dispositivos Bluetooth, y proporcionando el acceso de red. -Extensible Authentication Protocol: EAE es extensible permitiendo OEMs añadir esquemas de autentificación adicionales. -File Server: permite a los usuarios tener acceso a archivos y a otros recursos de un servidor sobre una red usando TCP/IP. -FTP Server: se usa para transferir archivos a y desde sistemas informáticos remotos sobre una red usando TCP/IP. -Infrarrojos: Muchos dispositivos basados en Microsoft Windows CE tienen un puerto infrarrojo (IrDA). IrDA, se trata del protocolo estándar de comunicaciones por infrarrojos más extendido actualmente. Su implementación en Windows CE no sólo permite enviar secuencias de datos, sino que también se adapta al estándar NDIS 4.0 (para trabajar con redes de área local LANs-). 19

-Internet connection sharing: colección de tecnologías que trabajan juntas para permitir a múltiples dispositivos en una red privada compartir una sola conexión del Internet. -L2TP/IPSec: permite que los usuarios tengan acceso a una red privada mediante un túnel a través de una red pública o usando una conexión privada virtual de la red (VPN). L2TP utiliza los mecanismos de autentificación y de compresión del Point-to-Point Protocol (PPP). L2TP confía en el protocolo de seguridad de IP (IPSec) para cifrar frames del PPP. -Wireless LAN 802.11 - Network User Interface(NetUI): Permite a usuarios configurar conexiones de red tales como una red de marcado manual (módems), conexiones directas (tales como serial y/o USB) así como conexiones LAN (tales como 802.11). Además, la red UI permite descubrimiento y la vinculación de hardware Bluetooth. -Network utilities: Utilidades para localizar problemas de la red (IpConfig, Route, Ping). -Object Exchange Protocol (OBEX): Protocolo binario eficiente y compacto que permite a una amplia gama de dispositivos intercambiar datos espontáneamente de una manera simple y eficiente. Este protocolo trabaja con Bluetooth e IrDA. -PPTP: Permite una conexión cifrada usando una infraestructura de seguridad tal que un usuario puede comunicar o intercambiar datos con otro dispositivo IP-CONECTADO o red remoto. -Print Server: El print server permite a clientes tener acceso a las impresoras de un servidor sobre una red usando TCP/IP. -RAS Server/PPTP Server (Incoming): RAS es un sistema utilizado para gestionar la conexión entre dispositivos cliente y servidor remotos, permitiendo su sincronización. Además, RAS soporta la conexión mediante diferentes protocolos, tanto de acceso remoto como de LAN (redes de área local). -Real Time communications (RTC) Client API: permite servicios de mensajería inmediatos, voz sobre IP (VoIP) comunicación con dispositivos SIP-permitidos, y llamadas a teléfonos PSTN. -Serial communications. -Simple Network Management Protocol (SNMP): supervisa conexiones remotas a la red. -TCP/IP: TCP/IP es el protocolo más extendido para comunicaciones en red gracias sobre todo a que es el protocolo utilizado en Internet. El núcleo de las comunicaciones en Windows CE es también el protocolo TCP/IP, cuya implementación se ha diseñado para hacerlo más eficiente teniendo en cuenta las posibilidades de conexión wireless. -Telephony API (TAPI ):Para gestionar conexiones telefónicas el sistema operativo incluye la API de telefonía (TAPI), que consiste en una serie de utilidades que permiten realizar llamadas telefónicas, gestionar las conexiones por módem, interrumpir una 20