🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: alt.folklore.computers
Article #625564

Re: PDP-10 addressing, PDP 11/40 system manual

#625564
From: Johnny Billquist
Date: Mon, 13 Aug 2018 10:15
69 lines
5373 bytes
On 2018-08-13 09:56, Questor wrote:
> On Sat, 11 Aug 2018 15:23:07 -0000 (UTC), John Levine <jo...@taugh.com> wrote:
>> In article <1173318279.555679658.757...@news.eternal-september.org>,
>> Peter Flass  <peter...@yahoo.com> wrote:
>>> Yes, I loved the -10 too, although I didn't program it extensively. I was
>>> sorry when it was canceled, although I suspect it would have been difficult
>>> to expand the architecture to larger memory sizes.
>>
>> We don't have to guess.  They did expand the addressing for the DEC-20
>> and it was pretty ugly.  The extra address bits were called the
>> section number, with some addressing being within the current section
>> and some being global.  TOPS-20 supported it but I don't recall many
>> programs using it.
> 
> It wasn't that ugly, IMO, but I never really tried to use it myself.
> 
> TOPS-20 itself used it, but without looking at my references (currently in
> boxes) I cannot recall the exact details.  If memory serves, most or all monitor
> code was in section zero; a couple of non-zero sections were used for data
> and/or buffers.
> 
> 1022 (database program) would have been an obvious candidate for using sections,
> and I think it might have.  (I've cross-posted this to alt.sys.pdp10.)
> 
> I think that any reasonably coded programs of the day would have fit in section
> zero, with non-zero sections used for data.  Given a good design one might not
> have to actually move data in order to process it -- just change the memory map
> tables with the appropriate system calls.
> 
> One thing on my todo list that I never tried was to see if the PMAP bug also
> applied to SMAP.  (PMAP page A to page B; PMAP page B to page A.  Any reference
> to either page causes the microcode to loop forever trying to resolve the
> address.  When the front-end PDP-11 fails to get any response from the PDP-10
> after a certain interval, it generates a "keep alive" halt and forces a reboot.)
> 
> I can't even remember how many bits in an extended address, so I'm not sure how
> well it would work given today's memory sizes.  One must remember that PDP-10
> addresses point to 36-bit words, not 8-bit bytes.

The KL10 added 5 bits to addressing, giving you 32 sections, or 23 bit 
addresses. The architecture itself allowed up to 30 bits for addresses, 
giving you 12 bits for sections, or 4096 sections.

Which would have been a fairly large addressing space, but starting to 
be small by todays standards. (We're talking about roughly the same as a 
32-bit address in 8-bit byte addressable machines.)

And the change to the basic architecture is fairly unintrusive, if I 
remember right. In a "pointer", most of the left halfword is unused. You 
have the indirect bit, and not much else. The architecture grabbed 12 
bits there for the section, but said that a zero means your current 
section. Also, all direct addressing is always referring to the current 
section. So pretty much all existing programs would continue to run 
without changes. However, you could easily move data or routines to 
another section, and just call them there, and not much else needed 
changing. Just remember to get the correct section into pointers if you 
did start to spread out over several sections.

All with the caveat that I never did much PDP-10 programming myself 
either, and this is recollections from many years ago, when I last 
studied it.

   Johnny

-- 
Johnny Billquist                  || "I'm on a bus
                                   ||  on a psychedelic trip
email: b...@softjar.se             ||  Reading murder books
pdp is alive!                     ||  tryin' to stay hip" - B. Idol
Technical Details
Message-ID: <pkrloc$ttj$1@Iltempo.Update.UU.SE>
Path: mbox-mo1.pugleaf.net!a22-v6ni13478wmg.0!nntp.google.com!goblin3!goblin2!goblin1!goblin.stu.neva.ru!eternal-september.org!feeder.eternal-september.org!newsfeed.Update.UU.SE!news.Update.UU.SE!.POSTED!not-for-mail
References: <21aaeee8-c41a-4442-a4eb-ea6a29b1e4f1@googlegroups.com> <mddh8k2vyfh.fsf@panix5.panix.com> <ft6gi3F3aanU11@mid.individual.net> <1173318279.555679658.757757.peter_flass-yahoo.com@news.eternal-september.org> <pkmv0r$2bhi$1@gal.iecc.com> <5b713976.12058298@news.dslextreme.com>

Show Full Headers
Complete Article Headers
X-Received: by 2002:a1c:f90e:: with SMTP id x14-v6mr1159750wmh.14.1534155341372;        Mon, 13 Aug 2018 03:15:41 -0700 (PDT)
X-BeenThere: alt.folklore.computers@googlegroups.com
Received: by 2002:adf:826a:: with SMTP id 97-v6ls1913771wrb.0.gmail; Mon, 13 Aug 2018 03:15:40 -0700 (PDT)
X-Received: by 2002:adf:db4f:: with SMTP id f15-v6mr1341357wrj.30.1534155340484;        Mon, 13 Aug 2018 03:15:40 -0700 (PDT)
Path: mbox-mo1.pugleaf.net!a22-v6ni13478wmg.0!nntp.google.com!goblin3!goblin2!goblin1!goblin.stu.neva.ru!eternal-september.org!feeder.eternal-september.org!newsfeed.Update.UU.SE!news.Update.UU.SE!.POSTED!not-for-mail
From: Johnny Billquist <b...@softjar.se>
Newsgroups: alt.folklore.computers,alt.sys.pdp10
Subject: Re: PDP-10 addressing, PDP 11/40 system manual
Date: Mon, 13 Aug 2018 12:15:40 +0200
Organization: Update Computer Club
Lines: 69
Message-ID: <pkrloc$ttj$1@Iltempo.Update.UU.SE>
References: <21aaeee8-c41a-4442-a4eb-ea6a29b1e4f1@googlegroups.com> <mddh8k2vyfh.fsf@panix5.panix.com> <ft6gi3F3aanU11@mid.individual.net> <1173318279.555679658.757757.peter_flass-yahoo.com@news.eternal-september.org> <pkmv0r$2bhi$1@gal.iecc.com> <5b713976.12058298@news.dslextreme.com>
NNTP-Posting-Host: 77.53.238.109
Mime-Version: 1.0
X-Trace: Iltempo.Update.UU.SE 1534155340 30643 77.53.238.109 (13 Aug 2018 10:15:40 GMT)
X-Complaints-To: newsm...@Update.UU.SE
NNTP-Posting-Date: Mon, 13 Aug 2018 10:15:40 +0000 (UTC)
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:52.0) Gecko/20100101 Thunderbird/52.9.1
In-Reply-To: <5b713976.12058298@news.dslextreme.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit