Construyendo sistemas embebidos usando Linux como base Encuentro Linux 2005 Carlos Manuel Duclos Vergara

Slides:



Advertisements
Presentaciones similares
SOFTWARE LIBRE, OPEN SOURCE E HISTORIA DE LINUX TOVAR LÓPEZ IAN GUSTAVO PROFESOR RENÉ DOMINGUEZ ESCALONA ADMINISTRA SISTEMAS OPERATIVOS GRUPO 503.
Advertisements

Clasificación del Software Prof. Laura Cardozo. Software Se denomina software, programática, equipamiento lógico o soporte lógico a todos los componentes.
“Android: Un acercamiento practico” Manuel Alejandro Moscoso Domínguez Estudiante de Ingeniería en Bioinformática Talca, 8 de octubre de 2009.
DOMOTICA SISTEMAS EMBEBIDOS POR LEONARDO PAEZ UNIVERSIDAD DE LA SALLE BOGOTA 20 DE AGOSTO DE 2011.
EL SISTEMA OPERATIVO MI CONCEPTO El sistema operativo, es el programa base de un dispositivo digital (computador, Tablet, celular), para el funcionamiento.
Ordenador ● Dispositivo electrónico capaz de realizar operaciones lógicas y matemáticas de manera programada y a gran velocidad, consta de circuitos integrados.
SIMILITUDES Y DIFERENCIAS ENTRE UN MODELO TECNOLÓGICO EDUCATIVO Y UNO TECNICISTA OBJETIVOS Y ESTRATEGIAS QUE DEBERÍA TENER UN SISTEMA DE INFORMACIÓN PARA.
UNIVERSIDAD FERMIN TORO CABUDARE ENSAYO TIPOS DE SOFTWARE E IMPORTANCIA JUNIO 2014.
¿Qué es y cómo se clasifica?. El software es un conjunto de programas y aplicaciones que forman el sistema informático (datos y programas de la computadora),
ASPECTOS GENERALES. Introducción. ¿Qué es Moodle? Arquitectura. Especificaciones técnicas. Características generales. ¿Cómo puede ayudar Moodle en clase?
Tema 1 Fundamentos de Computación
INTRODUCCIÓN. Una computador u ordenador se compone principalmente del software, que se refiere al conjunto de programas, instrucciones y reglas informáticas,
intro_intro_GnU/Linux
INTRODUCCIÓN A LOS SISTEMAS MÓVILES
SOFTWARE Se forma por el conjunto de instrucciones o programas. Los programa son una secuencia de órdenes que se le dan a la computadora para que haga.
Tipos de software… Escuela Normal Prof. Carlos A. Carrillo
Cuando oímos estas palabras la mayoría pensamos en esto.
Ordenador Dispositivo electrónico capaz de realizar operaciones lógicas y matemáticas de manera programada y a gran velocidad, consta de circuitos integrados.
Sistema Operativo.
Parcial # 1 La Computadora.
HADWARE Y SOFTWARE HARDWARE
LENGUAJE DE PROGRAMACIÓN Y SOFTWARE PROPIETARIO
Conceptos y definición básicos
El hardware y el software
Plataformas inteligentes para hogares
CREATIVIDAD- INNOVACION- DESCUBRIMIENTO
EDWIN SANTIAGO YACELGA MALDONADO SANGOLQUÍ – ECUADOR 2016
CREATIVIDAD- INNOVACION- DESCUBRIMIENTO
RELACION DE LA TECNOLOGIA CON LAS CIENCIAS NATURALES Y SOCIALES: LA RESIGNIFICACION Y USO DE LOS CONOCIMIENTOS.
ALUMNA LUZ ELENA RINCON H. COD INDUCCION
Pablo Sierra Heras Sistemas operativos.
Software Se conoce como software al equipamiento lógico o soporte lógico de un sistema informático, que comprende el conjunto de los componentes lógicos.
CREATIVIDAD- INNOVACION- DESCUBRIMIENTO
Android.
SOFTWARE. Es el soporte lógico e inmaterial que permite que la computadora pueda desempeñar tareas inteligentes, dirigiendo a los componentes físicos.
Juan David Correa Tomas Koose
¿Qué es un Ordenador? Ordenador :es una máquina electrónica que recibe y procesa datos para convertirlos en información útil.
DIFERENCIAR LAS FUNCIONES DEL SISTEMA OPERATIVO O S.O.
1-ORDENADOR -Es una máquina electrónica programable que recibe y procesa datos para convertirlos en información útil -Esta compuesta por un software y.
R.A 2.1:EDITORES Y PROCESADORES DE TEXTO
Linux Linux es un sistema operativo diseñado por cientos de programadores de todo el planeta, aunque el principal responsable del proyecto es Linux.
SOFTWARE Y HARDWARE S H.
Java Historia Datos ¿ Por qué eligen Java ?.
La historia de Linux comienza mucho antes de lo que mayoría de personas piensan ya que en 1969, Ken Thompson de AT&T Bell laboratorios, desarrollo el.
EL SISTEMA OPERATIVO Es un conjunto de programas hechos para la ejecución de varias tareas, en las que sirve de intermediario entre el usuario y la computadora.
Conceptos básicos de.NET Explorar el entorno de desarrollo Crear un proyecto Visual Basic.NET Use Visual Studio.NET Acceso a datos Depurar e implantar.
ESTRUCTURA DE LOS COMPUTADORES
computadora Hoy en día resulta común encontrar máquinas electrónicas en todos los ambientes: las cajas registradoras en los mercados, los cajeros.
¿Qué es un sistema operativo y para qué sirve? Un sistema operativo (SO) es un programa informático cuyo principal objetivo es permitir.
TIPOS DE SISTEMAS OPERATIVOS ● Sistemas Operativos de multiprogramación (o sistemas operativos de multitarea). ● Sistemas Operativos distribuidos. ● Sistemas.
SISTEMAS OPERATIVOS PARA MOVILES. Que es un S.O para Móviles? Un sistema operativo que controla un dispositivo móvil al igual que las Computadoras, son.
QUE ES UN SISTEMA OPERATIVO ANDROID  Es un Sistema Operativo además de una plataforma de Software basada en el núcleo de Linux.  Permite controlar dispositivos.
CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament d’Arquitectura de Computadors (Seminaris de CASO) Autors Distribuciones de LINUX Raúl González Martínez.
Tema: Componentes lógicos de un ordenador. Mediante el sistema de numeración binario, es decir, usando los dígitos 0 y 1. Lo único que transmite,
FUNDAMENTOS DE PROGRAMACIÓN. INTRODUCCIÓN  Conceptos: Informática, Ordenador, Programa, Dato, Bit, Byte, Hardware, Software, Lenguaje de Programación,
Estructura de los Sistemas Operativos Alumna:Arratea Almeyda Aracelli.
SOFTWARE Y HARDWARE.
Soluciones telefónicas VoIP integradas para PYMES
Tecnología Informática Unidad 1: Introducción a la informática Tecnología Informática Unidad 1: Introducción a la informática.
TEMA : SISTEMA OPERATIVO. CURSO: SISTEMA EMPRESARIAL. DOCENTE: TRUJILLO RUBIO, COCOLICHE INTEGRANTES: ISUIZA ISUIZA. ROSITA. FALCÓN ISUIZA, SARAI. AHUITE.
Características de los Sistemas Operativos
Desarrollo de sistemas
Administración de Sistema Operativo Linux. Agenda Introducción Historia Linux Actual Ventajas y Desventajas Distribuciones Árbol de Directorios – Jerarquía.
Adm. Sistemas Operativos Arquitectura de Plataformas y Servicios Tic.
¿Qué son los Paradigmas de Programación?  Es una propuesta tecnológica, la cuál es adoptada por una comunidad de programadores cuyo núcleo central es.
ESTRUCTURA DE LO SISTEMAS OPERATIVOS Presentado por: Jennifer.
ESTRUCTURA DE LOS SISTEMAS OPERATIVOS By Pachas Garay Bruno.
Sistemas Operativos para Red “ Año de la lucha contra la corrupción y la impunidad “ Estudiante : Zósimo Cabrera Escobar Semestre : II Unidad didáctica:
UNIX & LINUX Prof. Ing. Carlos R. Arza Torres INTRODUCCIÓN A Curso: 3ER - MOD. 4 FACULTAD POLITÉCNICA
Transcripción de la presentación:

Construyendo sistemas embebidos usando Linux como base Encuentro Linux 2005 Carlos Manuel Duclos Vergara

Resumen ● ¿Qué son los sistemas embebidos? Un poco de historia ● Nuevos paradigmas para desarrollar sistemas embebidos ● El proceso – Explicación – Herramientas requeridas ● Ejemplo paso a paso

¿Quién soy yo? ● Ingeniero Informático UTFSM ● Experiencia en sistemas embebidos desde el año 2000 ● Experiencia en sistemas Unix desde 1996 ● Desarrollador y colaborador en varios proyectos Open Source. ● Entusiasta y evangelista de Linux y los sistemas de fuentes abiertas.

¿Qué es un sistema embebido? Un sistema embebido es un sistema autónomo diseñado para cumplir una o más funciones específicas.

Un poco de historia (1) ● Los sistemas embebidos han estado presentes a lo largo de la historia pero se han vuelto más visibles con el desarrollo de la electrónica. ● Actualmente los sistemas embebidos están presentes en casi todos los aspectos de nuestra vida.

Un poco de historia (2) ● El desarrollo de los sistemas embebidos siempre se realizó en ambientes cerrados – Los desarrolladores de sistemas embebidos formaron comunidades cerradas. – Los desarrolladores de sistemas embebidos formaron una elite. – Las herramientas necesarias para el desarrollo de sistemas embebidos hacían privativo el ingreso de nuevos actores a este mercado

Nuevos paradigmas (1) ● La llegada de los sistemas de fuentes abiertas produjo un quiebre en el desarrollo de sistemas embebidos – Aparecieron sistemas operativos portados a diferentes plataformas de hardware – Compiladores y herramientas de debuging. ● Un desarrollador podia tomar un sistema operativo como Linux o eCos y usarlos como base para un dispositivo.

Nuevos paradigmas (2) ● Se formaron nuevas comunidades de desarrolladores dispuestos a incursionar en el mundo de los sistemas embebidos. ● Aparecieron compañias con productos innovadores y con costos de desarrollo muy menores a los tradicionales (Fiebre de los MP3 players y PDAs). ● El hardware paso de ser un elemento fundamental y diferenciador a ser un elemento fácilmente adquirible y disponible.

Nuevos paradigmas (3) ● Como en todas las revoluciones, luego de momentos muy agitados llego la calma y el mercado comenzó a normalizarse. ● Muchas compañias quebraron (Lineo) y hubo fusiones “masivas”. ● El resultado final fue que el software paso a ser el elemento fundamental y diferenciador, y el hardware paso a ser un elemento más.

Nuevos paradigmas (4) ● La consagración llegó cuando compañias como WindRiver, Motorola y QNX comenzaron a usar plataformas y prácticas Open Source. ● En estos momentos existen sistemas operativos de fuentes abiertos especializados en sistemas embebidos y existe un gran número de empresas dedicadas al desarrollo y prestación de servicios asociados.

El proceso (1) ● La construcción de un sistema embebido es análoga a la del desarrollo de un software, probablemente hay solo dos diferencias: – El sistema embebido está fuertemente determinado por el costo de desarrollo, pero mucho mas por el costo de producción – El sistema embebido está ligado a un determinado hardware*

El proceso (2) ● El proceso consiste en varias etapas: – Elección del hardware. – Construcción del ambiente de desarrollo. – Generación de un BSP (Board Support Package). – Desarrollo del software de aplicación – Generación del sistema

El proceso (3) ● Elección del hardware – Actualmente el hardware es fácilmente adquirible, lo más común es elegir una plataforma de desarrollo que tenga todo lo necesario y luego desarrollar un sistema a la medida. – Es necesario fijarse en las capacidades del procesador y en los periféricos integrados.

El proceso (4) ● Construcción del ambiente de desarrollo – Generación de los compiladores y bibliotecas necesarias. – Obtención de elementos de hardware requeridos (ICE, Simuladores).

El proceso (5) ● Generación de un Board Support Package – Port del kernel del sistema operativo. – Desarrollo de los drivers. – Adaptación de bibliotecas de sistema.

El proceso (6) ● Desarrollo del software – Lo único que se puede decir aquí es que hay que poner especial énfasis en dos puntos: ● La biblioteca C probablemente sea distinta a la usada en los ambientes de escritorio y servidores. ● Los recursos pueden no ser tan abundantes como en un sistema normal.

El proceso (7) ● Generación del sistema – Compilación de un kernel a la medida. – Generación del sistema básico. – Integración del software con el sistema básico. – Generación de la imagen del sistema. – Instalación en la plataforma de hardware.

Herramientas requeridas (1) ● Compilador o crosscompilador. ● Bibliotecas de sistema para el sistema de producción. ● Software de aplicación para el sistema de producción. ● Debugers, ICE, programadores, etc.

Herramientas requeridas (2) ● Compilador o crosscompilador. – GCC ● Bibliotecas de sistema para el sistema de producción. – µClibc ● Software de aplicación para el sistema de producción. – buildroot

Herramientas requeridas (3) ● Compilador o crosscompilador. – GCC ● El compilador que nos permitirá generar nuestras aplicaciones y compilar el kernel de Linux. ● Compatible con los estándares C89 y C99, además de ANSI. ● Gratuito y de fácil obtención.

Herramientas requeridas (4) ● Bibliotecas de sistema para el sistema de producción – µClibc ● Biblioteca C pensada para sistemas embebidos. ● Compatible con Glibc. ● Pensada para ocupar poco espacio, no para la eficiencia. ● Gratuita y de fácil obtención.

Herramientas requeridas (5) ● Sofware de aplicación para el sistema de producción – buildroot ● Sistema de desarrollo que integra GCC, µClibc y un sistema Unix básico. ● Permite el desarrollo de un esqueleto de sistema. ● Por supuesto nosotros tendremos que escribir nuestra aplicación :-D

Ejemplo

Preguntas