Subject: Re: Stupid Question
To: None <gillham@andrews.edu, macbsd-general@netbsd.org>
From: Charlie Stross <charless@sco.COM>
List: macbsd-general
Date: 11/17/1994 08:24:13
>> I have not seen such a beast except for the instructions that were left
>> out in the 68040 (mainly transcendentals).  That is called the fpsp and
>> is being used for the 68040 work.  I have looked and only run into other
>> people looking for the FP emulation.  I don't know what MacLinux has up
>> their sleeve, but they're claiming to work on machines w/o FPU and with
>> all hardware.

>Since Linux has it's roots in Minix, and Minix on the Mac runs on top
>of MacOS, I'd say that MacLinux must run on MacOS too!  That way they
>already have device drivers for any hardware, and the FPU emulation.
>You know, just gut most of System 7.5 and replace, but leave the
>low-level stuff working... :-)

Before you sneer at such an approach, it's exactly the method used by
MachTen.

I don't have much hope of running MacBSD on either of my Macs in the
near future (PB 145b, LC630, and distinct lack of device driver
writing skills ;-) so I checked out MachTen. Basically, it's BSD
running on a Mach microkernel.  The microkernel itself is runnable as
a mac application, and loads vmunix. vmunix can understand Mac
filesystems and opens some text-mode terminal windows. There's also a
CDEV that controls MachTen's low level interaction with the Macintosh
OS; you can use it to adjust virtual memory usage and relative
priority of Mac/UNIX scheduling. When you set up TCP/IP under MachTen,
the UNIX system takes over from MacTCP and emulates MacTCP's API to
client programs, so you get the full UNIX suite of TCP/IP
services. Finally, shutting down MachTen causes the MacOS to reboot
(gracefully), presumably because of all the hooks between the two
layers.

The point is that MachTen proves by example that the INIT/client
application approach to hosting a UNIX-type operating system on the
Mac _works_. I've seen it with my own two eyes. Whether it's the
_best_ way is another matter -- personally I'd prefer to see the OS
with pre-emptive scheduling running the one with co-operative multi-
tasking as a client, not the other way round.


-- Charlie
.
--------------------------------------------------------------------------------
Charlie Stross is charless@sco.com, SCO Technical Publications
GO d-- -p+ c++++(i---) u++ l-(+) *e++ m+ s/+ !n h-(++) f+ g+
w++ t-(---) r-(++) y+