Taller Drivers

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    Favorites, Groups & Events

    Taller Drivers - Presentation Transcript

    1. Taller: programación de drivers para Linux 2.6 Resumen: Se hará una introducción teórica a la programación de Drivers para Linux, con ejemplos que serán usados y modificados por los participantes. Escribir drivers básicos ayuda a comprender lo que pasa en espacio de kernel con las llamadas de sistema que con frecuencia se usan (read, write, lseek, ioctl). Material de apoyo: Antes y durante la semana de la Campus Party, se mejorará el documento http://wiki.freaks-unidos.net/linux%20drivers, y los ejemplos que allí se encuentran. Recomendaciones para el taller: Preparar un entorno seguro para compilar drivers antes de el taller será de mucha utilidad. Se recomienda como mínimo tener una instalación reciente de GNU/Linux para la que se puedan compilar módulos. Lo ideal es contar con una máquina virtual (Qemu, VMWare) ó User mode Linux lista, con conexión a la red local, y con su distribución preferida instalada. Se recomienda Debian ó Ubuntu. Los siguientes documentos pueden ser de utilidad: * http://wiki.freaks-unidos.net/instalando%20debian%20en%20user%20mode%20linux * http://wiki.freaks-unidos.net/qemu-debian-es ¿Qué es un driver? Desde el punto de vista de El Kernel, un driver es una capa de código entre el dispositivo de hardware y la aplicación. Un driver usa los (grandes) privilegios con los que se ejecuta su código para definir exactamente como se quiere que un dispositivo sea visto por una aplicación. Pueden existir diferentes drivers para un mismo dispositivo de hardware. El driver está en el kernel. El kernel tiene las siguientes tareas: Manejo de procesos : Creación y destrucción de procesos, comunicación entre ● procesos, asignación de CPU Manejo de memoria : La memoria es un recurso crítico, y el kernel administra ● su asignación. Sistemas de archivos ● Control de dispositivos (drivers). ●
    2. El kernel diferencia tres tipos de drivers: Drivers de carácter (char devices) ● Drivers de bloques (block devices) ● Drivers de red (network devives) ● No todos los drivers son de dispositivos. Algunos son de software. Por ejemplo, el driver de un sistema de archivos como ext3 o reiserfs son drivers de software, que mapea estructuras de datos de bajo nivel a estructuras de datos de más alto nivel. ¿Por qué escribir un driver? Existen muchas razones para querer escribir un driver. Para dar soporte a nuevo hardware ● Para mantener un producto propio ● Se está creando hardware a un ritmo rápido, y se necesitarán más personas en ● capacidad de crear drivers. Recomendaciones para la creación de drivers: Proveer mecanismos, y no políticas La idea es que un driver permita acceder a los dispositivos de hardware, sin imponer restricciones arbitrarias a los que usan el driver. En UNIX esto es una regla de diseño, que se conoce como separación de mecanismos y políticas. Una consecuencia de esta filosofía es la minimización de las líneas de código que tiene un driver. Para no escribir políticas en el driver, se puede hacer una aplicación de usuario que se encargue de configurar el dispositivo, y/o una librería para acceder a él. La idea es que el driver cambie muy poco.
    SlideShare Zeitgeist 2009

    + campus  partycampus party Nominate

    custom

    597 views, 0 favs, 0 embeds more stats

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 597
      • 597 on SlideShare
      • 0 from embeds
    • Comments 0
    • Favorites 0
    • Downloads 2
    Most viewed embeds

    more

    All embeds

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories