14.2. Software

A continuación se explica PCMCIA desde el punto de vista del software tratando, por un lado, los módulos del kernel envueltos en el proceso y, por otro, el administrador de tarjetas.

14.2.1. Los módulos base

Los módulos del kernel necesarios se encuentran en los paquetes del kernel. También se requieren los paquetes pcmcia y hotplug. Al arrancar PCMCIA se cargan los módulos pcmcia_core, yenta_socket y ds. En muy raras ocasiones se necesita el módulo tcic en lugar de yenta_socket. Estos módulos inician las controladoras PCMCIA disponibles y proporcionan funciones básicas.

14.2.2. El administrador de tarjetas

Para que las tarjetas PCMCIA puedan intercambiarse, debe controlarse la actividad de las ranuras de conexión. De esta función se encargan los servicios de tarjeta (CardServices) implementados en los módulos base. El administrador de tarjetas (Cardmanager) y el sistema hotplug del kernel se encargan de iniciar las tarjetas PC y CardBus respectivamente. El administrador de tarjetas es activado por el script de inicio de PCMCIA tras cargar los módulos base. Hotplug se activa automáticamente.

Cuando se introduce una tarjeta, el administrador de tarjetas o el hotplug averigua el tipo y la función para cargar los módulos correspondientes. Una vez que todos los módulos se hayan cargado correctamente y según la función de la tarjeta, el administrador de tarjetas o el hotplug inicia determinados scripts de arranque que se encargan de establecer la conexión de red, montar particiones de discos SCSI externos o llevar a cabo otras acciones específicas del hardware. Los scripts del administrador de tarjetas se encuentran en el directorio /etc/pcmcia y los del hotplug en /etc/hotplug. Al retirar la tarjeta, tanto el administrador de tarjetas como el hotplug se encarga de desactivar, utilizando los mismos scripts, todas las actividades de la tarjeta. Finalmente, los módulos que ya no se necesitan se descargan de la memoria.

Para procesos de este tipo existen los llamados “hotplug events”. Cuando se añaden discos duros o particiones (“block events”), los scripts hotplug se encargan de que los nuevos medios de almacenamiento estén disponibles inmediatamente en /media por medio de subfs. Para montar medios de almacenamiento a través de los antiguos scripts PCMCIA, subfs debe estar desconectado en hotplug.

Tanto los protocolos de inicio de los sistemas PCMCIA como todas las acciones de la tarjeta quedan guardados en el archivo de registro del sistema (/var/log/messages). Allí se recoge qué módulos se han cargado y que scripts se han utilizado para la instalación.

En teoría, una tarjeta PCMCIA puede retirarse fácilmente, especialmente si se trata de una tarjeta RDSI, de módem o de red, siempre que ya no exista ninguna conexión a la red. Sin embargo, esto no funciona en combinación con las particiones montadas de un disco externo o con directorios NFS. En este caso se debe garantizar que las unidades estén sincronizadas y se desmonten correctamente. Por supuesto, esto no es posible cuando la tarjeta ya se ha extraído. En caso de duda, utilice cardctl eject. Este comando desactiva todas las tarjetas que se encuentran en el portátil. Si quiere desactivar solamente una tarjeta, añada el número de ranura. Por ejemplo cardctl eject 0.


SUSE LINUX Manual de administración 9.3