1. CÓMO CREAR TUS PROPIOS DRIVERS PARA LUNIX<br />El tema es para tratar de orientar sobre como crear drivers para linux, ya que no abundan estos temas por la red (al menos en español) está explicado en dos fases:<br />Aprende programación<br />Crea los drivers<br />Y un extra:<br />Cursos de inglés.<br />Paso I: Aprende Programación:<br />http://www.ubuntu-es.org/index.php?q=node/24400<br />http://www.ubuntu-es.org/index.php?q=node/77017<br />En toda comunicación hay un emisor (tu), un receptor (la computadora) y un lenguaje.<br />La forma de comunicarnos con las computadoras es por medio de lenguajes de computación, han evolucionado con el tiempo para facilitarnos a nosotros la comunicación con ellas.<br />Los hay de bajo nivel (código máquina), nivel medio (Lenguaje C), alto nivel (Basic). Los lenguajes de bajo nivel son mas difíciles de aprender, los de nivel medio son mas fáciles y los mas sencillos de aprender son los lenguajes de alto nivel<br />Paso II: Descarga el LDKK, acá es donde empieza el trabajo (aunque luego de lo anterior esto es pan comido): <br />Descarga:http://kernel.org/pub/linux/kernel/people/gregkh/ddk/http://www.laneros.com/showthread.php?t=68134http://www.ubuntu-es.org/index.php?q=node/17847http://groups.google.cl/group/linuxchillan/msg/eb1d7dd2ceaac31e<br />El manual introductorio – Perfectamente explicado y en español:<br />Programación de drivers para dispositivos <br />¿Qué es un driver?<br />¿Por qué escribir un driver?<br />Recomendaciones <br />Proveer mecanismos, y no políticas<br />Uso de módulos <br />Módulos de ejemplo<br />Hola Mundo<br />Ejercicio 1<br />Módulo simple con un driver de caracter <br />Sintaxis de inicialización “C Tagged Structures”<br />Módulo para un driver de caracter<br />Módulo para un driver de con lectura bloqueante y no bloqueante<br />Módulo para capturar una interrupción <br />Entradas en el /proc<br />Restricciones de un manejador de interrupción:<br />Work queues<br />Referencias<br />Fuente: http://wiki.freaks-unidos.net/linux%20drivers<br />Un manual en inglés:<br />http://www.freesoftwaremagazine.com/articles/drivers_linux?page=0%2C0<br />http://www.freesoftwaremagazine.com/node/1238/pdf<br />Especialistas: <br />http://gatos.sourceforge.net/<br />programador_de_235_drivers_para_Linux/Default.aspx…<br />http://www.iearobotics.com/<br />Contenido del archivo LDDK:<br />Para ver el contenido del archivo:<br />1.- Descomprimir el archivo (click derecho, descomprimir), pesa 306 MB.<br />2.- Montar la iso en una unidad virtual de cd, con gmount para ver su contenido.<br />3.- Este es el contenido (en inglés): 5 Archivos o carpetas: <br />Documentation: Información sobre el hardware (cpu, ppc, usb, etc).Ldd3: El libro Linux Device Drivers en pdfs por capítulos, 18 capítulos (700 kb por capítulo).<br />Carpeta linux-source: linux-2.6.16.18.tar.bz2<br />COPYING de 18 kb.<br />ddk_cdrom.odt de 31 kb<br />index.html de 4 kbREADME de 1 kb<br />El Contenido de index.html: Linux Device Driver KitThis CD contiene todo lo necesario para aprender a crear dispositivos Linux Drivers.The contenidos de este CD se dividen en tres categorías principales: <br />Documentación <br />Kernel de Linux de código fuente <br />El libro quot;
Linux Device Driversquot;
<br />Documentación El mejor lugar para empezar en el aprendizaje acerca de la programación del kernel Linux es el núcleo principal HOWTO. Este archivo le da una buena visión general de algunos de los otros archivos en el directorio de documentación que son útiles, así como algunos consejos para los sitios web que pueden ayudar a responder preguntas específicas. <br />Hay un montón de archivos diferentes en el directorio de documentación. El archivo de índice principal da una breve reseña de los diferentes archivos y subdirectorios en esta ubicación.<br /> El kernel de Linux crea una amplia gama de diferentes documentos directamente desde el código fuente. Aquí hay enlaces a algunos de estos documentos: <br />La API del kernel Linux Guía Informal al hackear el Kernel de Linux <br />Guía Informal al bloqueo <br />Independiente del autobús-Accesos de dispositivos <br />La API de host USB en Linux secundarios <br />API de gadgets USB para Linux <br />La bitácora de la API de Linux <br />libata Guía del desarrollador <br />Biblioteca de Reed-Solomon interfaz de programación de <br />Módulos de Seguridad en Linux: Seguridad General Ganchos para Linux MCA<br />Controlador de interfaz de programación <br />MTD interfaz de programación del controlador NAND Linux procfs<br />Guía del Núcleo de RapidIO<br />Subsistema de Guía <br />Programación Video4Linux <br />PPP Síncrono y Cisco Guía de programación de HDLC <br />Kernel de Linux de código fuente. Hay una copia completa, la ampliación de la última versión del código fuente del kernel de Linux disponibles en el momento de crear este cd. Se encuentra aquí y se puede utilizar para construir módulos externos directamente en contra. Para obtener más información sobre cómo crear y utilizar este código fuente, por favor consulte la documentación kbuild. <br />Linux Device Drivers libro La copia entera del libro quot;
Linux Device Drivers, Third Editionquot;
está disponible aquí <br />Extra: Si no saben inglés, aprendan, click al siguiente enlace: <br />http://arukard.wordpress.com/2008/04/06/abecedario-numeros-dias-de-la-semana-en-ingles-escritura-y-pronunciacion/<br />