Parche (informática)

Una captura de pantalla cuando se está usando el parche en un kernel de Linux.

En informática, un parche consta de cambios que se aplican a un programa, para corregir errores, agregarle funcionalidad, actualizarlo, etc.

Si bien los parches suelen ser desarrollados por programadores ajenos a los autores iniciales del proyecto, esto no siempre es así. Un parche puede ser aplicado tanto a un binario ejecutable como al código fuente de cualquier tipo de programa, incluso, un sistema operativo o una aplicación para dispositivos móviles.

El origen del nombre probablemente se deba a la utilidad de Unix llamada patch creada por Larry Wall.

Tipos según el código

Parches a archivos binarios

A menudo un parche consiste en una actualización del archivo ejecutable de un programa. En este caso, el archivo binario es modificado para añadir los cambios o ser completamente reemplazados.

El tamaño de los parches es variable. Algunos parches solamente modifican un archivo binario de la aplicación pero otros alteran mucho más el contenido. Si el parche sólo modifica el ejecutable, puede ser muy pequeño (por debajo del megabyte). La instalación de parches solía ser una tarea tediosa, y con mucha posibilidad de error. Un error solía significar tener que reinstalar la aplicación y el parche. Hoy en día, la instalación de parches se realiza, en muchos casos, por programas especiales de forma automática.

Históricamente, los parches eran distribuidos en tarjetas perforadas o en cintas, a las cuales se les debía cortar la cinta original y reemplazar ese pedazo de programa con el nuevo. La semejanza con el proceso que puede utilizar un costurero a la hora de remendar una pieza, explica el por qué del nombre de parche.

Posteriormente, se distribuyeron en cintas magnéticas, disquetes o más tarde, en CD-ROM. El uso cada vez más extendido de Internet, permitió que la mayoría de los parches se distribuyan y pueden ser descargados desde las páginas web de las aplicaciones.

Varias compañías de software han desarrollado herramientas para ayudar en la tarea de aplicar un parche a una aplicación binaria. Pocket Soft desarrolló RTPatch. WinZip tiene una utilidad de autoextracción que lanza un programa capaz de aplicar un parche.

Algunos programas pueden actualizarse automáticamente por medio de Internet con muy poca o nula intervención del usuario. Es muy popular que el mantenimiento de los sistemas operativos se haga de esta manera. En situaciones donde los administradores de sistemas controlan un cierto número de computadoras, esta manera de automatización ayuda a mantener la consistencia. La aplicación de parches de seguridad comúnmente ocurre de esta forma.

Parches al código fuente

En estos casos, un parche suele constar de un archivo de texto que describe modificaciones a realizar en el código fuente del programa en cuestión. Esta metodología es la más difundida en el ámbito del Software Libre.

A modo de ejemplo, el servidor web más usado en la actualidad, Apache, evolucionó como un conjunto de parches que los encargados de páginas web crearon para añadir ciertas funcionalidades.

Other Languages
العربية: باتش
български: Ъпдейт
dansk: Patch
فارسی: وصله
magyar: Patch
Bahasa Indonesia: Tambalan (komputasi)
日本語: パッチ
Bahasa Melayu: Tampalan (komputer)
Nederlands: Patch
norsk nynorsk: Programkodebot
norsk bokmål: Patch
русский: Патч
Simple English: Patch
svenska: Programfix
ไทย: แพตช์
українська: Патч
中文: 修補程式