Okay, once again I am patching an application. While the 141 megabyte patch downloads, I once again wonder about all these updates and patches I download, and their impact on my limited drive space.
When these downloads state they require x amount of drive space, is that largely to replace existing code in the already-installed application (and thus not adding too much to the drive), or does each stated amount represent cumulative consumption of resources? Or something in between? Is a “patch” different from an “update?”
Seems like not long before multiple 100-megabyte-plus updates will clog up the drive.
That’s the price we pay for not maintaining our own operating system. You could maintain your own, with some flavor of linux for example, only updating packages that you need updates for, but that would take up a lot of your time.
There are files that you can delete safely, last time I checked, created by updates, that are large. But with HD space so cheap, you might as well just get a couple of big hard drives and fuggedaboudit.
Sometimes updates replace existing code without using up much additional disk space, or even none. Sometimes they are new features or changes that require more code than what you had before. So it’s a mix. You need enough space for the update files which can be large, and may be compressed so they’ll use even more space. The update files should be deleted once the code changes have been installed, but temporarily you are using up at least twice as much disk during the install. However, that will depend on the OS and it’s means of installing. I have seen Windows leave large installation files sitting around, I think that’s usually the result of an update install failure. Terms like update and patch are non-specific, but patch usually refers to changes to existing code while updates may be all new code. The particular OS makes a difference here. You can often remove unneeded code, something much easier to do on Unix than Windows.
Despite all that I don’t see much increase in the size of either Windows or Unix for most updates. It’s the optional features and 3rd party applications that use up the most disk space. YMMV.
Then, there’s also the habit (more common in Unix/Linux systems than Winders, I think) that updates tend to install new versions of a program, while leaving earlier versions in place also, so that you can revert to them at will. Sometimes you may have to take overt steps yourself, to delete older versions.
I’ve taken screen shots of the available space on my hard drive before hitting the button to update largish applications through my iMac’s Software Update function, which tells the user how much space will be used by the update.
The last time I did this was for iTunes. When the update was finished and the process had deleted the old iTunes, there was as much free space as there was before.
I’ve cancelled updates before they’ve finished, and the old apps had remained, so both exist until the process is complete. If space is cramped, you could risk killing the old version before downloading the new.
My take on the definitions is:
Patch - Fixing a fault that was discovered after launch
Update - An ‘improvement’ which may or may not be a genuine improvement, and may also include patches.
Upgrade - An update that they want you to pay for.
There’s a wonderful “feature” of Windows 7 and later that keeps all replaced OS components so that you can roll back to any place in time. The winsxs folder will keep growing forever. This is a better feature than XP or Windows 2003 that puts garbage folders in your C:\ root folder. All these are intended to allow you to “undo” any update by saving the replaced files.
So far, there is no easy cleanout. I suspect Microsoft’s logic was that by the time your system disk fills up, either you planned poorly or it’s time to replace the PC anyway. Try to imagine their concern if by 2018 your Windows 2008 disk is full. Buy Windows 18…
As for any other program, either the program replaces the key pieces of itself, or it’s expanding features. I suspect in most cases, it’s replacement mostly. Whether it keeps the old garbage depends on the programmers’ design.