i would put it slightly differently, KISS api with strongly enforced boundaries and partitioning.
message-passing tends to imply various kinds of partitioning.
however, there was a lot done in the 60s (disclaimer, i was involved) with virtual machine paradigm as a partitioning mechanism ... with message-passing between the virtual machines.
this was work at the cambridge science center ... 4th
flr, 545 tech sq.
http://www.garlic.com/~lynn/subtopic.html#545tech
which traces some of its heritage back to CTSS. recent mention of upcoming 40th anniversary of (cp67, as well as 35th anniversary of vm370) product announce
http://www.garlic.com/~lynn/2007n.html#92
also reference to archeology in this recent post
http://www.garlic.com/~lynn/aadsm27.htm#47 Doom and Gloom spreads, security revision suggests "H6.5: Be an adept!"
and this reference
http://www.nsa.gov/selinux/list-archive/0409/8362.cfm
Of course, Multics on the 5th flr, also traces back to CTSS, recent post mentioning multics
http://www.garlic.com/~lynn/aadsm27.htm#48 If your CSO lacks an MBA, fire one of you
the science center was also responsible for the technology for the internal network
http://www.garlic.com/~lynn/subnetwork.html#internalnet
which was larger than arpanet/internet from just about the beginning until sometime mid-85.
also gml (precursor to sgml, html, xml, etc) was invented at the science center in '69
http://www.garlic.com/~lynn/subtopic.html#sgml
of other historical reference .... the compare&swap instruction was invented by CAS at the science center (note that mnemonic for compare&swap instruction are charlie's initials) as part of work on fine-grain multiprocessor serialization related to cp67. With some difficulty managed to get CAS added to the 370 architecture in the early 70s ... lots of past postings on multiprocessor support and/or compare&swap instruction
http://www.garlic.com/~lynn/subtopic.html#smp
for lots & lots of historical drift ... the original sql/relational work was implemented in virtual machine (vm370) environment at SJR ... lots of past posts mentioning system/r
http://www.garlic.com/~lynn/subtopic.html#systemr
some amount of the AADS work drew on background
http://www.garlic.com/~lynn/x959.html#aads
having done operating concurrency/integrity with cp67 and vm370 ... but also with system/r. Also as part of doing the high-availability product
http://www.garlic.com/~lynn/subtopic.html#hacmp
we had to work out loads of failure modes ... not just security related ones ... and provide for correct operation in distributed environment. if fact, during the ha/cmp work we had coined the terms "disaster survivability" and "geographic survivability"
http://www.garlic.com/~lynn/subtopic.html#available
another influence was having to do the distributed lock manager for distributed scaleup operation; some old references in this series of old email
http://www.garlic.com/~lynn/lhwemail.html#medusa
as frequently mentioned ... we were later called in to consult for a small client/server startup that wanted to do payment transactions on their server ... which then required this thing called a payment gateway
http://www.garlic.com/~lynn/subnetwork.html#gateway
and two of the people that were responsible for what they were calling a commerce server had earlier worked with us on distributed database transaction scaleup ... and, in fact, were at the meeting mentioned in these posts
http://www.garlic.com/~lynn/95.html#13
http://www.garlic.com/~lynn/96.html#15
that whole sequence of having done mainframe multiprocessor scaleup and concurrency, database concurrency and scaleup, distributed database operation and scaleup ... and then having done the availability product before working on what has since come to be called electronic commerce ... also influenced the later work on AADS.
Posted by Lynn Wheeler at August 7, 2007 03:54 PM