[-- Attachment #1: Type: text/plain, Size: 806 bytes --] Does anybody know how much memory was configured on the PDP-11 that Lion's used for the commentary system. Here's what the book says about the system: ; from lions, page 1 ; The code selection presumes a "model" system consisting of: ; PDP11/40 processor; ; RK05 disk drives; ; LP11 line printer; ; PC11 paper tape reader/punch; ; KL11 terminal interface. I usually add the mag tape, too ; TM10 magnetic tape - not in lions, but super handy It seems like he must have had an MMU and 128k memory, but I don't know. I'm hoping y'all remember, know, or can otherwise divine the correct value. I've run with no MMU - crash on boot. I've also run with less memory, but then cc won't build mkconf, when I have the TM10 enabled kernel loaded. As a reminder, his book was published in 1977. Thanks, Will [-- Attachment #2: Type: text/html, Size: 1201 bytes --]
[-- Attachment #1: Type: text/plain, Size: 1217 bytes --] On Sun, Feb 27, 2022, 10:51 PM Will Senn <will.senn@gmail.com> wrote: > Does anybody know how much memory was configured on the PDP-11 that Lion's > used for the commentary system. Here's what the book says about the system: > > ; from lions, page 1 > ; The code selection presumes a "model" system consisting of: > ; PDP11/40 processor; > ; RK05 disk drives; > ; LP11 line printer; > ; PC11 paper tape reader/punch; > ; KL11 terminal interface. > > I usually add the mag tape, too > ; TM10 magnetic tape - not in lions, but super handy > > It seems like he must have had an MMU and 128k memory, but I don't know. > I'm hoping y'all remember, know, or can otherwise divine the correct value. > I've run with no MMU - crash on boot. I've also run with less memory, but > then cc won't build mkconf, when I have the TM10 enabled kernel loaded. As > a reminder, his book was published in 1977. > V6 required the PDP-11 MMU. There are all kinds of code that writes directly to the memory mapping registers. So Lions had to have had an MMU. I'd imagine he had at least 128k of RAM, but likely not much more since the budgets for these machines at the time in Australia was notoriously tight. Warner Thanks, > > Will > [-- Attachment #2: Type: text/html, Size: 2172 bytes --]
[-- Attachment #1: Type: text/plain, Size: 2363 bytes --] On Mon, Feb 28, 2022 at 12:51 AM Will Senn <will.senn@gmail.com> wrote: > Does anybody know how much memory was configured on the PDP-11 that Lion's > used for the commentary system. Here's what the book says about the system: > > ; from lions, page 1 > ; The code selection presumes a "model" system consisting of: > ; PDP11/40 processor; > ; RK05 disk drives; > ; LP11 line printer; > ; PC11 paper tape reader/punch; > ; KL11 terminal interface. > > I usually add the mag tape, too > ; TM10 magnetic tape - not in lions, but super handy > > It seems like he must have had an MMU and 128k memory, but I don't know. > I'm hoping y'all remember, know, or can otherwise divine the correct value. > I've run with no MMU - crash on boot. I've also run with less memory, but > then cc won't build mkconf, when I have the TM10 enabled kernel loaded. As > a reminder, his book was published in 1977. > > Thanks, > > Will > Can't tell you definitively. You'd need to ask some one like Andrew. FWIW: the 11/40 has a MMU, but does not support split I/D like the 45. He has 256K bytes [128k words] as the Max memory. IIRC v6 will boot with 48K words [96K bytes] - maybe a little less. But the less physical memory, the slower the system (the more it swaps). DEC was just switching to semiconductor memory at the time and it was pretty expensive. The MS11-B was MOS based 18 bit x 4K word modules for the 11/45, which were dual ported Unibus and Fastbus. I have forgotten what the 11/40 used as we tended not to use DEC memory modules***. Lions and his team was likely to have been between 96K and 256K max, depending on budget. In my experience, we tended to build up to max memory on systems, but only as soon as we could afford it. In my experience, we often bought the machines in phases... just enough to boot it, with two or three RK05's to start. Then add more memory and more serial ports and more terminals. Then more (larger) disk and maybe a tape drive and printer, and then even more serial ports and some sort of modems and network connections. Clem *** At CMU during those days, we tended to use aftermarket memory or locally designed memory boards on the 11/40 and 11/34s as EE/CS had negociate and bought a few megabytes of memory chips from National Semi for C.mmp at a heavy discount - other groups could add to that order as needed. [-- Attachment #2: Type: text/html, Size: 4235 bytes --]
[-- Attachment #1: Type: text/plain, Size: 2999 bytes --] the actual configuration of Lions’ PDP 11/40 was 128 Kbytes of core memory, a DJ11 terminal multiplexor and three RK05 disc units each, but note that because of the way the machines were bought, and because of addressing weirdness (the top 8KB were memory-mapped to I/O registers), Lions’ PDP actually had 112KB of main memory. the PDP 11/40 had 18bits of address space, so while processes were limited to 64KB, the system could have had 256KB. > On Feb 28, 2022, at 7:48 AM, Clem Cole <clemc@ccc.com> wrote: > > > > On Mon, Feb 28, 2022 at 12:51 AM Will Senn <will.senn@gmail.com <mailto:will.senn@gmail.com>> wrote: > Does anybody know how much memory was configured on the PDP-11 that Lion's used for the commentary system. Here's what the book says about the system: > > ; from lions, page 1 > ; The code selection presumes a "model" system consisting of: > ; PDP11/40 processor; > ; RK05 disk drives; > ; LP11 line printer; > ; PC11 paper tape reader/punch; > ; KL11 terminal interface. > > I usually add the mag tape, too > ; TM10 magnetic tape - not in lions, but super handy > > It seems like he must have had an MMU and 128k memory, but I don't know. I'm hoping y'all remember, know, or can otherwise divine the correct value. I've run with no MMU - crash on boot. I've also run with less memory, but then cc won't build mkconf, when I have the TM10 enabled kernel loaded. As a reminder, his book was published in 1977. > > Thanks, > > Will > > Can't tell you definitively. You'd need to ask some one like Andrew. > > FWIW: the 11/40 has a MMU, but does not support split I/D like the 45. He has 256K bytes [128k words] as the Max memory. IIRC v6 will boot with 48K words [96K bytes] - maybe a little less. But the less physical memory, the slower the system (the more it swaps). > > DEC was just switching to semiconductor memory at the time and it was pretty expensive. The MS11-B was MOS based 18 bit x 4K word modules for the 11/45, which were dual ported Unibus and Fastbus. I have forgotten what the 11/40 used as we tended not to use DEC memory modules***. > > Lions and his team was likely to have been between 96K and 256K max, depending on budget. In my experience, we tended to build up to max memory on systems, but only as soon as we could afford it. In my experience, we often bought the machines in phases... just enough to boot it, with two or three RK05's to start. Then add more memory and more serial ports and more terminals. Then more (larger) disk and maybe a tape drive and printer, and then even more serial ports and some sort of modems and network connections. > > > Clem > > > > *** At CMU during those days, we tended to use aftermarket memory or locally designed memory boards on the 11/40 and 11/34s as EE/CS had negociate and bought a few megabytes of memory chips from National Semi for C.mmp at a heavy discount - other groups could add to that order as needed. [-- Attachment #2: Type: text/html, Size: 5866 bytes --]
> From: Will Senn > Does anybody know how much memory was configured on the PDP-11 that > Lion's used for the commentary system. Here's what the book says about > the system: > .. > ; PDP11/40 processor; > ... > It seems like he must have had an MMU V6 absolutely requires an MMU; the need for it is all throughout basic attributes of the system - e.g. user processes start their address space at 0. (BTW, there are V6 descendants, MINI-UNIX: http://gunkies.org/wiki/MINI-UNIX and LSX, which don't use/need an MMU, and run on -11 models without memory managament, such as -11/05's, but I don't think they were in wide use outside Bell.) > and 128k memory The -11/40, as originally released, only supported the MM11-L, which came in multiples of 16KB (for a 3-board set). Use of the later MM11-U (32KB units) required a new main power harness, which only came in on higher-serial-numbered -11/40's. The -11/40 (as it was at first) that I had at LCS had, to start with, I'm pretty sure, 3 MM11-L units (i.e. one MM11-L backplane full) - i.e. 48KB. I know this sounds incredible, and I'm having a hard time believing it myself, wondering if my memory is failing with age; but it definitely had extraordinarily little. I just looked on my V6 (running in a simulator), and it appears that by trimming all parameters (e.g. number of disk buffers) to the absolute bone, the kernel could be trimmed to about 36KB. (I haven't actually tried it, since I don't feel like recompiling all the kernel modules, but one can estimate it - take the current system size [44KB], delete 10 buffers @ .5KB gives 39KB, etc, etc.) That would allow a maximum user process of 12KB on a 48KB machine - and MINI-UNIX, which runs basically stock V6 user code, can manage with user processes that small. I see Andrew's email which reports that the Lions machine had more main memory, 128KB (maybe 4 MM11-U's - two MM11-U backplanes full); that woould have made their life a lot easier. Noel
On Feb 27, 2022, at 9:48 PM, Will Senn <will.senn@gmail.com> wrote:
>
> It seems like he must have had an MMU and 128k memory,
This is covered in the Lions book. For instance
On the PDP11/40 the memory management unit consists of two
sets of registers for mapping virtual addresses to physical
addresses. These are known as “active page registers” or
“segmentation registers”. One set is used when the
processor is in user mode and the other set, in kernel
mode. Changing the contents of these registers changes the
details of these mappings. The ability to make these
changes is a privilege that the operating system keeps
firmly to itself.
Also see section 7 and in particular 7.9. And may be more!
i should also point out that lions would have had access to
a PDP 11/70 running with 4MB of main memory at
the Australian Graduate School of Management (where i worked
for a while after graduating). but i don’t recall him doing anything on that machine.
> On Feb 28, 2022, at 3:27 PM, Andrew Hume <andrew@humeweb.com> wrote:
>
> the actual configuration of Lions’ PDP 11/40 was
> 128 Kbytes of core memory,
> a DJ11 terminal multiplexor and
> three RK05 disc units each,
>
> but note that because of the way the machines were bought,
> and because of addressing weirdness (the top 8KB were memory-mapped to I/O registers),
> Lions’ PDP actually had 112KB of main memory.
> the PDP 11/40 had 18bits of address space, so while processes were limited
> to 64KB, the system could have had 256KB.
> From: Andrew Hume > the actual configuration of Lions; PDP 11/40 was > 128 Kbytes of core memory > ... > but note that because ... of addressing weirdness (the top 8KB were > memory-mapped to I/O registers), Lions' PDP actually had 112KB of main > memory I think that '112KB' must be an error; the 8KB for the 'I/O page' (as DEC eventually named ir, long after the rest of the world had started using the term :-) were deducted from the _UNIBUS_ address space, meaning a UNIBUS -11 (the 'pure' UNIBUS -11's, i.e. other than the -11/70, -11/44, etc) could have a maximum of 248KB of main memory (which is on the UNIBUS). A pure UNIBUS -11 with 128KB of main memory (like Lions') has... 128KB of main memory. The 'small memory management model' -11's (like the /40, /60, /23, etc) can use at most 64KB of that _at any moment in time_ for user processes (i.e. directly accessible by the CPU, in 'user' mode). (The kernel on such machines is basically retricted to 56KB at any moment in time, since one 'segment/page' - the terminology changed over time - has to be dedicated to the I/O page: the memory management control registers are in that, so once the CPU can no longer 'see' them, it's stuck. Long, potentially interesting digression about, and ways to semi-work around that, elided, unless people want to hear it.) > From: Noel Chiappa > The -11/40 (as it was at first) that I had at LCS had, to start with, > I'm pretty sure, 3 MM11-L units .. - i.e. 48KB. I know this sounds > incredible, and I'm having a hard time believing it myself, wondering > if my memory is failing with age It is: # size /lib/c0 13440+2728+10390=26558 (63676) ('c1' takes 14848+6950+2088=23886, FWIW.) So 'my' -11/40 must have had more than 48KB. MINI-UNIX provides, on an -11/05 type machine with the maximum of 56KB of addressable main memory (if you plugged in 64KB worth, the /05 CPU couldn't 'see' the top 8KB of that), up to 32KB for a user process. So that will just hold the stock V6 C compiler. I'm not now sure how much memory my -11 _did_ have initially, but it's not important. Noel
[-- Attachment #1: Type: text/plain, Size: 2671 bytes --] On Tue, Mar 1, 2022, 6:23 PM Noel Chiappa <jnc@mercury.lcs.mit.edu> wrote: > > From: Andrew Hume > > > the actual configuration of Lions; PDP 11/40 was > > 128 Kbytes of core memory > > ... > > but note that because ... of addressing weirdness (the top 8KB were > > memory-mapped to I/O registers), Lions' PDP actually had 112KB of > main > > memory > > I think that '112KB' must be an error; the 8KB for the 'I/O page' (as DEC > eventually named ir, long after the rest of the world had started using the > term :-) were deducted from the _UNIBUS_ address space, meaning a UNIBUS > -11 > (the 'pure' UNIBUS -11's, i.e. other than the -11/70, -11/44, etc) could > have > a maximum of 248KB of main memory (which is on the UNIBUS). > > A pure UNIBUS -11 with 128KB of main memory (like Lions') has... 128KB of > main memory. The 'small memory management model' -11's (like the /40, /60, > /23, etc) can use at most 64KB of that _at any moment in time_ for user > processes (i.e. directly accessible by the CPU, in 'user' mode). > > (The kernel on such machines is basically retricted to 56KB at any moment > in > time, since one 'segment/page' - the terminology changed over time - has > to be > dedicated to the I/O page: the memory management control registers are in > that, so once the CPU can no longer 'see' them, it's stuck. Long, > potentially > interesting digression about, and ways to semi-work around that, elided, > unless people want to hear it.) > > > > From: Noel Chiappa > > > The -11/40 (as it was at first) that I had at LCS had, to start with, > > I'm pretty sure, 3 MM11-L units .. - i.e. 48KB. I know this sounds > > incredible, and I'm having a hard time believing it myself, wondering > > if my memory is failing with age > > It is: > > # size /lib/c0 > 13440+2728+10390=26558 (63676) > > ('c1' takes 14848+6950+2088=23886, FWIW.) So 'my' -11/40 must have had more > than 48KB. > > MINI-UNIX provides, on an -11/05 type machine with the maximum of 56KB of > addressable main memory (if you plugged in 64KB worth, the /05 CPU couldn't > 'see' the top 8KB of that), up to 32KB for a user process. So that will > just hold the stock V6 C compiler. > You made a comment that MINI-UNIX wasn't available outside of Bell... I meant to say that the AUUG newsletters talk about it. It features a letter asking for users of it to share patches. There was also an article about how to get it, though it was an offer to spin a tape for a photocopy of you Western Electric license... Warner I'm not now sure how much memory my -11 _did_ have initially, but it's not > important. > > Noel > [-- Attachment #2: Type: text/html, Size: 3586 bytes --]
> You made a comment that MINI-UNIX wasn't available outside of Bell... No, I didn't say that. What I _actually_ said was: "don't think they were in wide use outside Bell". Noel PS: Can I appeal to people to please take a few seconds of their time and trim messages they are replying to? Thank you.