Re: prebinding warning
Re: prebinding warning
- Subject: Re: prebinding warning
- From: James Bucanek <email@hidden>
- Date: Mon, 10 Jan 2005 08:38:20 -0700
j o a r wrote on Monday, January 10, 2005:
>
>On 2005-01-10, at 15.39, Matt Neuburg wrote:
>
>> This off topic, but if what Scott is saying is true, what do
>> installers from
>> Apple do for 20 minutes while they are "optimizing" my hard disk? I
>> thought
>> this was prebinding.
>
>It is.
To be specific, prebinding can still be performed manually by the installer or anyone with a terminal. The difference between 10.2 and 10.3 is that 10.3 automatically detects when an application or framework hasn't been prebound, and schedules an automatic prebinding that runs in the background.
>> But if prebinding isn't necessary, why do installations take so long?
>
>That it isn't necessary doesn't mean that they're not still doing it.
>:)
Any installer that installs for 10.2 must still perform prebinding, because OS X prior to 10.3 doesn't have an automatic prebinding daemon. So while the installer *could* skip the prebinding step when installing an application into a 10.3 system, it's easier to just run prebinding after every install.
Additionally, I've still never gotten a good answer about the prebinding of system frameworks. Some people have told me that system level frameworks are automatically prebound in 10.3, while others have told me that only application and /Library frameworks are. If the former is true, then any installer that is adding system-level frameworks would have to perform a full pre-binding of the entire system in all cases.
>Prebinding will still give you a bit of a performance advantage (single
>digit percentage range), it's just that it's in many cases negligible
>compared with what you would have saved prior to the optimization.
Well, I disagree about the relative advantages of prebinding. Non-prebound applications and frameworks will take several times (hundreds of percentage points) to load over prebound applications and frameworks. However, this is hard to see or measure these days, as all of the system frameworks are already prebound, and all applications are automatically prebound.
If you want to see the difference, there's a command (don't remember what) to strip the prebinding from an application or framework. Unfortunately, you can't just tell it to go strip everything prebinding from every bundle in the system. But I did see someone run a script that would seek out executables and strip their prebinding. Afterwards, he restarted. The boot took *forever* and launch times were miserable.
--
James Bucanek <mailto:email@hidden>
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden