Amiga.org

Amiga computer related discussion => Amiga community support ideas => Topic started by: jarroyo on June 01, 2009, 05:01:59 AM

Title: Amiga Hypervisor
Post by: jarroyo on June 01, 2009, 05:01:59 AM
Has anyone ever considered an Amiga based Hypervisor for OS 4.1 and above? I am not an expert, but I would imagine that the people who put together the Minimig in FPGA would be smart enough to pull this off. Consider having a Hypervisor for not only the Classic Systems, but also the new stuff running in OS 4.1.

The goal here is getting off of the hardware situation that has plagued this system for far too long. Would a bounty help?

Thoughts and musings.......
Title: Re: Amiga Hypervisor
Post by: Trev on June 01, 2009, 06:48:35 PM
I've thought about it, but to do it properly on classic systems, I believe you'd need to use a combination of virtualization and emulation to maintain system timing. You'd replace the system-level bootstrap code with hypervisor code that bootstraps and starts Exec in a VM partition, presenting the user with the usual insert-disk animation. You could provide an early startup menu similar to the built-in one for managing VM partitions, storage, etc.

On newer PPC-based systems, you'd probably just want to use an off-the-shelf virtualization product (or a PS3) and write the OS4 startup code, kernel modules, and drivers necessary to support the virtual machine.
Title: Re: Amiga Hypervisor
Post by: bloodline on June 01, 2009, 07:38:53 PM
How is this any different from UAE?
Title: Re: Amiga Hypervisor
Post by: Trev on June 01, 2009, 07:58:10 PM
Different in the same way Bochs and DOSEMU are different from VMware and Virtual Server, although the utility on a 68k system is questionable. It would be a cool project, though.

EDIT: Quick and dirty baseline: Simple (and naive) harness that traps and ignores exceptions based on privileged instructions and MMU hits and wraps ISRs. You'd need enough of an MMU environment in place to remap ROM bits and virtualize MMU changes. After that, you just start testing and implementing new functionality as required. Custom chip access would probably have to be emluated to support two or more simultaneous processes that believe they "own" the hardware. (In that sense, it's UAE without the CPU emulation. How does UAE on 68k work today? Does it execute instructions unmodified or does run them in an emulator context?)
Title: Re: Amiga Hypervisor
Post by: bloodline on June 01, 2009, 11:49:10 PM
For a VM (aka hypervisor) to work, you need the host hardware to be as similar to the target as possible.

Since the both the chipset and CPU of the Amiga are now footnotes in computing history... a VM is basically pointless, just run an emulator... UAE does give RTG software access to the native hardware either via OpenGL or DirectX.
Title: Re: Amiga Hypervisor
Post by: Karlos on June 02, 2009, 12:08:44 AM
@bloodline

You wouldn't run UAE on a classic Amiga, unless you were some kind of masochist. I tried it once, it was hilarious.

However, virtualizing the amiga on an amiga is not much different IMO as running Shapeshifter was. That actually worked quite well.
Title: Re: Amiga Hypervisor
Post by: bloodline on June 02, 2009, 12:13:26 AM
Quote from: Karlos;508651
@bloodline

You wouldn't run UAE on a classic Amiga, unless you were some kind of masochist. I tried it once, it was hilarious.


Yup, me too :-) PPC also... painfully slow...

Quote

However, virtualizing the amiga on an amiga is not much different IMO as running Shapeshifter was. That actually worked quite well.


Well, the AmigaOS required far too much access to the hardware to virtualize properly... and without memory protection... utterly pointless :D
Title: Re: Amiga Hypervisor
Post by: Karlos on June 02, 2009, 12:16:05 AM
Quote from: bloodline;508653
Well, the AmigaOS required far too much access to the hardware to virtualize properly... and without memory protection... utterly pointless :D


Come on Matt, don't be boring :p

If AmigaOS3.x could run on the Draco, then in theory it doesn't need to bang the hardware quite as much as you suggest.
Title: Re: Amiga Hypervisor
Post by: bloodline on June 02, 2009, 12:18:28 AM
Quote from: Karlos;508656
Come on Matt, don't be boring :p


Sorry, you are quite right... I'm just getting old :)

Quote

If AmigaOS3.x could run on the Draco, then in theory it doesn't need to bang the hardware quite as much as you suggest.



ok, good point... I think I mean that the Amiga hardware wouldn't virtualize well... but the more I think about it, it just seems like a REALLY heavy way of multitasking, and the Amiga already has a beautifully lightweight way to do that already :P
Title: Re: Amiga Hypervisor
Post by: Karlos on June 02, 2009, 12:26:27 AM
Quote from: bloodline;508660
ok, good point... I think I mean that the Amiga hardware wouldn't virtualize well... but the more I think about it, it just seems like a REALLY heavy way of multitasking, and the Amiga already has a beautifully lightweight way to do that already :P


Well, of course the second benefit is being able to run other 68K operating systems concurrently. Like amiga builds of linux, or dare I say it, AROS 68K ?
Title: Re: Amiga Hypervisor
Post by: the_leander on June 10, 2009, 11:19:54 PM
Quote from: bloodline;508596
How is this any different from UAE?


Wouldn't Amithlon be a better comparason?
Title: Re: Amiga Hypervisor
Post by: Trev on June 11, 2009, 12:00:36 AM
Not really. Amithlon emulates just like UAE. Under a virtual machine, unprivileged instructions and operations run unmodified on the host processor. The problem here is managing concurrent access to virtualized custom chips.