Multicore ARM idea
Theo Markettos (89) 919 posts |
I had an idea about maybe how to run RISC OS on a multicore ARM… Take your multicore CPU running Linux. While it’s still running Linux, decrement the number of processors by one so that Linux ceases to use it for scheduling. Presumably that is possible? On the processor you now have spare, boot RISC OS. RISC OS runs a very simple HAL that just offloads I/O onto the ‘host’ OS. Hence no need to worry about the complexities of a device like Tegra. In effect Linux is running as a hypervisor, but a full fat variety. Such an interface can run on any SoC supporting the same multicore operations (eg all Cortex A9 platforms). One big question is what to do about the MMU? Does each processor in a multicore system have to see the same view of the world? If so, is there some way to bend RISC OS to run within Linux’s memory map [for example, translating memory map ops into Linux ops like mmap() ] Is this idea unspeakably harebrained? |
hilltop (573) 11 posts |
Edit: Google ate my original post… It’s an interesting idea, but maybe from a Linux security POV once a processor’s been switched off, it’s off. Maybe a more productive use of effort would be in upgrading Rpcemu to use single (multiple?) cores with an ARM on ARM dynarec farming out IO etc. to the remainder? Ultimately Rpcemu is ‘just another process’ while a wrapper around RISC OS to interface with a host memory system may slow the whole thing down unacceptably even if it were possible. Just my 2p. |
hilltop (573) 11 posts |
Edit: remove duplicate |
Jess Hampshire (158) 865 posts |
Were you thinking of running linux programs on the other processors? (That would give the best of both worlds.) Were you thinking of a system that would be added to an existing Linux system, or a complete solution? If the latter, wouldn’t it need to be BSD based for licensing? If the former then would’t it work on pretty much any multicore Arm laptop running linux? |