314 lines
12 KiB
Plaintext
314 lines
12 KiB
Plaintext
|
By popular demand, here's Jarkko Hietaniemi's excellent AmigaMach FAQ -
|
||
|
|
||
|
AmigaMach FAQ
|
||
|
|
||
|
$Id: KludgeMach-FAQ,v 1.15 1993/01/01 14:47:52 jhi Exp $
|
||
|
|
||
|
====== WHAT?
|
||
|
|
||
|
Mach kernel (MK78) has been ported to Commodore Amigas.
|
||
|
The port works provably on the following platforms:
|
||
|
|
||
|
- A3000 with AmigaDOS 2.04 in RAM with 4MB fast RAM ('030 25MHz)
|
||
|
- A2500 with 2 MB fast RAM ('030)
|
||
|
- A2000 with GVP Combo ('030 33MHz)
|
||
|
- A500 with CSA MegaMidget Racer ('030)
|
||
|
|
||
|
The port is also known as "KludgeMach".
|
||
|
|
||
|
Motorola 68030 definitely works, '020 should be sufficient as long as
|
||
|
a MMU (68851) is available. On a '040 Mach sort of boots but checking
|
||
|
needs to be made whether the same binaries and sources still run on a '030.
|
||
|
|
||
|
To boot the KludgeMach at least 2MB fast RAM is required.
|
||
|
KludgeMach DOES NOT USE chip ram at all. By tweaking sources the fast
|
||
|
RAM requirement could perhaps be pushed down to 512kB.
|
||
|
|
||
|
Diskspace requirement of the binaries is only 300kB.
|
||
|
The current distribution CONTAINS ONLY THE SOURCES and to build Mach
|
||
|
at least 3MB of fast RAM is required. To build the binaries, 25MB of
|
||
|
diskspace is needed, of this 15MB is for Mach, 10MB for the
|
||
|
development tools. The minimum memory requirement for the compilation
|
||
|
is at least 2 MB (works only with optimization turned off), 4MB is
|
||
|
probably enough.
|
||
|
|
||
|
NOTE: these requirements are only for now; in near future the
|
||
|
distribution is likely to grow significantly because device drivers
|
||
|
and servers are added. The recommended minimum is then 4MB fast RAM
|
||
|
and 40MB disk. Nice-to-have amounts are then 8MB fast and 100MB disk:
|
||
|
this much is needed for double build directories and for possible
|
||
|
Mach-based filesystem's playground.
|
||
|
|
||
|
====== WHY?
|
||
|
|
||
|
The KludgeMach project aims at building a free UNIXish environment for
|
||
|
the Commodore Amiga computers. As its base it will use the Mach
|
||
|
microkernel built at Carnegie Mellon university (CMU). Mach is
|
||
|
OS-independent, however, and therefore other OSs could also be run
|
||
|
on top of it as servers.
|
||
|
|
||
|
====== WHERE?
|
||
|
|
||
|
The port is available by FTP from the following places:
|
||
|
|
||
|
Australia:
|
||
|
|
||
|
monu1.cc.monash.edu.au:/pub/mach GMT+10 (NSW)
|
||
|
IP: 130.194.1.101
|
||
|
|
||
|
Europe:
|
||
|
|
||
|
ftp.funet.fi:/pub/mach/amiga GMT+2 (EET)
|
||
|
(or /pub/amiga/mach, both work)
|
||
|
IP: 128.214.6.100
|
||
|
|
||
|
ftp.dfv.rwth-aachen.de:/pub/amiga/mach GMT+1 (MET)
|
||
|
(or ftp.informatik.rwth-aachen.de, both work)
|
||
|
IP: 137.226.4.105
|
||
|
|
||
|
United States:
|
||
|
|
||
|
homeboy.wpi.edu:/pub/mach GMT-5 (EST)
|
||
|
IP: 130.215.8.99
|
||
|
|
||
|
oes.orst.edu:/pub/mach GMT-8 (PST)
|
||
|
IP: 128.193.124.2
|
||
|
|
||
|
monu1.cc.monash.edu.au is the primary distribution site BUT DO USE
|
||
|
THE SITE NEAREST TO YOU WHEN DOWNLOADING (ftp get'ting), NOT monu1.
|
||
|
The link to "down under" is seriously limited. When uploading (ftp
|
||
|
put'ting), use the incoming/ directory of monu1. Also remember to do
|
||
|
your ftp'ing when there is night at the site you are using. The
|
||
|
distribution is mirrored daily from monu1 to homeboy and oes and from
|
||
|
there daily to Germany and Finland.
|
||
|
|
||
|
You need only the file
|
||
|
|
||
|
/pub/mach/amiga/KludgeMach-<latest>.tar.Z
|
||
|
|
||
|
to get started. Currently the latest version is 0.007, based on CMU
|
||
|
MK78. Note that the European sites have one directory deeper
|
||
|
hierarchy, you will need to get
|
||
|
/pub/mach/amiga/amiga/KludgeMach-<latest>.tar.Z
|
||
|
SIM is a kernel debugger that will be useful if (when) you
|
||
|
start hacking on the Mach kernel. It was done by Stefan Walter
|
||
|
<swalter@avalon.physik.unizh.ch>.
|
||
|
|
||
|
If you develop AmigaMach, it is best to use the tools provided
|
||
|
in the distribution (directory tools/). This because then everyone
|
||
|
will know what the others are talking about (basically, face the
|
||
|
same bugs :-). If you want/need to use some other tools, please
|
||
|
first discuss the choice in the mailing list and then if the new tool
|
||
|
is really deemed necessary, provide it to others by uploading it
|
||
|
to monu1. The tools that are currently agreed upon are:
|
||
|
|
||
|
gcc-2.2.2 (remember to apply fixes 1 to 3)
|
||
|
pdksh-920711
|
||
|
dmake
|
||
|
gtar10
|
||
|
GNU parser/patch utils
|
||
|
|
||
|
The full contents of the monu1 distribution are:
|
||
|
|
||
|
/pub/mach/README:
|
||
|
----------------------------------------------------------------------
|
||
|
This is an area for the distribution of sources related to ports
|
||
|
of the Mach microkernel from CMU to the Motorola 68000 series of
|
||
|
microprocessors.
|
||
|
|
||
|
The directories are:
|
||
|
|
||
|
/pub/mach: - you are here
|
||
|
total 12
|
||
|
-rw-r--r-- 1 1606 2761 Sep 11 13:33 README
|
||
|
drwxr-xr-x 4 1606 2048 Dec 17 12:05 amiga
|
||
|
drwxr-xr-x 2 1606 2048 Oct 6 12:46 cmu_src
|
||
|
drwxr-xr-x 2 1606 2048 Oct 6 12:46 contrib
|
||
|
drwxrwx-wx 2 1606 2048 Dec 14 15:54 incoming
|
||
|
|
||
|
/pub/mach/amiga: - sources to AmigaMach
|
||
|
total 9718
|
||
|
-rw-r--r-- 2 1606 21102 Nov 3 02:12 AmigaMach-FAQ
|
||
|
-rw-r--r-- 1 1606 5178 Oct 18 01:45 Bootstrap.patch
|
||
|
-rw-r--r-- 1 1606 2065 Oct 19 12:37 Bootstrap2.patch
|
||
|
-rw-r--r-- 1 1606 3256873 Sep 3 14:12 KludgeMach-0.003.tar.Z
|
||
|
-rw-r--r-- 1 1606 3041123 Sep 20 15:52 KludgeMach-0.006.tar.Z
|
||
|
-rw-r--r-- 1 ftp 3317969 Dec 14 15:36 KludgeMach-0.007.tar.Z
|
||
|
-rw-r--r-- 2 1606 21102 Nov 3 02:12 KludgeMach-FAQ
|
||
|
-rw-r--r-- 1 1606 8341 Sep 3 19:52 KludgeMach-README
|
||
|
-rw-r--r-- 1 1606 5301 Oct 22 17:45 SCSI.patch
|
||
|
-rw-r--r-- 1 1606 5944 Oct 22 17:45 SCSI2.patch
|
||
|
-rw-r--r-- 1 1606 68957 Sep 3 12:51 SIM.lha
|
||
|
drwxr-xr-x 2 1606 2048 Oct 6 12:48 diffs
|
||
|
-rw-r--r-- 1 1606 35326 Sep 27 12:58 hd_wilde.diff
|
||
|
-rw-r--r-- 1 ftp 53096 Sep 11 12:50 scsi9091.lzh
|
||
|
drwxr-xr-x 2 1606 2048 Dec 17 12:05 tools
|
||
|
-rw-r--r-- 1 ftp 25840 Sep 11 12:50 uart.tar.Z
|
||
|
|
||
|
/pub/mach/amiga/diffs: - differences between versions
|
||
|
total 60
|
||
|
-rw-r--r-- 1 1606 e helpful
|
||
|
total 4550
|
||
|
-rw-r--r-- 1 1606 388 Oct 5 11:21 GettingGNUTools
|
||
|
-rw-r--r-- 1 1606 345600 Sep 4 18:43 dmake.lha
|
||
|
-rw-r--r-- 1 1606 80 Sep 4 18:47 dmake.lha.readme
|
||
|
-rw-r--r-- 1 ftp 7286 Oct 5 00:42 gcc-2.2.2-fix2.lha
|
||
|
-rw-r--r-- 1 ftp 173155 Dec 14 17:42 gcc-2.2.2-fix3.lha
|
||
|
-rw-r--r-- 1 1606 3306066 Sep 4 11:54 gcc-2
|
||
|
total 4818
|
||
|
-rw-r--r-- 1 1606 254 Sep 5 10:38 getting_bsdss
|
||
|
-rw-r--r-- 1 1606 2863311 Sep 3 13:52 mk78.tar.Z
|
||
|
-rw-r--r-- 1 1606 219675 Sep 3 13:53 poe9.tar.Z
|
||
|
-rw-r--r-- 1 1606 1777023 Sep 3 13:53 user18.tar.Z
|
||
|
|
||
|
/pub/mach/contrib: - other random sources
|
||
|
total 494
|
||
|
-rw-r--r-- 1 1606 92701 Sep 3 12:51 MachSun3.tar.Z
|
||
|
-rw-r--r
|
||
|
-rw-r--r-- 1 1606 2571 Sep 8 11:27 second_SYS.h
|
||
|
|
||
|
|
||
|
Note that the European sites have one directory deeper hierarchy, you
|
||
|
will need to cd to /pub/mach/amiga, just /pub/mach is not enough.
|
||
|
Note also that the directory hierarchy (where the things are) may
|
||
|
mutate because new material will accumulate and the hierarchy might
|
||
|
need reorganizing. The rule of thumb: use th. This is not
|
||
|
continuously mirrored, it is only a snapshot of 7th of September 1992.
|
||
|
|
||
|
Mach documentation is available by ftp from
|
||
|
|
||
|
mach.cs.cmu.edu:doc GMT-5 (EST)
|
||
|
IP: 128.2.209.192
|
||
|
|
||
|
For example doc/osf/kernel_principles.ps is a good starting place.
|
||
|
|
||
|
====== BEWARE!
|
||
|
|
||
|
KludgeMach works, but only for suitably small values of "works".
|
||
|
Ha and to Michael if you have some special
|
||
|
skills, hardware or just time to hack around.
|
||
|
|
||
|
Michael is also in charge of the "offical" releases so SEND YOUR PATCHES
|
||
|
TO Michael. Here are the guidelines:
|
||
|
> * Use diff -rc to create a patch I can apply directly to the directory
|
||
|
> structure.
|
||
|
>
|
||
|
> * Send the patch to me and tell me you want it added. Tell me which
|
||
|
> version ing on this.
|
||
|
|
||
|
- drivers: SCSI, AT IDE, WD33C92, WD33C93, Commodore 2065/2090/2091
|
||
|
expertise needed.
|
||
|
Amiga UNIX has many device drivers WITH sources. Their copyright
|
||
|
status needs to be checked from Commodore. Keith Gabryelski has
|
||
|
volunteered to contact C= about this. Ty Sarna <tsarna@endicor.com> is
|
||
|
contacting GVP about their drivers. Other 3rd party vendors like
|
||
|
IVS could also use some questioning. Markus Illenseer
|
||
|
<markus@techfak.uni-bielefeld.de> has already contacted Ralph Babel of GVP:
|
||
|
> He knew about the Mach Port already, he is very interested on a running
|
||
|
> kernel and a running Server. But he is not willing to implement a GVP SCSI
|
||
|
> driver while nothing is ruhen the driver for
|
||
|
> the A3000-SCSi and the A2091 is finished, and he thought this could be
|
||
|
> a point to enter into Mach.
|
||
|
|
||
|
- an OS :-) Work and queries are currently progressing on several fronts:
|
||
|
|
||
|
BNR2SS/BSDSS: Michael Saleeba [Zik] <zik.aurora.cc.monash.edu>
|
||
|
The situation is a bit muddy: CMU has stopped SUPing BSDSS.
|
||
|
|
||
|
BSD4.4: Real Soon Now -- the "lite" or unencumbpfer <kupfer@cs.berkeley.edu>:
|
||
|
>
|
||
|
> I understand that you're interested in the Mach-based Sprite
|
||
|
> single-server. I'm the person who did the single-server. I no longer
|
||
|
> work for the University of California, but I can give you some
|
||
|
> information about the server.
|
||
|
>
|
||
|
> - The sources for the Sprite single-server are available for anonymous
|
||
|
> ftp from allspice.berkeley.edute
|
||
|
> daemon.
|
||
|
>
|
||
|
> - The Sprite single-server implements a subset of Sprite
|
||
|
> functionality. There is no binary compatibility, either with native
|
||
|
> Sprite or with UNIX. Process migration is not supported, nor is
|
||
|
> access to the local disk. Most of the Sprite distributed file
|
||
|
> system is implemented, ct, the Sprite group gave
|
||
|
> up on supporting external sites in early 1992, and requests for a
|
||
|
> Sprite distribution are now politely refused.
|
||
|
>
|
||
|
> - If you would like to browse any of the missing sources, I can try to
|
||
|
> put together a tar file for you. Also, feel free to send me mail if
|
||
|
> you have additional questions. Please be patient if I am slow in
|
||
|
> answerinme time ago I spoke with Richard Stallman on the subject. He's very
|
||
|
> interested in having m68k-based machines running the Hurd. In fact
|
||
|
> apparently GNU have a couple of Amigas they'd like to use to help
|
||
|
> develop the Hurd, so it'd be nice if we could help out with that :-)
|
||
|
|
||
|
Linux:
|
||
|
The upper layers may be portable enough to make an UNIX server???
|
||
|
Some work has been doichael Richardson <mcr@latour.sandelman.ocunix.on.ca> has at least a
|
||
|
partial answer:
|
||
|
> Yes, it is. The ISA bus architecture stuff is sufficiently isolated
|
||
|
> that making it work on other types of 386 system would be a snap. The
|
||
|
> 386 specific stuff is isolated to one directory tree (in which the isa
|
||
|
> stuff is located) as well.
|
||
|
> I am unclear as to how a Mach single serudio, clock, etc)
|
||
|
|
||
|
- contacts with GNU project (see the above discussion about Hurd)
|
||
|
|
||
|
- cross-compilation environment
|
||
|
Jukka Partanen <jtp@cs.hut.fi> is researching this area.
|
||
|
|
||
|
- RDB (Rigid Block Standard) experts
|
||
|
|
||
|
- AmigaOS emulator
|
||
|
|
||
|
- this FAQ file is maintained by Jarkko Hietaniemi
|
||
|
|
||
|
DRAMATIS PERSONAE:
|
||
|
|
||
|
Erik Bennett <bennett@oes.orst.edu>
|
||
|
oes.o <baford@peruvian.utah.edu>
|
||
|
the author of the initial port of Amiga Mach
|
||
|
|
||
|
Keith Gabryelski <ag@monique.rt.com>
|
||
|
former C= AmigaUNIX Networking/X11/device Engineer
|
||
|
AmigaUNIX device driver source status
|
||
|
|
||
|
Dominic Giampolo <nick@homeboy.wpi.edu>
|
||
|
homeboy.wpi.edu ftp maintainer
|
||
|
|
||
|
Niklas Hallqvist <niklas@appli.se>
|
||
|
.edu.au ftp maintainer (the primary site)
|
||
|
the central coordinator
|
||
|
the official releases
|
||
|
|
||
|
Ty Sarna <tsarna@endicor.com>
|
||
|
Sprite research
|
||
|
GVP contact
|
||
|
|
||
|
Markus Wild <wild@amiga.physik.unizh.ch>
|
||
|
Linux preliminary peek
|
||
|
Amiga ports of GCC and gtar
|
||
|
dmake
|
||
|
|
||
|
====== HOW?
|
||
|
|
||
|
Want more information?
|
||
|
|
||
|
t, amiga-mach, is most useful as an information channel
|
||
|
both for asking questions and for sending answers and progress reports.
|
||
|
For specific subprojects people are encouraged to use either personal
|
||
|
mail or create mailing lists if the subject is not necessarily useful
|
||
|
for "general public".
|
||
|
For example people working actively with console driver might get
|
||
|
together and create a entions
|
||
|
of Amiga UNIX, MacIntoshes and Mac's A/UX on the amiga-mach list.
|
||
|
Standardizing call conventions would make possible to have binary
|
||
|
compability between m68k-based Machs.
|
||
|
|
||
|
This FAQ is updated about weekly and then merged to the ftp distribution.
|
||
|
It is sent weekly to the amiga-mach mailing list and crossposted to
|
||
|
the following USENET newsgroups:
|
||
|
|
||
|
comp.os.mach,comp.sys.amiga.hardware,comp.sys.amiga.programmer,comp.unix.amiga
|
||
|
|
||
|
END_OF_FAQ
|