* [Qemu-devel] User-space emulation on Mac OS X to run Mac OS X Intel applications
@ 2005-10-21 20:16 Steven
2005-10-21 21:19 ` Jim C. Brown
` (2 more replies)
0 siblings, 3 replies; 12+ messages in thread
From: Steven @ 2005-10-21 20:16 UTC (permalink / raw)
To: qemu-devel
Hi all,
Looking at qemu, it seems as if it could be possible to allow it to
run Intel OS X apps on PowerPC OS X, much like a reverse Rosetta. The
x86 frameworks/libraries are included with Xcode, so possibly
everything else could run natively, just have the app itself emulated.
Is anybody willing to try getting this to work?
Thanks,
Steve
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Qemu-devel] User-space emulation on Mac OS X to run Mac OS X Intel applications
2005-10-21 20:16 [Qemu-devel] User-space emulation on Mac OS X to run Mac OS X Intel applications Steven
@ 2005-10-21 21:19 ` Jim C. Brown
2005-10-21 21:52 ` Paul Brook
2005-10-21 21:31 ` René Korthaus
2005-10-23 7:32 ` [Qemu-devel] User-space emulation on Mac OS X to run Mac OS X Intel applications Pierre d'Herbemont
2 siblings, 1 reply; 12+ messages in thread
From: Jim C. Brown @ 2005-10-21 21:19 UTC (permalink / raw)
To: qemu-devel
On Fri, Oct 21, 2005 at 09:16:18PM +0100, Steven wrote:
> Hi all,
>
> Looking at qemu, it seems as if it could be possible to allow it to
> run Intel OS X apps on PowerPC OS X, much like a reverse Rosetta. The
> x86 frameworks/libraries are included with Xcode, so possibly
> everything else could run natively, just have the app itself emulated.
>
> Is anybody willing to try getting this to work?
>
> Thanks,
> Steve
>
AFAIK no one is working on it. user emulation is strictly linux-only for the
time being. (1)
Getting this to work isn't very hard at all, you'd just have to change the
syscall code to be what Darwin uses.
(1) I believe there is an m68k target being worked on, which is not strictly
linux only. I haven't looked at it very closely and am not sure of the details.
But this doesn't really help you anyways.
--
Infinite complexity begets infinite beauty.
Infinite precision begets infinite perfection.
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Qemu-devel] User-space emulation on Mac OS X to run Mac OS X Intel applications
2005-10-21 20:16 [Qemu-devel] User-space emulation on Mac OS X to run Mac OS X Intel applications Steven
2005-10-21 21:19 ` Jim C. Brown
@ 2005-10-21 21:31 ` René Korthaus
2005-10-22 8:06 ` Steven
2005-10-23 7:32 ` [Qemu-devel] User-space emulation on Mac OS X to run Mac OS X Intel applications Pierre d'Herbemont
2 siblings, 1 reply; 12+ messages in thread
From: René Korthaus @ 2005-10-21 21:31 UTC (permalink / raw)
To: qemu-devel
Am 21.10.2005 um 22:16 schrieb Steven:
> Hi all,
>
> Looking at qemu, it seems as if it could be possible to allow it to
> run Intel OS X apps on PowerPC OS X, much like a reverse Rosetta. The
> x86 frameworks/libraries are included with Xcode, so possibly
> everything else could run natively, just have the app itself emulated.
Anyway, I ask myself if this is useful at all?! Apple introduced
Universal Binaries along with XCode 2.1, so Intel OS X apps will run
on PPC, too, if they are Universal Binary formatted. This does make
sense for almost all apps, cause not all macusers can afford an Intel
Mac as soon as they are released and software vendors want to earn
money!
>
> Is anybody willing to try getting this to work?
>
> Thanks,
> Steve
>
>
> _______________________________________________
> Qemu-devel mailing list
> Qemu-devel@nongnu.org
> http://lists.nongnu.org/mailman/listinfo/qemu-devel
>
>
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Qemu-devel] User-space emulation on Mac OS X to run Mac OS X Intel applications
2005-10-21 21:19 ` Jim C. Brown
@ 2005-10-21 21:52 ` Paul Brook
0 siblings, 0 replies; 12+ messages in thread
From: Paul Brook @ 2005-10-21 21:52 UTC (permalink / raw)
To: qemu-devel
> (1) I believe there is an m68k target being worked on, which is not
> strictly linux only. I haven't looked at it very closely and am not sure of
> the details. But this doesn't really help you anyways.
The m68k target supports a very simple semihosting syscall layer, similar to
the the "angel" swi interface already implemented on Arm targets. Neither of
these help darwin emulation.
It's worth noting that OSX has two types of syscalls. IIRC one uses positive
syscall IDs, th other negative:
- The Darwin syscalls. Thees are more-ore-less the same as the linux layer,
and should be fairly easy. You can also examine/borrow from the open source
Darwin kernels.
- The Mach syscalls, and all the message passing bits (eg IOkit). Some (many?)
of these are proprietary. Might not be too hard to pass these through to an
OSX host, but I wouldn't bet on it.
Paul
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Qemu-devel] User-space emulation on Mac OS X to run Mac OS X Intel applications
2005-10-21 21:31 ` René Korthaus
@ 2005-10-22 8:06 ` Steven
2005-10-25 11:37 ` [Qemu-devel] User-space emulation on Mac OS X to run Mac OS XIntel applications Vesselin Peev
0 siblings, 1 reply; 12+ messages in thread
From: Steven @ 2005-10-22 8:06 UTC (permalink / raw)
To: qemu-devel
Yes I think this would be useful because there are situations where
developers do not create universal binaries. This is most apparent
with the host of applications being ported to Mac OS X on Intel that
aren't compiled using GCC4 and are therefore Intel-only.
And also, it might help future-proof current Macs a little, as
developers won't offer Universal Binaries forever.
Steve
On 10/21/05, René Korthaus <qemu-dev@cordney.com> wrote:
>
> Am 21.10.2005 um 22:16 schrieb Steven:
>
> > Hi all,
> >
> > Looking at qemu, it seems as if it could be possible to allow it to
> > run Intel OS X apps on PowerPC OS X, much like a reverse Rosetta. The
> > x86 frameworks/libraries are included with Xcode, so possibly
> > everything else could run natively, just have the app itself emulated.
>
> Anyway, I ask myself if this is useful at all?! Apple introduced
> Universal Binaries along with XCode 2.1, so Intel OS X apps will run
> on PPC, too, if they are Universal Binary formatted. This does make
> sense for almost all apps, cause not all macusers can afford an Intel
> Mac as soon as they are released and software vendors want to earn
> money!
>
> >
> > Is anybody willing to try getting this to work?
> >
> > Thanks,
> > Steve
> >
> >
> > _______________________________________________
> > Qemu-devel mailing list
> > Qemu-devel@nongnu.org
> > http://lists.nongnu.org/mailman/listinfo/qemu-devel
> >
> >
>
>
>
> _______________________________________________
> Qemu-devel mailing list
> Qemu-devel@nongnu.org
> http://lists.nongnu.org/mailman/listinfo/qemu-devel
>
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Qemu-devel] User-space emulation on Mac OS X to run Mac OS X Intel applications
2005-10-21 20:16 [Qemu-devel] User-space emulation on Mac OS X to run Mac OS X Intel applications Steven
2005-10-21 21:19 ` Jim C. Brown
2005-10-21 21:31 ` René Korthaus
@ 2005-10-23 7:32 ` Pierre d'Herbemont
2 siblings, 0 replies; 12+ messages in thread
From: Pierre d'Herbemont @ 2005-10-23 7:32 UTC (permalink / raw)
To: qemu-devel
On 21 oct. 05, at 22:16, Steven wrote:
> Hi all,
>
> Looking at qemu, it seems as if it could be possible to allow it to
> run Intel OS X apps on PowerPC OS X, much like a reverse Rosetta. The
> x86 frameworks/libraries are included with Xcode, so possibly
> everything else could run natively, just have the app itself emulated.
>
> Is anybody willing to try getting this to work?
I used to work on it. I will resume the work in 6 months.
http://wiki.opendarwin.org/index.php/Darwine:qemu-darwin-user
The remaining problems were mostly the apple only (that only dyld
should call) syscalls like load_shared_file, which needs to be
implemented properly.
Pierre.
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Qemu-devel] User-space emulation on Mac OS X to run Mac OS XIntel applications
2005-10-22 8:06 ` Steven
@ 2005-10-25 11:37 ` Vesselin Peev
2005-10-25 15:00 ` André Braga
0 siblings, 1 reply; 12+ messages in thread
From: Vesselin Peev @ 2005-10-25 11:37 UTC (permalink / raw)
To: qemu-devel
Hello,
Such a QEMU capability would be quite useful once the Intel Macs start
becoming widespread. While you could make a Universal Binary without
changees, it is likely that the average app would experience various issues,
some of them very subtle, when executed on Intel, because the latter is a
little-endian architecture as opposed to the big-endian one (PowerPC) of
today. Today, most applications are written for a single endian type. Few
apps can handle more than a single endian type. It is a considerable hassle
and requires double the testing to support 2 endian types (I am not saying
it is generally not good to be done, though!). That won't change with the
introduction of Intel Macs. In other words, the Mac world would start
switching en masse from big endian (PowerPC) to little endian (Intel x86) in
their programs. After a relatively short transitory period (2-3 years, I
think), most Mac apps, and especially entirely new ones, would be developed
only for Intel. QEMU could very well be the answer to bringing those apps to
the older Macs.
Steve Jobs and his marketing machine is the culprit for the disinformation.
On stage during the Apple WWDC, he demonstrated that all it takes to produce
two working Intel and PPC binaries is to enable two checkboxes, never
mentioning the subtle endianness issues. The audience applauded...
-Vesko
----- Original Message -----
From: "Steven" <grabberslasher@gmail.com>
To: <qemu-devel@nongnu.org>
Sent: Saturday, October 22, 2005 11:06 AM
Subject: Re: [Qemu-devel] User-space emulation on Mac OS X to run Mac OS
XIntel applications
Yes I think this would be useful because there are situations where
developers do not create universal binaries. This is most apparent
with the host of applications being ported to Mac OS X on Intel that
aren't compiled using GCC4 and are therefore Intel-only.
And also, it might help future-proof current Macs a little, as
developers won't offer Universal Binaries forever.
Steve
On 10/21/05, René Korthaus <qemu-dev@cordney.com> wrote:
>
> Am 21.10.2005 um 22:16 schrieb Steven:
>
> > Hi all,
> >
> > Looking at qemu, it seems as if it could be possible to allow it to
> > run Intel OS X apps on PowerPC OS X, much like a reverse Rosetta. The
> > x86 frameworks/libraries are included with Xcode, so possibly
> > everything else could run natively, just have the app itself emulated.
>
> Anyway, I ask myself if this is useful at all?! Apple introduced
> Universal Binaries along with XCode 2.1, so Intel OS X apps will run
> on PPC, too, if they are Universal Binary formatted. This does make
> sense for almost all apps, cause not all macusers can afford an Intel
> Mac as soon as they are released and software vendors want to earn
> money!
>
> >
> > Is anybody willing to try getting this to work?
> >
> > Thanks,
> > Steve
> >
> >
> > _______________________________________________
> > Qemu-devel mailing list
> > Qemu-devel@nongnu.org
> > http://lists.nongnu.org/mailman/listinfo/qemu-devel
> >
> >
>
>
>
> _______________________________________________
> Qemu-devel mailing list
> Qemu-devel@nongnu.org
> http://lists.nongnu.org/mailman/listinfo/qemu-devel
>
_______________________________________________
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Qemu-devel] User-space emulation on Mac OS X to run Mac OS XIntel applications
2005-10-25 11:37 ` [Qemu-devel] User-space emulation on Mac OS X to run Mac OS XIntel applications Vesselin Peev
@ 2005-10-25 15:00 ` André Braga
2005-10-25 16:36 ` Djame Seddah
2005-10-25 17:07 ` [Qemu-devel] User-space emulation on Mac OS X to run Mac OSXIntel applications Vesselin Peev
0 siblings, 2 replies; 12+ messages in thread
From: André Braga @ 2005-10-25 15:00 UTC (permalink / raw)
To: qemu-devel
That actually IS true if you only use the Cocoa framework abstractions
to manipulate all data structures. They are endian-agnostic (i.e.,
they perform implicit conversions).
On 10/25/05, Vesselin Peev <vesselinpeev@hotmail.com> wrote:
> Steve Jobs and his marketing machine is the culprit for the disinformation.
> On stage during the Apple WWDC, he demonstrated that all it takes to produce
> two working Intel and PPC binaries is to enable two checkboxes, never
> mentioning the subtle endianness issues. The audience applauded...
>
> -Vesko
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Qemu-devel] User-space emulation on Mac OS X to run Mac OS XIntel applications
2005-10-25 15:00 ` André Braga
@ 2005-10-25 16:36 ` Djame Seddah
2005-10-25 17:14 ` [Qemu-devel] User-space emulation on Mac OS X to run Mac OS XIntelapplications Vesselin Peev
2005-10-25 17:07 ` [Qemu-devel] User-space emulation on Mac OS X to run Mac OSXIntel applications Vesselin Peev
1 sibling, 1 reply; 12+ messages in thread
From: Djame Seddah @ 2005-10-25 16:36 UTC (permalink / raw)
To: qemu-devel
by the way all ppc are neutral, you only have to set one bit in order to
change the endianness
André Braga a écrit :
>That actually IS true if you only use the Cocoa framework abstractions
>to manipulate all data structures. They are endian-agnostic (i.e.,
>they perform implicit conversions).
>
>
>
>On 10/25/05, Vesselin Peev <vesselinpeev@hotmail.com> wrote:
>
>
>>Steve Jobs and his marketing machine is the culprit for the disinformation.
>>On stage during the Apple WWDC, he demonstrated that all it takes to produce
>>two working Intel and PPC binaries is to enable two checkboxes, never
>>mentioning the subtle endianness issues. The audience applauded...
>>
>>-Vesko
>>
>>
>
>
>_______________________________________________
>Qemu-devel mailing list
>Qemu-devel@nongnu.org
>http://lists.nongnu.org/mailman/listinfo/qemu-devel
>
>
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Qemu-devel] User-space emulation on Mac OS X to run Mac OSXIntel applications
2005-10-25 15:00 ` André Braga
2005-10-25 16:36 ` Djame Seddah
@ 2005-10-25 17:07 ` Vesselin Peev
1 sibling, 0 replies; 12+ messages in thread
From: Vesselin Peev @ 2005-10-25 17:07 UTC (permalink / raw)
To: qemu-devel
Hello, André,
On 10/25/05, André Braga <meianoite@gmail.com> wrote:
>That actually IS true if you only use the Cocoa framework abstractions
>to manipulate all data structures. They are endian-agnostic (i.e.,
>they perform implicit conversions).
Uh-oh, I shouldn't have opened my mouth not having touched Cocoa for now,
since I work on extremely cross-platform code (and also mea culpa not
noticing this important feature of Cocoa from some articles).
That said, there are many Carbon (non-endian agnostic) apps today, but the
counter-argument is that all new apps are going to be written in Cocoa.
Ok, I'm shutting up.
Best regards,
Vesko
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Qemu-devel] User-space emulation on Mac OS X to run Mac OS XIntelapplications
2005-10-25 16:36 ` Djame Seddah
@ 2005-10-25 17:14 ` Vesselin Peev
2005-10-25 17:32 ` Djame Seddah
0 siblings, 1 reply; 12+ messages in thread
From: Vesselin Peev @ 2005-10-25 17:14 UTC (permalink / raw)
To: qemu-devel
On 10/25/05 "Djame Seddah" <djame.seddah@free.fr> wrote:
>by the way all ppc are neutral, you only have to set one bit in order to
>change the endianness
My understanding is that existing Mac OSX for PPC does not support the the
execution of little-endian PPC programs without jumping through hoops, which
is infeasible for normal PPC programs. So infeasible, that there is (only?)
one such program, Virtual PC, the version that works on CPUs prior to and
including G4, but not G5. VirtualPC is probably using assembly instructions
and/or installs a driver to execute little-endian program code under OSX in
order to emulate a Pentium x86.
One cannot even use the "-mlittle" GCC option to produce a PPC binary to run
under Mac OSX, "-mlittle" is only for embedded PPC CPUs.
The G5 processors do not support little-endian mode -- that's the reason
Microsoft took so long to port Virtual PC to that processor.
-Vesko
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Qemu-devel] User-space emulation on Mac OS X to run Mac OS XIntelapplications
2005-10-25 17:14 ` [Qemu-devel] User-space emulation on Mac OS X to run Mac OS XIntelapplications Vesselin Peev
@ 2005-10-25 17:32 ` Djame Seddah
0 siblings, 0 replies; 12+ messages in thread
From: Djame Seddah @ 2005-10-25 17:32 UTC (permalink / raw)
To: qemu-devel
Vesselin Peev a écrit :
> On 10/25/05 "Djame Seddah" <djame.seddah@free.fr> wrote:
>
>
>> by the way all ppc are neutral, you only have to set one bit in order
>> to change the endianness
>
>
> My understanding is that existing Mac OSX for PPC does not support the
> the execution of little-endian PPC programs without jumping through
> hoops, which is infeasible for normal PPC programs. So infeasible,
> that there is (only?) one such program, Virtual PC, the version that
> works on CPUs prior to and including G4, but not G5. VirtualPC is
> probably using assembly instructions and/or installs a driver to
> execute little-endian program code under OSX in order to emulate a
> Pentium x86.
>
> One cannot even use the "-mlittle" GCC option to produce a PPC binary
> to run under Mac OSX, "-mlittle" is only for embedded PPC CPUs.
>
> The G5 processors do not support little-endian mode -- that's the
> reason Microsoft took so long to port Virtual PC to that processor.
>
> -Vesko
Ok, I had the ppc 603e book and a [long] tutorial on ppc embedded and I
really thought all the ppc was endian neutral.
Thanks for the anwser.
^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2005-10-25 17:33 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-10-21 20:16 [Qemu-devel] User-space emulation on Mac OS X to run Mac OS X Intel applications Steven
2005-10-21 21:19 ` Jim C. Brown
2005-10-21 21:52 ` Paul Brook
2005-10-21 21:31 ` René Korthaus
2005-10-22 8:06 ` Steven
2005-10-25 11:37 ` [Qemu-devel] User-space emulation on Mac OS X to run Mac OS XIntel applications Vesselin Peev
2005-10-25 15:00 ` André Braga
2005-10-25 16:36 ` Djame Seddah
2005-10-25 17:14 ` [Qemu-devel] User-space emulation on Mac OS X to run Mac OS XIntelapplications Vesselin Peev
2005-10-25 17:32 ` Djame Seddah
2005-10-25 17:07 ` [Qemu-devel] User-space emulation on Mac OS X to run Mac OSXIntel applications Vesselin Peev
2005-10-23 7:32 ` [Qemu-devel] User-space emulation on Mac OS X to run Mac OS X Intel applications Pierre d'Herbemont
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).