Re: 9.0 stable failing to build for sun2 in X11
Erik Fair <[email protected]> Wed, 9 Sep 2020 21:45:42 -0700
| Newsgroups | gmane.os.netbsd.ports.m68k,gmane.os.netbsd.ports.sun3 |
|---|---|
| Message-ID | <[email protected]> |
Long ago, I worked for Dual Systems of Berkeley, which manufactured = mc68000-based Unix systems starting in November of 1981 (I joined them = in March 1983 - my first job out of UCB), and the MMU of =E2=80=A6 = necessity was the mc68451. It=E2=80=99s OK for a swapping system (which is what Version 7 Unix = was), but too few descriptor registers (and no RAM-based page tables at = all) for demand-paging small-size pages - you=E2=80=99ll end up needing = to use monster-sized pages if they=E2=80=99re uniform-size because of = the descriptor register limitations of the =E2=80=98451. Basically, the = reason why Sun and many others rolled their own, proprietary MMUs with = the plethora of 68k-based Unix boxes being shipped in the 1980s was that = the =E2=80=98451 sucks, and Motorola was very, very, very late with its = PMMU successor, the mc68851 which was to be paired with the mc68020. I remember reading this paper which describes the device: = http://bitsavers.trailing-edge.com/components/motorola/68000/68451_Memory_= Management_Unit_Apr83.pdf and you might find wikipedia of use: = https://en.wikipedia.org/wiki/Buddy_memory_allocation As I recall, I don=E2=80=99t think anyone shipped a demand-paged Unix = with the mc68451; it can be done (Dual did it for System III or System V = - I forget which, but never shipped it) but I suspect you=E2=80=99ll = find other memory management techniques perform better. Watch out for context-switch overhead. Erik Fair > On Sep 9, 2020, at 14:05, Chris Hanson <[email protected]> = wrote: >=20 > On Sep 9, 2020, at 7:07 AM, David Brownlee <[email protected]> wrote: >>=20 >>> Now to start thinking about a 68451 pmap implementation=E2=80=A6 >>=20 >> So... how *many* 68451s? :-p >=20 >=20 > The MVME121 only has one. >=20 > Isn't the Sun-2 MMU also a segmented MMU, or did it support paging? I = thought segmented MMUs were typical in 68000/68010/68012 UNIX systems. >=20 > I figured that with such an MMU we'd have a couple permanent mappings = and just load other mappings as tasks are switched. I'll admit to not = having looked at it at all really=E2=80=A6 >=20 > -- Chris >=20