Have recently upgraded my Dell Dekstop to Vista SP1. Well as with all other windows upgrade this turned out to be a breeze, after the initial hitch over my audio driver got resolved thanks to the wonderful free help from Microsoft tech support :) Had to download 69MB of updates, which turned out to be pretty fast on my broadband. After the updates surely SP1 is far more snappier than its predecessor. Also all the promised performance improvements in Vista seem to be working well.
Next I upgraded my MiLeap L from Ubuntu 7.10 to recently released 8.04 LTS. Obvious reason for upgrade was that its an LTS and more over its got some cool new features. This update turned out to be a big 701MB! So far the new Ubuntu experience looks great :)
While Vista upgrade to SP1 was over in under 40 minutes, Ubuntu upgrade took more than 5 hours! Well to be fair this cant be really compared as hardware base was totally different: Vista running on modern Core 2 Duo (1.86 GHz) while Ubuntu on a Celeron M ULV (900 MHz) processor.
Though technically speaking the Ubuntu upgrade was actually a new OS, while for Vista it was just a service pack, but there is a huge difference in upgrade sizes. And this is the reason for my worry. Vista uses what it calls a Background Intelligent Transfer Service (BITS) to just transfer the set of bits that have changed form what is installed on the current machine, for all the windows based updates/ upgrades. Ubuntu on the other hand downloads complete set of packages (.deb files) even when it is simply updating and not upgrading. Is there no technology simiar to BITS in Linux? If no it would be interesting to develop such a stuff for Linux update/upgrade services.