[net.arch] 68000 Memory Managment

blarson@usc-oberon.UUCP (Bob Larson) (09/11/86)

[net.arch added, net.micro.atari16 and net.micro.amega deleted.]

In article <79@mtxinu.UUCP> ed@mtxinu.UUCP (Ed Gould) writes:
>>> I hate to tell you folks, but Andy Bechtolsheim here at Sun has a patent 
>>> (applied for and granted) on using the untranslated addresses as the 
>>> RAS addresses and doing the MMU address translation before the column 
>>> addresses are needed for CAS.
>>
>>How the hell can the patent office grant patents like this? [...]
>>the idea is too obvious.  [...]
>
>If it's so obvious, why didn't anyone think of it before Andy did?

I won't claim to have thought of it before Andy did, but I did think it
up independently.  (But can't prove it, and didn't try to patent it
since I didn't think it was patentable.)

The real test of the validity of a patent is in court.  (But sometimes
the threat of a suit is enough, since even if you win it might cost
you more that settling out of court.)

Does anybody have proof of having or using this idea before Andy's
patent?

-- 
Bob Larson
Arpa: Blarson@Usc-Eclb.Arpa	or	blarson@usc-oberon.arpa
Uucp: (ihnp4,hplabs,tektronix)!sdcrdcf!usc-oberon!blarson

reese@kim.Berkeley.EDU (Reese E. Faucette) (09/13/86)

>>>> I hate to tell you folks, but Andy Bechtolsheim here at Sun has a patent 
>>>> (applied for and granted) on using the untranslated addresses as the 
>>>> RAS addresses and doing the MMU address translation before the column 
>>>> addresses are needed for CAS.
>>>
>>>How the hell can the patent office grant patents like this? [...]
>>>the idea is too obvious.  [...]
>>
>>If it's so obvious, why didn't anyone think of it before Andy did?
>Does anybody have proof of having or using this idea before Andy's
>patent?

well, when i was a sophomore at caltech in 1981, a guy taking the
microprocessor lab with me built a 68000 system with exactly this
memory management scheme. i am sure his project proposal is still on
file with the professor of that class...

-reese

henry@utzoo.UUCP (Henry Spencer) (09/14/86)

> well, when i was a sophomore at caltech in 1981, a guy taking the
> microprocessor lab with me built a 68000 system with exactly this
> memory management scheme. i am sure his project proposal is still on
> file with the professor of that class...

If you have to dig into the prof's files to find out about it, it's not
an issue for Andy's patent.  The intent of the patent system is that you
can patent anything that you invent which is neither well-known nor an
obvious derivative of something well-known, and has not been patented
before.  Whether somebody else claims to have invented it too is irrelevant;
that becomes relevant only if the other person also applied for a patent
(placing priority in doubt) or published the idea (making it well-known).

The one respect in which this might actually be significant is as a minor
item of contributing evidence to a contention that the technique is
"obvious to one skilled in the art", i.e. an obvious derivative of well-
known stuff.  Multiple independent invention by non-wizards might
strengthen such an argument.

Warning:  the above contains serious oversimplifications.  Furthermore,
I am not a patent lawyer; consult an expert before doing anything rash.
-- 
				Henry Spencer @ U of Toronto Zoology
				{allegra,ihnp4,decvax,pyramid}!utzoo!henry

peters@cubsvax.UUCP (Peter S. Shenkin) (09/15/86)

In article <utzoo.7123> henry@utzoo.UUCP (Henry Spencer) writes:
>> well, when i was a sophomore at caltech in 1981, a guy taking the
>> microprocessor lab with me built a 68000 system with exactly this
>> memory management scheme. i am sure his project proposal is still on
>> file with the professor of that class...
>
>If you have to dig into the prof's files to find out about it, it's not
>an issue for Andy's patent.

It's then known as a "trade secret."  If you figure out someone else's 
trade secret, you can patent it.  The original purpose of the patent system
was to encourage disclosure of new inventions;  giving the inventor exclusive
rights for a period of time was seen as an inducement to this end.

Of course, as Henry points out, if the scheme was published or presented
publicly, then it's not patentable, because it has already been disclosed.
(...though I believe an inventor can file for a patent up to one year after
he's disclosed his invention in  public....)

Irrelevant to this newsgroup of course; sorry.  And no, I'm not a patent 
attorney either.

Peter S. Shenkin	 Columbia Univ. Biology Dept., NY, NY  10027
{philabs,rna}!cubsvax!peters		cubsvax!peters@columbia.ARPA

gnu@hoptoad.uucp (John Gilmore) (09/15/86)

Andreas Bechtolsheim holds US Patent # 4,527,232 which is on the Sun-2 MMU.

I am pretty sure that the idea of translating virtual addresses while
the row address is being presented to memory, is about as old as DRAMs.
I have never seen a design that hung static RAMs directly in the path
to memory, with no bypass, and with no cacheing or other auto-loading:
they are loaded by software instructions that reference particular
addresses or address spaces.  This idea could be original with Andy.
Another unique thing in his design is having two levels of static RAM
to cut down on the size of the RAMs required, while still having a small,
manageable page size.

Not having the patent in front of me, I don't know whether this is what
it claims as proprietary, or something else.  Typically the claims sections
are written in as broad a language as possible and then fought out in court
if anybody cares.

I don't know if they filed for patent protection in Canada.  I do know that
the patent is NOT owned by Stanford, but by Sun.

I advise MMU designers to get a copy of this patent.  Enforcing the patent
would be a dandy way for Sun to put a competitor out of business if it
ever became worth the bother.

	John Gilmore, Nebula Consultants
-- 
John Gilmore  {sun,ptsfa,lll-crg,ihnp4}!hoptoad!gnu   jgilmore@lll-crg.arpa
		     May the Source be with you!

lamaster@nike.uucp (Hugh LaMaster) (09/17/86)

Does anyone know what the current patent law provides for the time period
of exclusive use?  How long after the patent is granted before others can
freely use the patent?  Does anyone know when this particular patent was 
granted and when it runs out? 



   Hugh LaMaster, m/s 233-9,   UUCP:  {seismo,hplabs}!nike!pioneer!lamaster 
   NASA Ames Research Center   ARPA:  lamaster@ames-pioneer.arpa
   Moffett Field, CA 94035     ARPA:  lamaster%pioneer@ames.arpa
   Phone:  (415)694-6117       ARPA:  lamaster@ames.arc.nasa.gov

"The reasonable man adapts himself to the world, the unreasonable man
adapts the world to himself, therefore, all progress depends on the
unreasonable man." -- George Bernard Shaw

("Any opinions expressed herein are solely the responsibility of the
author and do not represent the opinions of NASA or the U.S. Government")

josh@polaris.UUCP (Josh Knight) (09/20/86)

In article <610@nike.UUCP> lamaster@pioneer.UUCP (Hugh LaMaster) writes:
>Does anyone know what the current patent law provides for the time period
>of exclusive use?  How long after the patent is granted before others can
>freely use the patent?  Does anyone know when this particular patent was 
>granted and when it runs out? 

U.S. patents provide 17 years protection for the holder of the patent.  It
may very well be different in other countries.  As has been pointed out,
if you can show "prior art" the patent may not stand up against a challenge.

Many computer manufacturers don't use the patents they hold on clever ideas
to prevent others from using the ideas; rather they use these patents as
bargaining chips when negotiating cross licensing agreements.  Essentially
all manufacturers of 370 plug compatbile machines have such agreements with
IBM; it's only a question of who pays whom how much in addition.
 
A patent came to our attention recently:  it looks very much like a "branch
history table" but was issued about 15 years AFTER what folks around here 
consider "the BHT patent".  The company that holds the patent almost certainly
has a cross license agreement with IBM, so it seems unlikely that any one will
ever figure out whether they are really the same or not.
 
Whilst we're asking questions, how old is the SUID bit patent?  Anybody know
the number?

-- 

	Josh Knight, IBM T.J. Watson Research
 josh@ibm.com, josh@yktvmh.bitnet,  ...!philabs!polaris!josh

campbell@sauron.UUCP (Mark Campbell) (09/22/86)

Ritchie's SUID parent is numbered 4,135,240 and was dated January 16, 1979.

Protection of data file contents.

Abstract:
An improved arrangment for controlling access to data files by computer users.
Access permission bits are used in the prior art to separately indicate
permissions for the file owner and nonowners to read, write and execute the file
contents.  An additional access control bit is added to each executable file.
When this bit is set to one, the identification of the current user is changed
to that of the owner of the executable file.  THe program in the executable file
then has access to all data files woned by the same owner.  This change is
temporary, the proper identification being restored when the program is
terminated.
-- 

Mark Campbell    Phone: (803)-791-6697     E-Mail: !ncsu!ncrcae!sauron!campbell

welland@cbmvax.cbm.UUCP (Bob Welland) (09/24/86)

The Zilog Z8000 MMU (Z8010) does not use the lower 8 address bits in its
translation process. Most of the Zilog documents show the low order address
bits going around the MMU and into "Memory Control". It seems obvious to 
me that any self respecting hardware designer would assert RAS as soon as
possible in there "Memory Controller" (There is no horrible maximum RAS
to CAS time). As I understand it, this is the part of the Sun patent
that gets everyone upset. Is there someone out there with a Zilog 
application note that shows DRAMs explicitly ? I only have 1983 manuals
but I know the Z8000 is from around 1978 ...


				Robert Welland

				Toy Engineer (I am told)


Whatever I should disclaim I do here and now with the disclaim - r.

david@ukma.uky.csnet (David Herron, NPR Lover) (09/27/86)

In article <727@sauron.UUCP> campbell@sauron.UUCP (Mark Campbell) writes:
>Ritchie's SUID parent is numbered 4,135,240 and was dated January 16, 1979.
>     
>Protection of data file contents.


hmmmm... I guess the patent office didn't know about JACCT on TOPS-10.

The first time I hears of the SUID I thought "what a nifty general
way to do JACCT".  Is there a difference?

[For those of you who aren't old DEC-10 hackers... JACCT means
 "Job Always Control-C Trapped".  That was apparently an EXTREMELY
 old feature of it.  Anyway, it was a bit which would be set in
 the user's priveledges (actually it was off in another word of
 the user data structure...) when the user executed a special 
 program (anything executed from a [1,*] directory whose name
 was mentioned on a list which was compiled in the kernal (PRVTAB)).
 The bit gave the user equivalent to [1,2] priveledges (i.e.
 anything the user wanted to do).  The reason the Job was Always
 Control-C Trapped was was for old versions where a user could
 run a jacct program, control-c, then ddt it and be able to
 do anything he wanted... Control-C trapping stopped the user
 from doing that, so the user can now only do what the jacct'd
 program wanted to do.]

Now, using this facility one can 'emulate' the SUID facility to
an extent.  You run the program, you instantly have full access
to all files, you can also change user-id easily, etc.  So you
do so.  Then when you're done the program changes back and exits.
(dropping the jacct status, etc...)

It's of course trivial to emulate the jacct facility on suid.

As I see it suid is merely a refinement of jacct... not a new thing.

Have I missed something?

(BTW, jacct is a very old facility... I first ran into it in 1977
when I first got on a tops-10 machine... I'm not sure how long
beforehand it was in tops-10)
-- 
David Herron,  cbosgd!ukma!david, david@UKMA.BITNET, david@ms.uky.csnet
	(I'm also "postmaster" at all those addresses)
	(And "news" and "netnews" and "uucp" and ....)

philm@galbp.UUCP (Phillip Mathews) (09/30/86)

In article <> reese@kim.Berkeley.EDU.UUCP (Reese E. Faucette) writes:
>>>>> I hate to tell you folks, but Andy Bechtolsheim here at Sun has a patent 
>>>>> (applied for and granted) on using the untranslated addresses as the 
>>>>> RAS addresses and doing the MMU address translation before the column 
>>>>> addresses are needed for CAS.
>>>>
>>>>How the hell can the patent office grant patents like this? [...]
>>>>the idea is too obvious.  [...]

There are two ways to get a patent in this country--invent something new
or hire a *GOOD* patent attorney--c.f patent #4488662 on which i am
listed as co-inventor.  This patent is for a 7474 used to de-glitch
the wait/ready line of a Z80SIO.  Pure b***s*** invented by the patent
attorney (the de-glitching was mine--tthe b***s*** is the patent attorney's)

marcus@ihlpl.UUCP (Hall) (09/30/86)

In article <727@sauron.UUCP> campbell@sauron.UUCP (Mark Campbell) writes:
>Ritchie's SUID parent is numbered 4,135,240 and was dated January 16, 1979.

I remember that the HP2000 system that we used at my high school allowed
a file to be put into a state known as "LOCKED".  This allowed the program
to access data files that were also in a "LOCKED" state and owned by me.
This appears to be essentially the same idea as the SUID bit, and it was
running in 1976.  I guess that since it didn't really change your id to
be the program owner but was a special case in access of files (i.e. such
programs could not create new files owned by the program's owner, etc.)
it isn't quite the same, but the action certainly is awfully close.

Marcus Hall
..!ihnp4!ihlpl!marcus

bzs@bu-cs.BU.EDU (Barry Shein) (10/02/86)

Would you people all referencing systems which had/have SUID-ish
features "way back in 1976" note that UNIX and SUID pre-dates 1976*, I
am not sure exactly when it was introduced but very early 70's is a
good guess (the patent may have been dated 1979 but that's the date
the patent was granted, not the date all prior claims starts at.)

For example, someone mentioned a similar feature in TOPS-10, UNIX
completely predates TOPS-10 as far as I know tho not it's predecessor
TENEX, the person didn't mention whether this feature was in TENEX.
Just because TOPS-10 got old and died doesn't mean its older than UNIX.

Having had experience with some of these other similar schemes I would
say they would be very weak prior claims in that they mostly stunk.
It's like saying round tires shouldn't be patented cause someone had
come up with a square tire earlier...Be careful, it's the precise
description of the thing, not "a patent on a way to access a priv'd
file" which is what these arguments seem to be reducing it to to make
their point.

There is also an attitude problem here. Yes, a patent does indeed give
certain rights to the patent holder. It also gives certain rights to
the patent non-holder. A major reason for patents is to encourage
inventors to publish the details of their invention, with protection,
so the general public may benefit. It also puts some limits on those
protections (time limit, must be utilized etc.) You people speak like
it's some sort of con-job of no benefit to the industry in general,
that's patently untrue :-)

	-Barry Shein, Boston University

* I used UNIX with SUID around 1976-7, V6.

bill@stride.UUCP (Bill Rainey) (10/02/86)

The SUID patent was filed for on July 9th, 1973.
-- 

	Bill Rainey
	Stride Micro
	UUCP: cbosgd!utah-cs!utah-gr!stride!bill
	ARPA: stride!bill@utah-gr.arpa

ddb@starfire.UUCP (David Dyer-Bennet) (10/03/86)

In article <1611@bu-cs.bu-cs.BU.EDU>, bzs@bu-cs.BU.EDU (Barry Shein) writes:
> 
> Would you people all referencing systems which had/have SUID-ish
> features "way back in 1976" note that UNIX and SUID pre-dates 1976*,
> 
> For example, someone mentioned a similar feature in TOPS-10, UNIX
> completely predates TOPS-10 as far as I know tho not it's predecessor
> TENEX, the person didn't mention whether this feature was in TENEX.
> Just because TOPS-10 got old and died doesn't mean its older than UNIX.

TENEX was derived from tops-10, not the other way around.  Tops-20 was
derived from Tenex.  Unix was developed partly because they couldn't get
Bell to buy them a pdp-10 to play with (read the standard early unix
history article), so I believe that tops-10 predates unix significantly.

		-- David Dyer-Bennet, former DEC LCG employee
		-- David Dyer-Bennet
		Usenet:  ...ihnp4!umn-cs!starfire!ddb
		Fido: sysop of fido 14/341, (612) 721-8967
		Telephone: (612) 721-8800
		USmail: 4242 Minnehaha Ave S
			Mpls, MN 55406

leichter@yale.UUCP (Jerry Leichter) (10/03/86)

Bsrry Shein writes about TOPS-10 as "a descendent of TENEX" and perhaps not
as old as Unix.  This has the history quite confused.

I used TOPS-10 in 1969 or so; at the time it was already at Version 5 or
thereabouts.  JACCT was already there; I don't know exactly when it was
introduced.  TOPS-10 itself descended from earlier OS's for the PDP-15 (?),
which, for all I know, already had JACCT or some analogue.

TENEX was considerably later, and while not a direct descendent of TOPS-10
had some similarities.  It was TOPS-20 that descended from TENEX.

None of this has anything to do with the patentability of SUID.  Clearly, the
original idea in SUID is NOT that some programs can be privileged - in one
form or another, that's been present in every OS with any idea of protection -
but that "privilege" is not a unique things belonging only to the OS, but
something any user has, in some sense, and can share.  Years ago, an article
appeared - in Software Practice and Experience, I believe - which described
a game of some sort, with a master list of high scores.  A challenge was
given:  Maintain such a master list, given the constraints that (a) anyone
who runs the game program can have their score recorded; (b) no one can spoof
the records by accessing the master list directly; (c) any user, without
special privileges, can create a new master list for his version of the game.
These constraints are easy to satisfy on Unix with a SUID program.  To this
day, they are quite difficult to satisfy on most other systems.  (Often, they
simply CANNOT be satisfied.)
							-- Jerry

billw@navajo.UUCP (10/04/86)

Actually TOPS10 is close to 20 years old, making it consdierably
older than UNIX.  TENEX was the predecessor to TOPS20, both of
which come after TOPS10.  The first version of TOPS20 was in 1976
or 77, and it doesn't have anything like SUID (nor does TENEX).

BillW, a TOPS20 and TOPS10 systems programmer.  Still.

henry@utzoo.UUCP (Henry Spencer) (10/04/86)

> hmmmm... I guess the patent office didn't know about JACCT on TOPS-10...
> 
> The first time I hears of the SUID I thought "what a nifty general
> way to do JACCT".  Is there a difference?

The generalization is precisely the invention that justifies the patent.
Any number of systems had magic bits saying "run this as root".  Dennis
was the first one to notice that the facility could be made much more
versatile -- among other things, it could safely be made available to
the ordinary users -- if it meant "run this as the owner of the file"
instead.  This means one can have protected subsystems without each and
every one needing to be trusted with (transient) superuser privileges.
The generalization looks obvious and trivial only after you've been told
about it and gotten used to the idea.
-- 
				Henry Spencer @ U of Toronto Zoology
				{allegra,ihnp4,decvax,pyramid}!utzoo!henry

bzs@bu-cs.BU.EDU (Barry Shein) (10/04/86)

Mea Culpa, I confused TOPS-20's descendancy from TENEX with TOPS-10's.
Sorry for the error.

The point still stands that the people I was responding to who are
mentioning SUID-ish features they have seen in the mid-late 70's
and propose that these pre-date UNIX's SUID patent of 1979 have
their history backwards.

That was my only point, sorry about getting the PDP-10 O/S's TOPSy-turvy,
as is typical with these things I believe you can delete that claim from
my note and the rest of the note still stands on its own two feet.

	-Barry Shein, Boston University

jason@hpcnoe.UUCP (Jason Zions) (10/06/86)

Jerry Leichter says:

> I used TOPS-10 in 1969 or so; at the time it was already at Version 5 or
> thereabouts.  JACCT was already there; I don't know exactly when it was
> introduced.  TOPS-10 itself descended from earlier OS's for the PDP-15 (?),
> which, for all I know, already had JACCT or some analogue.

TOPS-10 didn't really descend from any OS; it was sort of written from
scratch with an interesting set of constraints. Someone from DEC wrote a book
discussing the design of the early versions of TOPS-10; fascinating reading.

If TOPS-10 were to descend from any DEC OS, it would be the one that ran on
the PDP-6, the predecessor to the PDP-10 (well, predecessor to the KA-10).
If memory serves, the PDP-15 was a pair of -11's hooked up in tandem (in the
same way a PDP-12 was a pair of PDP-8's in tandem). Exactly what the PDP-15
and PDP-12 were used for, I couldn't tell you.

(Here I am, correcting a correction. If someone corrects me, we may set a
record for levels of digression. This is net.arch, not net.ancient.history! )
--
This is not an official statement of Hewlett-Packard Corp., and does not 
necessarily reflect the views of HP. It is provided completely without warranty
of any kind. Lawyers take 3d10 damage and roll a saving throw vs. ego attack.

Jason Zions				Hewlett-Packard
Colorado Networks Division		3404 E. Harmony Road
Mail Stop 102				Ft. Collins, CO  80525
	{ihnp4,seismo,hplabs,gatech}!hpfcdc!hpcnoe!jason

deller@vrdxhq.UUCP (Steven Deller) (10/10/86)

In article <610003@hpcnoe.UUCP>, jason@hpcnoe.UUCP (Jason Zions) writes:
> Jerry Leichter says:
> 
> > I used TOPS-10 in 1969 or so; at the time it was already at Version 5 or
> > thereabouts.  JACCT was already there; I don't know exactly when it was
> > introduced.  TOPS-10 itself descended from earlier OS's for the PDP-15 (?),
> > which, for all I know, already had JACCT or some analogue.
> 
> TOPS-10 didn't really descend from any OS; it was sort of written from
> scratch with an interesting set of constraints. Someone from DEC wrote a book
> discussing the design of the early versions of TOPS-10; fascinating reading.
> 
> If TOPS-10 were to descend from any DEC OS, it would be the one that ran on
> the PDP-6, the predecessor to the PDP-10 (well, predecessor to the KA-10).
> If memory serves, the PDP-15 was a pair of -11's hooked up in tandem (in the
> same way a PDP-12 was a pair of PDP-8's in tandem). Exactly what the PDP-15
> and PDP-12 were used for, I couldn't tell you.
> 
> (Here I am, correcting a correction. If someone corrects me, we may set a
> record for levels of digression. This is net.arch, not net.ancient.history! )

Sorry to correct you, but your information is so far off base that it requires
correcting.  The PDP-15 and PDP-12 were not at all how you describe them.

The PDP-15 was an 18-bit computer, derived from the 18-bit PDP-9, which 
derived from the 18-bit PDP-7 (one of the original UNIX base machines), which
had a common ancestor with the 36-bit PDP-6 in the PDP-4.  The PDP-15
primarily added 8 index registers and slight modifications to the instruction
set to handle them, plus some better I/O controls.  The PDP-15 was the base
machine for RSX-15 (later RSX-15PLUS or just RSX-PLUS), which was the operating
system predecessor to RSX-11D (later IAS).  Hank Krejci (Hank are you out
there?) was one of the primary developers.  I programmed an Electrocardiogram
over-the-phone analysis system using it (including dialback to doctor's offices
and the like -- heady stuff for 1972).  The PDP-9 instruction set was a
glorified PDP-8 instruction set, i.e. hardly any instructions -- the first
RISC archtecture :-).

The PDP-12 was a 12-bit computer derived from the LINC-8.  The LINC-8 was a
join of the Laboratory INteractive Computer developed at MIT (I believe) and
the PDP-8.  The LINC instruction set had a number of innovative instructions,
particularly the "add two 12-bit integers plus the overflow carry" which
provided an easy method for efficient multiple-precision arithmetic.  It also
included a single instruction to read a tape block with or without wait
(can you say Linctape -- identical to DECtape except that DECtape wound from
the left reel to the right -- clever way around a patent :-) ), and several
single instructions for efficient CRT displaying of data.  I firmly believe the
LINC was one of the earliest innovators of application-relative CISC.  

The LINC-8 ran LINC code when decoding instructions in the 2nd of the eight 1K 
banks.  The PDP-12 allowed running either LINC or PDP-8 instructions anywhere;
each instruction set had one additional instruction that switched to the other
instruction decode mode.  Anyone in their right mind used the CISCish LINC set
for all real work.  The PDP-8 was only used for I/O and "preexisting" code.

This ability to switch the instruction mode anytime led to the (trivial) 
pursuit of trying to write machine code that did something useful when 
executed in PDP-8 mode, and something else useful when executed as LINC mode.  
This was not always so trivial; the base machine only had 8K 12-bit words.  
(Yea, we all KNEW there would be MB of memory to burn one day, but at the time 
8K of 12-bit words and a 32K word disk -- not 32M word -- was all you could 
afford for $20,000!!).  This trivial pursuit is, not suprisingly, very similar 
to the trivial pursuit seen in another news group of trying to write high-level
code that means "useful" things to two different languages; history always
repeats itself.

We had an multitasking system running on the PDP-12 that did real-time patient 
monitoring of 4 patients for ECG, cardiac output, blood pressure, temperature, 
plus several background jobs, including doing listings on the ASR-33.  Yes, it 
was a true multitasking system, and included an aggregate 2K A/D samples per 
second (with only 8K you had to process and dispose of the raw data real fast),
real-time annotated displays (it really helped algorithm development to see the
ECG waveform with cursor marks and numeric values, and to be able to freeze the
display any time), and "human-friendly" interactive diagnosis.  See the 1971 
Proceedings of the ACM Conference, p 682, if you really care (it doesn't hurt 
to do a little looking at history, just to give yourself some perspective).

Anyway, I always thought designers of instruction sets could learn something
from the PDP-12 (the PDP-11 instruction set seems to have learned some of its
instruction set there).  For the RISC proponents, there was a very nice
instruction set architecture proposed at U of Washington around that same time,
that provided for dropping into and out of (similar to PDP-8/LINC) a very 
effiecient, minimal instruction set, that was "optimum" for computation of 
expressions -- always thought that CISC and RISC might do better co-existing 
than either does alone -- particularly an appliction-related CISC and
expression evaluation RISC.  

Finally, for those of you not wise enough to have hit "n" before now :-), the
TOPS-10 system was derived from the PDP-6 OS with substantial influence from
Project MAC.  It in NO way derived from the PDP-15, which was released 2 years
after TOPS-10 had reached release 5.  The PDP-15 had DOS-15 (derived from
DOS/BATCH-9 and KMS-9) and RSX-15 as mentioned before.

I am also on shaky ground about the exact derivation of TOPS-10 - I just dug 
up a copy of DECSystem10 User's Handbook (yes, I'm a hell of a pack rat), but 
could not find any proper reference for the OS derivation.  However, it is 
true that the PDP-6 was the PDP-10 predecessor (both were 36-bit), and as said 
earlier, the PDP-4 was the predecessor to the PDP-6 (and the PDP-7).

Just in case you wonder about the other PDP numbers:
  PDP-1 was an 18-bit architecture that could be said to be the 
    predecessor of the PDP-4.  It used real old discrete logic B-series
    10MHz boards.  Hmmm -- 10MHz clock rate in 1962, and now we have, wonder
    of wonders, 16.67Mhz "high-speed" micros -- haven't come as far as some
    may think in 25 years. 
  PDP-2 and PDP-3 were aborted -- never finalized.
  PDP-5 was Edson DeCastro's first design -- it preceeded the PDP-8.  Edson
    went on to found Data General when his version of the "new instruction
    set architecture" lost out to Gordon Bell's PDP-11.  Sorry if I am
    slighting other designers -- they are the best known.
  PDP-13 was never born -- the number was excluded.
  PDP-14 was a non-computer, methodology for building discrete logic
    systems from R and S series flip-chips (DTL logic).
  
After the PDP-15, came VAX.

Sorry to be so long typed (as in long winded, nothing to do with 32-bit
integers), but I hate to see drastically incorrect information on the net.
And anyway, this has far more content and utility than either the discussion
on very large memory (as least the trivial digression on the number of
electrons in the universe), and the one on what average to use for benchmarks 
(if you cannot resist averaging benchmarks with no basis for weighting, only 
the geomtric mean is defensible -- we did not really need 20 articles stating
this simple fact :-) ).

Good night.

-- 
{verdix,seismo,umcp-cs}!vrdxhq!deller

rentsch@unc.UUCP (Tim Rentsch) (10/11/86)

Just a note in the interest of historical accuracy.

The JACCT bit on PDP-10's has been around a long long time.  I first
used a PDP-10 in 1970, and the JACCT bit was in the operating system
then.  (btw, JACCT is mnemonic for Job ACCounTing bit, since
originally the only program which ran with JACCT was the
login/logout programs.)  I believe JACCT existed ever since the days
of the PDP-6 (1968? 1966? anyone know?), and it had the same
function, BUT it did not then trap control-C's -- they instead were
translated to escapes!

[For those of you out there in netland to know the pleasure of
running your own jacct'ed programs -- cheers.  today's hackers never
had it so good.]

grr@cbmvax.cbm.UUCP (George Robbins) (10/11/86)

In article <2197@vrdxhq.UUCP> deller@vrdxhq.UUCP (Steven Deller) writes:
>In article <610003@hpcnoe.UUCP>, jason@hpcnoe.UUCP (Jason Zions) writes:
>> Jerry Leichter says:
>> 
>> 
>> If memory serves, the PDP-15 was a pair of -11's hooked up in tandem (in the
>> same way a PDP-12 was a pair of PDP-8's in tandem). Exactly what the PDP-15
>> and PDP-12 were used for, I couldn't tell you.
>> 
>Sorry to correct you, but your information is so far off base that it requires
>correcting.  The PDP-15 and PDP-12 were not at all how you describe them.
>
>The PDP-15 was an 18-bit computer, derived from the 18-bit PDP-9, which 
>derived from the 18-bit PDP-7 (one of the original UNIX base machines), which
>had a common ancestor with the 36-bit PDP-6 in the PDP-4.  The PDP-15
>primarily added 8 index registers and slight modifications to the instruction
>set to handle them, plus some better I/O controls.

Perhaps this person was confused by the PDP-15/76, which was a PDP-15 with a
small PDP-11 (/05?) built in as an I/O processor.  The PDP-11 was somewhat
modified so the parity bits in its memory and data paths could be used to
pass the 18 bit data used by the PDP-15.

>  PDP-14 was a non-computer, methodology for building discrete logic
>    systems from R and S series flip-chips (DTL logic).

Noooo, the PDP-14 was a 'programmable' industrial controller.  The PDP-16 was
the do-it-yourself 'computer' using register transfer modules.  I'd never
seen something so intersting with such completely confusing documentation.

They were M series (DTL and/or TTL) modules, please.  The R and S were DCD
(diode-capacitor-diode) logic used in the original PDP-8 and other products
in that timeframe.
  
Now to leave something correctable: (-8

My old PDP-10 manuals leave the operating system almost nameless, alluding to
things like Timesharing Monitors 10/40 and 10/15 which had been rechristened as
'The Multiprogramming Disk Monitor' and 'Swapping Monitor'.  These had derived
from the PDP-6 monitor programs.  My PDP-6 manuals are buried too far down to
see what they called it.  Now was TOPS-10 a new products, or just a marketing
name for the older monitor program, along with the revisionistic DECsystem-10
name?

-- 
George Robbins - now working for,	uucp: {ihnp4|seismo|caip}!cbmvax!grr
but no way officially representing	arpa: cbmvax!grr@seismo.css.GOV
Commodore, Engineering Department	fone: 215-431-9255 (only by moonlite)

rpw3@amdcad.UUCP (Rob Warnock) (10/23/86)

In article <877@cbmvax.cbmvax.cbm.UUCP>, grr@cbmvax.cbm.UUCP (George Robbins)
writes:
>                       ... Now was TOPS-10 a new products, or just a marketing
> name for the older monitor program, along with the revisionistic DECsystem-10
> name?

Well... a little of both. The "Monitor" (as it was known in those days) had
stabilized (?!?!) at version 4S72 (major version 4, "S"wapping support, minor
rev 72), and was getting patched to death with bug fixes. (I think the last
4-series we ran at Emory Univ. was 4S72AJ, where "AJ" means the 26+10th patch;
they got up to 4S72BN or something finally... yeah, 52+14 patches!.) At that
point there was a *massive* rewrite/enhancement/extension, and the major
version bumped to "5". At the same time, "Monitor" became "TOPS-10", and
"PDP-10" became "DECsystem-10".

We're talking about an entirely new TTY driver ["line discipline" to Unix
folk], file system (and disk format... worse than the 4.1 ==> 4.2 move),
and new batch system, spoolers, etc., so maybe the name change wasn't all
that bogus (...but the old hands still called it "the monitor".) It was like
jumping from Unix v.6 to Berkeley 4bsd.

The new system eventually became rock-solid, but the first releases were
murder (worse than 4.2 with no bug fixes!). The 5.01 release wouldn't
stay up very long; 5.02C was sort of o.k. for a handful of users, if you
didn't try to run the batch system or spoolers ("you did WHAT!?!? (*crash*)
(*tinkle*) (*tinkle*)"); 5.02D would survive running with the line printer
spooler active; and by 5.03C the system would take a pretty good beating
from batch & users and keep on going. As I recall, 5.04 was flakey again,
but 5.04A fixed that. 6.01 added paging (in addition to swapping), but had
so many "improvements" it took 'til 6.02A to settle down. (Also, 6.02A was
the last version that was supported in the non-paging KA-10 processor.)

Incidently, even old 4Snn ("10/50 monitor") had the "JACCT" bit ("setuid root")
in the late 1960's, but remember that unlike Unix, the list of JACCT programs
was compiled into the kernel! (And because TOPS-10 was a "job"-oriented system
rather than "process"-structured, the kernel had to really worry about making
sure the JACCT bit got turned off no matter how a JACCT program died, to keep
the user from inheriting the priviledge.) Let's see, the JACCT programs were
LOGIN, LOGOUT, SYSTAT ("ps"), QUEUE ("lpr/lpd"), DAEMON ("init"), and so on.


Rob Warnock
Consultant
{amdcad,sun,fortune}!redwood!rpw3

roy@phri.UUCP (Roy Smith) (10/26/86)

In article <13475@amdcad.UUCP> rpw3@amdcad.UUCP (Rob Warnock) writes:
> version bumped to "5". At the same time, "Monitor" became "TOPS-10", and
> "PDP-10" became "DECsystem-10".
> 
> We're talking about an entirely new TTY driver [...] file system [...]
> new batch system, spoolers, etc. [...] It was like  jumping from Unix
> v.6 to Berkeley 4bsd.

	Well, it couldn't have been that bad then.  Up until a few years
ago, we were still running v6 on an 11/34.  Then we got a vax and switched
directly to 4.2BSD.  Everyone adjusted without much trouble, programmers
and secretaries alike.  Problem is, everybody also "adjusted" pretty
quickly to the fact that we had 450 Mbytes of disk instead of 10 :-)
-- 
Roy Smith, {allegra,philabs}!phri!roy
System Administrator, Public Health Research Institute
455 First Avenue, New York, NY 10016