A lot has happened since last we left our saga. Those of you who have seen the Star Wars re-release will understand. Here are some of the hiights:
+ A CPU reserve scheduler has been implemented and tested. Once we
put in working sets (after SIGCOMM), EROS will be a fully
real-time system.
+ Checkpoint and migration were working, until we stuck in in the
CPU reserves. At the moment the kernel is not saving reserve
info. Once that is added (next week), checkpoint will work again
+ We have run our first interesting application. A prototype Active
Network router has been built on top of EROS, and it worked
essentially on the first try. Kudos to Steve Muir for a yoeman's
job on this! Look for further information in our next irregular
update.
+ We have designed, and will implement shortly, a revised kernel IPC
interface. The new interface transfers (exactly) 4 capabilities, a
variable-length data buffer, and (exactly) 4 register values.
There are a sufficient number of applications that will benefit
from this change to justify it, notably dionysix, but also many
EROS programs.
+ We have taken the first steps toward formally proving a model of
the EROS kernel semantics. Much to my surprise, the EROS
architecture appears to be proof-friendly.
The dionysix group is making good progress. They've decided on a binary-compatible LINUX emulator, and will be starting their implementation shortly. Things are looking very good among the dyonisians. (Dynosaurs?)
Various folks here at Penn are becoming interested in EROS as a platform for courses and research. Having something they can see and touch is a big help.
HELP OUR RELEASE
We had originally hoped to release a system in March, and I had tentatively stated this date to several people. Given the SOSP deadline of March 7, and the very real need to recover afterwards, I expect that our actual date will occur in April or May. The main sources of delay will be integrating SCSI support into the kernel and testing the installation process. This system will have limited support for network drivers and SCSI cards. It seems likely that the following will be supported:
EtherLink III 3c509 ISA cards
EtherLink 3c59x XL 10/100 PCI cards
SMC-based 10/100 cards (uncertain, highly likely)
Adaptec 2940/2940W (PCI) adaptor
NCR 5c3810 SCSI (PCI) adaptor
Our test machines have been purchased from XI, Inc., and use the TYAN Titan-II/III and Tomcat-II/II+ motherboards. I don't want to err by endorsement, but the ability to use the parity bits as ECC is a useful feature in the Triton-II chip set. The system will *run* on multiprocessors, but will not use more than one processor.
We've also run EROS on a hodgepodge of 486 machines. Pentium machines are more better :-).
If you have a Pentium (Pro)/PCI machine, and would be willing to help test the EROS system, we would greatly appreciate your help. You will need a 100 Mbyte available partition on *any* disk drive. It does not need to be on the boot drive. We have not tested HD boot from non-boot drives, but booting from floppy will certainly be possible.
If you want to help test this first release, please send your machine configuration information to eros-port@eros.cis.upenn.edu. Be sure to include:
Your computer make/model
CPU type and speed (e.g. Pentum 133 Mhz)
Motherboard type if known
Hard disk controller, if known (e.g. Adaptec SCSI 2940)
-- we need manufacturer, type (SCSI/IDE) and model.
Amount of memory and type if known (EDO, DRAM, SRAM)
Disk(s) size
We will provide a sequence of floppy image(s) that will do an installation on an available partition. The early floppies will simply attempt to identify your hardware and ask you to confirm that they got it right (i.e. they will not change anything on your disk). Later floppy images will install themselves on your disk.
When we are confident that the system works well, we will provide a cross-environment which will enable you to build your own programs from a linux-based cross environment. Eventually, we look forward to rehosting the cross environment to EROS.
Cupid sends his regards.
As always, information on EROS can be found at:
http://www.cis.upenn.edu/~eros
Jonathan Shapiro