caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Thomas Gazagnaire <Thomas.Gazagnaire@eu.citrix.com>
To: "'caml-list@yquem.inria.fr'" <caml-list@yquem.inria.fr>
Subject: [ANN] open-sourcing of the XAPI toolstack
Date: Wed, 4 Nov 2009 17:35:52 +0000	[thread overview]
Message-ID: <DECC4DEE86A8074C9ABE8DFD330CB6E341A191D994@LONPMAILBOX01.citrite.net> (raw)

We are pleased to announce the open-sourcing of the XAPI toolstack, written in OCaml, as used in the Citrix XenServer product line. The XAPI toolstack is licensed under the LGPL v2.1 with a special static linking exception.

**context**

Xen [1] is an open-source type 1 hypervisor, providing the ability to run multiple operating systems, called virtual machines, concurrently on a single physical processor. Type 1 (or native, bare-metal) hypervisors are software systems that run directly on host's hardware. They have been very popular architecture since the CP/CMS, developed at IBM in the 1960s. Citrix XenServer [2] is an enterprise-class, cloud-proven server virtualization platform that delivers the critical features of live migration and centralized multi-server management for Xen based virtual machine. XenServer is an open and powerful server virtualization solution that radically reduces datacenter costs by transforming static and complex datacenter environments into more dynamic, easy to manage IT service delivery centers.

**xapi**

The xapi toolstack, which provides the core Citrix Xenserver's functionalities, is a set of libraries and programs written in OCaml. It is approximately 200k lines of code developed from early 2006. Within Citrix, more than 40 people have already contributed to its source code.

What the XAPI toolstack has to manage covers a large range, from low-level (interface with kernel and hypervisor) to high-level (distributed data/locking management). It also need to have good performance because it may be used in an environment of thousands of virtual machines per cluster and has to be able to run on systems with limited resources (embedded editions of Citrix XenServer are distributed on an USB stick and run in highly customized OS). Finally, as a major enterprise product, the XAPI toolstack evolves constantly, due to customer/business requests.

The OCaml language has been particularly good so far to help us facing all this challenges, and we can't think of a better language to use :-) We really appreciate that the compiler tools are stable, that the compiled code is fast and small and that static-type inference makes our software robust to changes.

**links**

The released code is the current development version ("trunk") and is under active development. The repositories are here:

http://xenbits.xen.org/xapi/xen-dist-ocaml.hg - scripts and Makefiles to build some external library dependencies
http://xenbits.xen.org/xapi/xen-api-libs.hg - internal libraries (e.g. for talking to xenstore)
http://xenbits.xen.org/xapi/xen-api.hg - the toolstack itself

The easiest way to build the code is in a specially-prepared VM, instructions are here:

http://xenbits.xen.org/xapi/install.html

>From now on, all development will take place on the xen-api@lists.xensource.com mailing list. In the future we plan to move relevant content such as documentation, designs, roadmaps etc. onto the main xen.org wiki.

Comments, criticism and contributions are welcome!

--
The XAPI toolstack team

[1] http://xen.org
[2] http://www.citrix.com/English/ps2/products/feature.asp?contentID=1686939


                 reply	other threads:[~2009-11-04 17:35 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=DECC4DEE86A8074C9ABE8DFD330CB6E341A191D994@LONPMAILBOX01.citrite.net \
    --to=thomas.gazagnaire@eu.citrix.com \
    --cc=caml-list@yquem.inria.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).