Condición de carrera

De Wikipedia, la enciclopedia libre
Saltar a: navegación, búsqueda
Condición de carrera en un circuito lógico. ∆t1 y ∆t2 representan el retardo de propagación de los elementos lógicos. Cuando el valor de entrada (A) cambia, el circuito genera en la salida un pico de duración (∆t1+∆t2) - ∆t2 = ∆t1.

Condición de carrera es una expresión usada en electrónica y en programación. Procede del inglés race condition (si bien sería mejor hablar de estado de carrera, igual que se habla de estado de espera). Múltiples procesos están en condición de carrera si el resultado de los mismos depende del orden en que se ejecute. Si los procesos que están en condición de carrera no son correctamente sincronizados, puede producirse un error de corrupción de datos, lo que puede ser aprovechado por exploits locales para vulnerar los sistemas. Análogamente, en circuitos electrónicos se da una Condición de carrera cuando la salida de un sistema o subsistema depende del orden en que se hayan activado o desactivado sus componentes.

La Condición de carrera se da principalmente cuando varios procesos acceden al mismo tiempo a un recurso compartido, por ejemplo una variable, cambiando su estado y obteniendo de esta forma un valor no esperado de la misma.

Véase también[editar]

Enlaces externos[editar]