Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 10 Jun 2005 09:41:08 -0700
From:      John Baldwin <jhb@FreeBSD.org>
To:        Stephen Hurd <shurd@sasktel.net>
Cc:        Erich Dollansky <oceanare@pacific.net.sg>, freebsd-chat@FreeBSD.org
Subject:   Re: apple moving to x86
Message-ID:  <08f9491eb6c370af2759c72c862a410e@FreeBSD.org>
In-Reply-To: <42A8F923.90009@sasktel.net>
References:  <20050608212440.EDE1520F01@krell.webweaver.net> <42A7AAA6.7070608@pacific.net.sg> <42A7D3DB.9080300@sasktel.net> <732767b54cd8713b8b06e44ebfc9f791@FreeBSD.org> <42A8F923.90009@sasktel.net>

next in thread | previous in thread | raw e-mail | index | archive | help

On Jun 9, 2005, at 7:21 PM, Stephen Hurd wrote:

> John Baldwin wrote:
>
>>
>> On Jun 8, 2005, at 10:30 PM, Stephen Hurd wrote:
>>
>>>
>>>> As there is FreeBSD port to the PowerPC and its peripherals, this 
>>>> machine will make a very interesting target for FreeBSD: combine 
>>>> the x86 code base with the PowerPC drivers and get a real hot 
>>>> machine.
>>>
>>>
>>> The *really* hot machine is going to be the OSX ABI supported under 
>>> FreeBSD and running Aqua.  I betcha this happens FAST.
>>
>>
>> I doubt it would be fast at all if it even happens.  Unlike Linux, 
>> svr4, and ibcs2, OS X is not just a POSIXish UNIX kernel.  It also 
>> includes mach so there would have to be a lot of emulation to support 
>> that.  OS X also tends to define its interface not at the kernel 
>> syscall level but at the library API level (from what I have heard), 
>> which means that it might require having custom versions of the base 
>> system frameworks ala Wine which would be an enormous amount of work.
>>
> But the ABI support is about emulating the kernel ABI, not about 
> emulating the kernel.  Since the *nix userland is mostly FreeBSD 
> afaik, the ABI must be pretty darn close already.  If the interface is 
> via libraries, that makes it MORE likely not less to happen fast... 
> unless I misunderstand something.  ABI emulation doesn't replace the 
> libraries.  You'd still need a copy of OSX to run OSX binaries that 
> used the shared libs (Just like all the other ABI emulations).

Two things.  First, OS X's kernel ABI includes things like Mach IPC, 
etc. that would require a good bit of code to emulate.  Secondly, since 
OS X's ABI is at the library level, they are freer to change the kernel 
ABI within a 10.x "branch" making it harder to get an ABI that will 
work with all versions of Panther or Tiger for example.

-- 
John Baldwin <jhb@FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve"  =  http://www.FreeBSD.org




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?08f9491eb6c370af2759c72c862a410e>