Entorno del controlador de tarjeta inteligente
En la ilustración siguiente se muestra el entorno estándar para el controlador de lector de tarjetas inteligentes.
Además, la ilustración muestra los siguientes componentes del entorno de tarjeta inteligente:
Las aplicaciones se comunican con un controlador de lector de tarjetas inteligentes mediante el administrador de recursos de tarjeta inteligente. El controlador de lector reside en el espacio del kernel y el administrador de recursos de tarjeta inteligente reside en el espacio del usuario.
El administrador de recursos se comunica con el controlador de lectura mediante controles de E/S que se envían mediante la llamada al sistema DeviceIoControl . Para obtener información sobre cómo usar la llamada al sistema DeviceIoControl, consulte el tema DeviceIoControl del Microsoft Windows SDK.
Del mismo modo, las aplicaciones compatibles con tarjetas inteligentes pueden enviar instrucciones a un controlador de lector de tarjetas inteligentes mediante DeviceIoControl, y el sistema operativo reenviará el IOCTL indicado al controlador de lector. Si el controlador lector es un controlador WDM, el sistema operativo reenviará la solicitud mediante un paquete de solicitud de E/S (IRP).
Microsoft proporciona un ejemplo de controlador lector, pscr.sys, que es un controlador para un lector de tarjetas inteligentes PCMCIA. El código fuente de este controlador está disponible en la colección de ejemplos de WDK. Para obtener más información, consulte Controlador de tarjeta inteligente PCMCIA. Los proveedores de dispositivos de lector de tarjetas inteligentes deben proporcionar controladores diseñados para trabajar con el administrador de recursos proporcionado por el sistema y la biblioteca de controladores de tarjetas inteligentes.
Tanto los controladores de lector nativos como los proporcionados por el proveedor deben usar la biblioteca de controladores de tarjeta inteligente para realizar muchas de sus operaciones clave, como se explica en la sección Biblioteca de controladores de tarjeta inteligente.