Port-m68k archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
DUAL Systems documentation
For those of you of a historical or digital archeological bent: while googling
for something else, I came across this URL:
http://www.hartetechnologies.com/manuals/DUAL/
which contains PDFs of a few manuals & a price list from DUAL Systems of
Berkeley, CA. DUAL produced the very first mc68000-based UNIX system (V7 UNIX
on the S-100 (IEEE-696) bus), starting in November of 1981. I worked there as a
UNIX systems programmer (kernel hacker) as my first job out of U.C. Berkeley
from March 1983 to May 1985.
Of particular interest to this group: the CPU/MMU board manual. Please note:
the mc68000 could not demand-page (i.e. no virtual memory) because the CPU did
not save enough state from a memory access fault to restart the faulted
instruction, so UNIX was a swapping OS (whole process in RAM, whole process out
to swap area on disk if not enough RAM is available for whatever else needed to
run).
Motorola corrected the fault state save in the mc68010, which provided the
ability to make a proper VM system ... except for the mc68451 MMU (yes, a
discrete MMU chip, in a package every bit as big as the CPU) which had only 32
descriptor registers (translation table entries). Motorola's theory was that if
you wanted more (as one might for a lots of smaller-sized pages), add more MMU
chips to your CPU board. Unfortunately, that doesn't fly on a board size as
small as allowed by the S-100 standard. They were working on a proper paged MMU
(PMMU) chip to go along with the mc68020 (the first fully 32-bit (address &
data) 68k family CPU), but it was very, very late (DUAL was moving onto VMEbus
from S-100 for the mc68020).
An aside, before Motorola shipped the mc68010, I saw another solution to the
faulted-instruction state save problem from MassComp: their CPU board had two
mc68k CPUs on it, one running a cycle behind the other, so a page fault would
stop them both, the missing page could be paged in (I think they designed their
own MMU; long since forgotten), and then execution resumed on the second,
following CPU which hadn't taken the memory-access fault. Throw hardware at the
problem ...
faulting my way down memory lane,
Erik <fair%netbsd.org@localhost>
formerly
{ihnp4,ucbvax,hplabs,decwrl,cbosgd,sun,nsc,apple,pyramid}!dual!fair
Home |
Main Index |
Thread Index |
Old Index