March 26, 2015 10:41 am

Desarrollar para la plataforma de dispositivos Windows 10

Por: Don Box, Ingeniero Distinguido del Grupo de Sistemas Operativos

Durante WinHEC, tuvimos la oportunidad de platicar con socios de silicio, hardware y dispositivos sobre los avances que hemos conseguido en Windows 10 para simplificar la construcción de dispositivos, drivers y aplicaciones Windows. Algunos de los avances clave que mostramos fueron:

  1. La plataforma de dispositivo Windows 10 permite a los IHV desarrollar un solo driver universal que puede ser implementado en todas las familias de dispositivos de Windows 10 (por ejemplo PC, teléfonos, IoT).
  2. La plataforma de dispositivo Windows 10 brinda nuevas herramientas y técnicas para reducir el costo y la complejidad de escanear y fabricar dispositivos Windows 10.
  3. Tableros de desarrollo en el mercado y de nuevo hardware soportarán Windows 10 y drivers universales Windows.
  4. Windows 10 incluirá una nueva edición IoT para dispositivos pequeños que está preparada para correr aplicaciones universales Windows y drivers y está libre de regalías para fabricantes y constructores de dispositivos.

Para resaltar estos avances, mostramos una aplicación universal que hablaba a un sensor UV a través de un driver universal que corre en tres diferentes ediciones de Windows 10 (PC, teléfono e IoT) y tres diferentes tableros de desarrollo de hardware (Intel Sharks Cove, Intel MinnowBoard MAX y Qualcomm 410c). Veamos más a detalle cómo funciona todo esto.

Windows 10 y dispositivos

Acoger el amplio espectro de dispositivos que correrán Windows requirió un cambio en cómo construimos nuestro sistema operativo y cómo nuestros socios técnico que construyen aplicaciones y dispositivos interactúan con Windows.

Con Windows 10, hemos factorizado los componentes principales del OS que son requeridos en cada factor de forma dentro de una plataforma común que forma parte de cada edición de Windows 10. Para cada familia de dispositivos Windows (por ejemplo PC, teléfonos, Xbox), aumentamos esa plataforma común con componentes específicos de cada familia de dispositivos. También aumentamos esa plataforma común con la funcionalidad requerida para soportar las aplicaciones y drivers de esa familia de dispositivos – sus aplicaciones y periféricos de la PC trabajarán cuando actualicen su PC a Windows 10.

One Core OS Windows 10Para el usuario, este enfoque de ingeniería de Windows significa que su experiencia de Windows 10 explota las capacidades únicas del hardware y las características de cada dispositivo. Su teléfono Windows 10 puede tener las características únicas que lo hacen un gran teléfono (como hacer una llamada), mientras su PC Windows 10 puede soportar la experiencia conocida de usuario que está optimizada para mouse y teclado. Más aun, sus aplicaciones de Windows Phone funcionan en teléfonos Windows 10 y el catálogo de aplicaciones de escritorio Windows que ha crecido por más de dos décadas funciona a la perfección en su PC Windows 10.

Para nuestros socios, este enfoque de ingeniería significa que la plataforma central es la misma a través de todos estos dispositivos. Para los ISV, esto aumenta el número de dispositivos que corren la plataforma común de aplicación, lo que resumió a la perfección Kevin Gallo en este texto. Para los socios IHV y silicio, esto significa que su inversión en tecnología Windows puede ser adaptada de manera más sencilla a nuevos factores de forma de dispositivos tanto actuales como futuros.

La plataforma de dispositivos Windows

Windows 10 define una plataforma universal de dispositivo para permitir a los desarrolladores de silicio, hardware y dispositivos aprovechar su inversión en Windows a través de todas las familias de dispositivos Windows.

One Windows Platform Windows 10Nuestras metas para la plataforma de dispositivo Windows 10 han sido:

  1. Simplificar el desarrollo de driver para incrementar la escala y calidad de los dispositivos Windows.
  2. Disminuir el costo de desarrollo y fabricación de dispositivos Windows.
  3. Permitir el desarrollo de hardware y la experimentación con Windows.
  4. Permitir que Windows sea implementado en dispositivos IoT de un solo propósito que tengan recursos limitados

Demos un vistazo a lo que hacemos para conseguir estas metas.

Un desarrollo de driver más simple

Windows 10 brinda un solo Windows Driver Kit (WDK) que soporta los drivers de desarrollo para todas las familias de dispositivos Windows. El WDK aumenta Visual Studio y el Windows SDK con los encabezados, librerías y herramientas necesarias para construir drivers y dispositivos Windows.

Windows 10 brinda una sola Device Driver Interface (DDI) que abarca todas las familias de dispositivos Windows, lo que permite a los IHV desarrollar un driver universal Windows que puede ser implementado en todas las familias de dispositivos Windows. El WDK brinda soporte explícito para el desarrollo de driver universal, desde validar la conformidad de la API así como producir paquetes apropiados para la implementación en todos los dispositivos Windows 10.

Para simplificar aún más el desarrollo de drivers para Windows 10, tomamos un componente básico de Windows, llamado Windows Device Frameworks (WDF), y lanzamos la fuente en GitHub. WDF simplifica en gran medida el desarrollo tanto del modo kernel como de los drivers de modo usuario, y brindar acceso a la fuente mejorará mucho más el desarrollo y la depuración de drivers basados en WDF para Windows 10.

Imagen y fabricación de dispositivo mejoradas

Construir un dispositivo requiere algo más que solo drivers. Con Windows 10, hemos hecho mejoras en cómo la imagen general del dispositivo es construida durante el desarrollo y la personalización y luego implementada en los dispositivos en el laboratorio en el piso de fabricación.

En Windows 10, hemos puesto disponible Fast Flash Update (FFU) en todas las familias de dispositivos. FFU define un formato de imagen que está optimizado para una segura imagen de disco basada en sectores. El WDK de Windows 10 incluye herramientas que permiten a componentes de OS, Board Support Packages (BSP), drivers, y aplicaciones estar todas compuestas en un solo archivo FFU. El archivo FFU puede ser utilizado para mostrar de manera directa hasta 8 dispositivos conectados por USB por PC huésped, o para producir un disco particionado, formateado y ocupado que puede ser integrado durante el ensamblado.

Para reducir el costo de fabricación de dispositivos Windows, Windows 10 soporta el arranque en modo de fabricación. Este modo permite a un dispositivo Windows tener la imagen al inicio del proceso de fabricación con la imagen final para minoristas, y arrancar en la línea de fabricación a sólo la funcionalidad necesaria para desempeñar la validación de manufactura.

Desarrollo de hardware accesible

Diseñar y desarrollar grandes dispositivos por lo general involucra tanto crear prototipos y traer a la luz cada hardware naciente. Desde los IHV que construyen sensores o cámaras, a electrónica de consumo o fabricantes de dispositivos industriales así como IoT y comunidades de fabricantes, tener una plataforma de hardware de fácil acceso para realizar el desarrollo de dispositivos es crítico.

Trabajamos con nuestros socios de silicio para traer tableros de desarrollo de hardware junto con Windows 10. Nuestros socios desarrollan Board Support Packages (BSP) Windows 10 a través de drivers universales Windows, lo que permite al ecosistema de dispositivos implementar la edición de Windows que mejor cumpla con el escenario de ingeniería en esos tableros.

Para los procesadores Intel Atom, soportamos tanto tableros Sharks Cove y MinnowBoard MAX. Sharks Cove brinda un acceso más completo a la funcionalidad SoC, lo que lo hace la opción correcta para el desarrollo de dispositivos tipo PC. MinnowBoard Max es un tablero de bajo costo que está diseñado para el mercado de fabricantes y dispositivos integrados.

Para procesadores ARM, hemos anunciado soporte de Windows 10 para Raspberry Pi 2. Esta semana, Microsoft y Qualcomm anunciaron que soportaremos Windows 10 en Dragonboard 410C basado en 8016.

Windows 10 para IoT

Para la mayoría de los consumidores, Windows es lo que da impulso a sus dispositivos de cómputo de propósito general como PC o teléfonos. Para el ecosistema más amplio de dispositivos y hardware, Windows siempre ha jugado un papel en impulsar dispositivos de un solo propósito que abarcan control industrial, minorista, cuidado de la salud y más allá.

Windows 10 trae al frente nuestras ediciones basadas en escritorio y móvil de Windows que están fabricadas para estos mercados IoT. En WinHEC, anunciamos una tercera edición IoT de Windows 10 que está enfocada en la huella y consumo de recursos más bajas posibles, lo que la hace la más adecuada para dispositivos pequeños.

Esta nueva edición de Windows 10 se basa en los mismos OS y plataforma principales que subraya Windows 10 para teléfonos o PC, pero está optimizada para dispositivos IoT construidos para una aplicación. Esta edición de Windows es capaz de correr las mismas aplicaciones y drivers universales que pueden ser implementadas en PC o teléfonos. Para mantener bajos los costos de almacenamiento y memoria, esta edición de Windows 10 no incluye una experiencia Windows de inicio o aplicaciones incluidas. En lugar de esto, el fabricante de dispositivos construye la experiencia del dispositivo como una aplicación universal Windows y configura el dispositivo para que inicie la aplicación en el arranque, para dar al desarrollador del dispositivo control completo de la experiencia del dispositivo.

Alistándonos para Windows 10

Las pláticas y talleres que presentamos en WinHEC están disponibles en la web – si no pudieron asistir y quieren preparase, esta es una buena manera de empezar.

Para información alrededor del desarrollo de dispositivos y drivers, nuestro hardware dev center tiene ligas a contenido y noticias, y está donde el Windows 10 WDK estará disponible.

Para información específica de IoT, nuestro sitio web Windows On Devices tiene lo que necesitan.

Si ya se unieron a Windows Insider Program, gracias por ayudar a hacer mejor Windows 10. Estamos cerca de entregar nuestros primeros Windows 10 SDK y WDK, y Windows Insider Program es la mejor manera de tener Windows 10 antes del lanzamiento.