[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: A simple cpufreq(9)
On 2011-09-29 16.01, Rhialto wrote:
On Thu 29 Sep 2011 at 08:50:24 -0400, Mouse wrote:
The cache and mmu are probably harder than the cpu :-)
I'm not sure the PDP-10 even _had_ cache; I'd have to do some digging
on that score. And I have no idea what it had for an MMU. The only
I think the MMU differed depending on what operating system you used
(TOPS-20 or ITS), or rather the reverse: each OS needed its own
particular hardware. And the microcode differed too.
Missed sending my reply to all before.
Anyway, yes, some PDP-10 machines do have cache. Specifically the -2050
and later ones. Not sure if that is relevant though, as any
implementation should be able to do, or not do cache, without that
changing much of anything else.
The MMU on the other hand is a fun story in the PDP-10. Since it was
called the pager box, I'll say pager instead of MMU. The pager differs
between each implementation of the PDP-10. It also differs depending on
what OS you want to run. The pager in the KL-10 is microcoded, and there
are two different microcodes, depending on whether you want to run
TOPS-20, which has demand paging, and all fancy stuff, or TOPS-10, which
is rather more primitive, and different. The pager microcode is loaded
at boot time.
In addition, ITS uses another style of pager, and ITS do not even run on
the KL10. Also, Tenex (the predecessor of TOPS-20) has yet another
pager. I don't think the KL10 pager can even implement the functionality
required for the ITS or Tenex pagers. Either because of lacking
hardware, or maybe too little memory for the microcode. Not sure which,
but neither OS was ever ported on to the KL10.
For previous models, the pager was actually different pieces of
hardware, while the KS10 (which was later) had a pager that I think was
rather compatible with the KL10, but simplified in that I think it only
do things the TOPS-20 way. TOPS-10 runs fine on the KS10, but I think
they changed TOPS-10 to use the TOPS-20 style paging for this. (I could
be totally wrong on that one.)
non-power-of-two-word-size machine I've ever actually used, as far as I
can recall, was a PDP-8. I'm interested in NetBSD/pdp10 less for
personal nostalgia value than for the code cleanup it would enforce.
It is quite nice actually to play with TOPS-20. It is surprisingly
advanced for its time. The Kermit command line interface is modeled
after its shell. ITS on the other hand is totally for hackers: its
user interface was basically the machine language debugger (DDT)
expanded with a few small utility commands.
On the other hand, BSD's job
control must have been stolen from there, and probably the idea that a
command you run is executed in a separate process from the CLI.
That had/has been done in other OSes as well. And besides, Unix is older
than TOPS-20, and the job/process concept was in Unix pretty realy. :-)
And job control is (still) nowhere near the job attaching functions in
TOPS-20. Using things like screen, you get a bit closer...
The mmap() stuff in Unix is, as far as I can remember, very much
inspired/modeled from TOPS-20 however.
Main Index |
Thread Index |