Guia Trabajo Colaborativo 3

También podría gustarte

Está en la página 1de 9

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD ESCUELA DE CIENCIAS BASICAS, TECNOLOGIA E INGENIERIA CURSO: 208006 SISTEMAS EMBEBIDOS

208006 SISTEMAS EMBEBIDOS

Actividad 14: TRABAJO COLABORATIVO 3 Sistemas operativos orientas a sistemas embebidos

Nombre de curso: Sistemas embebidos_208006 Temticas revisadas: Unidad 3. Estrategia de aprendizaje: Aprendizaje Colaborativo. Valoracin de la actividad: Puntaje mximo 34 puntos Aspectos generales: Este trabajo se compone de Tres (3) actividades con una sola entrega.

LEA DETENIDAMENTE ESTE DOCUMENTO

Gua de actividades Este trabajo se compone de una sola entrega de documento final. El grupo de trabajo colaborativo debe entregar un documento, de al menos diez (10) pginas de contenido que presente la tarea propuesta. Es necesario que conozca la rbrica con la cual se calificar esta actividad. La encontrarn al final de este documento. Fase 1. Sistemas operativos Realice una investigacin sobre el sistema operativo Linux, caractersticas, distribuciones, caractersticas del Kernel, etc. Descargue e instale la ltima distribucin de Ubuntu, anexe evidencia de la instalacin realizada. Fase 2. Embedded Linux y uCLinux Describa las diferentes distribuciones comerciales y no comerciales de Embedded Linux.

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD ESCUELA DE CIENCIAS BASICAS, TECNOLOGIA E INGENIERIA CURSO: 208006 SISTEMAS EMBEBIDOS

Teniendo como base el sistema operativo Linux instalado en la fase uno siga las instrucciones que describen a continuacin para la instalacin y ejecucin de un emulador de uCLinux. Si desea puede optar por otro emulador de uCLinux, al final encontrara links donde conseguir otros emuladores para uCLinux, o usted puede buscar por su cuenta otro. Se debe anexar informe con evidencias de la instalacin realizada. Primeros pasos con uClinux Este apartado analizar las opciones de software solamente (emuladores) disponibles para ejecutar el sistema operativo uClinux. uClinux es una versin de Linux para CPUs sin memoria virtual o un MMU (Memory Management Unit) y por lo general orientadas a sistemas embebidos con muy poca memoria o almacenamiento permanente. 1. Por qu usar un emulador para ejecutar uClinux? La gran cosa sobre los emuladores que se debaten aqu es que son libres. La calidad y la fiabilidad de las herramientas de desarrollo se pueden medir de antemano lo que es una gran ventaja en la pre-planificacin del proyecto. Si es posible, se debe elegir un emulador que se asemeja mucho a la CPU seleccionada. Esto le da la ventaja de probar las herramientas de desarrollo y, a su vez, la recepcin de datos significativos sobre los requisitos de memoria flash y los requisitos de ROM. En algunas circunstancias, el desarrollo puede comenzar en el emulador antes incluso de que hardware real est disponible. Un buen ejemplo es el proyecto leox que ha hecho la mayor parte utilizando el emulador TSIM: La depuracin tambin puede ser una tarea simple en el entorno virtual de un emulador. Es posible controlar totalmente la emulacin de la CPU permitiendo el acceso a la informacin de depuracin que no puede ser posible con el hardware real. Un emulador puede rastrear los accesos a memoria y la ejecucin de cdigo a un nivel ms alto lo que ayuda para encontrar ese error difcil de alcanzar en el software o sistema operativo. Emuladores puede permitir a los desarrolladores experimentar con diferentes opciones de rendimiento y su efecto en la usabilidad. Algo que puede ser til para determinar los requisitos de rendimiento del hardware de destino. Los Emuladores tambin pueden ayudar a determinar los requisitos de flash y de memoriaToda esta informacin puede ser til al principio del proceso de desarrollo. 2. Criterios para la eleccin de un emulador

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD ESCUELA DE CIENCIAS BASICAS, TECNOLOGIA E INGENIERIA CURSO: 208006 SISTEMAS EMBEBIDOS

Al elegir un emulador hay una serie de cosas a considerar. En primer lugar, se debe seleccionar un emulador que emule la CPU que pueden ser objeto de examen de la forma mas veraz, y si es posible, se desarrollar utilizando las mismas herramientas. Esto aumentar la pertinencia de cualquier trabajo realizado en el emulador. Cuanto ms cerca de un emulador es el hardware de destino mejor. Esto significa emulacin de puertos serie, temporizadores y otros dispositivos se encuentran en el hardware de destino. Uno de los dficit mas grandes de los emuladores disponibles para ejecutar uClinux es la falta de una verdadera emulacin de dispositivos de red. Aunque es posible ejecutar redes en puertos serie emulados a travs de PPP o SLIP, sera mucho ms interesante disponer de un dispositivo de red emulado. 3. Qu opciones existen Una bsqueda en la red para un emulador revelar una lista enorme de posibilidades. Slo dos de las infinitas posibilidades que se discutir en detalle aqu. Estos emuladores ya estn bien soportados por uClinux y ofrecen una buena cobertura de las opciones embebidas de las CPUs objetivo. El primer emulador, de hecho, el emulador que ayud a crear las primeras versiones de uClinux es Xcopilot. Xcopilot es un emulador de PalmPilot que se ejecuta en Unix/X11. Ofrece emulacin del temporizador, puertos serie, teclado tctil y pantalla LCD junto con la emulacin de Motorola 68000 (m68k). El segundo es el emulador ARMulator que es parte del depurador GNU gdb. Actualmente, el ARMulator ofrece una consola serie, junto con muchos posibles emulaciones ARM incluyendo big endian, little endian y emulaciones thumb. 4. Conseguir Xcopilot Xcopilot se puede obtener de muchos lugares. La ms actualizada de las fuente para el uso de Xcopilot con uClinux es la versin en el CVS en cvs.uclinux.org. cvs -d:pserver:anonymous@cvs.uclinux.org:/var/cvs login Simplemente presiona enter en la contrasea del sistema y, a continuacin, ejecute: cvs -d:pserver:anonymous@cvs.uclinux.org:/var/cvs checkout xcopilot Una versin bastante reciente puede ser descargada desde: http://www.uclinux.org/pub/uClinux/utilities/xcopilot-0.6.6-uc0.tar.gz

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD ESCUELA DE CIENCIAS BASICAS, TECNOLOGIA E INGENIERIA CURSO: 208006 SISTEMAS EMBEBIDOS

La compilacin de Xcopilot es simple: ./configure make make install Proporcionando todas las bibliotecas correctas en su lugar, el resultado ser un Xcopilot que est listo para usar. Una copia de la m68k-elf-tools sern necesarias para crear Kernels uClinux y binarios para Xcopilot. Estos pueden ser obtenidos a partir de: http://www.uclinux.org/pub/uClinux/m68k-elf-tools/ Siga las instrucciones para instalar los binarios precompilados, o para los interesados, construir los instrumentos de la fuente proporcionada. 5. Conseguir el BGF/ARMulator El BGF / ARMulator para su uso con uClinux est disponible en: http://www.uClinux.org/pub/uClinux/utilities/armulator/ Esta pgina contiene toda la informacin necesaria para construir gdb para el uso con el ARMulator y uClinux. Hay incluso una seleccin de los binarios precompilados uClinux que se puede ejecutar en el ARMulator una vez que est construido e instalado. Una copia arm-elf-tools sern necesarias para crear kernels uClinux y los binarios para la ARMulator/ GDB. Estos pueden ser obtenidos a partir de: http://www.uclinux.org/pub/uClinux/arm-elf-tools/ Una vez ms, siga las instrucciones para instalar los binarios precompilados o construir estos desde la fuente proporcionada. 6. Construccin de la Fuente uClinux La forma ms fcil para empezar con la fuente de uClinux es tomar las fuentes de distribucin de uClinux completas desde: http://www.uclinux.org/pub/uClinux/dist/ Este es un archivo bastante grande que proporciona tanto los ncleos 2.0.39 y 2.4.17, junto con una buena seleccin de aplicaciones, la mayora de los cuales han sido portadas a uClinux. Tambin ofrece configuraciones prefabricadas, tanto

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD ESCUELA DE CIENCIAS BASICAS, TECNOLOGIA E INGENIERIA CURSO: 208006 SISTEMAS EMBEBIDOS

para Xcopilot y el ARMulator/GDB que se pueden seleccionar en el men de configuracin. El mecanismo para la construccin de cualquiera de los objetivos es esencialmente el mismo, slo la seleccin de los objetivos es diferente. En primer lugar extraer el tarball uClinux-dist: gunzip < uClinux-dist-20020701.tar.gz | tar xzf cd uClinux-dist make xconfig Seleccione 'Target Platform Selection' elija un destino. 3com/Xcopilot para el objetivo Xcopilot o GDB/ARMulator para la ARMulator. Seleccione la versin del kernel que desee utilizar y use UC-libc como la biblioteca de 'C'. Guardar y salir. Aqu hay un ejemplo de un xconfig para Xcopilot: Figura 53: xconfig para Xcopilot

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD ESCUELA DE CIENCIAS BASICAS, TECNOLOGIA E INGENIERIA CURSO: 208006 SISTEMAS EMBEBIDOS

Cuando la configuracin ha terminado de configure el rbol de cdigo fuente: make dep make Cuando esto se completa, la recin construida imgen binaria estar listo para ser ejecutado en el emulador elegido. 7. Corriendo uClinux en Xcopilot Hay un poco de configuracin necesarios para ejecutar uClinux en Xcopilot. Desde el directorio raz del cdigo fuente de uClinux-dist haga lo siguiente. mkdir ~/.xcopilot ln -s `pwd`/images/pilot.rom ~/.xcopilot Xcopilot ya est listo para utilizarse. Slo tienes que escribir "xcopilot" y debera estar en funcionamiento el emulador uClinux xcopilot. Aqu est una captura de pantalla de lo que se espera. Figura 54: emulador uClinux xcopilot

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD ESCUELA DE CIENCIAS BASICAS, TECNOLOGIA E INGENIERIA CURSO: 208006 SISTEMAS EMBEBIDOS

Los comandos se pueden introducir en la consola serie que se ejecuta en la ventana de terminal. Echa un vistazo en todo el sistema de archivos, /dev, /bin y /etc Se ver como una muy reducida versin de Linux / Unix. Xcopilot tiene varias opciones de depuracin. El ms simple es el depurador predeterminado. Conectese con el depurador con: telnet localhost 2000 Aqu teclee help para ver los comandos de depuracin disponibles. Las opciones disponibles incluyen la detencin/ inicio de la CPU y la traza de la ejecucin a un archivo. 8. Corriendo uClinux en el BGF/ARMulator Desde el directorio raz del cdigo fuente de uClinux-dist haga lo siguiente. ln -s images/romfs.img boot.rom Ahora ejecute el arm-elf-gdb en el ncleo adecuado, aqu es una sesin de ejemplo:
arm-elf-gdb -n linux-2.*.x/linux GNU gdb 5.0 Copyright 2000 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "--host=i686-pc-linux-gnu --target=arm-elf"... (gdb) target sim Loaded ROM boot.rom Loaded ROM boot.rom Loaded ROM boot.rom Loaded ROM boot.rom Connected to the simulator. (gdb) load Loading section .text, size 0x77b84 vma 0x2000000 Loading section .rodata, size 0x8ddb vma 0x2077b84 Loading section .data, size 0x8fc8 vma 0x2080a60 Start address 0x2000000 Transfer rate: 4507960 bits in <1 sec. (gdb) run

En cualquier punto se puede hacer break en el depurador con ^C, establezca puntos de ruptura (break points) y examine la memoria y las variables. Break points se pueden establecer antes de escribir "run" para coger el inicio temprano del ncleo. A paso a travs de los principios de la secuencia de arranque del ncleo establecer un punto de ruptura en start_kernel. Por ejemplo:

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD ESCUELA DE CIENCIAS BASICAS, TECNOLOGIA E INGENIERIA CURSO: 208006 SISTEMAS EMBEBIDOS

... (gdb) break start_kernel (gdb) run 9. Resumen Mientras un emulador nunca reemplazara el hardware real, puede desempear un papel importante en el desarrollo. Puede ser til para la formacin y la experimentacin y tambin puede ayudar con el desarrollo y depuracin de las caractersticas del nuevo sistema operativo. Los emuladores mencionados aqu sirven para dar al usuario una comprensin fuerte de uClinux y su aplicacin. No slo pueden ser utilizados como un asistente de aprendizaje, pero tambin pueden proporcionar una base prctica para la construccin de dispositivos reales. Un emulador puede jugar una parte importante en un conjunto de herramientas para desarrolladores y puede ser llamados cada vez que llene una necesidad inmediata. 10. Otros Emuladores There are quite a few other emulators that can run uClinux to varying degrees. LEON Sparc Emulator (TSIM) Reasonable support included in the uClinux-dist sources. NEC v850e Quite good support with a selection of emulators available. The gdb based simulator is the easiest to use and is also supported in the uClinux-dist sources. Coldfire Emulator Capable of running the Arnewsh/5206 image from the uClinux-dist. SWARM (Software ARM) Basic support for this emulator is included in the uClinux-dist. http://www.skyeye.org/index.shtml SkyEye is an Open Source Software Project (GPL Licence). Origin from GDB/Armulator, The goal of SkyEye is to provide an integrated simulation environment in Linux and Windows. SkyEye environment simulates/emulates typical Embedded Computer Systems (Now it supports a series ARM, MIPS, PowerPC, Blackfin, Coldfire, and SPARC architecture based microprocessors). You can run some Embedded Operation System such as Embedded Linux, uClinux, uc/OS-II (ucos-ii) etc. in SkyEye, and analysis or debug them at source level.

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD ESCUELA DE CIENCIAS BASICAS, TECNOLOGIA E INGENIERIA CURSO: 208006 SISTEMAS EMBEBIDOS

Fase 3. Proyecto Plantee un proyecto en su regin donde la implementacin de un sistema embebido supla una necesidad puntual de su comunidad, siga los pasos planteados en el modulo para el desarrollo de sistemas embebidos. Describa la poblacin beneficiada. Durante el desarrollo de su trabajo comparta en el foro de la actividad sus juicios, pensamientos con los cuales obtuvo la definicin de pertinencia del curso en el programa acadmico. All podr enriquecer sus apreciaciones para la construccin final del trabajo. Esta participacin en el foro es calificable: 16 puntos de 50.

Especificaciones del documento final del trabajo:

Trabajo de construccin individual que incluya: Portada. Introduccin. Contenido. Conclusiones. Referencias usadas. (Deben tener formato APA.) Formato de entrega: Archivo PDF o Word. Nombre del archivo: Numero_Grupo.pdf o .doc Fecha entrega: De acuerdo a la Agenda del aula. Sitio de entrega: Act. 14 Trabajo colaborativo 3- FORO Antes de enviar el documento por favor, revisas que cumpla con lo solicitado: estructura, redaccin y ortografa, el fin del trabajo y las referencias.

También podría gustarte