Definição de Patch
Já que Deus não é programador, nenhum software está livre de falhas. Sejam atualizações de segurança, correções que melhoram o desempenho ou mesmo a adição de novos recursos, a grande maioria dos softwares em uso recebem atualizações periódicas.
Quando é feita alguma grande mudança, o mais comum é os desenvolvedores simplesmente lançarem uma nova versão. Mas, nos casos em que as mudanças são pequenas, como no caso de uma correção de segurança, é muito mais prático lançar apenas um pequeno patch do que obrigar os usuários a baixarem todo o arquivo novamente.
Um patch é justamente um arquivo que contém apenas as mudanças feitas pela atualização e, justamente por isso, é sempre muito pequeno se comparado ao arquivo original. Ele é obtido comparando a versão anterior com a nova (com a ajuda de algum programa naturalmente). Ao ser aplicado, o patch modifica o programa (seja um binário ou seja código fonte), "transformando-o" na versão corrigida.
Existem várias ferramentas que fazem este trabalho. No Linux e BSD o mais usado é o utilitário "patch", usado todo tempo pelos desenvolvedores do kernel e de grandes programas, como o Mozilla, onde as atualizações na versão de desenvolvimento chegam a ser diárias.