[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [MirageOS-devel] Rust unikernels
On Thu, Jul 30, 2015 at 5:03 AM, Geoffroy Couprie <contact@xxxxxxxxxxxxxxxxxxx> wrote: Hi Len, Hi, OK, now I see that targeting musl-static brings in too much additional/unnecessary code; that was my misguided way of working around linker errors between libhello and mini-os. Your "mm" package imports the "libc" crate; I suppose it adds the Rust stubs for libc functions, which are then linked to the implementations in mini-os? (which, in turn, are not needed for the trivial Rust code) It looks like mirage-platform/bindings [a] captures most of the interface between Mirage/OCaml and Mini-OS. It uses a few functions from time.h, string.h, and various Xen-related APIs. There's also main.c [b] which overrides start_kernel to kick off the OCaml runtime. Not sure if any additional functions are needed by OCaml itself? Rust and OCaml also have a common dependency on libm. For Mirage on Xen, it is pulled in via mirage-platform/xen-posix.  Thomas, what's mirage take on this? I've started a learning exercise to see how much I can delete from Mini-OS while still supporting Mirage. Threading, POSIX emulation, HAVE_LIBC, and all of the front/back devs can go (except console), and then I might actually understand what's left. Â
Not knowing much about libcore vs. libstd -- which parts of libstd are important to the task of replacing C code in Mini-OS? Speaking of ARM, it would be interesting to see if the init_mm experiment runs on a Cubie:Âhttps://mirage.io/blog/introducing-xen-minios-arm
-- Len _______________________________________________ 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 |