[comp.os.research] Portable Common Runtime Source Code

mark@arisia.Xerox.COM (Mark Weiser) (01/09/90)

The Portable Common Runtime (aka PCR) is a layer of software intended
to be Portable across operating systems and architectures and Common
underneath languages.  It provides threads, garbage collection,
symbol table management (e.g. for debuggers and dynamic loading), and an
i/o interface.  We believe it is an example of what all operating systems
should provide in common for all their applications and languages, but few do.

PCR has had its P and C only lightly tested.  While early versions have
run on 68020 and 29000's, and on Mach, C/Executive (an RTOS), and a few unix
flavors, its main testing (99.99%) has been on Sun Sparc machines
running SunOS 4.0.X.  While we have intercalled C, Cedar, Lisp, Scheme,
and Fortran, the primarily languages tested are C and Cedar.  However,
within the primary test mode, PCR seems to perform well and be robust.
It is in daily use by hundreds of folks, including very intense use
of multiple threads, dynamic loading, and GC.

PCR was described in a paper presented at the recent SOSP '89 conference,
where diskette's of source were also given out.  You too can get the
source (and/or a copy of the paper), by either writing to freige@xerox.com
(my secretary) with a snailmail address, or by anonymous ftp to host
arisia.xerox.com, directory pub, file pcr.tar.Z.  Other than ftp,
the source is only available on sparcstation diskettes.  The source
is copyright Xerox, but permits free reuse (modeled on the X consortium
copyright).

PCR has been submitted to OSF and Unix International.  It is about 20,000
lines of C.

-mark
Spoken: Mark Weiser 	ARPA:	weiser@xerox.com	Phone: +1-415-494-4406