Re: i386 and source releases
Re: i386 and source releases
- Subject: Re: i386 and source releases
- From: Andrew Gallatin <email@hidden>
- Date: Fri, 27 Jan 2006 07:52:38 -0500 (EST)
Graham J Lee writes:
> Hi,
>
> I asked this sort of thing over on darwin-x86 a couple of days ago,
> but it's been rather quiet, so I thought I'd come over here :-)
>
> I notice that the Darwin 8.4 source corresponds to "Mac OS X 10.4.4
> (for PowerPC)"; what does that actually mean for i386 users? Does it
> mean one or more of the following:
>
> [i] It won't interoperate with Mac OS X on an Intel Mac
At least this much is true for IOKit drivers. Apple intentionally
broke ABI compatability between Darwin and MacOSX on Intel by removing
padding from a few critical IOKit and libkern classes (see the
"Universal binary: not compatible with its superclass" thread on
darwin-drivers for details). In order to build a an 8.4 source based
Darwin which could interoperate with MacOSX on Intel, you would need
to walk all the header files shipped with the "Universal" sdk in Xcode
and patch Darwin to remove padding the same way that it was removed
from the headers (presumably) used to build MacOSX.
The stated reason for this ABI breakage was to reduce the wired memory
usage of the kernel. It has created a mess for me, because I'd like
to ship universal drivers for a PCI-Express NIC, but I cannot test
them except on Darwin because no currently shipping Intel Mac has an
open PCI-e slot. But Darwin is no longer binary compatible with
MacOSX, so I cannot test on Darwin. So this means we'll have to play
catch up and release new drivers when Apple releases Intel machines
with open PCI-e slots.
Sigh.
Drew
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Darwin-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden