bolosky@cmu-cs-spice.ARPA (William Bolosky) (06/06/85)
> I would greatly appreciate any information concerning the SPICE >(Scientific Personal Integrated Computing Environment) project at Carnegie- >Mellon University. Please direct your replies to the following three >points: > 1) What is it? > 2) What is its purpose and goals? > 3) How far has it progressed and what difficulties have arisen > thus far? > > > Thank you very much, > > Jon D. Jacobs > IMS, Inc. The Spice project is an attempt by the CS Department here at CMU to develop a distributed system, running on personal workstations. Its goals include providing a distributed file system, reliable process migration (from one Spice machine to another), multiple language support, transparent inter-process communication across a Local Area Network and a reasonable set of applications programs. Ideally, the Spice system should replace Vax Unix as the primary computing facility here at CMU in addition to being sold to the general public. (I'm just a programmer and don't really know the legal aspects of who owns the Spice system and who can sell it, so actually selling it (as opposed to having a salable product) may not be a goal of the department.) At this point, the Spice system is running on Perq Systems Corp.'s Perq computers. The first (department-wide) release of Sesame, the full Spice file system was made about a month ago. (We have been running Sesamoid, which is basically a distributed Unix-like file system which provides a network-global file name space). Sesame provides a central file server together with local caching so as to have the advantages of central file storage without losing the speed adventages of having your files on your local machine. It also provides a very general file protection mechanism and reasonable archiving. At this time, process migration is not implemented. However, transparent inter-process communication over the network (CMU's Ethernet) works very well. Currently, Spice runs Common Lisp, C, Ada, and a (very extended) version of Pascal. It uses the Sapphire window manager, which provides overlapping rectangular windows. The kernel of the Spice system is Rick Rashid's Accent (he had an paper describing it in the CACM some years ago). Accent provides virtual memory management and inter-process communication through the concept of ports and messages. The major problems which have been encountered are with the hardware. The Perq does not provide virtual memory management hardware, and so all address translation, etc., must be done in microcode. Perqs are also notoriously unreliable, and, since Spice is under active development, the software is also somewhat unreliable. We are involved in porting Spice to an IBM machine to cure the problems which we have had with Perq. The software is also continually improving in both speed and reliability. People around CMU (outside of the Spice project) are just beginning to use it. However, there is still a general negative attitude towards it here because of the unreliability. In my (extremely biased) opinion, I think that Spice is well on its way to becoming an excellent Computing Environment. Only time will tell... By the way, Spice should not be confused with the University's Information Technology Center (ITC) which is also involved in building a distributed computing environment. Their goal is a much smaller, inexpensive system which would be sold to all CMU students. Bill Bolosky Spice Project Programmer