<html><head><style id="css_styles" type="text/css"><!--blockquote.cite { margin-left: 5px; margin-right: 0px; padding-left: 10px; padding-right:0px; border-left: 1px solid #cccccc }
blockquote.cite2 {margin-left: 5px; margin-right: 0px; padding-left: 10px; padding-right:0px; border-left: 1px solid #cccccc; margin-top: 3px; padding-top: 0px; }
a img { border: 0px; }
li[style='text-align: center;'], li[style='text-align: center; '], li[style='text-align: right;'], li[style='text-align: right; '] { list-style-position: inside;}
body { font-family: Helvetica; font-size: 9pt; }
.quote { margin-left: 1em; margin-right: 1em; border-left: 5px #ebebeb solid; padding-left: 0.3em; }
--></style></head><body style="overflow-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;"><div>In fact, it was TCP (mbuf windowing) that killed the non split-I/D systems in our installation. We were already using kernel overlays, but with only 8 segment registers combined for code, data, and stack, we just ran out of registers. By then the VAXEN were coming along. I recycled the 11/34’s etc… into LOS/C Internet routers. </div><div><br /></div><div>The 55 (just a tweaked 45) and later the 44 also had it. In addition the 23/24/J-11 and those derived processors did.</div>
<div style="clear:both"><br /></div>
<div><br /></div>
<div>
<div>------ Original Message ------</div>
<div>From "Warner Losh" <<a href="mailto:imp@bsdimp.com">imp@bsdimp.com</a>></div>
<div>To "Ronald Natalie" <<a href="mailto:ron@ronnatalie.com">ron@ronnatalie.com</a>></div>
<div>Cc "Kenneth Goodwin" <<a href="mailto:kennethgoodwin56@gmail.com">kennethgoodwin56@gmail.com</a>>; "Will Senn" <<a href="mailto:will.senn@gmail.com">will.senn@gmail.com</a>>; "The Eunuchs Hysterical Society" <<a href="mailto:tuhs@tuhs.org">tuhs@tuhs.org</a>></div>
<div>Date 8/3/23, 5:16:25 PM</div>
<div>Subject Re: [TUHS] Re: Split addressing (I/D) space (inspired by the death of the python... thread)</div></div><div><br /></div>
<div id="x86763f8d8e0c4b0"><blockquote cite="CANCZdfqreERYboMZH+UzJFUyzriNxQu6L1vxSdHgSf=FUE_Zug@mail.gmail.com" type="cite" class="cite2">
<div dir="ltr">2BSD also did split I&D in the kernel (as well as run TCP in supervisor mode to get another I/D space). A lot of the overlays was done in the linker, but it wasn't completely automated.<div>I had to tweak the overlay tables a little as I did the 2.11pl0 work since the early stuff wasn't exactly careful about distributing the hacks to the makefile to make it happen...</div><div><br /></div><div>Warner</div></div><br /><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Aug 3, 2023 at 3:10 PM Ronald Natalie <<a href="mailto:ron@ronnatalie.com">ron@ronnatalie.com</a>> wrote:<br /></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="msg-8416707091780166798"><div><div>Having cut my UNIX teeth on the JHU 11/45, I can tell you very much that it did have split I/D. V6 supported split I/D for user mode programs. The kernel originally wasn’t split I/D. Version 7, if I’m recalling properly, did run the kernel split I/D on the 45 and 70.</div><div><br /></div>
<div style="clear:both"><br /></div>
<div><br /></div>
<div>
<div>------ Original Message ------</div>
<div>From "Kenneth Goodwin" <<a href="mailto:kennethgoodwin56@gmail.com">kennethgoodwin56@gmail.com</a>></div>
<div>To "Will Senn" <<a href="mailto:will.senn@gmail.com">will.senn@gmail.com</a>></div>
<div>Cc "The Eunuchs Hysterical Society" <<a href="mailto:tuhs@tuhs.org">tuhs@tuhs.org</a>></div>
<div>Date 8/3/23, 5:05:31 PM</div>
<div>Subject [TUHS] Re: Split addressing (I/D) space (inspired by the death of the python... thread)</div></div><div><br /></div>
<div id="m_-8416707091780166798x8e882889ab1349b"><blockquote cite="http://CAMQbRb2e6ef5926wW=w=QjpzdHE2zSFa10jofdNH0b=dUkPOPg@mail.gmail.com" type="cite" class="m_-8416707091780166798cite2">
<div dir="auto">At the risk of exposing my ignorance and thus being events long long ago in history....<div dir="auto">And my mind now old and feeble...</div><div dir="auto"><br /></div><div dir="auto">😆 🤣 <br /><div dir="auto"><br /></div><div dir="auto">1. I don't think the 11/45 had split I & d.</div><div dir="auto">But I could be wrong.</div><div dir="auto">That did not appear until the 11/70</div><div dir="auto">And was in the later generation 11/44 several years later.</div><div dir="auto"><br /></div><div dir="auto">2. The kernel determined it by MMU type and managed it solely. The assembler and loader always built the binary object file as the three sections - instructions, data and bss spaces so loading an object file could be done on any platform.</div><div dir="auto">Programmers generally did not worry about the underlying hardware </div><div dir="auto"><br /></div><div dir="auto">3. I don't recall if a systype style system call was available in v7 to give you a machine type to switch off of.</div><div dir="auto"><br /></div><div dir="auto">With something like that you could determine memory availability hard limits on the DATA/bss side if you needed to.</div><div dir="auto"><br /></div><div dir="auto">But that was also easily determined by a allocation failure in malloc/sbrk with an out of memory error.</div><div dir="auto"><br /></div><div dir="auto">If you really needed to know availability, you could have a start up subroutine that would loop trying to malloc ever decreasing memory sizes until success and until out of available memory error.</div><div dir="auto">Then release it all back via free(). Or manage it internally.</div><div dir="auto"><br /></div><div dir="auto">As I recall however vaguely, there was an attempt to split the kernel into two pieces. One running in kernel mode and one running in supervisor mode in order to double the amount of available instruction and data spaces for the operating system. I recall playing around with what was there trying to get it to work right.</div><div dir="auto">I was trying to support over 200 users on a pdp 11/70 at the time running a massive insurance database system.</div></div></div><br /><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Aug 3, 2023, 4:35 PM Will Senn <<a href="mailto:will.senn@gmail.com" rel="noreferrer">will.senn@gmail.com</a>> wrote:<br /></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Does unix (v7) know about the PDP-11 45's split I/D space through <br />
configuration or is it convention and programmer's responsibility to <br />
know and manage what's actually available?<br />
<br />
Will<br />
<br />
On 8/3/23 12:00, Rich Salz wrote:<br />
> What, we all need something to kick now that we've beaten sendmail? <br />
> How about something unix, ideally a decade old?<br />
<br />
</blockquote></div>
</blockquote></div>
</div></div></blockquote></div>
</blockquote></div>
</body></html>