News for hackers. Stuff that matters.
Re:PowerPC Notebook Block Diagram by stephenr on Sunday November 12, 2017 @01:14PM (#15681828)
As someone who ran x86 software (primarily Windows at the time) via software emulation (virtualpc) on production PowerPC hardware (Apple PowerMac) I have to disagree.

If you don't need x86 compatibility, PPC is fine, and for open source stuff it's probably reasonably well supported in major distros.

But pretending you can have anywhere close to reasonable performance of x86 binaries on even the newest PPC chips is hopeful at best and realistically a fanciful notion.

Re:PowerPC Notebook Block Diagram by tom_mellior on Sunday November 12, 2017 @02:31PM (#15682196)
You are comparing a system simulator to an instruction set simulator. Those are very different things.

When you run an application on QEMU on Linux, only the application code is simulated (by just-in-time compiling every basic block when it is first executed, then always just executing that compiled native code). System calls go to the Linux kernel on the host system, which runs as usual. Hardware is not virtualized. In contrast, Virtual PC (if I understand correctly) simulates the hardware of an entire PC, including graphics hardware, and runs all of Windows on top of that. That's a lot more expensive in terms of processing power.

That said, sure, you will probably lose some performance with QEMU. If the simulated code uses lots of fancy vector instructions that are not provided by the host hardware, you'll even lose a lot.

Re:PowerPC Notebook Block Diagram by my123 on Sunday November 12, 2017 @03:38PM (#15682519)
Emulating the MMU alone is quite a big issue...
Re:PowerPC Notebook Block Diagram by tom_mellior on Sunday November 12, 2017 @04:15PM (#15682662)
I don't think QEMU in instruction set emulation mode emulates the MMU. Does it? The host system has a perfectly fine MMU. QEMU translates assembly code to assembly code. That is all it does, as far as I know.
Re:PowerPC Notebook Block Diagram by pm215 on Sunday November 12, 2017 @05:53PM (#15683017)
Correct, currently usermode QEMU does not emulate the mmu, but just has a flat mapping of guestaddr = hostaddr + constant_base_addr. There has been some thought of adding mmu emulation to usermode, though, as the simple fixed mapping has problems (eg if the guest wants to map at some address where there's already something in the host address space, or for guest archs where the highbits of guest addresses are important like ia64).