[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [MirageOS-devel] Mirage ARM port
On 29 Apr 2014, at 14:17, Goswin von Brederlow <goswin-v-b@xxxxxx> wrote: > On Thu, Apr 10, 2014 at 04:39:49PM +0100, Andy Ray wrote: >> Hi, >> >> I've been discussing the ARM port of Mirage with Anil recently and >> would like to get involved helping to bring that up. >> >> Initially it would be to target a Raspberry Pi (finally something I >> can use it for!) but eventually I'm interested in getting it running >> on an Altera Cyclone V Soc with dual-core ARM Cortex-A9s. >> >> I understand there are 2 approaches - using a FreeBSD kernel module or >> building up from scratch with a mini OS and implementing some device >> drivers. I'm easy either way. >> >> I've never used a BSD but I have hacked a realtime linux OS onto an >> ARM Soc before so I know there be dragons ahead... >> >> Cheers, >> Andy > > A while back I started writing an exokernel to run ocaml barebone on > the Raspberry Pi. I have ocaml running and multi-threading 95% done. > For my approach I mapped interrupts to signals so I can use an > unmodified ocamlopt for RPi to generate a binary blob and link that > with the exo kernel (just a few files to initialize the hardware and > glue to ocaml). > > I would be verry interested in porting mirage. But mirage needs Xen > and the Raspberry Pi can't run Xen. So quite a bit of driver glue will > be needed. That's why I started with just plain ocaml. Starting with OCaml is definitely the right thing to do here. A minor correction though: only the Xen backend in Mirage requires Xen :-) You should be able to reuse large portions of everything above the tuntap layer (for networking), such as the TCP/IP stack. It would help with future compatibility if you use some of the same libraries for IO handling, such as Io_page (which is a thin page-aligned wrapper above Cstruct+Bigarray). The reasoning behind the FreeBSD/kernel approach is to give us a nice cocoon in which to leverage existing device drivers and slowly move our way down the stack, while retaining the ability to benchmark CPU and memory usage against the existing (mature and optimized) FreeBSD drivers. I've just got FreeBSD/rPi userspace up and running and it seems nice and stable, which is encouraging (aside from the lack of binary packages, so I'm leaving it compiling OCaml and its dependencies for the next day or so). > I'm going to hold a talk about ocaml barebone on the RPi end of next > week so I have till then finish and release something. I will post the > url when I do. Sounds great, I really look forward to this! -anil _______________________________________________ MirageOS-devel mailing list MirageOS-devel@xxxxxxxxxxxxxxxxxxxx http://lists.xenproject.org/cgi-bin/mailman/listinfo/mirageos-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |