Hola: El Viernes 05 Mayo 2006 07:40, Eric Pap escribió: > (...) >No entiendo si la interfaz (driver) entre mi harware y linux esta dada >por el kernel en si, o si se da a travez de los modulos.
Veamos, efectivamente, se pueden entender los módulos como drivers; lo que ocurre explicado en palabras sencillas es que en cuanto un módulo se carga es como si formara parte del núcleo. Por otra parte, uno puede ahorrarse la carga dinámica de módulos usuales incorporándolos estáticamente al núcleo al compilarlo ('compilar' es algo así como convertir el código fuente que escribieron los programadores a un archivo ejecutable que puedas usar, en este caso, digamos que el vmlinuz y alguna cosa más), eso es lo que en compiladores se llama 'link' (en inglés), o 'linkar' (adaptado del inglés), o 'montar' (traducido al castellano). Te pego lo que escribimos un par de amigos en un artículo [1] de 2004, que era sobre el planificador del núcleo Linux, pero tenía una parte de características generales del núcleo: "Es capaz de linkar módulos en tiempo de ejecución. Los módulos contienen funcionalidades particulares que son cargadas dentro del Kernel cada vez que se requiere y no están permanentemente alojados dentro del Kernel en sí, ni dentro de la memoria. Además de la reducción en el uso de memoria, los módulos tienen la ventaja de ser actualizables. Al compilar el núcleo se da con cada módulo la opción de incorporarlo estáticamente al binario del kernel o bien compilarlo aparte para que luego se pueda cargar según demanda." [1] > Mi idea es tener cargado solo los drivers que necesito, para que la >maquina funcione mejor, arranque mas rapido etc. Si los drivers son los >modulos,lo unico que tengo que hacer es darlos de baja (siempre y >cuando supiera cuales) si los drivers estan en el kernel tendria que >recompilarlo supongo, que si no me equivoco este es el sentido, hacer >que tenga solo lo que tu compu necesita. Hotplug, udev y otros demonios están pensados para cargar ciertos módulos sólo cuando detectan que el hardware que los usa está conectado y funcionando. En general no debes preocuparte por ello. Aunque sí es cierto que a veces se fuerza la carga de otros relacionados con los que ya hay (en sonido, por ejemplo) y que no hacen falta, no es habitual. Especialmente en el arranque, a veces se prueban módulos para intentar ver si está presente cierto hardware, pero no suelen cargarse si no hacen falta. Es ese tiempo de arranque en el que a lo mejor puedes ahorrar unos segundos pero quizá ahorres más desinstalando algún servidor o demonio que no uses y se arranque al inicio. Al recompilar el núcleo puedes elegir qué módulos compilar y de ellos, cuáles incorporar de manera estática y cuáles se cargarán cuando un demonio o root decidan que se necesitan. Los que eligieses como estáticos deberían ser pocos en un sistema normal porque el kernel se carga entero en memoria y los que se usaran con poca frecuencia ocuparían espacio en memoria sin necesidad. >Segun tengo entendido un kernel de "stock" como el que tengo yo, tiene >drivers para casi todo el hard disponible. O sea que recompilandolo me >aseguro que queden solo los drivers para mi hard. Cierto, pero esos drivers (módulos) del kernel precompilado que proporciona Debian están esperando en algún lugar de /usr/src/ a ser cargados, no se cargan todos (son cientos) por defecto. Si quieres compilar es tu elección, pero es algo complicado y largo que no a todo el mundo le interesa hacer. Hay documentación por ahí de cómo hacerlo, aunque lo mejor suele ser informarte muy bien primero o compilar tu primer núcleo acompañado de alguien que ya lo sepa hacer. > >Si esto es asi no entiendo como se elije a la hora de compilar el >kernel, que drivers meter y cuales no. Creo que ya he contestado a eso. [1]: http://usuarios.lycos.es/nanoelduende/linux/charla-kernelv1-0-html.html Saludos -- -- Gabriel Núñez~ - gabriel.nnl(at)estudiante.uam.es -- gabriel.nunez(at)hispalinux.es //May The Source Be With You// --//-- --//-- Infórmese sobre las patentes de software: /- http://proinnova.hispalinux.es/ -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]