sase_2011_usando el hardware intel para embedded con yocto y meego_marcelo_lorenzati
TRANSCRIPT
Software and Services Group
Usando el hardware Intel para
embedded con Yocto y MeeGo
Marcelo Lorenzati
1
Software and Services Group
Agenda
• Porqué MeeGo y Yocto?
• MeeGo OS / SDK
• Yocto OS / SDK
• Consultas
2
Software and Services Group
Porque MeeGo y Yocto?
3
• Linux suma popularidad en nuevos form factors y embedded
• Muchos form factors nuevos (Netbooks, Handhelds, Tablets, Media
phones, Smart TVs, In-Vehicle Infotainment, System on a Chip)
• Múltiples arquitecturas (ARM, MIPS, PPC, x86, x86_64)
• Ecosistema fragmentado (múltiples soluciones similares)
Resultado:
• Mucho esfuerzo para desarrollar software no diferenciador
• Menos tiempo y recursos para agregar la propuesta de valor
Software and Services Group
Porqué MeeGo y Yocto?
4
• Falta de un estándar único para el desarrollo
– Herramientas complejas y no amigables
– Sin soporte para desarrollar en todos los form factors
– Sin experiencia de usuario unificada
• Falta de herramientas de diseño integradas
Software and Services Group
Porqué MeeGo y Yocto?
5
Plataformas basadas en procesadores Intel® Atom™
Yocto MeeGo
Intel® Atom™ Developer Program &
Intel AppUp℠ Center
Yocto
SDK Yocto Community
Software and Services Group
Porqué MeeGo y Yocto?
6
0,0%
10,0%
20,0%
30,0%
40,0%
50,0%
PasadoActual
Futuro
Licenciadocomercialmenteo consorcio open source
Desarrollo Propio
Licenciadocomercialmenteno open source
No un OS formal
Tendencia de uso de sistemas operativos para sistema embebidos en los proyectos
VDC Research: 2010 Embedded Software and tools research vol 1
Software and Services Group
Qué es MeeGo?
7
• Moblin + Maemo
• Proyecto independiente
• GPL (General Public License)
• Soportado por una comunidad (manteiners,
source repo, Meritocracia)
• Una misma experiencia de usuario en todas
las plataformas y arquitecturas
• Una distribución base (core) con verticales
con cada plataforma
• Booteo rápido y footprint reducido
• Foco en el consumo de energía
Software and Services Group
Arquitectura de MeeGo
8
Application Development Environment
Integrated Social
Networking
Cloud-device sync of PIM
Data
MeeGo APIs
Support for Multiple
Multimedia Framework
Fast boot & Shutdown
Optimization
Improved Power Management
Connection Manager for
data connectivity
Telephony Framework
Segment Specific User Experiences
Sensor Framework
Gesture & Multi Touch Framework
Internationali-zation with UI
guidelines
Software and Services Group
Arquitectura de MeeGo
9
Software and Services Group
Cómo desarrollo en MeeGo?
10
Desarrollo Debug Distribución Empaquetado
Community Repositories
Features
• Cross-OS
• Deploy/debug con
VM o dispositivo
• Emulación de
dispositivos
• Mejor soporte de
empaquetado
• Integración con Qt
Creator
• manual
• RPM Spec
Creator
• public OBS
• plugin to Qt
Creator
Linux
Workstation
MeeGo
toolchain
QEMU
Virtual Machine
• plugin to Qt
Creator
Windows
Workstation QEMU*
Virtual Machine
MeeGo
toolchain
Device
Device
Software and Services Group
Intel AppUp Center
• Intel Atom Developer Program
– http://appdeveloper.intel.com/en-us/meego
• AppUp
– http://www.intel.com/appup
11
Seguro Intel es un nombre que consumidores y
desarrolladores confían
Simple Interfaz grafica simple con acceso rápido al
contenido
Foco en el desarrollador •Soporte para múltiples sistemas operativos,
runtimes y plataformas
•SDK potente multiplataforma
•Submitea una vez y distribuye globalmente
•Gana hasta el 70% de los ingresos de la
aplicación
•Programa de 1 millón de dólares para fondos
de
desarrollo.
Software and Services Group
Como desarrollo en MeeGo?
12
• Host
– Fedora 12,13 (12 14)
– Ubuntu 9.10,10.04 (9.10 10.10)
– OpenSUSE 11.2,11.3 (11.2 11.4)
– Windows XP SP3, Windows 7
– Mac (Snow Leopard) version TBD
• Target
– x86 Netbook, x86 Handheld, n900
– Imagenes proveidas para emulacion con QEMU
Software and Services Group
Cómo desarrollo en MeeGo?
13
• Windows : meego-sdk-installer.exe
• Linux: (wiki.meego.com/SDK/Docs/1.1)
– Agregar repositorio
– Instalar paquete meego-sdk (incluye qt, qt-creator, qt-designer, qemu)
– Instalar toolchain (~250MB)
– Instalar runtime (~600MB)
– Configurar Qt Creator
• Documentación del SDK On line: meego.com/developers
• API para MeeGo documentada (con soporte de Qt)
• Maquina virtual QEMU (Gráficos acelerados GL)
• Integrado a Qt Creator (Boton para lanzar Qemu)
• Dispositivos virtualizados
Software and Services Group
Demo
14
Software and Services Group
Qué es Yocto?
15
• Infraestructura Open Source para desarrollo
de distribuciones Linux customizadas.
• Pensada para embedded para cualquier
arquitectura de hardware.
• Un Build System completo (basado en Poky)
• Un SDK completo con herramientas de
debug y virtualización
• Proyectos, recursos e información
• Codifica una vez ejecútalo en todas las
plataformas
Software and Services Group
Componentes de Yocto
16
Un espacio de
colaboración
Yocto es más que
un build system !
Una implementación
de referencia
Board Support
Packages
Infraestructura
de Testing
Partners
Standards
Documentacion
Software and Services Group
Otros Build Systems existentes
17
BuildRoot
E2-Factory
PTXdist
LTIB
OpenEmbedded
Poky
LDAT
CrossTool-NG
OpenWRT
Software and Services Group
Arquitectura de Yocto
18
Ambiente de desarrollo del proyecto Yocto
Software and Services Group
Arquitectura de Yocto
19
Modificaciones al Kernel
Software and Services Group
Cómo desarrollo en Yocto?
20
Desarrollo Debug
Linux
Workstation
Yocto
toolchain
QEMU
Virtual Machine
Device
Linux
Workstation
Yocto
toolchain
QEMU
Virtual Machine
Device
Linux
Workstation
Yocto
toolchain
QEMU
Virtual Machine
Device
Empaquetado
• Manual
• RPM
• DEB
• IPKG
Software and Services Group
Demo
21
Software and Services Group
22
meego.com
www.yoctoproject.org
edc.intel.com
www.appup.com
appdeveloper.intel.com/en-us/
Software and Services Group
23
Gracias!
Software and Services Group
24
Backup