Getting Started
How to get Ethos running on your system Heading link
Ethos is an open source project, but we are not yet ready to release the source code. Here are our research plans:
- Ethos is not yet complete. There is still core OS semantics to implement. Once it is complete, we will release a research prototype.
- Ethos implementation needs hardening. We have been busy working on Ethos’ design, the key to Ethos security. One group spent a decade working on a secure design, it is an intensive process. Once we have a research prototype we will need to harden it. We intend to do this, producing a robust OS. We expect this to be more work than building a research prototype.
- To increase the benefit of this software, we are trying to break off pieces of it, and make them available. The first piece is our network stack which implements MinimaLT.
Public information about the project consists of these these web pages and papers published in conferences. We are still publishing our results. Since we spent all this time building Ethos, we would like to be the first to measure it and write about it.
Steps Heading link
steps
-
- Review the background necessary to be successful in the project.
- Join the project. Email Dr. Solworth introduce yourself, and to discuss how you can contribute to the project; send some background information such as a Resume. After this you’ll
- be added to the Ethos mailing list,
- sign the open-source licensing agreement and
- get access to the Ethos Git repositories.
For the latter task, you will need to generate and submit an SSH public key.
- if your username is different on git.ethos-os.org than your notebook, you will need to tell your notebook’s ssh about your git.ethos-os.org user name (UName below). Put in your notebook’s file ~/.ssh/config
Host git.ethos-os.org HostName git.ethos-os.org User UName
- Use git to clone the repository at (if you are running on Windows, download and install cygwin)
git clone git.ethos-os.org:/home/git/ethos cd ethos bin/gt pullall
This repository gets all our other repositories. You’ll need make, git, echo, and a bourne shell to pull the repos.
- Read the TeXnote titled The Ethos DevelopmentManual (manualDevelopers). This will teach you how to prepare Xen and Fedora to host Ethos and how to build and install Ethos.
cd teXnotes/developer/manualDevelopers
- and read the manual there.
-
- The manual will tell you how to do a fedora install with Xen.
- How to build ethos and install it in the file system
- How to run ethos tests
- How to create an instance of Ethos to run standalone (by autostarting a program) or interactively.
About the Ethos implemementation
Ethos is implemented on top of Xen, a Virtual Machine Monitor (VMM). Xen is a bare-metal VMM, which means it runs directly on the hardware. Xen is relatively small, many services (especially device drivers) needed to implement the VMM are contain in a privileged OS called Dom0. Thus it is necessary to install Dom0 (Linux), Xen, and Ethos.
You can install Xen/Dom0/Ethos on bare-metal. This may be too disruptive to your system, so the alternative is to run Xen/Dom0/Ethos within a hosted VM such as VMWare. (VMWare provides a site licence which is free to students at UIC). In such a case you’ll be running two VMMs and three OSs, you should have at least 4GB of memory for this (more is better). Xen and Dom0 can be 64-bit OSs; Ethos runs as either 32-bit or 64-bit OS.
Confused? It takes a bit to get used to this. We’re happy to help you get Ethos up and going. We’ve also built some aids to help you get started.
Once you decide how to install Ethos (bare metal or VMware), you install a linux distribution. One Ethos developer, Mike, is also a Fedora maintainer and he’s built a set of scripts to set up Fedora easily so that’s what we all tend to use.
Ethos is built from source code. The source code is spread over many git repositories. To make things easier, you get the ethos git repo, and then ethos will pull and build all the needed repos.