3 ms·
I've since also found a comment on an interesting blog post in which one of the original designers is quoted in saying that virtual memory was not a considerati
by anyfoo 7y ago
I've since also found a comment on an interesting blog post in which one of the original designers is quoted in saying that virtual memory was not a consideration for the 68000 initially: http://www.dadhacker.com/blog/?p=1383 http://www.dadhacker.com/blog/?p=1383
Though qualified with "until the design was almost complete", making the answer to my question (as often) much more fuzzier than I thought.
And another commenter speculates it was Apollo with the two-68k implementation, but without sources and the commenter is unsure of it themselves.
In any case, very interesting stuff.
EDIT: Someone else claims it was Masscomp: http://www.dadhacker.com/blog/?p=1383#comment-3582 http://www.dadhacker.com/blog/?p=1383#comment-3582
- Taniwha 7y agoThat article kind of mixes up AT&T releases - we'd ported V7 and System 3 to the Lisa (base and bounds MMU like the original PDP-11 the ports came from), and the 68451 and Sun-style MMUs by mid '84, SVR (System 5 Release 1) didn't exist yet. SVR2 was a full paging release from AT&T (competing with BSD 4.2 by then). The '451 is more functional than his power of 2 design (because it offers multiple powers of 2 that you can cobble together into arbitrary regions) - the 'throwaway instructions' he mentions is indeed what we used for stack extensions - you do a 'tstb offset(%sp)' in every subroutine entry where 'offset' is the extent of the stack the subroutine will use, the results of the instruction aren't used and the fault can be detected - by recognizing the instruction at the fault pc offset and returning to the address following it
- anyfoo 7y agoThanks for your insights, and for clarifying (I primarily linked to the article for its comments, which seemed to contain a collection of interesting historical tidbits.) Again as someone who somehow never got to touch 68k during its day, the level of creativity required in 68000 MM, and the internal state spilling of the 68010 and later, really got me curious (x86 of course always had plenty of curious quirks, but I think I'm too familiar with them at this point %) ). I'd also still love to read more about the details of the two-68000 design, but everything I could find so far was essentially folklore.
- Taniwha 7y agoI'm afraid I never saw one, we did over 150 unix ports in the mid to late 80s and saw just about everything out there