Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do patches and service packs work?

How do patches or service packs work? I don't know how to explain my question but I will give a try

Take Windows for example. It has files which altogether consume 100s of MB. Now a single service pack (may be 300 MB file) updates the whole windows OS.

Similarly I have seen updates happening for softwares like adobe reader etc. In all these cases the main exe is much larger compared to the update. How does the process work? If the main file refers any dependancy files and if the update change the version or size. Will it not affect the exe?

like image 551
Shoban Avatar asked Feb 24 '09 10:02

Shoban


People also ask

What is service pack in patching?

A service pack is a collection of updates and fixes, called patches, for an operating system or a software program. Many of these patches are often released before a larger service pack, but the service pack allows for an easy, single installation.

How does a service pack work?

A service pack (SP) is a Windows update, often combining previously released updates, that helps make Windows more reliable. Service packs can include security and performance improvements and support for new types of hardware. Make sure you install the latest service pack to help keep Windows up to date.

How do security patches work?

A security patch is software that corrects errors in computer software code. Security patches are issued by software companies to address vulnerabilities discovered in the company's product. Vulnerabilities can be discovered by security researchers.

What is the importance of service pack and security patch?

A service pack is a tested, cumulative set of all hotfixes, security updates, critical updates, and other updates. Additionally, service packs may contain additional fixes for problems that are found internally since the release of the product.


4 Answers

Patches and service packs usually only need to update core shared libraries of the system. These libraries are replaced or patched from a compressed archive, hence their size. Once the libraries are updated the rest of the software of the OS can continue using the new versions.

Applications nowadays are designed to be modular and to use external libraries which can be updated easily. Sometimes the main application or any media used does not need to be replaced, only the library that's changed.

like image 146
Gary Willoughby Avatar answered Sep 30 '22 22:09

Gary Willoughby


To complement earlier answers, back in the day, when file size really mattered, some patches were delivered as binary diffs, meaning, the patch itself was an executable that knew what files needed to be changed, and how, and it actually changed only a certain part of the files' zeroes and ones, locally, instead of replacing the files entirely.

like image 42
Henrik Paul Avatar answered Sep 28 '22 22:09

Henrik Paul


Following URL may be of interest to you in knowing architecture.

http://msdn.microsoft.com/en-us/library/aa387291(VS.85).aspx

like image 38
lakshmanaraj Avatar answered Sep 28 '22 22:09

lakshmanaraj


Patches (also called deltas) are only the differences between two files. If only few bytes of 1GB file change, patch will have only few bytes of size. For text files diff is used, for binary files xdelta or similar. Service packs are collections of patches.

like image 36
vartec Avatar answered Oct 01 '22 22:10

vartec