Mirage OS Logo

The MirageOS Documentation

and developer guides

Weekly Meeting: 2014-07-08
By Amir Chaudhry - 2014-07-08


  • Mirage 1.2 release
  • ARM integration
  • Blog post progress
  • OSCON prep
    • Comments on news release
    • Coordinated stories?

Attendees: Amir Chaudhry (chair), Thomas Leonard, Anil Madhavapeddy, Richard Mortier, Mindy Preston and David Scott


Mirage 1.2 release

Mirage 1.2 was released on Monday, as well as ocaml-tls. Anil's been fixing up deployment scripts (turns out they're a useful reminder of where all the unikernels are being deployed). Also set up a pool of TLS servers to deal with traffic.

Merged in Thomas Leonard's changes and will be cutting 2.0 releases slowly over time. Aim is to put them out there and in place for the announcement.

Thomas L's changes are easy to deal with and they clean up a lot stuff (as long as you don't depend on c libraries. There may be possible regressions but these might only affect one external user.

This was followed by some discussion about cstruct and memory (see AoB). This will be on the agenda for the next call so it's captured properly.

TROVE - Amir asked about the TROVE file and whether we've captured all the libraries. Anil has been maintaining it but others should also take a look and help out if they spot anything. Dave mentioned that work on the ocaml-xenstore repo is underway and he's tidying it up and moving pieces around.

ARM update

ARM is merged now and you can run the console stuff with what's in the master branch now. Thomas L is working on getting Mirage to work with c-stubs. Everything seems to be working from what Thomas L can tell and is trying to move all the checksum code out of mirage-platform. He noticed there are some c-libraries that get used and it appears that code is duplicated. There was some discussion about this (Amir decided to make this an Agenda item for the next call).

Anil pointed out that a people have asked how they can try out the ARM work. and we should make this as easy for them as possible. Anil will go through the existing information and tidy things up. Specifically, will need to updated the scripts that produce an SD card image aimed at the Cubieboard (no-one else has had a chance to try this yet).

There was a question for Thomas L about Hard Float to Soft Float, and whether this would be complicated to do.

Blog posts pre-OSCON

We have an issue that's tracking the progress of the blog posts and the first two have now gone live. One is about the Mirage 1.2 release and the other introduces ocaml-tls. The remaining posts are on track and all is looking good so far.

Mort did point out that some of the posts are quite long and were substantive enough to be broken if to shorter posts if we wanted. Amir would rather stick with the current schedule as he'd like to get everything out before the main 2.0 announcements. Everyone agrees that in principle there isn't anything wrong with long posts and since these also serve as documentation, it's useful to have in one place.

It would be great if people could review each other's posts before they go live so that we catch any issues early. Otherwise we might have to edit a live post, which is a bit tedious.

OSCON prep

A quick run through of the work needed before the OSCON talk. Mort is planning to create IOCaml notebooks for each demo and will be working on this from tomorrow. There's also the somewhat crude version of using GitHub pushes to update infrastructure. i.e have a simple website unikernel-website running on EC2 and when a new push is made to the repository, a new image is built and pushed out, and then the DNS server is pointed at the new unikernel.

After some brief discussion, Anil said he'd make the code work for this (webserver, DNS, etc) so Mort will focus on the IOCaml notebooks. We'd also like the mirage-www site to be a pool of different sites running on different backends (e.g ARM, UNIX, Xen). This would be very useful for testing and also help with load-balancing. Anil is also dealing with this.


  • Irmin and FAT - Really want to get rid of the FAT layer in Irmin. Amir notes that there's a joke in here about 'one weird old tip'.

  • Everyone should keep an eye out for unusual cstruct bugs. We had a subtle one recently and it wasn't a type-safety issue but a bounds issue. Whenever you see anything, please just file an issue. Thanks to Mindy for catching this.

  • cstruct/memory - Need to get cstruct/memory zeroed out. Some discussion about dealing with this and where it should happen and what, specifically, we're protecting against. Would be interesting to re-run benchmarks but this is a long-standing thing about having performance testing to see regressions. Amir proposes we discuss this next time (add to agenda).

  • Articles and blog roll - If you notice or write articles on other sites, please add them to the link log on mirage-www. Alternatively, just create an issue with the link and someone (prob Amir) will make sure they get merged into the site. We also need mirage-www to support multiple authors for blog posts and add a blog roll of contributors. Should also also make the link log visible on the main site. Amir will file some issues about these. Anil also mentioned including Thomas Leonard's posts on 0Install as these are a great mechanism to distribute unikernels.

  • News release - Amir needs feedback on this to ensure accuracy. Thanks to those who responded but others need to get back to him soon.

  • Next call will take place on the 22nd, but be aware that Anil and Mort will be at OSCON in Portland, Oregon.

  • Mort and Mindy will be on the GSoC/OPW panel at Xen Summit. Nanoo-nanoo! [I couldn't resist - AC :)]