AppleSoftwareUpdate is really a black box, so saying it hasn't changed is rather presumptuous.
Apples software update mechanism is
very well documented. XAR is open source (libxar), gzip (
zlib streams in gzip format) is open source, bzip2 is open source, you can view the sucatalog files directly, for example:
http://swscan.apple.com/content/catalogs/others/index-lion-snowleopard-leopard.merged-1.sucatalog
...and so on.
In fact we know that at least the method of recording reciepts changes quite a bit around 10.4, so I can say for certain that you are wrong about that.
No, because this has nothing to do with reboots, which are necessary after some updates. Calm down.
We also know that HFS+ has goen through a number of changes since 10.0. At a minimum we know about hot-file additions, file compression, and hard-links to directories. So again you are wrong.
No, because this has nothing to do with reboots, which are necessary after some updates. Calm down.
But here again we know that dyld has changed, since it can support HFS+ compressed binaries.
HFS compression is a file system feature, supported by the kernel and the kernel extension "AppleFSCompressionTypeZlib.kext". The dyld has nothing to do with HFS compression.
And LZMA is newer, but would not necessarily be a better choice for updates, since updates are going to be mostly binaries, and LZMA is horrible (worse than no compression) on uncompressable data like that.
1. LZMA has built-in compression filters (optimizers) for executable code (x86 and x86_64 machine code), so LZMA can compress the program code better than other algorithms.
2. Binaries (executable code) are not compressed. What you probably mean, is the file system compression in HFS+ or NTFS file systems, which has nothing to do with binaries (executable code). GCC, LLVM, Clang and MS Visual Studio produce
uncompressed executable files.
3. Your "mostly binaries" assumption is wrong. Just download one of the larger updates from
http://apple.com/support/downloads, decompress it with Pacifist and see for yourself.
And I am not sure that you are correct about bzip2 being used in the installers. Most of the installers (outside of SIU) are cpio/pax, and the newer ones are wrapped in a xar.
Apples XAR-version (libxar) uses bzip2 and zlib compression (see opensource.apple.com). XAR supports also LZMA, but Apple does not use it. I tested LZMA with decompressed .pkg files, and was able to reduce the size by over 30 percent, if compared with Apples .pkg file (which uses the bzip2 and zlib compression algorithms). This means 30 percent faster updates, and the LZMA decompression is much faster than the bzip2 or zlib decompression. If you do not believe it, use google to find some benchmarks. Read this:
http://multimedia.cx/eggs/bzip2-vs-lzma/
But none of this really has anything to do with why updates sometimes need reboots.
Which is the reason why you reply.
For a consumer OS none of that makes any sense.
Why?
So Apple does the right thing
Are you forced to defend Apple?
and if the kernel or KEXTs need to change they call for a reboot.
Most of the "necessary" reboots have nothing to do with the kernel (/mach_kernel). Mac OS X supports already dynamic loading and unloading of kernel extensions and libraries. Even Jaguar (Mac OS X 10.2) supported this. Some applications use this already (PGP, Virtual Box, VMware Fusion, Roxio Toast, Apples disk image mounter and so on). AFAIK, the new version of Safari (v6.0 beta) does not require a restart after the installation.
Btw, nice troll posting.