How Snow Leopard Cut ObjC Launch Time In Half
MBCook writes "Greg Parker has an excellent technical article on his blog about the changes to the dynamic linker (dyld) for Objective-C that Snow Leopard uses to cut launch time in half and cut about 1/2 MB of memory per application. 'In theory, a shared library could be different every time your program is run. In practice, you get the same version of the shared libraries almost every time you run, and so does every other process on the system. The system takes advantage of this by building the dyld shared cache. The shared cache contains a copy of many system libraries, with most of dyld's linking and loading work done in advance. Every process can then share that shared cache, saving memory and launch time.' He also has a post on the new thread-local garbage collection that Snow Leopard uses for Objective-C."
snow leopard stories!
Also sounds like the prelink application in Linux.
The intent is to improve performance in situations where running an anti-virus scan or back-up utility would result in otherwise recently-used information being paged out to disk, or disposed from in-memory caches, resulting in lengthy delays when a user comes back to their computer after a period of non-use.
Everybody obviously knows that no viruses exist for the mac so your assertions are asymptotically false.
Once you start despising the jerks, you become one.
Actually, it is interesting I was marked troll for quoting some text that the original poster linked. O.o A view into the minds of the moderators.
Once you start despising the jerks, you become one.
I do not wish to be a poo poo, but since dynamic libraries and shared libraries have been around for just about forever, when even a second year CS major would immediately notice this could be done, is such big news now?
The first thing I would have done is built a cache for the library system. LINUX has one, why not the Mac?
So certainly I congratulate the Mac community. But wow, DUH, a cache for the linkage editor. :-)
-Hack
Got Geometrodynamics? Awe, too hard to figure out? Too bad.