Condición de lealtad contingente de SCSI


En una conexión SCSI de computadora , se produce una condición de lealtad contingente mientras un dispositivo SCSI informa de un error.

La comunicación SCSI tiene lugar entre un iniciador y un objetivo . El iniciador envía un comando al objetivo que luego responde. Al final del comando, el destino devuelve un byte de código de estado que suele ser 00h para éxito , 02h para una condición de verificación (error) u 08h para ocupado .

Cuando el objetivo devuelve una condición de verificación en respuesta a un comando, el iniciador generalmente emite un comando de detección de solicitud SCSI para obtener más información. Durante el tiempo que transcurre entre la notificación de una condición de verificación y la emisión del comando Request Sense, el objetivo se encuentra en el estado especial denominado condición de lealtad contingente .

Mientras un objetivo se encuentre en una condición de lealtad contingente, debe retener la información sensorial que se relaciona con el error que causó que ingresara en esa condición. [1] Este puede ser un problema complejo en configuraciones que contienen más de un iniciador. Un objetivo bien diseñado puede ser capaz de mantener los datos de detección de un iniciador mientras da servicio a los comandos de otro iniciador. Si luego es necesario informar una condición de verificación a un segundo o tercer iniciador, esto puede volverse prohibitivamente difícil. La definición SCSI de la condición de lealtad contingente permite que el objetivo utilice la respuesta de ocupado a los comandos entrantes y suspenda el servicio de cualquier comando reciente que todavía esté en su cola de ejecución.

Cuando el objetivo necesita realizar un largo procedimiento de recuperación de errores (generalmente uno que dura más de un segundo), puede ingresar a la condición de lealtad contingente extendida . Esto puede ser necesario en sistemas de alto rendimiento o en casos en los que existe el peligro de que el iniciador pueda restablecer el objetivo después de un breve intervalo de tiempo de espera, abortando así el procedimiento de recuperación de errores. Al igual que en la condición de lealtad contingente, el objetivo puede usar la respuesta de ocupado a los comandos entrantes y suspender el servicio de cualquier comando reciente que todavía esté en su cola de ejecución.

Cuando un objetivo entra en la condición de lealtad contingente extendida, enviará un mensaje de Iniciar recuperación al iniciador.