[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Minios-devel] WebAssembly Runtime for Unikraft?



Hi Jonathan,

I think targeting wasm-micro-runtime would make sense, and the porting process 
isn't as difficult as it sounds :). Do you know if wasm-micro-runtime's build 
system is able to generate a static library/archive? We could then link that 
into a Unikraft build. In terms of languages, right now we support c/c++, so 
that would work for wasm-micro-runtime (we're working on other languages such 
as Go, Rust, Python, Ruby, etc.). We also support pthreads...and as far as I 
can tell the only dependency that wasm-micro-runtime has is glibc (which we can 
replace with newlib, which we support; we're working on musl too).

If you're interested, perhaps you can take just a bit of time to do a short 
Unikraft tutorial? https://wiki.xenproject.org/wiki/Category:Unikraft_Tutorial 

We also have a bit of material on how porting to Unikraft works, again, noting 
too time consuming.

Thanks,

-- Felipe


On 16.07.19, 09:42, "Jonathan Beri" <jmberi@xxxxxxxxx> wrote:

    Great to hear! Unfortunately porting is beyond my skills but I'd love to 
help where I can! Fortunately, there are several implementations of Wasm 
runtimes that have a comptabible license. Are there any technical requirements 
that would need to
     be satisfied, like language or threading model?
    
    On Fri, Jun 28, 2019 at 2:43 AM Simon Kuenzer <simon.kuenzer@xxxxxxxxx> 
wrote:
    
    
    Hey Jonathan,
     
    thanks for reaching out to us. We agree, WASM is another very interesting 
target and we had already internal discussions about porting this. You are 
right with
     your arguments.
     
    So far, no one is working on this. Would you like to do a port of WASM to 
Unikraft? We could give some starting pointers.
    An important criteria for selecting the runtime is the open source license 
that is used and if it is compatible to our Unikraft BSD license. For instance, 
projects
     using GPL ones would not work for us.
     
    Let us know what you think.
     
    Thanks,
     
    Simon
     
    From:
    Minios-devel <minios-devel-bounces@xxxxxxxxxxxxxxxxxxxx> on behalf of 
Jonathan Beri <jmberi@xxxxxxxxx>
    Date: Friday, 28. June 2019 at 08:18
    To: "minios-devel@xxxxxxxxxxxxxxxxxxxx" <minios-devel@xxxxxxxxxxxxxxxxxxxx>
    Subject: [Minios-devel] WebAssembly Runtime for Unikraft?
    
     
    
    I'm new to Unikraft but as I understand it, new language support is added 
by adding new runtimes. Has the team evaluated using WebAssembly 
(https://webassembly.org/)
     as a runtime? WASM by design is meant to execute any language that can 
compile to it and by design isn't limited to the web (see 
https://webassembly.org/docs/non-web/.) There are many runtime
     implementations which could be used 
(https://github.com/appcypher/awesome-wasm-runtimes) and are running on 
everything from serverless compute platforms 
(https://www.cloudflare.com/products/cloudflare-workers/)
     to microcontrollers (https://github.com/intel/wasm-micro-runtime.) 
Adopting a WebAssembly runtime could open up Unikraft to many more languages, 
which means potential for code reuse.
    
    
    
    
    
    
    

_______________________________________________
Minios-devel mailing list
Minios-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/minios-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.