¿Qué significa bifurcación?
Bifurcación es una función en Unix que se utiliza para generar un duplicado de un proceso particular mediante la creación de dos procesos de ejecución simultánea de un programa.
Estos dos procesos se denominan normalmente procesos “padre” e “hijo”. Utilizan protocolos multitarea para compartir los recursos del sistema.
Definición de bifurcación
Un elemento importante de la forma en que se implementa la bifurcación es el sistema de copia sobre escritura utilizado para almacenar los cambios progresivos en un proceso después de la bifurcación.
Normalmente, el código estático no se duplica, sino que se comparte. En el momento en que un proceso modifica el código compartido, los cambios se crean y almacenan por separado. Esto favorece la eficiencia en el uso de procesos bifurcados.
Los desarrolladores también tienen que ser conscientes de algunos problemas con el uso de bifurcación para generar un proceso duplicado. Uno de ellos es la cuestión de los programas multihilo; dado que el proceso hijo sólo hereda un único hilo, puede haber problemas relacionados con lo que ocurre con múltiples hilos cuando se llama a la función bifurcación. Estas y otras consideraciones son mencionadas a menudo por quienes han trabajado con la función bifurcación.