[net.micro.amiga] AmigaDOS, XINU

pasm@pur-ee.UUCP (HJ Siegel PASM) (02/05/86)

In article <2987@ncsu.UUCP> hand@ncsu.UUCP (Steven Hand) writes:
>
>I think OS-9 would be great for the Amiga, but if you want to write your own
>quality OS for the Amiga, much of the work has ALREADY BEEN DONE and can be
>found in the book
>
>            Operating System Design: The XINU Approach
>            by Douglas Comer (Prentice-Hall)
>

He goes on to describe XINU features and discusses their merits when
(potentially) integrated with existing Amiga OS capabilites.

>You can get a MAGTAPE from the publisher with all this and a CROSS DEVELOPMENT
>SYSTEM that runs on VAX Berkeley UNIX 4.1 or 4.2.  (Includes C compiler for
>LSI-11 microcomputer, linking loader, up/down-loaders, debugger, utilities).
>While the book describes an LSI-11 as the target, it mentions that students
>have ported XINU to the 68000.  Maybe you can get the source for the 68000
>version?

Since most of you reading this are more interested in the 68000 than in the
LSI-11/02, I'll comment on my experiences with porting XINU to the 68000.
I am not one of the ``students" referred to in the previous message.

Our laboratory got a tape with XINU and the X-development stuff for the
68000.  The compiler, assembler, etc. are vintage-1980 and have lotsa bugs.
We chucked it all and use the X-development stuff for the 68000 now
distributed with VAX Berk-UNIX.  We use our own assembler which is
full 68020/68881.

We then found that the 68000 ``port" was never really completed -
only the assembly language part of XINU was modified
(and not very well at that).  We had to spent 400-600 man-hours improving
and rewriting for multi-user operation, re-writing the tty driver,
adding new floppy and winchester disk drivers, etc.
We're close to being UNIX 4.1 syscall-compatible.
It currently runs on a Motorola MVME 110 CPU board and uses
the MVME 320 disk controller.

I understand that the students associated with the author (Dr. Comer)
got XINU to work on a SUN workstation with a hard disk,
but they have not made the same modifications we have.
Dr. Comer is a professor in the CS department at Purdue University
in West Lafayette, IN  47907.

The XINU book is a great alternative to the scatter-shot descriptions
of existing operating systems found in other books
because it gives the REAL CODE!  NO AMBIGUITY HERE!!
I highly recommend it as a learning tool for those just getting
the urge to set off and start writing an OS of their own.
Each time I reread a section in the book, I uncover some elegant and simple
programming solution to a problem.
Be forewarned though: XINU is a starting point and not really as
complete as Steve Hand would have you believe.   The elegant and simple
solutions given rely on assumptions that we found to be intolerable:
no hardware memory management, no protection of users from each other, etc.
Yet, after all is said and done, XINU turns out to be considerably smaller
than a comparably-featured UNIX kernel.

Jim Kuehn, PASM parallel processing laboratory, Purdue-ECN.
kuehn@ed.ecn.purdue.EDU
pasm@ed.ecn.purdue.EDU