[comp.os.xinu] xinu simulator

mss@cbnews.ATT.COM (Mark S. Shaw) (08/26/89)

I have heard that there is a xinu simulator available which runs as a single
UNIX process. I would appreciate information on how it can be obtained.

Thanks in advance.

Mark Shaw
mss@cblph.att.com
att!cblph!mss

libes@cme.nbs.gov (Don Libes) (08/26/89)

In article <9199@cbnews.ATT.COM> mss@cbnews.ATT.COM (Mark S. Shaw) writes:
>I have heard that there is a xinu simulator available which runs as a single
>UNIX process. I would appreciate information on how it can be obtained.

This appeared in the July/August 1987 ;login: as "Multiple Programs in
One UNIX Process".  It is available by anonymous ftp from
durer.cme.nist.gov as xinu.shar.Z

Xinu/UNIX may not be everything you want.  It cheats as much as
possible.  For example, when programming with it, you use the regular
UNIX device drivers, cc, ld, C startup routines, etc.  Bear in mind
that it wasn't done as an experiment or to show anything - rather, it
was done because it provided us with threads (i.e. lightweight
processes).  Nonetheless, the system demonstrates the elegance of Xinu
and what it is all about.

Doug Comer told me that some of his students also wrote one which they
called "Concurrent C".  It uses a second process to handle I/O.  This
avoids the restriction that calling a UNIX device driver blocks the
entire set of Xinu processes.  (Our application wasn't concerned with
this.)

The paper I referred to earlier goes into more detail on all of this.

Don Libes          libes@cme.nist.gov      ...!uunet!cme-durer!libes

krr@CS.PURDUE.EDU (08/27/89)

The system done at Purdue which Don Libes mentioned is called ConcurrenC,
which is our port of Xinu within a single Unix process.  We kept Xinu
functionality in tact, with some name changes of system calls due to conflicts
with Unix systems calls.  We also kept Unix semantics and functionality as much
as possible.  Unix C library routines are made mutual exclusive, and a
blocking I/O ConcurrenC task does not block other tasks in the system.  The
ConcurrenC system includes src for the Xinu/ConcurrenC routines, source for
modified Unix C library routines, and manual pages which list the Xinu name
changes within ConcurrenC, restricted Unix system calls, etc.

The following gives information on how to obtain ConcurrenC.  Note that a
copy of your Unix source licence is required.

- Ken Rodemann


                  Xinu Types and Price List                                

Target  Xinu      Host Compiler  Media        Price   Make Check
Machine Version   Operating                          Payable to 
                   System
-------------------------------------------------------------------
 LSI (@) 6 (Book I)Cross Compiler 1600 BPI    $100    Douglas Comer
                   Included       9-Track UNIX
                   4.3BSD UNIX    Tar Tape  
	
 LSI (@) 7(Book II)Cross Compiler 1600 BPI    $200   Douglas Comer
                   Included       9-Track UNIX
                   4.3BSD UNIX    Tar Tape
_____________________________________________________________________

 8086 (%)6 (Book I) Cross Compiler 1600 BPI    $100   Douglas Comer
            Derived Included       9-Track UNIX
            from    4.3BSD UNIX    Tar Tape
            LSI-11
______________________________________________________________________

 Sun3 (%)6 (Book I) Sun Micro-     1600 BPI     $100  Shawn Ostermann
                    Systems C      9-Track UNIX
                    Sun OS         Tar Tape

 Sun3 (%)7 (Book II)Sun Micro-     1600 BPI      $200 Shawn Ostermann
                    Systems C      9-Track UNIX
                    Sun OS         Tar Tape
______________________________________________________________________

 IBM-PC    PC-Xinu  Microsoft C    5 1/4 floppy ~ $80 Contact Prentice 
                    MS/DOS                                  Hall
                                                  ISBN #0-13-638271-1

 IBM-PC (%)6 (Book I) Aztec C      5 1/4 floppy   $100 Andy Thomas
______________________________________________________________________

 Macint (%)6 (Book I) Aztec C   two 3 1/2 floppy  $200 Steven Munson
 tosh         &       Macintosh  &
 512K      7 (Book II)          1600BPI
                                9-Track UNIX
                                Tar Tape

 Macint (%)6 (Book I) Aztec C   two 3 1/2 floppy ~ $80 Contact Prentice 
 tosh                 Macintosh                             Hall                   
 512K                                              ISBN #0-13-638545-1

						     or 

						   $100 Steven Munson  
	
_________________________________________________________________________

 VAX         6 (Book I ) VAX UNIX C   1600 BPI     $200 Douglas Comer
                &        Compiler     9-Track UNIX
             7 (Book II) 4.3BSD UNIX  Tar Tape        
_________________________________________________________________________

 VAX (*)     ConcurrenC VAX UNIX    1600 BPI       $50  Ken Rodemann
                        Compiler    9-Track UNIX
                        4.3BSD UNIX Tar Tape 
_________________________________________________________________________



     (@) Less expensive if purchased from Prentice-Hall.
     For Prentice Hall, contact Rob Dewey,  (201)  592-2862;
     or Mail Order dept.  (201) 767-5937.

     (%) Prepared by students.  These versions are "as is".

     (*) Requires UNIX source license.  Send a mailing  tape.
     4.2 BSD UNIX also available.


     If you have a UNIX source license, please send  a  copy
     of the signature page; otherwise, we will send you dis-
     tributions without UNIX source.

     Send your order and check to: Professor Douglas  Comer,
     Department  of  Computer  Sciences,  Purdue University,
     West Lafayette, IN  47907.

Information about Xinu is exchanged through  electronic  mail.   To
have  your  name  added  to  the  mailing list, send to  xinu-info-
request@purdue.edu. To send mail to the Xinu list,  address  it  to
xinu-info@purdue.edu.