Difference between revisions of "Talk:ELF operating system"

From Computer History Wiki
Jump to: navigation, search
(VDH interface: Done at UC Santa Barbara)
(Analyzing, assembling the code: new section)
Line 20: Line 20:
  
 
The [https://dl.acm.org/doi/pdf/10.1145/800280.811033 ANTS paper] mentions a VDH interface that was used; it was done at UC Santa Barbara. I wonder if this is the same one? Probably. [[User:Jnc|Jnc]] ([[User talk:Jnc|talk]]) 17:50, 12 November 2021 (CET)
 
The [https://dl.acm.org/doi/pdf/10.1145/800280.811033 ANTS paper] mentions a VDH interface that was used; it was done at UC Santa Barbara. I wonder if this is the same one? Probably. [[User:Jnc|Jnc]] ([[User talk:Jnc|talk]]) 17:50, 12 November 2021 (CET)
 +
 +
== Analyzing, assembling the code ==
 +
 +
The files seem to make up two different sets of sources for ELF.
 +
 +
One is from the SAIL [LEP,JRL] directory, and files say they are ELF 75C.  Most sources begin with the letter K and N.  An educated guess would be that K indicates kernel, and N network control program.  KASM.RUN[TMP,TVR] explains how to assemble the kernel, and NCPGEN.RUN[LEP,JRL] how to assemble the NCP.  Unfortunately we only have a subset of everything.  But what we do have is enough to assemble the VDH driver and the NCP code with MACN11.  I tested this on ITS.  I don't have LINK11 yet.
 +
 +
The other set is from [TMP,TVR].  The CMUFTP file suggests it was copied from CMU.  (Which we know has - or had - PDP-10 backup tapes in some unavailable archive; grrr.)  The UCBMAC claims it's for the "UCB ELF-I".  The other configuration is for the "ISI VOICE ELF".  The files look like they would be a complete ELF system, and the files assemble mostly ok with MACN11.  It seems to come with an FTP server application.
 +
[[User:Larsbrinkhoff|Larsbrinkhoff]] ([[User talk:Larsbrinkhoff|talk]]) 19:57, 8 February 2025 (CET)

Revision as of 19:57, 8 February 2025

Code found

I found ELF source files and maybe some binaries in the Saildart archive. I'm trying to contact several of the developers: Retz, Casner, Raveling. The consensus seems to be it's ARPA-funded public domain work. Larsbrinkhoff (talk) 08:07, 28 October 2021 (CEST)

I have heard back from Casner, Raveling, and Miller who all support putting ELF on GitHub. Miller told me Retz is no longer with us. :-( Larsbrinkhoff (talk) 08:09, 12 November 2021 (CET)
There seems to be a lot of stuff still missing from the Github; I was looking for the ANTS/ISI device driver (to do an article on it), but couldn't find it, although I looked at most of the .M11 files (I did find part of the VDH code - I don't think the underlying sync interface code is in what I glanced at). And there are a bunch of ELFxxx.O11 files (which are, I assume, binary; for the OS modules) - but where are the matching M11 files? (We could disassemble them, but we'd be missing the comments - so crucial for assembler code). Jnc (talk) 09:02, 12 November 2021 (CET)
The .O11 files are also source code. ELFNIO.O11 is the ISI/ANTS IMP driver code: "This module is configured at assembly time for use with either a standard ANTS interface or for USC-ISI's modified version of it." Larsbrinkhoff (talk) 12:31, 12 November 2021 (CET)
Ah, thanks; I had tried to download ucbioc.o11, and my browser would only say "8.41 KB - Download - View raw", so I assumed that with a filename like that, it must be object code (binary). I wonder what the etymology of ".o11" is, and why they aren't ".m11"?
I see the file has a lot of ASCII NULs in it. Those confuse my editor (Epsilon, an EMACS clone) somewhat: they display OK, and I can manually delete them, but an attempt to give a NUL to any 'string replace' command (to get rid of the whole lot in one operation) confuses it - probably because Epsilon's written in C, and the NUL is being mistakenly interpreted as an 'end of input string' marker! If I really wanted to work with one, I'll probably have to write a short program to strip them out. Jnc (talk) 15:34, 12 November 2021 (CET)

VDH interface

Huh; the base address given for the VDH interface ("VDHSI = 167600") is that which some DEC sources claim to be that of the DR11-C; but the register layout doesn't look anything like a DR11-C. (Nor a DR11-B either.) I'm a bit surprised it's not a stock DEC synchronous serial line interface, but this looks like a DMA interface ("M.A.R. IN" = 'memory address register in'; "W.C. IN" = 'word count in'), which makes sense, because even a VDH was a pretty fast interface (I think they could be 56K, although IIRC some were 9600); and the first DEC DMA synchronous serial line interface was the DQ11. Jnc (talk) 10:52, 12 November 2021 (CET)

Ah, I was confused a bit; KDVDH.M11 does appear to be the actual device driver for the VDH synchronous serial line interface. So there must be some more code elsewhere (as yet unfound) for the VDH protocol (at least, if my understanding of how the VDH interface worked is correct; I never used one). I wonder what the etymology of "KDVDH" is; what is the 'KD' for? Other ELF device drivers seem to use 'ELFxxx' - e.g. the ANTS/ISI LH/DH 1822 interface is "elfnio". Jnc (talk) 15:49, 12 November 2021 (CET)

The ANTS paper mentions a VDH interface that was used; it was done at UC Santa Barbara. I wonder if this is the same one? Probably. Jnc (talk) 17:50, 12 November 2021 (CET)

Analyzing, assembling the code

The files seem to make up two different sets of sources for ELF.

One is from the SAIL [LEP,JRL] directory, and files say they are ELF 75C. Most sources begin with the letter K and N. An educated guess would be that K indicates kernel, and N network control program. KASM.RUN[TMP,TVR] explains how to assemble the kernel, and NCPGEN.RUN[LEP,JRL] how to assemble the NCP. Unfortunately we only have a subset of everything. But what we do have is enough to assemble the VDH driver and the NCP code with MACN11. I tested this on ITS. I don't have LINK11 yet.

The other set is from [TMP,TVR]. The CMUFTP file suggests it was copied from CMU. (Which we know has - or had - PDP-10 backup tapes in some unavailable archive; grrr.) The UCBMAC claims it's for the "UCB ELF-I". The other configuration is for the "ISI VOICE ELF". The files look like they would be a complete ELF system, and the files assemble mostly ok with MACN11. It seems to come with an FTP server application. Larsbrinkhoff (talk) 19:57, 8 February 2025 (CET)