[ih] Fwd: As Flag Day approaches at CMU
Jack Haverty
jack at 3kitty.org
Sun Sep 7 19:42:11 PDT 2025
Good catch, Noel. That's probably why I remembered that JOB/BOJ had
something to do with the remote file system too. But I had even
forgotten that I coauthored that document.
I think this was just another example of something we did pragmatically
in ITS, not as part of the actual research mission at the time. Lick's
group (as well as the AI group) wasn't very focussed on writing papers
or research in OS topics of the day. We were all more targetting
figuring out how to use computers (and network) to do stuff - part of
Lick's vision of computers talking amongst themselves to help humans do
what humans do.
At the time, we had a stream of students passing through our group. Some
(like me) were pursuing degrees. Others were just taking a course and
had to implement something as part of the coursework. So much of the
internal documentation was targetting that audience, to reveal enough
details about something so they could quickly use it in their class
projects.
I can't recall exactly what motivated the JOB/BOJ IPC. In addition to
the connection to the ARPANET, we had started working in a
multiprocessor environment. The Evans&Sutherland display was one such
processor. We also had a growing collection of Imlacs, which were
separate minicomputers offering enticing ways to offload the PDP-10. We
were also starting to use a PDP-11 as a front-end device. Any one of
those might have been the thing that we wanted to somehow attach to the
PDP-10 as a "non-standard device".
We were also trying all sorts of things with shared memory and splitting
functionality into multiple processes that of course had need to
communicate. The JOB/BOJ IPC made creation of the "remote file system"
pretty easy. Chances are Stallman just implemented it one night, after
we had convinced him it was a good idea. That was pretty common.
So there were a lot of things that got implemented, just as pragmatic
solutions to some goal, but weren't part of the actual research focus,
so they didn't get much attention.
I need to answer Steve's original post more fully. I promise it won't
take 49 years, and I'll explain why that RFC723 delay happened.
Jack
On 9/7/25 17:57, Steve Crocker via Internet-history wrote:
> See also RFC 674 by Jon Postel and Jim White, Procedure Call Protocol
> Documents Version 2, 12 December 1974. I believe Jim White had been
> pursuing remote procedure calls for a while prior to this date.
>
> https://www.rfc-editor.org/rfc/rfc674
>
> Steve
>
>
>
>
> On Sun, Sep 7, 2025 at 8:30 PM Brian E Carpenter via Internet-history <
> internet-history at elists.isoc.org> wrote:
>
>>> It's basicalled a 'remote system call' protocol (perhaps
>>> the first ever).
>> I looked at Bruce Nelson's thesis on RPC (a.k.a. Xerox PARC CSL-81-9) to
>> investigate that. He cites this paper:
>>
>> [22] Jerome A. Feldman and Robert F. Sproull. System support for the
>> Stanford hand-eye system. In Proceedings of the Second International Joint
>> Conference on Artificial Intelligence, pages 183-89. IJCAI, London,
>> September, 1971.
>> Sproull and Feldman talk about extensions to Sail and TopslO which allowed
>> them to do IPC via message procedures. While not really RPC in the true
>> sense, their scheme did allow a remote call to have apparently normal
>> syntax.
>>
>> and this:
>>
>> [92] David C. Walden. A system for interprocess communication in a
>> resource-sharing computer network. Communications of the ACM 15(4):221-30,
>> April, 1972.
>> One of the earliest descriptions of an IPC facility. Walden's pioneering
>> scheme was an extension of the Arpanet's Initial Connection Protocol.
>>
>> So it seems that the question of remote calls was very much in the wind at
>> the beginning of the 1970s.
>>
>> Nelson also cited RFC 674 (dated 1974) which mentions "procedures for
>> obtaining access to groups of remote procedures and data stores" at SRI.
>>
>> He also cited RFC 722 (dated 1976), which in turn cited:
>>
>> [4] Haverty, Jack, RRP, A Process Communication Protocol for
>> Request-reply Disciplines, NWG RFC 723, NIC 36807, (to
>> be issued)
>>
>> But RFC 723 is listed as "Not issued." Jack, you've left a 49-year
>> technical debt :-).
>>
>> Finally, Nelson reminded me that by the late 1970s, the equivalence
>> between message passing and procedure calls was *the* major talking point
>> in distributed systems architecture. It seems obvious that when there's a
>> network in the way, only message passing is available (even if it's
>> disguised as RPC). He cited:
>>
>> [52] Hugh C. Lauer and Roger M. Needham. On the duality of operating
>> system structures. Operating Systems Review 13(2):3-19, April, 1979. Under
>> some loose assumptions, messages and procedures are shown to have the same
>> power for operating system communication. The authors claim that the choice
>> between these primitives should be based on considerations of the
>> programming environment.
>>
>> Overall I think Bruce Nelson's thesis is the inescapable reference for
>> this topic.
>>
>> Regards/Ngā mihi
>> Brian Carpenter
>>
>> On 08-Sep-25 11:11, Noel Chiappa via Internet-history wrote:
>>> > From: Guy Almes
>>>
>>> > So this was a real networked file system (and not just lots of
>> FTP)?
>>> Yes; the protocol was not, I think, documented in an RFC or anything;
>>> although an ITS halp file:
>>>
>>> https://github.com/PDP-10/its/blob/master/doc/sysdoc/mldev.protoc
>>>
>>> described it. It's basicalled a 'remote system call' protocol (perhaps
>>> the first ever).
>>>
>>>
>>> > From: Jack Haverty
>>>
>>> > IIRC, it took advantage of an interprocess communication
>> capability
>>> > called the "JOB/BOJ device", which enabled one program to open a
>>> > JOB device, and another program to open the corresponding BOJ (JOB
>>> > reversed) device, and send whatever they liked back and forth. But
>>> > I don't remember details.
>>>
>>> Interesting that you don't - because you co-wrote the JOB/BOJ spec!
>>>
>>> The JOB/BOJ Device: A Mechanism for Implementing Non-standard Devices
>>> Marc S. Seriff, Jack Haverty, Richard Stallman
>>> September 18, 1974
>>>
>> https://github.com/PDP-10/its-vault/blob/master/files/sysdoc/jobonl.100
>>> Noel
>> --
>> Internet-history mailing list
>> Internet-history at elists.isoc.org
>> https://elists.isoc.org/mailman/listinfo/internet-history
>> -
>> Unsubscribe:
>> https://app.smartsheet.com/b/form/9b6ef0621638436ab0a9b23cb0668b0b?The%20list%20to%20be%20unsubscribed%20from=Internet-history
>>
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature.asc
Type: application/pgp-signature
Size: 665 bytes
Desc: OpenPGP digital signature
URL: <http://elists.isoc.org/pipermail/internet-history/attachments/20250907/09ef2663/attachment.asc>
More information about the Internet-history
mailing list