🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.sys.amiga.tech
Article #12163

Re: Amigix

#12163
From: Deven Corzine
Date: Mon, 10 Apr 1989 10:32
127 lines
7407 bytes
In article <5121@cs.Buffalo.EDU> ugkamins@sunybcs.uucp (John Kaminski) writes:
>I subscribe to comp.os.minix, which is about MINIX, a V7 UNIX-like operating
>system that was originally developed on an IBM-PC then ported to the Atari-ST
>series of computers.  I have received email stating that an Amiga port was
>underway, and may possibly be available by year's end.

I have heard about this Minix port to the Amiga.  I would like to see
it, though my personal opinion remains than it could be better
implemented under Exec, both because Exec is more dynamic than Unix
and Minix are (e.g. doubly-linked lists vs. static-sized tables) and
it would save the difficulty of reinventing the wheel as far as
writing a scheduler, device drivers, a message-passing system, etc.
As a learning tool, however, rewriting the low-level as well is just
fine...

>MINIX is for the most part source code compatible with many UNIX varieties,
>of which V7 is the definitive base.  The main difference is in the implemen-
>tation of the interal workings.  The "better" difference is that the MINIX
>"project" was started as a teaching/learning tool on operating systems (much
>as Pascal was intended to be a teaching programming language) and therefore
>is distributed with FULL SOURCE CODE for everything EXCEPT the C compiler.

I am working on writing Amigix, a V7 based environment layered over
Exec, which should be reasonably source code compatible with various
Unix systems, as is Minix.  This project was in fact inspired by Minix
and Tanenbaum's book.  It is not intended as a learning tool primarly,
but as a practical environment and platform for more effective
utilization of the Amiga computer.  It will (as I mentioned) be
significantly different from real Unix in internal implementation, but
it will be very similar from the programmer's point of view, and
hopefully from the user's as well.  I intend to start with the basic
Unix V7 system calls as a base, and add SysV/BSD Unix system calls and
libraries as seem appropriate/feasible, along with Amiga-specific
extensions.

One point I should note is that upon full release, I intend to
distribute Amigix with full source code and binaries.  Exactly how
much will be implemented at that point in unclear.

I hope to have at least Unix V7 system calls, some SysV/BSD system
calls, most of the easier library calls, logical Amiga extensions, a
tty driver (probably based on console.device), job control (depends on
the tty driver), possibly a curses library (have to see how difficult
it looks), *maybe* a file system and a shell, some utilities and a
pile of Unix-type filters all written before making a full release
complete with source code and documentation.

Eventually, I would like to have a file system (if I don't at the
first release), integrated networking software and some other goodies.
Preliminary releases will likely be an alpha release with the straight
V7 syscalls, beta with more syscalls and libraries (maybe tty driver
and job control), gamma with most everything but the file system and
some utilities, and perhaps a delta release with the file system,
shells and utilities.

Such preliminary releases will NOT be redistributable, and may or may
not be accompanied with source or documentation.  Distribution will
start very small for the the alpha release, (probably copies to
Randell Jesup, maybe a couple others at CATS, Peter Da Silva, and 3-4
others, assuming they are interested) to maybe a dozen more for the
beta release, perhaps a couple dozen for the gamma release, and if
there is a delta release, it will probably be distributed to as many
as 100-150 people to help ferret out bugs and test it all out.  This,
of course, presupposes that there will actually be that much interest
in the project, and people actually want to have such a thing.  Maybe
people won't care.  I'll just have to see how it goes.

In the (unlikely) event that I simply give up on the project, I will
release everything developed to that point, source, binary and
documentation, such that others may attempt to work on it.  However, I
don't expect to give up on it.  I may, however, be delayed for unknown
amounts of time by mundane things such as day-to-day life.

>For the definitive reference on MINIX consult (search for at a library or go
>buy) the Prentice-Hall publication

>Operating Systems: Design And Implementation
>Andrew S. Tanenbaum
>ISBN 0-13-637406-9

>This includes the source code listing for the MINIX system including all but
>some of the device drivers (most notably the printer and hard disk
>drivers).

>Andy is THE best computer writer I know.  Not only does he seem rather
>knowlegeable (sp?) but he is *EXCELLENT* at expressing what he is writing
>about.

I have a copy of this book (borrowed, actually) and I also highly
recommend it; it is well written and contains lots of useful
information which is practical along with the straight theory.  An
excellent book.

Randell, Peter, CATS, et al. -- (you know who you are... :-)  If you
are interested in obtaining preliminary releases for this project,
should they be forthcoming, please send me Email and tell me so.  In
fact, anyone is welcome to request preliminary distributions, but I
make no guarantees, and do not wish preliminary releases to get out of
hand.  If you're interested, tell me who you are, an Email address
that works, (numeric address also if on the Internet) and why I should
include you.  :-)

Keep in mind I will be willing to have larger distributions for the
later releases, but permission for redistribution of preliminary
releases will be explicitly denied.  The first full release will be
distributed with source and documentation as well as binaries, and
will be freely redistributable.  Actual size of preliminary
distributions will be mainly be determined by actual interest
expressed and arbitrary judgements by myself.  I reserve the right to
do whatever I feel like.  :-)

One unknown is whether I will even attempt to write a C compiler for
Amigix...  all I can say is that I will NOT write one for the first
full release, but I will at least look into the idea after that point;
I see writing a compiler (from the ground up, that is) to be a
challenge of roughly the same magnitude of the syscalls and libraries,
as is the file system.  So I don't know if I'll attempt it.  I'm
leaving it as a simple "maybe".

Anyhow, I'm talking too much again, so I'll stop now.

Deven
--
------- shadow@pawl.rpi.edu ------- Deven Thomas Corzine ---------------------
Cogito  shadow@acm.rpi.edu          2346 15th Street            Pi-Rho America
ergo    userfxb6@rpitsmts.bitnet    Troy, NY 12180-2306         (518) 272-5847
sum...     In the immortal words of Socrates:  "I drank what?"     ...I think.
Technical Details
Message-ID: <DEVEN.89Apr10063207@daniel.pawl.rpi.edu>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!unmvax!ncar!boulder!sunybcs!bingvaxu!leah!rpi!rpi.edu!deven
References: <5121@cs.Buffalo.EDU>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!unmvax!ncar!boulder!sunybcs!bingvaxu!leah!rpi!rpi.edu!deven
From: deven@pawl.rpi.edu (Deven Corzine)
Newsgroups: comp.sys.amiga.tech
Subject: Re: Amigix
Message-ID: <DEVEN.89Apr10063207@daniel.pawl.rpi.edu>
Date: 10 Apr 89 10:32:07 GMT
References: <5121@cs.Buffalo.EDU>
Sender: usenet@rpi.edu
Organization: RPI Public Access Workstation Lab, Troy NY
Lines: 127
In-reply-to: ugkamins@sunybcs.uucp's message of 9 Apr 89 05:13:09 GMT