1. Из того что я видел, патч это просто пакет заменяющий/редактирующий файлы приложения (заранее известно в каких директориях они хранятся). На ubuntu это решается debian пакетами, на прочих линуксах пакетами своего менеджера, на винде это
msi, на маках это
dmg
2.
wiki + фрэймворки, например
memcached,
encache