Exopc Exokernel Distribution

The current exopc distribution contains the entire source tree for the XOK kernel, ExOS library operating system, and assorted user-level programs and tools for building the system. OpenBSD or Linux with libc6 is required to build the system and only certain disk and ethernet controllers are supported. It was written by a variety of people  over the past four years under DARPA sponsorship. Currently, the system is still under active development by PDOS at MIT, Greg Ganger's group at CMU, and Exotec.

Exopc is stable enough to do libos and application development but there are still many bugs and features that have not yet been implemented. Do not expect to compile everything and replace your current system with XOK/ExOS. However, things are progressing rapidly and hopefully with making the sources public the 'net world at large can help speed development. Any additions or bug fixes are greatly welcomed and will be considered for incorporation into the main source tree.

Here's the  license  the sources are released under--please read this before downloading the distribution.

If you want up-to-the-hour source tree releases, there is a read-only anonymous CVS server. Please note that in June, 1998, long after the exokernel was a working system, the exokernel CVS repository was discarded, and the latest sources imported into the current repository. Thus, CVS does not accurately reflect who developed which piece of code. In particular, several of the original developers who made substantial contributions do not show up at all in the CVS history.

To check out the base exopc distribution is as easy as 1,2, 3:

[1]$ setenv CVSROOT ':pserver:anoncvs@cvs.pdos.lcs.mit.edu:/cvs'

[2]$ cvs login (just hit return at the password prompt)

[3]$ cvs -z1 checkout exopc (or any sub-modules, e.g. exopc/sys)

Use the -z1 to -z9 options to minimize network bandwidth. After you have performed the code checkout, you can use:

$ cvs -z1 update -d

To keep your repository up to date. Note that cvs login creates a dot-file in your home directory -- $HOME/.cvspass. Also, if you do choose to use CVS then adding the following ~/.cvsrc file may help:

add -ko
checkout -ko
diff -ko
export -ko
rdiff -ko
update -ko

You can also browse the CVS repository via CVSWeb

If CVS really doesn't work for you, an aging snapshot is available at exopc-06-22-2000.tar.gz . This is 53 MB and may take some time to download. If you cannot get it all in one piece due to a poor connection, consider the curl program which knows how to do byte range retrievals.

Periodically a particularly stable version of the source tree is marked. The following string can be used with the CVS "-D" flag to update your sources to this version: 11/19/98 07:00:00 EST

Finally, several exopc mailing lists exist:

Check here for news about patches and releases. Also, check here for the todo list.  Finally, the guide to the sources might be usefull.