[geeks] Sun-1 with Two CPUs?

Nate nate at portents.com
Thu Feb 24 18:43:04 CST 2011


On Feb 24, 2011, at 7:07 PM, Jonathan Patschke wrote:

> On Thu, 24 Feb 2011, nate at portents.com wrote:
>
>>> state), so I can only assume that this "processor" was a bit of custom
>>> hardware that noticed when the processor was in the instruction prefetch
>>> state and stashed the address somewhere for retrieval later if the
>>> processor faulted.
>>>
>>> I can't find anything written about such a mechanism, though.  Has
>> anyone
>>> here heard of this?
>>
>> The second processor I'm guessing was the Sun-1 MMU:
>
> Without an MMU, you're not really going to be doing virtual memory,
> anyway.  I'd assumed that the existence of an MMU was presumed.
>
> The Wikipedia page for the 68010 says "It can recover from bus faults,
> allowing it to implement virtual memory."  That would imply that a vanilla
> 68000 was not usable with an MMU, so I guess it's possible that stashing
> the faulting PC was part of the Sun MMU's job.

Some googling turned up this comment:

"The Sun-2b2s faulting workaround was not in hardware. The OS checked to see
if the faulting instruction was an XOR, if so and if the target address was
close to the top of the stack the stack would be expanded. If it was any thing
else you got a SEGV. The Sun-2 didnbt do paging, it did whole process swaps.
I heard the Apollobs of the era used 2 68000b2s that ran at a single clock
cycle offset and the 'leader' handled the page fault, and then let the
'trailer' finish the access, and did some sync up dance and maybe swapped
positions. Very costly. The Apollo did have a pager." [0]

- Nate


More information about the geeks mailing list