[comp.os.minix] MINIX on the Amiga...

colby@topaz.RUTGERS.EDU (Andrew Colby) (04/24/87)

Being new to this system, I haven't heard of MINIX before.  Is it a
free/share ware version of UN*X??  I am interested in finding such a
thing for my AMIGA at home.  Right now, though, I don't have a hard
disk, but I am working on it...  What is the current status of MINIX
and what systems does it work on??  Thanx for the info...

					David Masterson
					ihnp4!piscv!piscg!dsm

p.s. I am borrowing this account to send this message -- reply to the
above account...

george@cidam.rmit.oz (George Seremetidis) (03/09/88)

  I am looking for Minix on the Amiga, and I would like to know if
if it has been commercially realeased or if somebody has done a port.
 


			    Thanks in advance.


  & no signature !!! &

peter@dbaccess.com (Peter A. Castro) (09/19/90)

Greetings All,
   I hate to rehash something that has been already answered (I presume :-)
   but the New Minix 1.5 announcement said the it will run on an A500 or
   A2000.  Can it not run on an A1000 ?  If not, why?  If it can, then
   a question on Minix itself:  Does it run in tandem with AmigaOS, or does
   it "take over" the machine?  I'm running V1.3 of Kickstart & Workbench
   with 2Mb of memory.  Also, how much disk space does it take (I also
   presume there is no Virtual Memory support, since there isn't any MMU
   on either the A500 or A2000 ( & A1000 ).  Is there someone with an Amiga
   running it now that I could mail questions to?  Any help would be
   appreciated greatly.
-- 
Peter A. Castro                   INTERNET: peter@dbaccess.com        // //|
c/o DB/Access Inc.                UUCP: {uunet,mips}!troi!peter      // //||
2900 Gordon Avenue, Suite 101     FAX: (408) 735-0328            \\ // //-||-
Santa Clara, CA 95051-0718        TEL: (408) 735-7545             \// //  ||

djb@geovision.uucp (Darren Burns) (09/19/90)

I'm considering getting MINIX for my Amiga.  I have a few questions which
someone might be able to help me with.

1) On the Amiga, there's all sorts of library routines for graphics, etc.  Can
these libraries be accessed with MINIX, ie. can I write a program under MINIX
that does something like opening a screen and drawing on it?

2) It's my understanding that devices like /dev/hd1 are actually files on a
disk somewhere.  Can these files be on a hard disk which is mounted under 
AmigaDOS?

3) Is it possible to access all the AmigaDOS files I currently have on my
hard disk?  I don't want to have to give them all up.

4) How does MINIX start up?  Can it be a program that I invoke from Intuition,
or do I absolutely have to boot on a floppy?

Thanks,
Darren Burns

vodall@hpfcso.HP.COM (Bill Vodall) (09/20/90)

/ hpfcso:comp.os.minix / peter@dbaccess.com (Peter A. Castro) /  3:41 pm  Sep 18, 1990 /
Greetings All,
>   I hate to rehash something that has been already answered (I presume :-)
>   but the New Minix 1.5 announcement said the it will run on an A500 or
>   A2000.  Can it not run on an A1000 ?
-- 
Peter A. Castro                   INTERNET: peter@dbaccess.com        // //|
c/o DB/Access Inc.                UUCP: {uunet,mips}!troi!peter      // //||
2900 Gordon Avenue, Suite 101     FAX: (408) 735-0328            \\ // //-||-
Santa Clara, CA 95051-0718        TEL: (408) 735-7545             \// //  ||
----------

This is the big question!  If I knew that Amiga Minix would run on an A1000
I'd order it this instant. 

Bill

xanthian@zorch.SF-Bay.ORG (Kent Paul Dolan) (10/01/90)

sreiz@cs.vu.nl (Reiz Steven) writes:
>guineau@wjg.enet.dec.com (W. John Guineau) writes:
>
>>I've been talking with Andy Tanenbaum about Minix.
>>He says he doubts that it will run on a 68030 based machine 
>>(ie A3000, A2500/30). Minix does not set up the MMU.
[...]
>>Has anyone gotten Minix running on one of these machines?
>
>Not having tried this myself I can only guess at the exact nature of the
>problems encountered when running Amiga Minix 1.5 on 680x0s where x>1:
>
>- The highest 8 bits of some addresses are used for a 'dirty trick' by the 
>  minix kernel. This means that you must be able to instruct your 68020/
>  68030 board to use 24 bit addressing, like the 68000 and 68010.

Whew! We already got bitten by this one with AmigaBASIC. I hope
someone guts this with a huge set of "#ifdef SANE_DESIGN"s pretty
fast and leaves the full 32-bit memory addressing accessible. This
is pretty gross for code written for the 1990's.

>- Minix can't access memory outside the 16 MB range. This is caused by
>  the way addresses are encoded in the memory manager. I don't know if
>  any 68020/68030 boards really have memory outside the 16 MB range, but this
>  doesn't seem a very serious problem to me anyhow.

It does to me! I'm running a vanilla Amiga 2000 with 9.5 meg of
RAM, and I could easily put ten times as much to use on a regular
basis. I can promise you, it is going to be a very short time, we
may be there already, when the trade press is going to be talking
about ways to get around the "Poorly Planned 32 Bit Barrier" for
real memory addresses. A 24 bit inherent limitation is a joke in
bad taste in today's world, where that much memory costs less than
a second, used car, easily within the reach of the dedicated
hobbiest, not to mention commercial sites.

Noted in another article is that MINIX is a learning tool. One of
the first lessons to learn looks like: "Don't assume there is
_any_ resource for which the user can't find use for more; leave
room for growth beyond your wildest imaginings".

That wisdom should be a fundamental part of the design of _any_ OS
today, and designs as described above should get failing grades in
college "Principles of Operating Systems" classes, much less
quasi-commercial products. There is little if any excuse for
turning address longwords into records to save a byte here or
there in a memory management scheme's overhead when memory is dirt
cheap and widely available.

Kent, the man from xanth.
<xanthian@Zorch.SF-Bay.ORG> <xanthian@well.sf.ca.us>
--
Fanning the flames a bit, my hands were cold.

tvf@cci632.UUCP (Tom Frauenhofer) (10/01/90)

I've finally gotten around to building shoelace for my system, but I can't seem
to get it to compile, either with Bruce's compiler or ACK.

My system is a 286 running Minix PC 1.5.10.  I have 1 Meg of RAM, a 240K root file
system.  The version of Bruce's C compiler is the 16-bit version on plains.nodak.edu
dated June 20 (I think that's the latest).

When I compile using Bruce's C compiler, shoebfs.c blows up like this:
-----
bcc -0 -c -Di8088 shoebfs.c
| error: cannot open output
| 
.data
.bss
.fail	1 errors detected

| 1 errors detected
-----

When I compile using ACK, things compile okay, but I get a multiply defined
error on "_inode" when it tries to link up bootlace.

What am I doing wrong?
-- 
Thomas V. Frauenhofer, WA2YYW	ccicpg!cci632!tvf@uunet.uu.net	tvf1477@ma.isc.rit.edu
"Why don't you try acting?  It's much easier."
	- Laurence Olivier to Dustin Hoffman during filming of "Marathon Man"

eesrajm@cc.brunel.ac.uk (Andrew J Michael) (10/03/90)

In article <1990Oct1.000617.3676@zorch.SF-Bay.ORG>, xanthian@zorch.SF-Bay.ORG (Kent Paul Dolan) writes:
> sreiz@cs.vu.nl (Reiz Steven) writes:
> >guineau@wjg.enet.dec.com (W. John Guineau) writes:
> >
> >>I've been talking with Andy Tanenbaum about Minix.
> >>He says he doubts that it will run on a 68030 based machine 
> >>(ie A3000, A2500/30). Minix does not set up the MMU.
> [...]

[stuff deleted]

> Whew! We already got bitten by this one with AmigaBASIC. I hope
> someone guts this with a huge set of "#ifdef SANE_DESIGN"s pretty
> fast and leaves the full 32-bit memory addressing accessible. This
> is pretty gross for code written for the 1990's.
> 
> >- Minix can't access memory outside the 16 MB range. This is caused by
> >  the way addresses are encoded in the memory manager. I don't know if
> >  any 68020/68030 boards really have memory outside the 16 MB range, but this
> >  doesn't seem a very serious problem to me anyhow.
> 
> It does to me! I'm running a vanilla Amiga 2000 with 9.5 meg of
> RAM, and I could easily put ten times as much to use on a regular
> basis. 

[stuff deleted]

> There is little if any excuse for
> turning address longwords into records to save a byte here or
> there in a memory management scheme's overhead when memory is dirt
> cheap and widely available.
> 
> Kent, the man from xanth.
> <xanthian@Zorch.SF-Bay.ORG> <xanthian@well.sf.ca.us>
> --
> Fanning the flames a bit, my hands were cold.


Andy Tanenbaum is probably correct in saying that out-of-the box MINIX won't
run on a 68030.  It won't run on a 68020 either.

The problem is in the way dummy stack frames are set up in stmpx.s; they are 
correct for a 68000, but omit the format word for 68020s and above.  You only
need to change two lines, if my memory serves me correctly.

Note that you don't need to set up the 68030 MMU unless you are actually using
it for anything.  By default the MMU is switched off on a reset, so there isn't
any problem there.

As regards your other comments, they are, IMHO a bit over the top.  Remember 
that the code from which the Amiga MINIX is derived was originally written to
run on an ST, which has a hardware design limitation of 4Mb of memory.  I
think that the encoding of the vector number into the upper nybble of the
PC is actually pretty neat; admittedly not very portable, but then we all
have 20-20 hindsight, don't we ?  The difficulties of running MINIX on 
68020s and the like have been addressed previously in this newsgroup; I have
been running a 68020 MINIX engine since April 1989, and I'm not the only one.

And remember that memory is not necessarily as cheap elsewhere in the world
as it is in the USA ...

Andy Michael


-- 
Andy Michael (eesrajm@cc.brunel.ac.uk)      " Emulation is the sincerest
85 Hawthorne Crescent                         form of pottery."
West Drayton
Middlesex                                    - William Frend De Morgan
UB7 9PA   

brucee@runxtsa.runx.oz.au (Bruce Evans) (10/03/90)

In article <40414@cci632.UUCP> tvf@cci632.UUCP (Tom Frauenhofer) writes:
>When I compile using Bruce's C compiler, shoebfs.c blows up like this:
>-----
>bcc -0 -c -Di8088 shoebfs.c
>| error: cannot open output

Probably /tmp is full.

>When I compile using ACK, things compile okay, but I get a multiply defined
>error on "_inode" when it tries to link up bootlace.

That is hard to explain. nm on my shoelace binaries shows no variables
_inode*.

Since I have changed some things in <minix/types.h>, shoelace no longer
compilers here either :-).
-- 
Bruce Evans  (evans@syd.dit.csiro.au)

xanthian@zorch.SF-Bay.ORG (Kent Paul Dolan) (10/05/90)

eesrajm@cc.brunel.ac.uk (Andrew J Michael) writes:
> xanthian@zorch.SF-Bay.ORG (Kent Paul Dolan) writes:
>> sreiz@cs.vu.nl (Reiz Steven) writes:
>>> guineau@wjg.enet.dec.com (W. John Guineau) writes:
>>>> I've been talking with Andy Tanenbaum about Minix.
[...reordered a bit here to read better:]
>>> - Minix can't access memory outside the 16 MB range. This is caused by
>>>   the way addresses are encoded in the memory manager.
>> 
>> Whew! We already got bitten by this one with AmigaBASIC. I hope
>> someone [...] leaves the full 32-bit memory addressing accessible.
>> This is pretty gross for code written for the 1990's.
>> 
>>>   [...] this doesn't seem a very serious problem to me anyhow.
>> 
>> It does to me! I'm running a vanilla Amiga 2000 with 9.5 meg of
>> RAM, and I could easily put ten times as much to use on a regular
>> basis. 
[...]
>> There is little if any excuse for
>> turning address longwords into records to save a byte here or
>> there in a memory management scheme's overhead when memory is dirt
>> cheap and widely available.
[...]
> As regards your other comments, they are, IMHO a bit over the top.

I'm known for the _passion_ of my writing; it comes built in.  That
doesn't invalidate the content of the writing, just makes it a little
hard to choke down.

> Remember that the code from which the Amiga MINIX is derived was
> originally written to run on an ST, which has a hardware design
> limitation of 4Mb of memory.

And will never have a hardware upgrade that removes this limit?  Ha!

> I think that the encoding of the vector number into the upper
> nybble of the PC is actually pretty neat; admittedly not very
> portable, but then we all have 20-20 hindsight, don't we?

Doesn't take hindsight, just paying attention.  The IBM 360 series
Operating Systems have gone through the shock trauma ward every time
the hardware address space has added a bit or two to real memory
addressing, and that's been going on for 20 years that I know about.
The problems caused by Microsoft using the high order bytes in their
BASIC interpreters for cute tricks have affected the Amiga for five
years, and earlier platforms even longer.  Part of the result of
such trash programming is that they have _never_ delivered a bug
free release.  There are many other examples of antique vintage to
show what a horrible idea this was long before it was ever first
done in MINIX.  This is _not_ code design to praise as "pretty
neat".  There can be few clearer examples of "those who will not
study history are condemned to repeat it."

> And remember that memory is not necessarily as cheap elsewhere in
> the world as it is in the USA ...

Well, we import all of ours from outside the country, so the
opportunity for it to be that cheap surely exists.  Citizens who
allow their politicians to install tarrifs that keep them poor
or deprived of needed goods deserve their fates.  That's why we
have ballot boxes in Western Civilization(tm).

The problems with being unable to cope with the 68020 and 68030
stack frames are comparitively forgiveable; that requires extra
code to cope with changed hardware.  Glad to hear that folks are
factoring in the needed changes; I hope a good update, central
maintenance, and change sharing mechanism is in place.

Kent, the man from xanth.
<xanthian@Zorch.SF-Bay.ORG> <xanthian@well.sf.ca.us>