I think Oleg has summarized and expressed better many of the things I was
trying to say. A single binary on a least common denominator platform is a
legacy binary. It runs unoptimized on other platforms. Though the term Win
precedes these Microsoft operatig systems, that's a brand. W2K, WinXP etc.
arecompletely different OS's with lose backward compatibility. The right way
to do this would be to have different code bases and different distributions
for W2K and WinXP. This may grow worse with Vista. That is unfortunate, but
that is how Microsoft OS's are.

Thanks,
Rana


On 8/9/06, Oleg Khaschansky <[EMAIL PROTECTED]> wrote:

BTW what are the real advantages of having one binary?

I'd say that having separate binaries is more flexible solution in
general:
1. Don't care about performance degradation due to runtime checks.
2. Easy to port to new platforms by expanding #define's.
3. Possibility to link statically against platform-specific libraries.
4. Easy to code platform-specific calls without additional code for
dynamic invocations (calling by name, etc.).
5. Possibility of implementing functionality for one particular
platform (e.g., we have something on XP for free and need to do a hard
work enabling it on 2K), easy platform specific performance tuning.
6. Usage of platform-specific definitions won't break the build on
other platforms.

And the cost of having one binary rises with the number of differences
in the API used. IMO, the best solution is to switch to the separate
binary when the amount of platform-specific code becomes not neglible,
say 1% :) Or the workload of this code (is it the right word?) becomes
reasonably high, resulting in significant performance degradation due
to runtime checks.

> >> So the question is: should we aim to have a single binary that works
on
> >> W2K PIII /and/ WinXP IPF ?
Hmm, are PIII and IPF binary compatible? At least, there are a lot of
compile-time optimizations specific to IPF, if I am not missing
something...

thanks,
Oleg

> ---------------------------------------------------------------------
> Terms of use : http://incubator.apache.org/harmony/mailing.html
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Reply via email to