[comp.os.minix] The Amiga Port

TLIMONCE%DREW.BITNET@cunyvm.cuny.edu (03/11/88)

A discussion of an Amiga port was battled a while ago.

Let me try to summerize (sorry if it's not 100% perfect).

Minix has a faster file system!
        AmigaDos 1.3 has a faster file system.  Wait for it to be released
soon.

Minix has multitasking!
        AmigaDOS has always had multitasking.

Minix has pipes!
        AmigaDOS has at least 2-3 public domain versions of a PIPE:
device.

So basically, it was a dead issue.  Personally, I would like to see it
done anyway so that us people in the edukational world can play with it
unstead of have to go to a computer lab and do my work there (I use the
book in an Op Sys course I take)

Of course, it would a great project for someone to do on the Amiga.
Actually, if they could get it to work on the bridge-board (IBM compatable
add-on) some people could use Minix.  A truely interesting port would be
to have Minix running as a task under AmigaDOS.  A nice, well-behaved
task would be very useful.

Another project-idea for the Amiga would be a library that could be linked
to programs that would emulate all the minix calls.  Then write a shell
and attach your favorite C compiler and you'd have a nice pseudo-Minix
emulator for the Amiga.  This would be like Eunice (or is it Ultrixx) for
the VAX VMS OS.

Anyone who want to discuss such a project can mail me.  I'm a bit busy now
but I am always available to give opinions :-)

Tom Limoncelli | Drew U/Box 1060/Madison NJ 07940 | tlimonce@drew.BITNET
    Disclaimer: These are my views, not my employer or Drew Univesity
--------------------------------------------------------------------------

BECKER%HUMBER.BITNET@cunyvm.cuny.edu (Bruce Becker) (03/15/88)

Minix runs on the Amiga Sidecar, so it ought to run on the A2088 BridgeCard
as well... It would be interesting to have parts of Minix run in different
CPU's, and message-pass across the Amiga/Bridgecard interface....

Bruce Becker      Humber College      Etobicoke, Ont.

wes@wsccs.UUCP (Barnacle Wes) (03/22/88)

In article <1483@louie.udel.EDU>, TLIMONCE%DREW.BITNET@cunyvm.cuny.edu writes:
> Minix has a faster file system!
>         AmigaDos 1.3 has a faster file system.  Wait for it to be released
> soon.

Love those "REAL SOON NOW" release dates.  How do you know AmigaDOS 1.3
will be faster than the Minix file system, since neither has been released
yet?

> Minix has multitasking!
>         AmigaDOS has always had multitasking.

AmigaDOS has always *SORT OF* had multitasking:  applications can turn it
off, blowing up other applications that use the multitasking.

> Minix has pipes!
>         AmigaDOS has at least 2-3 public domain versions of a PIPE:
> device.

A pipe "device"????  Get real!

> So basically, it was a dead issue.

Why is it a dead issue?  Because you are not interested?  I bet you beleive
your bedroom is the center of the universe, too!

> Of course, it would a great project for someone to do on the Amiga.

I think so.  It is especially appealing to me that it would be pretty easy
to make the Amiga and Atari versions binary (and disk format) compatible.

> Actually, if they could get it to work on the bridge-board (IBM compatable
> add-on) some people could use Minix.

Why would you want to waste an Amiga as a "terminal" for the IBM version
of Minix?  And if the bridge board is truly "IBM compatible", the PC version
of Minix will already run on it.

> A truely interesting port would be
> to have Minix running as a task under AmigaDOS.  A nice, well-behaved
> task would be very useful.

Nah, a truly interesting port would be a version of Minix with a floppy
driver that would automagically recognize and re-format any AmigaDOS floppy
put into a drive.

Seriously, if you aren't interested in Minix, why are you here telling
everyone why they DON'T want it for the Amiga?  Go back to comp.sys.amiga
and 3-line function calls.

Is anyone out there planning to do a window manager for Minix on the Atari
and Amiga?  That would be really nice :-).

-- 
    /\              - " Against Stupidity,  -    {backbones}!
   /\/\  .    /\    -  The Gods Themselves  -  utah-cs!utah-gr!
  /    \/ \/\/  \   -   Contend in Vain."   -  uplherc!sp7040!
 / U i n T e c h \  -        Schiller       -     obie!wes

TLIMONCE%DREW.BITNET@cunyvm.cuny.edu (03/25/88)

On 3/24/88 Barnacle Wes <wes@wsccs.uucp> writes:

>In article <1483@louie.udel.EDU>, TLIMONCE%DREW.BITNET@cunyvm.cuny.edu writes:
>> Minix has a faster file system!
>>         AmigaDos 1.3 has a faster file system.  Wait for it to be released
>> soon.
>
>Love those "REAL SOON NOW" release dates.  How do you know AmigaDOS 1.3
>will be faster than the Minix file system, since neither has been released
>yet?

Boy, I really hate flame wars.  A while ago a port of Minix to the Amiga
was discussed and for many it was a LONG BORING discussion because it was
cross posted to the Amiga discussion.  It was not boring TO ME, per se, (I
like Minix and would love to see it running on an Amiga) but it was to
others.  Recently someone who had not seen that discussion naively asked
if there was such a port in the works.  To prevent that discussion over
again, I tried to summerize the last discussion.  I was not trying to
dogmatize the Amiga.

WHAT REALLY GETS ME UPSET is the fact that the person who flamed on my
post OMITTED THE PART WHERE I EXPLAIN THAT and justs flames on what I said
about the discussion!  I HATE 'REAL SOON NOW' announcements as much as the
next guy but I only spoke of things that I have used.

AmigaDOS 1.3 has been released to developers and the new file system
portion is being shipped (it works under 1.2 as well as 1.3) by special
agreement with Commodore and harddrive makers.

>> Minix has multitasking!
>>         AmigaDOS has always had multitasking.
>
>AmigaDOS has always *SORT OF* had multitasking:  applications can turn it
>off, blowing up other applications that use the multitasking.

Sure, I can go straight to the hardware on my IBM PClone running MINIX and
shut off the multitasking!  In fact, the common way to avoid multitasking
on the Amiga is to do a non-standard boot block.  Guess what, buddy?  I
can boot MS-DOS on my "Minix Machine" if I want to aviod multitasking. :-)
(Yes, that's pushing it... no flames please)

>> Minix has pipes!
>>         AmigaDOS has at least 2-3 public domain versions of a PIPE:
>> device.
>
>A pipe "device"????  Get real!
You are right!  But if you paid attention to my first paragraph, you'd
notice that I was summarizing *A* discussion, not *MY* discussion.  I, too
believe that a pipe "device" is not a real solution.

>> So basically, it was a dead issue.
>
>Why is it a dead issue?  Because you are not interested?  I bet you beleive
>your bedroom is the center of the universe, too!

I'm sorry, let me re-phase that.  "So basically, to the people who were
discussing the port, it was a dead issue."  Now, read my next sentence and
it'll all flow:

>> Of course, it would a great project for someone to do on the Amiga.
>
>I think so.  It is especially appealing to me that it would be pretty easy
>to make the Amiga and Atari versions binary (and disk format) compatible.

(Here I say that though they were not interested, I thought it had merit.
You combat that stateing that it would be great to make it compat with
the Atari ST version.  (MY OPINION *ON*) Well, that sounds good, but the
disk formats are a ways different and the low-level interface to the ST
and Amiga hardware is quite different. (MY OPINION *OFF*)

>> Actually, if they could get it to work on the bridge-board (IBM compatable
>> add-on) some people could use Minix.
>
>Why would you want to waste an Amiga as a "terminal" for the IBM version
>of Minix?  And if the bridge board is truly "IBM compatible", the PC version
>of Minix will already run on it.

The bridge board is truly compatable.  In fact, it's more compatable than
some IBM Clones.  I think that Minix would work, I just have not tried it.

>> A truely interesting port would be
>> to have Minix running as a task under AmigaDOS.  A nice, well-behaved
>> task would be very useful.
>
>Nah, a truly interesting port would be a version of Minix with a floppy
>driver that would automagically recognize and re-format any AmigaDOS floppy
>put into a drive.

Nothing like good humor on the net (and that was nothing like good humor
on the net) :-)  Sort of like your comment about my bedroom about 35 lines
up.

>Seriously, if you aren't interested in Minix, why are you here telling
>everyone why they DON'T want it for the Amiga?  Go back to comp.sys.amiga
>and 3-line function calls.

I *AM* interested in Minix.  I happen to be VERY interested in it.  (I
also don't do 3-line function calls, my programs are compiled with a much
better bindings system... as most compilers do now-a-days)

>Is anyone out there planning to do a window manager for Minix on the Atari
>and Amiga?  That would be really nice :-).
>
>--
>    /\              - " Against Stupidity,  -    {backbones}!
>   /\/\  .    /\    -  The Gods Themselves  -  utah-cs!utah-gr!
>  /    \/ \/\/  \   -   Contend in Vain."   -  uplherc!sp7040!
> / U i n T e c h \  -        Schiller       -     obie!wes


Tom Limoncelli | Drew U/Box 1060/Madison NJ 07940 | tlimonce@drew.BITNET
    Disclaimer: These are my views, not my employer or Drew Univesity
--------------------------------------------------------------------------

darin@laic.UUCP (Darin Johnson) (03/25/88)

I must point out some misconceptions here (seems IBM hackers always
have them :-)

Disclaimer:
  I am not putting MINIX down - I would love to see MINIX on
  my Amiga (mostly so I could have source code, expirement, patch, etc.)

In article <343@wsccs.UUCP>, wes@wsccs.UUCP (Barnacle Wes) writes:
> > Minix has multitasking!
> >         AmigaDOS has always had multitasking.
> 
> AmigaDOS has always *SORT OF* had multitasking:  applications can turn it
> off, blowing up other applications that use the multitasking.

Way off base here.  There is one major operating system that I know
of (TOPS??) that is multi-user, but allows a process to turn off
context switching.  Obviously, this can cause problems if the process
doing this is unfriendly and doesn't restore things.  By your
assumption, this "multi-user" system would be non-multitasking!!
A good hacker can probably go in and turn off interrupts (basically
turning off multitasking) in UNIX, MINIX, VMS, etc.  Does this imply
that these machines are not multitasking??  The main difference here
between these systems and the Amiga, is that Amiga has a library
routine to do this.  The ability to turn off multitasking is
often necessary (eg: turn off interrupts while deleting a port to
be absolutely sure no messages arrive - even if this takes only two
instructions, there is the possibility of context-switching messing things up).
UNIX device-drivers often need (and use) this capability.

The Amiga has always had REAL multitasking - no less so than MINIX.
Perhaps your are confused and thinking of a Macintosh switcher hack?

> > Minix has pipes!
> >         AmigaDOS has at least 2-3 public domain versions of a PIPE:
> > device.
> 
> A pipe "device"????  Get real!

In essence (if not in name) UNIX/MINIX pipes are devices also.  Even so,
does it make these less of a pipe if they can do everything a MINX pipe
can do just as efficiently?

> > So basically, it was a dead issue.
> 
> Why is it a dead issue?  Because you are not interested?  I bet you beleive
> your bedroom is the center of the universe, too!

(Probably why the universe is so messed up - too many centers :-)

> > Of course, it would a great project for someone to do on the Amiga.
> 
> I think so.  It is especially appealing to me that it would be pretty easy
> to make the Amiga and Atari versions binary (and disk format) compatible.

Ugh, this means leaving out machine specific features..  It would have to
be machine specific code anyway since device addresses/etc are different.

> > Actually, if they could get it to work on the bridge-board (IBM compatable
> > add-on) some people could use Minix.
> 
> Why would you want to waste an Amiga as a "terminal" for the IBM version
> of Minix?  And if the bridge board is truly "IBM compatible", the PC version
> of Minix will already run on it.

I agree with you here.  The bridgeboard should be treated the same as
a CPM or C-64 emulator: useful only to run existing software that you
already have (or that the boss requires you to use).

> Seriously, if you aren't interested in Minix, why are you here telling
> everyone why they DON'T want it for the Amiga?  Go back to comp.sys.amiga
> and 3-line function calls.

Why three line?  I can get them done in one (except in assembly - there I have
to push arguments on the stack or put them in registers.  Does
MINIX get rid of parameters :-)
-- 
Darin Johnson (...ucbvax!sun!sunncal!leadsv!laic!darin)
              (...lll-lcc.arpa!leadsv!laic!darin)
	All aboard the DOOMED express!

Dickson@his-phoenix-multics.arpa (Paul Dickson) (03/25/88)

And here's another reply:

> From:  Barnacle Wes <wes at WSCCS.UUCP>
>
> In article <1483@louie.udel.EDU>, TLIMONCE%DREW.BITNET@cunyvm.cuny.edu writes:
> > Minix has a faster file system!
> >         AmigaDos 1.3 has a faster file system.  Wait for it to be released
> > soon.
>
> Love those "REAL SOON NOW" release dates.  How do you know AmigaDOS 1.3
> will be faster than the Minix file system, since neither has been released
> yet?
>

I don't really like RSN dates either, but 1.3 is on its way.  I
understand that it is in gamma testing (which means the developers have
an early, possibly bug prove version).  But local developers love it
because of the speed and flexibility increase.

>
> > Minix has multitasking!
> >         AmigaDOS has always had multitasking.
>
> AmigaDOS has always *SORT OF* had multitasking:  applications can turn it
> off, blowing up other applications that use the multitasking.
>

Well, if that's the case, then MINIX has *SORT OF* multitasking.  Minix
has the same faults as AmigaDOS.

>
> > Minix has pipes!
> >         AmigaDOS has at least 2-3 public domain versions of a PIPE:
> > device.
>
> A pipe "device"????  Get real!
>

What's wrong with having a pipe device?  I believe the PIPE: device
will be in AmigaDOS 1.3, but we'll have to wait and see.

>
> > Actually, if they could get it to work on the bridge-board (IBM compatable
> > add-on) some people could use Minix.
>
> Why would you want to waste an Amiga as a "terminal" for the IBM version
> of Minix?  And if the bridge board is truly "IBM compatible", the PC version
> of Minix will already run on it.
>

The news seem to have difficulty spreading.  It does work with the
bridge board as previous messages have stated.

>
> > A truely interesting port would be
> > to have Minix running as a task under AmigaDOS.  A nice, well-behaved
> > task would be very useful.
>
> Seriously, if you aren't interested in Minix, why are you here telling
> everyone why they DON'T want it for the Amiga?  Go back to comp.sys.amiga
> and 3-line function calls.
>
> Is anyone out there planning to do a window manager for Minix on the Atari
> and Amiga?  That would be really nice :-).

You seem to want somebody else to re-invent Amiga and make it available
to you with source code.  TANSTAAFL.  Those person who get familiar
enough with the Amiga, trying to port MINIX, usually find that the
Amiga already has most of what they are trying to do already done.

Personally, if I wanted to do 68000 development work for MINIX, I'd
purchase an 1040 ST, rather than do anything to my Amiga.  As it is,
I'll stick to working with my friend using his PC Clone.

          -Paul Dickson
            Dickson%pco @ BCO-Multics.ARPA

P.S.  I wrote this message, but stopped to read the reply to the
original before sending this.

karl@sugar.UUCP (Karl Lehenbauer) (03/30/88)

In article <343@wsccs.UUCP>, wes@wsccs.UUCP (Barnacle Wes) writes:
> In article <1483@louie.udel.EDU>, TLIMONCE%DREW.BITNET@cunyvm.cuny.edu writes:
> Why is it a dead issue?  Because you are not interested?  I bet you beleive
> your bedroom is the center of the universe, too!
> ...
> Seriously, if you aren't interested in Minix, why are you here telling
> everyone why they DON'T want it for the Amiga?  Go back to comp.sys.amiga
> and 3-line function calls.

Now hold on there, flamer.  You apparently haven't been reading
comp.os.minix for long.  The idea of doing a Minix port for the 
Amiga has been beaten to death.  The consensus has been that Minix needs 
a way to relocate logical address zero and the Amiga can't (the ST can,
hence an ST port is, or is nearly, available), making it a *big* job.  
Further, it was widely agreed that massive amounts of development would 
be required to approach the functionality of the Amiga under Commodore's 
OS and toolset:  code for managing the blitter and copper, device 
drivers, libraries, etc. etc. etc.  Also, the incentive to port a 
multitasking exec to the Amiga isn't there nearly as much as for the 
ST and PC, since the Amiga is already multitasking and the ST and
PC aren't.  Finally, I think you'll find that AmigaDOS, for all its 
flaws, is a *supported*, production realtime operating system whereas 
Minix is a non-realtime educational effort that, with lots of continued 
hacking, will eventually get to a point where it is stable, complete and 
fast enough to be used in a production environment.  For the time being,
it is for "pioneers."  (On a Unix timeline, I think Minix is pre-version-6.)
I've played with Minix on an XT.  It is amazing in that it's a substantial
portion of Unix running on very little hardware.  It is very appropriate
for teaching operating systems.  It is also slow, way slower on an AT than
Microport Unix on an AT for example.  Having seen how Minix passes messages
(single message rendezvous) versus how the Amiga does it (multi-message
queuing, queueing without wait, also, lightweight processes), it is probable 
that Minix will be slower than AmigaDOS on an Amiga, although the current
version of AmigaDOS is bad enough at disk I/O that Minix could win on some
I/O functions.

So, if you want to port Minix to the Amiga as a project, knock yourself 
out, just don't expect it to have much of an impact outside of a cadre
of hardcore pioneer hobbyists.  While reinventing the wheel can be fun
and educational, and I've reinvented my share, you're going to have
to "roll your own" for an overwhelming amount of software.  Have a look 
at the Amiga ROM Kernel Manual sometime.  You may think it's garbage, 
but it represents man years of work - work that you and your friends'll 
have to duplicate in order to equal the functionality of the vendor-provided 
environment.
-- 
"Weekends were made for programming."  -me
..!uunet!nuchat!sugar!karl, Unix BBS (713) 438-5018

jesup@pawl14.pawl.rpi.edu (Randell E. Jesup) (03/31/88)

In article <1781@sugar.UUCP> karl@sugar.UUCP (Karl Lehenbauer) writes:
>Now hold on there, flamer.  You apparently haven't been reading
>comp.os.minix for long.  The idea of doing a Minix port for the 
>Amiga has been beaten to death.  The consensus has been that Minix needs 
>a way to relocate logical address zero and the Amiga can't (the ST can,
>hence an ST port is, or is nearly, available), making it a *big* job.  

	Sorry, not correct.  I am a former member of the amiga minix
mailing list.  Niether the ST nor the amiga can relocate la 0, but that
doesn't mean  you can't do minix, it just requires a bit of handwaving when
doing a fork().  The job would be almost the exact same work as went into
the ST version (actually less, since they've already done the 68000 conversion
stuff, and the fork() stuff).

>Further, it was widely agreed that massive amounts of development would 
>be required to approach the functionality of the Amiga under Commodore's 
>OS and toolset:  code for managing the blitter and copper, device 
>drivers, libraries, etc. etc. etc.  Also, the incentive to port a 
>multitasking exec to the Amiga isn't there nearly as much as for the 
>ST and PC, since the Amiga is already multitasking and the ST and
>PC aren't.

	BINGO!  That's the main reason why the project died out: a fairly large
amount of work to get something you already have.  Being able to run V7
compatible unix programs is nice, but most programs aren't v7-compatible.
A better solution is to use AmigaDos/exec/intuition/graphics libraries to
implement minix, and *poof* windowing V7 unix!  But still not really worth
the work to do it.

>  Having seen how Minix passes messages
>(single message rendezvous) versus how the Amiga does it (multi-message
>queuing, queueing without wait, also, lightweight processes), it is probable 
>that Minix will be slower than AmigaDOS on an Amiga, although the current
>version of AmigaDOS is bad enough at disk I/O that Minix could win on some
>I/O functions.

	Also very true.  I couldn't believe it when I realized that minix
messages didn't queue.

     //	Randell Jesup			      Lunge Software Development
    //	Dedicated Amiga Programmer            13 Frear Ave, Troy, NY 12180
 \\//	beowulf!lunge!jesup@steinmetz.UUCP    (518) 272-2942
  \/    (uunet!steinmetz!beowulf!lunge!jesup) BIX: rjesup

(-: The Few, The Proud, The Architects of the RPM40 40MIPS CMOS Micro :-)

cyliax@ea.ecn.purdue.edu (Ingo Cyliax) (04/01/88)

In article <1781@sugar.UUCP> karl@sugar.UUCP (Karl Lehenbauer) writes:
>In article <343@wsccs.UUCP>, wes@wsccs.UUCP (Barnacle Wes) writes:
>> In article <1483@louie.udel.EDU>, TLIMONCE%DREW.BITNET@cunyvm.cuny.edu writes:
>> Why is it a dead issue?  Because you are not interested?  I bet you beleive
>> your bedroom is the center of the universe, too!
>> ...
>> Seriously, if you aren't interested in Minix, why are you here telling
>> everyone why they DON'T want it for the Amiga?  Go back to comp.sys.amiga
>> and 3-line function calls.
>
>Now hold on there, flamer.  You apparently haven't been reading
>comp.os.minix for long.  The idea of doing a Minix port for the 
>Amiga has been beaten to death.  The consensus has been that Minix needs 
>a way to relocate logical address zero and the Amiga can't (the ST can,
>hence an ST port is, or is nearly, available), making it a *big* job.  

How is that ? The Atari does not have any mapping registers. I assume
that Minix for the ST will relocate the program at start-up, much like
it does for GEM/TOS. I would expect people to come up with a native
port to the Amiga soon after Minix-St is available.

If I had an Amiga, I would certainly be interested enough to run Minix
on it, to even try porting it myself. It would also be relativly easy to
have the same load format and syscall interface for both the Amiga and
Atari so you could actually run the same binary on it. And as soon
as we have X :-), we could also have a standard windowing system for both
of them.


-- 
/*                              Ingo Cyliax                               *
 * ...!ihnp4!pur-ee!cyliax      ECN, Electrical Engineering Bldg.         *
 *   cyliax@ecn.purdue.edu      Purdue University, W. Lafayette,IN 47907  *
 *       ing@cc.purdue.edu      (317) 494-3473 / (317) 463-1747 after 5pm */

wes@obie.UUCP (Barnacle Wes) (04/08/88)

In article <2390@ea.ecn.purdue.edu>, cyliax@ea.ecn.purdue.edu (Ingo Cyliax) writes:
> How is that?  The Atari does not have any mapping registers. I assume
> that Minix for the ST will relocate the program at start-up, much like
> it does for GEM/TOS. I would expect people to come up with a native
> port to the Amiga soon after Minix-St is available.

Yah, I wondered about this "mapping of logical address 0" too.
Actually, the ST does *not* have this feature, and with the Amiga, you
can have it if you want to.  I think the Blitter is actually capable
of grabbing memory reads/writes from the CPU and redirecting them.
Hmm... virtual Minix on the Amiga?  *WAAAYYYY* over my head
(currently).  I'm not sure I want to know *that* much about the Amiga,
but it is an interesting idea.  I assume the Minix loader will
generate a load module with chained 'fixup words', perhaps Mr. 
Tanenbaum, or one of the other kind folk at CWI, can answer this
question for us.

> If I had an Amiga, I would certainly be interested enough to run Minix
> on it, to even try porting it myself. It would also be relativly easy to
> have the same load format and syscall interface for both the Amiga and
> Atari so you could actually run the same binary on it. And as soon
> as we have X :-), we could also have a standard windowing system for both
> of them.

I don't, but terry@wsccs does - with a 20 meg hard disk.  I have a 1
meg 520ST with 2x20 meg hard disk (when I get Minix, it will be 2x20).
The common load format is just common sense, and the syscall interface
should be *exactly* the same - there is no reason to change any of
that code!
-- 
    /\              -  "Against Stupidity,  -    {backbones}!
   /\/\  .    /\    -  The Gods Themselves  -  utah-cs!utah-gr!
  /    \/ \/\/  \   -   Contend in Vain."   -  uplherc!sp7040!
 / U i n T e c h \  -       Schiller        -     obie!wes