On 03/01/2013 08:37 AM, Tim Ford wrote:
The OCaml-on-Xen OpenMirage (http://openmirage.org/) project is very interesting to me. The idea is that your OCaml application is compiled directly into a bootable Xen microkernel image. Rather than running inside an OS, your OCaml links to a "libOS", a library that provides all the OS services in terms of Xen hypercalls.

What are your thoughts regarding whether the same could be accomplished with Rust? You'd have to reimplement the Rust runtime and many OS services, though perhaps the work done for OpenMirage could be of some help there.

It seems like Rust would be a great language for this.

I am interested in this. What they are doing does sound a lot like Rust and I would like us to get to the point where we can write kernel code in Rust. As Graydon mentioned though, our runtime code isn't structured to allow this yet, but we are inching closer. We probably shouldn't try to do it until after the scheduler rewrite because `core` depends on a bunch of runtime code that doesn't have a future and isn't worth porting to kernelspace. Afterword though, I expect the relationship between `core` and the scheduler to be [reversed], so that all the runtime machinery will be optional. At that point it should take just a very small platform abstraction layer to implement `core`, and we can think about the multithreading separately.

[reversed]: https://github.com/mozilla/rust/issues/5157

I talked briefly with Anil (from openmirage) about this subject last year, but it would be nice to touch base again sometime. I've copied him on this thread.

_______________________________________________
Rust-dev mailing list
[email protected]
https://mail.mozilla.org/listinfo/rust-dev

Reply via email to