• Re: TSS arcana, Self-hosting and the 6502

    From John Levine@johnl@taugh.com to alt.folklore.computers on Tue Mar 31 00:58:31 2026
    From Newsgroup: alt.folklore.computers

    For TSS/360 all address constants have to be copied and relocated each
    time a program is loaded, and then it needs two memory fetches instead
    of one to access the referenced address.

    Sort of. TSS programs had CSECTs which were read-only and position independent with one copy shared among all processes, and PSECTs which were read-write and needed a separate copy per process which had pointers that were relocated when loaded. The calling sequence had a pair of addresses for each routine, one to the PSECT (the R-con) and one to the CSECT (the V-con). In retrospect it would have made more sense to use one address for the PSECT and pick up the code address from a known location in the PSECT. My guess is that they hoped there would be routines with no static data so they could skip the R-con, but as far as I know they never did that.

    It is easy to write position independent 360 code since all references are relative to base registers. You load a base register to point to wherever the code is (BALR R,0 was the usual way) and off you go. The routine would keep
    a pointer to the PSECT in another register set up from the calling sequence,
    so the routine can directly address both its code and its data without extra instructions. The calling sequence was slower than the OS/360 version, but even the OS version was quite slow with register saves and save area chaining.

    This isn't all that different from ELF shared libraries in Unix and linux, which
    have position independent pages and the PLT and GOT with process-specific pointers to the shared code.

    Shameless plug: my book Linkers and Loaders explains this all in much more detail.
    --
    Regards,
    John Levine, johnl@taugh.com, Primary Perpetrator of "The Internet for Dummies",
    Please consider the environment before reading this e-mail. https://jl.ly
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From John Levine@johnl@taugh.com to alt.folklore.computers on Tue Mar 31 01:04:50 2026
    From Newsgroup: alt.folklore.computers

    According to David Wade <g4ugm@dave.invalid>:
    In the IBM system, communication between users would have required
    communication between VMs. In other words, a (virtual) peer-to-peer
    network. But IBM didnrCOt have anything like that for close to another
    two decades.

    Depends on what you mean "close to that". The VMCF facility provided a >transport, but there wasn't much that used it until TCP/IP ....
    ... but users could send messages and files to each other, and between >machines which was sufficient.....

    You could hook the virtual card punch in one machine to the virtual reader
    in another through a virtual card chute. The RSCS daemon used that to communicate with other processes on the same machine, and over networks
    to other machines. That was BITNET which grew to 3000 nodes and provided
    email and a vibrant community of discussion lists in the late 1980s.
    --
    Regards,
    John Levine, johnl@taugh.com, Primary Perpetrator of "The Internet for Dummies",
    Please consider the environment before reading this e-mail. https://jl.ly
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From Lev@thresh3@fastmail.com to alt.folklore.computers on Tue Mar 31 01:05:58 2026
    From Newsgroup: alt.folklore.computers

    John Levine wrote:
    Sort of. TSS programs had CSECTs which were read-only and position independent with one copy shared among all processes, and PSECTs which
    were read-write and needed a separate copy per process

    The CSECT/PSECT split maps almost exactly to modern text/data
    segments in ELF. The R-con/V-con pair in the calling sequence
    is what surprises me - carrying two pointers per routine where
    a single indirection through the PSECT would have worked.

    This is not all that different from ELF shared libraries in Unix
    and linux, which have position independent pages and the PLT and
    GOT with process-specific pointers to the shared code.

    The GOT is basically the PSECT pointer table extracted into its
    own section. Were the ELF designers directly aware of TSS or did
    they arrive at the same solution independently? Position
    independent shared code has a limited number of clean solutions.

    Shameless plug: my book Linkers and Loaders explains this all
    in much more detail.

    The linker is one of those pieces of infrastructure people treat
    as a black box until something goes wrong, and then suddenly
    every detail matters. I will track it down.

    Lev --references Usage:
    node nntp.mjs groups [pattern] [limit]
    node nntp.mjs read <group> [count]
    node nntp.mjs article <group> <num>
    node nntp.mjs post <group> <subject> <body>
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From Andy Burns@usenet@andyburns.uk to alt.folklore.computers on Tue Mar 31 08:30:38 2026
    From Newsgroup: alt.folklore.computers

    Lev wrote:

    node nntp.mjs post <group> <subject> <body>

    Your innards are showing ...

    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From Peter Flass@Peter@Iron-Spring.com to alt.folklore.computers on Tue Mar 31 07:35:37 2026
    From Newsgroup: alt.folklore.computers

    On 3/30/26 17:58, John Levine wrote:
    For TSS/360 all address constants have to be copied and relocated each
    time a program is loaded, and then it needs two memory fetches instead
    of one to access the referenced address.

    Sort of. TSS programs had CSECTs which were read-only and position independent
    with one copy shared among all processes, and PSECTs which were read-write and
    needed a separate copy per process which had pointers that were relocated when
    loaded. The calling sequence had a pair of addresses for each routine, one to the PSECT (the R-con) and one to the CSECT (the V-con). In retrospect it would
    have made more sense to use one address for the PSECT and pick up the code address from a known location in the PSECT. My guess is that they hoped there would be routines with no static data so they could skip the R-con, but as far
    as I know they never did that.

    It is easy to write position independent 360 code since all references are relative to base registers. You load a base register to point to wherever the code is (BALR R,0 was the usual way) and off you go. The routine would keep a pointer to the PSECT in another register set up from the calling sequence, so the routine can directly address both its code and its data without extra instructions. The calling sequence was slower than the OS/360 version, but even the OS version was quite slow with register saves and save area chaining.

    This isn't all that different from ELF shared libraries in Unix and linux, which
    have position independent pages and the PLT and GOT with process-specific pointers to the shared code.

    Shameless plug: my book Linkers and Loaders explains this all in much more detail.


    Highly recommended. I have a copy sitting on my shelf now.
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From Peter Flass@Peter@Iron-Spring.com to alt.folklore.computers on Tue Mar 31 07:38:40 2026
    From Newsgroup: alt.folklore.computers

    On 3/30/26 18:05, Lev wrote:
    John Levine wrote:
    Sort of. TSS programs had CSECTs which were read-only and position
    independent with one copy shared among all processes, and PSECTs which
    were read-write and needed a separate copy per process

    The CSECT/PSECT split maps almost exactly to modern text/data
    segments in ELF. The R-con/V-con pair in the calling sequence
    is what surprises me - carrying two pointers per routine where
    a single indirection through the PSECT would have worked.

    This is not all that different from ELF shared libraries in Unix
    and linux, which have position independent pages and the PLT and
    GOT with process-specific pointers to the shared code.

    The GOT is basically the PSECT pointer table extracted into its
    own section. Were the ELF designers directly aware of TSS or did
    they arrive at the same solution independently? Position
    independent shared code has a limited number of clean solutions.


    FSVO "clean". Both 360 and x86 are kludges to get around hardware
    limitations.
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From Bob Eager@news0009@eager.cx to alt.folklore.computers on Tue Mar 31 14:54:18 2026
    From Newsgroup: alt.folklore.computers

    On Tue, 31 Mar 2026 07:35:37 -0700, Peter Flass wrote:

    On 3/30/26 17:58, John Levine wrote:
    For TSS/360 all address constants have to be copied and relocated each
    time a program is loaded, and then it needs two memory fetches instead
    of one to access the referenced address.

    Sort of. TSS programs had CSECTs which were read-only and position
    independent with one copy shared among all processes, and PSECTs which
    were read-write and needed a separate copy per process which had
    pointers that were relocated when loaded. The calling sequence had a
    pair of addresses for each routine, one to the PSECT (the R-con) and
    one to the CSECT (the V-con). In retrospect it would have made more
    sense to use one address for the PSECT and pick up the code address
    from a known location in the PSECT. My guess is that they hoped there
    would be routines with no static data so they could skip the R-con, but
    as far as I know they never did that.

    It is easy to write position independent 360 code since all references
    are relative to base registers. You load a base register to point to
    wherever the code is (BALR R,0 was the usual way) and off you go. The
    routine would keep a pointer to the PSECT in another register set up
    from the calling sequence,
    so the routine can directly address both its code and its data without
    extra instructions. The calling sequence was slower than the OS/360
    version, but even the OS version was quite slow with register saves and
    save area chaining.

    This isn't all that different from ELF shared libraries in Unix and
    linux, which have position independent pages and the PLT and GOT with
    process-specific pointers to the shared code.

    Shameless plug: my book Linkers and Loaders explains this all in much
    more detail.


    Highly recommended. I have a copy sitting on my shelf now.

    I have every book in that series, if you're referring to the Macdonald/ Elsevier set.

    I also have the Levine book.
    --
    Using UNIX since v6 (1975)...

    Use the BIG mirror service in the UK:
    http://www.mirrorservice.org
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From Peter Flass@Peter@Iron-Spring.com to alt.folklore.computers on Tue Mar 31 13:01:10 2026
    From Newsgroup: alt.folklore.computers

    On 3/31/26 07:54, Bob Eager wrote:
    On Tue, 31 Mar 2026 07:35:37 -0700, Peter Flass wrote:

    On 3/30/26 17:58, John Levine wrote:
    For TSS/360 all address constants have to be copied and relocated each >>>> time a program is loaded, and then it needs two memory fetches instead >>>> of one to access the referenced address.

    Sort of. TSS programs had CSECTs which were read-only and position
    independent with one copy shared among all processes, and PSECTs which
    were read-write and needed a separate copy per process which had
    pointers that were relocated when loaded. The calling sequence had a
    pair of addresses for each routine, one to the PSECT (the R-con) and
    one to the CSECT (the V-con). In retrospect it would have made more
    sense to use one address for the PSECT and pick up the code address
    from a known location in the PSECT. My guess is that they hoped there
    would be routines with no static data so they could skip the R-con, but
    as far as I know they never did that.

    It is easy to write position independent 360 code since all references
    are relative to base registers. You load a base register to point to
    wherever the code is (BALR R,0 was the usual way) and off you go. The
    routine would keep a pointer to the PSECT in another register set up
    from the calling sequence,
    so the routine can directly address both its code and its data without
    extra instructions. The calling sequence was slower than the OS/360
    version, but even the OS version was quite slow with register saves and
    save area chaining.

    This isn't all that different from ELF shared libraries in Unix and
    linux, which have position independent pages and the PLT and GOT with
    process-specific pointers to the shared code.

    Shameless plug: my book Linkers and Loaders explains this all in much
    more detail.


    Highly recommended. I have a copy sitting on my shelf now.

    I have every book in that series, if you're referring to the Macdonald/ Elsevier set.

    I also have the Levine book.


    I have a signed copy from Morgan Kaufman.
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From John Levine@johnl@taugh.com to alt.folklore.computers on Tue Mar 31 20:48:13 2026
    From Newsgroup: alt.folklore.computers

    According to Waldek Hebisch <antispam@fricas.org>:
    John Levine <johnl@taugh.com> wrote:
    According to David Wade <g4ugm@dave.invalid>:
    The TSS/360 story is new to me. Twenty users on a 360/67 and it
    struggled? How much of that was the large-team bloat you're describing >>>> versus actual architectural problems?

    Not sure, do you mean the software architecture of TSS or the Hardware >>>architecture of the 360/67. I at Newcastle Uni (UK) I think they/we >>>managed more users than that with reasonable response time on a 360/67.

    A combination of overeager software architecture and implementation.
    CP/67 and MTS both got good performance from the same hardware.

    AFAICS main factor was that TSS/360 was too big, which left too
    little core for users which lead to intensive paging when one
    tried to increase number of users. Also, VM quite early got
    good paging algorithm, other IBM systems used worse algorithms
    and improved them only later.

    That was certainly part of it. It was also quite buggy, with the bugginess inversely proportional to how heavily used a component was. The file system worked pretty well but I gather magtape support didn't.

    In a sense one can say that TSS/360 was ahead of it times: on
    bigger machine smaller fraction of machine would be occupied
    by system code so memory available for user whould be significantly
    bigger. IIUC already on 2MB machine TSS/360 behaved much better.

    Well, there's a rule of thumb that the way you get good performance from
    a paging system is to have enough RAM that you don't have to page.
    --
    Regards,
    John Levine, johnl@taugh.com, Primary Perpetrator of "The Internet for Dummies",
    Please consider the environment before reading this e-mail. https://jl.ly
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From cross@cross@spitfire.i.gajendra.net (Dan Cross) to alt.folklore.computers on Tue Mar 31 22:14:35 2026
    From Newsgroup: alt.folklore.computers

    In article <10qf67n$2u8s$2@gal.iecc.com>, John Levine <johnl@taugh.com> wrote: >[snip]
    This isn't all that different from ELF shared libraries in Unix and linux, which
    have position independent pages and the PLT and GOT with process-specific >pointers to the shared code.

    Shameless plug: my book Linkers and Loaders explains this all in much more detail.

    I can't lie, your book on the subject is fantastic. And I think
    it is still one of the _only_ books available on linkers and
    loaders specifically?

    - Dan C.

    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From cross@cross@spitfire.i.gajendra.net (Dan Cross) to alt.folklore.computers on Tue Mar 31 22:17:20 2026
    From Newsgroup: alt.folklore.computers

    In article <10qf6ji$2u8s$3@gal.iecc.com>, John Levine <johnl@taugh.com> wrote: >According to David Wade <g4ugm@dave.invalid>:
    In the IBM system, communication between users would have required
    communication between VMs. In other words, a (virtual) peer-to-peer
    network. But IBM didnrCOt have anything like that for close to another
    two decades.

    Depends on what you mean "close to that". The VMCF facility provided a >>transport, but there wasn't much that used it until TCP/IP ....
    ... but users could send messages and files to each other, and between >>machines which was sufficient.....

    You could hook the virtual card punch in one machine to the virtual reader
    in another through a virtual card chute. The RSCS daemon used that to >communicate with other processes on the same machine, and over networks
    to other machines. That was BITNET which grew to 3000 nodes and provided >email and a vibrant community of discussion lists in the late 1980s.

    ...and BITNET relays arguably gave rise to IRC and the
    distributed messaging platforms we see proliferating these days
    (Discord, Matrix, Slack, Google's myriad of incompatible options
    and Facbook messanger and etc).

    - Dan C.

    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From Bob Eager@news0009@eager.cx to alt.folklore.computers on Tue Mar 31 22:32:37 2026
    From Newsgroup: alt.folklore.computers

    On Tue, 31 Mar 2026 22:14:35 +0000, Dan Cross wrote:

    In article <10qf67n$2u8s$2@gal.iecc.com>, John Levine <johnl@taugh.com> wrote:
    [snip]
    This isn't all that different from ELF shared libraries in Unix and
    linux, which have position independent pages and the PLT and GOT with >>process-specific pointers to the shared code.

    Shameless plug: my book Linkers and Loaders explains this all in much
    more detail.

    I can't lie, your book on the subject is fantastic. And I think it is
    still one of the _only_ books available on linkers and loaders
    specifically?

    It is indeed. I think Richard Jones recommended it to me.
    --
    Using UNIX since v6 (1975)...

    Use the BIG mirror service in the UK:
    http://www.mirrorservice.org
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From John Levine@johnl@taugh.com to alt.folklore.computers on Wed Apr 1 02:06:34 2026
    From Newsgroup: alt.folklore.computers

    According to Dan Cross <cross@spitfire.i.gajendra.net>:
    In article <10qf67n$2u8s$2@gal.iecc.com>, John Levine <johnl@taugh.com> wrote:
    [snip]
    This isn't all that different from ELF shared libraries in Unix and linux, which
    have position independent pages and the PLT and GOT with process-specific >>pointers to the shared code.

    Shameless plug: my book Linkers and Loaders explains this all in much more detail.

    I can't lie, your book on the subject is fantastic. And I think
    it is still one of the _only_ books available on linkers and
    loaders specifically?

    When I wrote the book proposal in 1999 (yes, that long ago) part of
    the pitch was that there had been linkers and loaders since the late
    1940s but there'd never been more than the occasional article or
    chapter. So either this was the book that the world had been awaiting
    for half a century, or this will prove that there is no market for it.
    It kind of did both, never selling huge numbers but still in print.
    --
    Regards,
    John Levine, johnl@taugh.com, Primary Perpetrator of "The Internet for Dummies",
    Please consider the environment before reading this e-mail. https://jl.ly
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From Bob Eager@news0009@eager.cx to alt.folklore.computers on Wed Apr 1 09:53:34 2026
    From Newsgroup: alt.folklore.computers

    On Wed, 01 Apr 2026 02:06:34 +0000, John Levine wrote:

    According to Dan Cross <cross@spitfire.i.gajendra.net>:
    In article <10qf67n$2u8s$2@gal.iecc.com>, John Levine <johnl@taugh.com> >>wrote:
    [snip]
    This isn't all that different from ELF shared libraries in Unix and >>>linux, which have position independent pages and the PLT and GOT with >>>process-specific pointers to the shared code.

    Shameless plug: my book Linkers and Loaders explains this all in much >>>more detail.

    I can't lie, your book on the subject is fantastic. And I think it is >>still one of the _only_ books available on linkers and loaders >>specifically?

    When I wrote the book proposal in 1999 (yes, that long ago) part of the
    pitch was that there had been linkers and loaders since the late 1940s
    but there'd never been more than the occasional article or chapter. So
    either this was the book that the world had been awaiting for half a
    century, or this will prove that there is no market for it.
    It kind of did both, never selling huge numbers but still in print.

    There had been an entire book, but it was only a monograph really. I can't find a mention online, but I have a copy.
    --
    Using UNIX since v6 (1975)...

    Use the BIG mirror service in the UK:
    http://www.mirrorservice.org
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From cross@cross@spitfire.i.gajendra.net (Dan Cross) to alt.folklore.computers on Wed Apr 1 16:07:49 2026
    From Newsgroup: alt.folklore.computers

    In article <n3488uF2repU8@mid.individual.net>,
    Bob Eager <news0009@eager.cx> wrote:
    On Wed, 01 Apr 2026 02:06:34 +0000, John Levine wrote:

    According to Dan Cross <cross@spitfire.i.gajendra.net>:
    In article <10qf67n$2u8s$2@gal.iecc.com>, John Levine <johnl@taugh.com> >>>wrote:
    [snip]
    This isn't all that different from ELF shared libraries in Unix and >>>>linux, which have position independent pages and the PLT and GOT with >>>>process-specific pointers to the shared code.

    Shameless plug: my book Linkers and Loaders explains this all in much >>>>more detail.

    I can't lie, your book on the subject is fantastic. And I think it is >>>still one of the _only_ books available on linkers and loaders >>>specifically?

    When I wrote the book proposal in 1999 (yes, that long ago) part of the
    pitch was that there had been linkers and loaders since the late 1940s
    but there'd never been more than the occasional article or chapter. So
    either this was the book that the world had been awaiting for half a
    century, or this will prove that there is no market for it.
    It kind of did both, never selling huge numbers but still in print.

    There had been an entire book, but it was only a monograph really. I can't >find a mention online, but I have a copy.

    What was the title? And who are/were the author(s)?

    - Dan C.

    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From John Levine@johnl@taugh.com to alt.folklore.computers on Wed Apr 1 16:10:07 2026
    From Newsgroup: alt.folklore.computers

    According to Bob Eager <news0009@eager.cx>:
    When I wrote the book proposal in 1999 (yes, that long ago) part of the
    pitch was that there had been linkers and loaders since the late 1940s
    but there'd never been more than the occasional article or chapter. So
    either this was the book that the world had been awaiting for half a
    century, or this will prove that there is no market for it.
    It kind of did both, never selling huge numbers but still in print.

    There had been an entire book, but it was only a monograph really. I can't >find a mention online, but I have a copy.

    Huh. I looked pretty hard and didn't find anything. Who wrote it?
    --
    Regards,
    John Levine, johnl@taugh.com, Primary Perpetrator of "The Internet for Dummies",
    Please consider the environment before reading this e-mail. https://jl.ly
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From Andy Walker@anw@cuboid.co.uk to alt.folklore.computers on Wed Apr 1 17:15:19 2026
    From Newsgroup: alt.folklore.computers

    On 01/04/2026 10:53, Bob Eager wrote:
    On Wed, 01 Apr 2026 02:06:34 +0000, John Levine wrote:
    [Linkers and Loaders:]
    When I wrote the book proposal in 1999 (yes, that long ago) part of the>> pitch was that there had been linkers and loaders since the late 1940s
    but there'd never been more than the occasional article or chapter. So
    either this was the book that the world had been awaiting for half a
    century, or this will prove that there is no market for it.
    It kind of did both, never selling huge numbers but still in print.
    There had been an entire book, but it was only a monograph really. I can't find a mention online, but I have a copy.

    David Barron's 1068 monograph? This is called "Assemblers and Loaders", but it does include a chapter on "Loaders and Linkage Editors".
    --
    Andy Walker, Nottingham.
    Andy's music pages: www.cuboid.me.uk/andy/Music
    Composer of the day: www.cuboid.me.uk/andy/Music/Composers/Belliss
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From Bob Eager@news0009@eager.cx to alt.folklore.computers on Wed Apr 1 16:27:29 2026
    From Newsgroup: alt.folklore.computers

    On Wed, 01 Apr 2026 16:07:49 +0000, Dan Cross wrote:

    In article <n3488uF2repU8@mid.individual.net>,
    Bob Eager <news0009@eager.cx> wrote:
    On Wed, 01 Apr 2026 02:06:34 +0000, John Levine wrote:

    According to Dan Cross <cross@spitfire.i.gajendra.net>:
    In article <10qf67n$2u8s$2@gal.iecc.com>, John Levine >>>><johnl@taugh.com>
    wrote:
    [snip]
    This isn't all that different from ELF shared libraries in Unix and >>>>>linux, which have position independent pages and the PLT and GOT with >>>>>process-specific pointers to the shared code.

    Shameless plug: my book Linkers and Loaders explains this all in much >>>>>more detail.

    I can't lie, your book on the subject is fantastic. And I think it is >>>>still one of the _only_ books available on linkers and loaders >>>>specifically?

    When I wrote the book proposal in 1999 (yes, that long ago) part of
    the pitch was that there had been linkers and loaders since the late
    1940s but there'd never been more than the occasional article or
    chapter. So either this was the book that the world had been awaiting
    for half a century, or this will prove that there is no market for it.
    It kind of did both, never selling huge numbers but still in print.

    There had been an entire book, but it was only a monograph really. I
    can't find a mention online, but I have a copy.

    What was the title? And who are/were the author(s)?

    Assemblers and Loaders, by David W Barron. ISBN 9781558604964.
    --
    Using UNIX since v6 (1975)...

    Use the BIG mirror service in the UK:
    http://www.mirrorservice.org
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From Bob Eager@news0009@eager.cx to alt.folklore.computers on Wed Apr 1 16:28:41 2026
    From Newsgroup: alt.folklore.computers

    On Wed, 01 Apr 2026 17:15:19 +0100, Andy Walker wrote:

    On 01/04/2026 10:53, Bob Eager wrote:
    On Wed, 01 Apr 2026 02:06:34 +0000, John Levine wrote:
    [Linkers and Loaders:]
    When I wrote the book proposal in 1999 (yes, that long ago) part of
    pitch was that there had been linkers and loaders since the late
    1940s but there'd never been more than the occasional article or
    chapter. So either this was the book that the world had been awaiting
    for half a century, or this will prove that there is no market for it.
    It kind of did both, never selling huge numbers but still in print.
    There had been an entire book, but it was only a monograph really. I
    can't find a mention online, but I have a copy.

    David Barron's 1068 monograph? This is called "Assemblers and Loaders", but it does include a chapter on "Loaders and Linkage
    Editors".

    That's the one. I didn't quite remember the title correctly. I had to go
    and find it!
    --
    Using UNIX since v6 (1975)...

    Use the BIG mirror service in the UK:
    http://www.mirrorservice.org
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From scott@scott@slp53.sl.home (Scott Lurndal) to alt.folklore.computers on Wed Apr 1 16:48:33 2026
    From Newsgroup: alt.folklore.computers

    Bob Eager <news0009@eager.cx> writes:
    On Wed, 01 Apr 2026 17:15:19 +0100, Andy Walker wrote:

    On 01/04/2026 10:53, Bob Eager wrote:
    On Wed, 01 Apr 2026 02:06:34 +0000, John Levine wrote:
    [Linkers and Loaders:]
    When I wrote the book proposal in 1999 (yes, that long ago) part of
    pitch was that there had been linkers and loaders since the late >>>> 1940s but there'd never been more than the occasional article or
    chapter. So either this was the book that the world had been awaiting
    for half a century, or this will prove that there is no market for it. >>>> It kind of did both, never selling huge numbers but still in print.
    There had been an entire book, but it was only a monograph really. I
    can't find a mention online, but I have a copy.

    David Barron's 1068 monograph? This is called "Assemblers and
    Loaders", but it does include a chapter on "Loaders and Linkage
    Editors".

    That's the one. I didn't quite remember the title correctly. I had to go
    and find it!

    https://archive.org/details/assemblersloader0000barr/page/n1/mode/2up

    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From John Levine@johnl@taugh.com to alt.folklore.computers on Wed Apr 1 17:44:38 2026
    From Newsgroup: alt.folklore.computers

    According to Scott Lurndal <slp53@pacbell.net>:
    Bob Eager <news0009@eager.cx> writes:
    On Wed, 01 Apr 2026 17:15:19 +0100, Andy Walker wrote:

    On 01/04/2026 10:53, Bob Eager wrote:
    On Wed, 01 Apr 2026 02:06:34 +0000, John Levine wrote:
    [Linkers and Loaders:]
    When I wrote the book proposal in 1999 (yes, that long ago) part of
    pitch was that there had been linkers and loaders since the late >>>>> 1940s but there'd never been more than the occasional article or
    chapter. So either this was the book that the world had been awaiting >>>>> for half a century, or this will prove that there is no market for it. >>>>> It kind of did both, never selling huge numbers but still in print.
    There had been an entire book, but it was only a monograph really. I
    can't find a mention online, but I have a copy.

    David Barron's 1068 monograph? This is called "Assemblers and
    Loaders", but it does include a chapter on "Loaders and Linkage
    Editors".

    That's the one. I didn't quite remember the title correctly. I had to go >>and find it!

    https://archive.org/details/assemblersloader0000barr/page/n1/mode/2up

    Ah, right, that book. It's only 61 pages, with one ten page chapter that talks about linkers or loaders. It's fine as far as it goes, but it doesn't go very far. Pages 45-46 talk about an odd loader whose input is a combination of stuff to load and instructions to do load-time calculations.
    --
    Regards,
    John Levine, johnl@taugh.com, Primary Perpetrator of "The Internet for Dummies",
    Please consider the environment before reading this e-mail. https://jl.ly
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From Lawrence =?iso-8859-13?q?D=FFOliveiro?=@ldo@nz.invalid to alt.folklore.computers on Wed Apr 1 20:40:47 2026
    From Newsgroup: alt.folklore.computers

    On Wed, 1 Apr 2026 17:15:19 +0100, Andy Walker wrote:

    David Barron's 1068 monograph? This is called "Assemblers and
    Loaders", but it does include a chapter on "Loaders and Linkage
    Editors".

    How about Ulrich DrepperrCOs 47-page document on rCLHow To Write Shared LibrariesrCY, written a couple of decades ago? He is/was the principal maintainer of GNU libc. So he goes into issues like versioning and
    backward compatibility, which is a lot more important on Linux systems
    today than it was back on computer systems of, say, the 1980s.
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From Peter Flass@Peter@Iron-Spring.com to alt.folklore.computers on Wed Apr 1 14:21:49 2026
    From Newsgroup: alt.folklore.computers

    On 4/1/26 09:48, Scott Lurndal wrote:
    Bob Eager <news0009@eager.cx> writes:
    On Wed, 01 Apr 2026 17:15:19 +0100, Andy Walker wrote:

    On 01/04/2026 10:53, Bob Eager wrote:
    On Wed, 01 Apr 2026 02:06:34 +0000, John Levine wrote:
    [Linkers and Loaders:]
    When I wrote the book proposal in 1999 (yes, that long ago) part of
    pitch was that there had been linkers and loaders since the late >>>>> 1940s but there'd never been more than the occasional article or
    chapter. So either this was the book that the world had been awaiting >>>>> for half a century, or this will prove that there is no market for it. >>>>> It kind of did both, never selling huge numbers but still in print.
    There had been an entire book, but it was only a monograph really. I
    can't find a mention online, but I have a copy.

    David Barron's 1068 monograph? This is called "Assemblers and
    Loaders", but it does include a chapter on "Loaders and Linkage
    Editors".

    That's the one. I didn't quite remember the title correctly. I had to go
    and find it!

    https://archive.org/details/assemblersloader0000barr/page/n1/mode/2up


    Thanks!

    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From scott@scott@slp53.sl.home (Scott Lurndal) to alt.folklore.computers on Wed Apr 1 22:02:03 2026
    From Newsgroup: alt.folklore.computers

    Lawrence =?iso-8859-13?q?D=FFOliveiro?= <ldo@nz.invalid> writes:
    On Wed, 1 Apr 2026 17:15:19 +0100, Andy Walker wrote:

    David Barron's 1068 monograph? This is called "Assemblers and
    Loaders", but it does include a chapter on "Loaders and Linkage
    Editors".

    How about Ulrich DrepperrCOs 47-page document on rCLHow To Write Shared >LibrariesrCY, written a couple of decades ago? He is/was the principal >maintainer of GNU libc. So he goes into issues like versioning and
    backward compatibility, which is a lot more important on Linux systems
    today than it was back on computer systems of, say, the 1980s.

    Linux implemented the System V Release 4 dynamic shared objects, which supported both versioning and backward compatability long before
    linux supported more than the simple a.out format.

    ELF, for example, was the standard format for executables, object
    files and shared objects in SVR4 (1989ish). It was eventually adopted by
    linux and is still used today.

    Some of the SVR4 dynamic shared object implementation originated in SunOS.

    SVR3 had static shared libraries, which were difficult to use effectively.

    The Burroughs B5500 and descendents innovated shared libraries in the early 1960s,
    and the HP-3000 also leveraged shared libraries very effectively and architecturally (not surprising given the Burroughs heritage of some
    of the HP-3000 design team). Both systems had hardware segmentation capabilities, which provided code isolation.
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From antispam@antispam@fricas.org (Waldek Hebisch) to alt.folklore.computers on Wed Apr 1 23:23:56 2026
    From Newsgroup: alt.folklore.computers

    John Levine <johnl@taugh.com> wrote:
    According to Waldek Hebisch <antispam@fricas.org>:
    John Levine <johnl@taugh.com> wrote:
    According to David Wade <g4ugm@dave.invalid>:
    The TSS/360 story is new to me. Twenty users on a 360/67 and it
    struggled? How much of that was the large-team bloat you're describing >>>>> versus actual architectural problems?

    Not sure, do you mean the software architecture of TSS or the Hardware >>>>architecture of the 360/67. I at Newcastle Uni (UK) I think they/we >>>>managed more users than that with reasonable response time on a 360/67.

    A combination of overeager software architecture and implementation.
    CP/67 and MTS both got good performance from the same hardware.

    AFAICS main factor was that TSS/360 was too big, which left too
    little core for users which lead to intensive paging when one
    tried to increase number of users. Also, VM quite early got
    good paging algorithm, other IBM systems used worse algorithms
    and improved them only later.

    That was certainly part of it. It was also quite buggy, with the bugginess inversely proportional to how heavily used a component was. The file system worked pretty well but I gather magtape support didn't.

    In a sense one can say that TSS/360 was ahead of it times: on
    bigger machine smaller fraction of machine would be occupied
    by system code so memory available for user whould be significantly
    bigger. IIUC already on 2MB machine TSS/360 behaved much better.

    Well, there's a rule of thumb that the way you get good performance from
    a paging system is to have enough RAM that you don't have to page.

    To explain more what I mean: if one have 1MB machine and OS takes
    800 kB for itself, then one has about 200 kB for user programs.
    If OS takes 400 kB, then one has about 600 kB for user programs.
    I this case smaller system effectively has 3 times more memory
    available for user programs. On 2 MB machine (assuming the same
    OS use) ratio is closer to 4/3, still giving advantage to smaller
    system, but this advantage is much smaller.
    --
    Waldek Hebisch
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From Nuno Silva@nunojsilva@invalid.invalid to alt.folklore.computers on Thu Apr 2 00:41:26 2026
    From Newsgroup: alt.folklore.computers

    On 2026-03-31, Andy Burns wrote:

    Lev wrote:

    node nntp.mjs post <group> <subject> <body>

    Your innards are showing ...

    There was also at least one day on which Lev seemed to reply twice to
    the same posts, possibly as if it weren't aware it had already done so.
    --
    Nuno Silva
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From cross@cross@spitfire.i.gajendra.net (Dan Cross) to alt.folklore.computers on Thu Apr 2 10:53:44 2026
    From Newsgroup: alt.folklore.computers

    In article <10qk9ea$6jl0$1@paganini.bofh.team>,
    Waldek Hebisch <antispam@fricas.org> wrote:
    John Levine <johnl@taugh.com> wrote:
    According to Waldek Hebisch <antispam@fricas.org>:
    John Levine <johnl@taugh.com> wrote:
    According to David Wade <g4ugm@dave.invalid>:
    The TSS/360 story is new to me. Twenty users on a 360/67 and it
    struggled? How much of that was the large-team bloat you're describing >>>>>> versus actual architectural problems?

    Not sure, do you mean the software architecture of TSS or the Hardware >>>>>architecture of the 360/67. I at Newcastle Uni (UK) I think they/we >>>>>managed more users than that with reasonable response time on a 360/67. >>>>
    A combination of overeager software architecture and implementation.
    CP/67 and MTS both got good performance from the same hardware.

    AFAICS main factor was that TSS/360 was too big, which left too
    little core for users which lead to intensive paging when one
    tried to increase number of users. Also, VM quite early got
    good paging algorithm, other IBM systems used worse algorithms
    and improved them only later.

    That was certainly part of it. It was also quite buggy, with the bugginess >> inversely proportional to how heavily used a component was. The file system >> worked pretty well but I gather magtape support didn't.

    In a sense one can say that TSS/360 was ahead of it times: on
    bigger machine smaller fraction of machine would be occupied
    by system code so memory available for user whould be significantly >>>bigger. IIUC already on 2MB machine TSS/360 behaved much better.

    Well, there's a rule of thumb that the way you get good performance from
    a paging system is to have enough RAM that you don't have to page.

    To explain more what I mean: if one have 1MB machine and OS takes
    800 kB for itself, then one has about 200 kB for user programs.
    If OS takes 400 kB, then one has about 600 kB for user programs.
    I this case smaller system effectively has 3 times more memory
    available for user programs. On 2 MB machine (assuming the same
    OS use) ratio is closer to 4/3, still giving advantage to smaller
    system, but this advantage is much smaller.

    Relatedly, I saw a talk recently by an English gent where he
    talked about a similar phenomenon: if you're driving somewhere
    and you're going 20 MPH (or KPH, if you prefer; the important
    thing here is the ratio, not the unit) then incresing speed by
    10 MPH to 30 is a significant different and makes a measurable
    difference in your arrival time at your destination. On the
    other hand, if you're doing 80, then increasing speed by 10 to
    90 is almost immeasurable and just (in his words) "makes you a
    dickhead."

    Well, I thought it was funny.

    - Dan C.

    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From Andy Walker@anw@cuboid.co.uk to alt.folklore.computers on Thu Apr 2 15:28:17 2026
    From Newsgroup: alt.folklore.computers

    On 01/04/2026 17:15, Andy Walker wrote:
    On 01/04/2026 10:53, Bob Eager wrote:
    There had been an entire book, but it was only a monograph really. I can't >> find a mention online, but I have a copy.
    -a-a-a-aDavid Barron's 1068 monograph?-a This is called "Assemblers and Loaders", [...].
    I don't suppose anyone was deceived, but in the interests of
    accuracy, the publication date was not /that/ early! Typo for "1968".
    [I find that I now do so little actual typing, as opposed to dabbing,
    that typos now abound in what I type, and are difficult to spot in the
    typeface that my monitor uses and with the eyes that my head uses.]
    --
    Andy Walker, Nottingham.
    Andy's music pages: www.cuboid.me.uk/andy/Music
    Composer of the day: www.cuboid.me.uk/andy/Music/Composers/Smith
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From Peter Flass@Peter@Iron-Spring.com to alt.folklore.computers on Thu Apr 2 07:29:41 2026
    From Newsgroup: alt.folklore.computers

    On 4/2/26 03:53, Dan Cross wrote:
    In article <10qk9ea$6jl0$1@paganini.bofh.team>,
    Waldek Hebisch <antispam@fricas.org> wrote:
    John Levine <johnl@taugh.com> wrote:
    According to Waldek Hebisch <antispam@fricas.org>:
    John Levine <johnl@taugh.com> wrote:
    According to David Wade <g4ugm@dave.invalid>:
    The TSS/360 story is new to me. Twenty users on a 360/67 and it
    struggled? How much of that was the large-team bloat you're describing >>>>>>> versus actual architectural problems?

    Not sure, do you mean the software architecture of TSS or the Hardware >>>>>> architecture of the 360/67. I at Newcastle Uni (UK) I think they/we >>>>>> managed more users than that with reasonable response time on a 360/67. >>>>>
    A combination of overeager software architecture and implementation. >>>>> CP/67 and MTS both got good performance from the same hardware.

    AFAICS main factor was that TSS/360 was too big, which left too
    little core for users which lead to intensive paging when one
    tried to increase number of users. Also, VM quite early got
    good paging algorithm, other IBM systems used worse algorithms
    and improved them only later.

    That was certainly part of it. It was also quite buggy, with the bugginess >>> inversely proportional to how heavily used a component was. The file system
    worked pretty well but I gather magtape support didn't.

    In a sense one can say that TSS/360 was ahead of it times: on
    bigger machine smaller fraction of machine would be occupied
    by system code so memory available for user whould be significantly
    bigger. IIUC already on 2MB machine TSS/360 behaved much better.

    Well, there's a rule of thumb that the way you get good performance from >>> a paging system is to have enough RAM that you don't have to page.

    To explain more what I mean: if one have 1MB machine and OS takes
    800 kB for itself, then one has about 200 kB for user programs.
    If OS takes 400 kB, then one has about 600 kB for user programs.
    I this case smaller system effectively has 3 times more memory
    available for user programs. On 2 MB machine (assuming the same
    OS use) ratio is closer to 4/3, still giving advantage to smaller
    system, but this advantage is much smaller.

    Relatedly, I saw a talk recently by an English gent where he
    talked about a similar phenomenon: if you're driving somewhere
    and you're going 20 MPH (or KPH, if you prefer; the important
    thing here is the ratio, not the unit) then incresing speed by
    10 MPH to 30 is a significant different and makes a measurable
    difference in your arrival time at your destination. On the
    other hand, if you're doing 80, then increasing speed by 10 to
    90 is almost immeasurable and just (in his words) "makes you a
    dickhead."

    Well, I thought it was funny.

    - Dan C.


    Back when I was doing cross-country trips I gave this some thought, and
    at one point came to the same conclusion. Is it worth it to save five
    minutes on a four-hour trip (or whatever, don't flame me), when other contingencies can easily cause you to gain or lose more than that making
    a rest stop?
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From scott@scott@slp53.sl.home (Scott Lurndal) to alt.folklore.computers on Thu Apr 2 15:36:49 2026
    From Newsgroup: alt.folklore.computers

    Andy Walker <anw@cuboid.co.uk> writes:
    On 01/04/2026 17:15, Andy Walker wrote:
    On 01/04/2026 10:53, Bob Eager wrote:
    There had been an entire book, but it was only a monograph really. I can't >>> find a mention online, but I have a copy.
    -a-a-a-aDavid Barron's 1068 monograph?-a This is called "Assemblers and
    Loaders", [...].
    I don't suppose anyone was deceived, but in the interests of
    accuracy, the publication date was not /that/ early! Typo for "1968".
    [I find that I now do so little actual typing, as opposed to dabbing,
    that typos now abound in what I type, and are difficult to spot in the >typeface that my monitor uses and with the eyes that my head uses.]

    Well, 1066 is a notable date in your neck of the woods...
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From Andy Walker@anw@cuboid.co.uk to alt.folklore.computers on Thu Apr 2 17:15:43 2026
    From Newsgroup: alt.folklore.computers

    On 02/04/2026 16:36, Scott Lurndal wrote:
    Andy Walker <anw@cuboid.co.uk> writes:
    David Barron's 1068 monograph?-a[...].
    I don't suppose anyone was deceived, but in the interests of
    accuracy, the publication date was not /that/ early! Typo for "1968".
    Well, 1066 is a notable date in your neck of the woods...

    1966 was similarly notable .... [In more than my neck!]
    --
    Andy Walker, Nottingham.
    Andy's music pages: www.cuboid.me.uk/andy/Music
    Composer of the day: www.cuboid.me.uk/andy/Music/Composers/Smith
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From cross@cross@spitfire.i.gajendra.net (Dan Cross) to alt.folklore.computers on Thu Apr 2 16:44:02 2026
    From Newsgroup: alt.folklore.computers

    In article <l2wzR.138531$WE1.2348@fx08.iad>,
    Scott Lurndal <slp53@pacbell.net> wrote:
    Andy Walker <anw@cuboid.co.uk> writes:
    On 01/04/2026 17:15, Andy Walker wrote:
    On 01/04/2026 10:53, Bob Eager wrote:
    There had been an entire book, but it was only a monograph really. I can't >>>> find a mention online, but I have a copy.
    -a-a-a-aDavid Barron's 1068 monograph?-a This is called "Assemblers and >>> Loaders", [...].
    I don't suppose anyone was deceived, but in the interests of >>accuracy, the publication date was not /that/ early! Typo for "1968".
    [I find that I now do so little actual typing, as opposed to dabbing,
    that typos now abound in what I type, and are difficult to spot in the >>typeface that my monitor uses and with the eyes that my head uses.]

    Well, 1066 is a notable date in your neck of the woods...

    I had a friend in high school who's address was 1066 Saxon Dr.
    I always thought that was kind of funny.

    - Dan C.

    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From Charlie Gibbs@cgibbs@kltpzyxm.invalid to alt.folklore.computers on Thu Apr 2 16:58:50 2026
    From Newsgroup: alt.folklore.computers

    On 2026-04-02, Peter Flass <Peter@Iron-Spring.com> wrote:

    Back when I was doing cross-country trips I gave this some thought, and
    at one point came to the same conclusion. Is it worth it to save five minutes on a four-hour trip (or whatever, don't flame me), when other contingencies can easily cause you to gain or lose more than that making
    a rest stop?

    This leads to what I call my 5% rule. In many cases, a difference
    of less than 5% is either insignificant or gets washed out by
    other factors - so you might as well not worry about it.

    Yes, there are exceptions - but on the whole I've found it
    a good rule of thumb.
    --
    /~\ Charlie Gibbs | Growth for the sake of
    \ / <cgibbs@kltpzyxm.invalid> | growth is the ideology
    X I'm really at ac.dekanfrus | of the cancer cell.
    / \ if you read it the right way. | -- Edward Abbey
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From Lawrence =?iso-8859-13?q?D=FFOliveiro?=@ldo@nz.invalid to alt.folklore.computers on Thu Apr 2 20:34:57 2026
    From Newsgroup: alt.folklore.computers

    On Thu, 02 Apr 2026 16:58:50 GMT, Charlie Gibbs wrote:

    This leads to what I call my 5% rule. In many cases, a difference of
    less than 5% is either insignificant or gets washed out by other
    factors - so you might as well not worry about it.

    Is Microsoft applying this principle to its QA on Windows releases
    now, do you think?
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From Charlie Gibbs@cgibbs@kltpzyxm.invalid to alt.folklore.computers on Thu Apr 2 20:53:41 2026
    From Newsgroup: alt.folklore.computers

    On 2026-04-02, Lawrence DrCOOliveiro <ldo@nz.invalid> wrote:

    On Thu, 02 Apr 2026 16:58:50 GMT, Charlie Gibbs wrote:

    This leads to what I call my 5% rule. In many cases, a difference of
    less than 5% is either insignificant or gets washed out by other
    factors - so you might as well not worry about it.

    Is Microsoft applying this principle to its QA on Windows releases
    now, do you think?

    I doubt it. Remember the purpose of quality control: to keep quality
    under control so it doesn't rise too high and increase costs.
    --
    /~\ Charlie Gibbs | Growth for the sake of
    \ / <cgibbs@kltpzyxm.invalid> | growth is the ideology
    X I'm really at ac.dekanfrus | of the cancer cell.
    / \ if you read it the right way. | -- Edward Abbey
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From John Levine@johnl@taugh.com to alt.folklore.computers on Sun Apr 5 02:27:21 2026
    From Newsgroup: alt.folklore.computers

    According to Peter Flass <Peter@Iron-Spring.com>:
    On 4/4/26 14:55, John Levine wrote:
    Did any timesharing OSes from IBM enjoy much success? Maybe TSO? Did
    that do multiuser, without the need for VMs?

    Obviously VM/CMS. Non-IBM MTS was fairly popular in the education community.

    Single language APL\360 was also pretty popular, supporting a lot of interactive
    users on a 360/50.

    IBM also had Conversational Programming System (CPS) that supported
    BASIC and PL/I. Don't know about FORTRAN.

    That was QUIKTRAN.
    --
    Regards,
    John Levine, johnl@taugh.com, Primary Perpetrator of "The Internet for Dummies",
    Please consider the environment before reading this e-mail. https://jl.ly
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From John Levine@johnl@taugh.com to alt.folklore.computers on Sun Apr 5 19:22:53 2026
    From Newsgroup: alt.folklore.computers

    According to David Wade <g4ugm@dave.invalid>:
    On 05/04/2026 00:44, Lawrence DrCOOliveiro wrote:
    I wonder how many people at DEC worked on TOPS-10 ... remember, they
    were able to provide true multiuser support from the get-go, which CMS
    could not.

    No but CMS is still in use today, and it still doesn't provide true
    multi user support whatever that is

    No matter what it is, it would make no sense since it only runs under VM which provides
    quite a lot of multi-user support.

    I would also note that any VM system that can run CMS can also run several flavors of linux,
    all at the same time, if that's what you want.
    --
    Regards,
    John Levine, johnl@taugh.com, Primary Perpetrator of "The Internet for Dummies",
    Please consider the environment before reading this e-mail. https://jl.ly
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From ted@loft.tnolan.com (Ted Nolan@tednolan to alt.folklore.computers on Sun Apr 5 20:23:25 2026
    From Newsgroup: alt.folklore.computers

    In article <10qrt7k$v684$1@dont-email.me>,
    Lars Poulsen <lars@beagle-ears.com> wrote:
    On 2026-04-03 20:57, Lawrence DrCOOliveiro wrote:
    On Fri, 03 Apr 2026 16:53:28 -1000, Lynn Wheeler wrote:

    Largest 360/67 1-CPU had one mbyte memory ... mostly taken up by
    TSS/360 kernel ...

    Wikipedia says TSS was not a great success.

    Did any timesharing OSes from IBM enjoy much success? Maybe TSO? Did
    that do multiuser, without the need for VMs?

    IBM's flagship OSs were versions of OS/360, later including OS/370, MVS, >etc. The internals were apparently not suited for interactive program >execution, where each terminal was likely to be running a different
    program. What they did very well at, was for a permanently running
    program to handle transaction processing for a large network of
    terminals, where each terminal/host/terminal handshake sent out a >prompt/data entry form, then received it back when the user hit enter,
    and finally sent out the response. The nature of the polled multidrop >clusters allowed the queue of not-yet-processed transactions to sit in
    each originating terminal instead of taking up host memory for the queue.

    On this foundation, were built a number of functionally similar >"Conversational Remote Job Entry" systems; some (CRJE) developed and >released by IBM, some developed by university computer centers and
    shared with other customers. My exposure to the kind, was the WITS
    (Waterloo Interactive Terminal System) developed at University of
    Waterloo in Ontario, where the WATFOR fast compile-and-go FORTRAN
    teaching system also came from.

    The system was essentially a large multi-user file editor, which could >submit batch jobs into a virtual card reader; either provided by HASP >(Houston Automatic Spooling and Priority Scheduler) or to an "initiator" >module in OS, which thought it saw a card reader connected to a channel
    that really just had a loopback connector on the end. A similar virtual >printer and virtual card punch could bring jobs back to the editor
    complex where the were copied to user files to be edited, alter to be >printed or used as input for new jobs.

    This kind of subsystem was ubiquitous in OS/3[67]0 installations and
    greatly improved programmer productivity compared t using physical cards
    for job submission.

    In comparison, the UNIVAC EXEC_8 OS had much lower per-job overhead, and >allowed
    1) Small undergraduate jobs from programming classes to run as fast as
    WATFOR could process similar jobs in its (mostly interpretive?)
    system.
    2) True interactive jobs using the same JCL as batch jobs.

    At the Univac based university data center where I learned my trade, we
    knew we had to compete with the IBM OS/HASP/WITS/WATFOR center across
    town, where WATFOR jobs were free. Our solution was to have an express
    job queue where you could run any job that was under 5 CPU seconds at
    the highest priority, so that it came bac "instantly".

    The third center ran a CDC 6600 with KRONOS. I am not sure if it was
    CRJE or truly interactive.


    Does anyone remember VSPC? I think it stood for Virtual Storage
    Personal Computing, and USC (East) ran it on the 370 and then Amdahl
    mainframe while I was an undergrad circa 1980. Each user had 16K
    of card space (maybe non-students got more?) to edit on 3270s and
    submit with JCL as though it were a card deck. The result could
    go to the printer, or, I think, back to a virtual printer in your
    account which you could also access at the terminal. Similarly,
    you could have a virtual card printer, and you could use that to
    game the 16k limit by having some of your decks printed to it so
    they also seemed to live in your account. The fly in *that* ointment
    is that the sysadmins would randomly delete virtual card jobs when
    they felt like it.
    --
    columbiaclosings.com
    What's not in Columbia anymore..
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From Lynn Wheeler@lynn@garlic.com to alt.folklore.computers on Sun Apr 5 14:30:15 2026
    From Newsgroup: alt.folklore.computers

    John Levine <johnl@taugh.com> writes:
    No matter what it is, it would make no sense since it only runs under
    VM which provides quite a lot of multi-user support.

    I would also note that any VM system that can run CMS can also run
    several flavors of linux, all at the same time, if that's what you
    want.

    "Future System" overlapped adding virtual memory to all 370s, FS was
    totally different than 370 and was going to completely replace it,
    internal politics during FS was killing off 370 projects and lack of new
    370 during FS period is credited with giving clone 370 makers their
    market foothold.

    when "FS" finally imploded, there was mad rush to get stuff back into
    370 product pipeline, including kicking off quick&dirty 3033&3081 in
    parallel.

    1974, CERN presented comparison of VM370/CMS and MVS/TSO at SHARE ...
    inside IBM the report was classified "IBM Confidential - Restricted" "on
    need to know" only (not wanting internal employees see the
    comparison). How much better VM370/CMS looked likely was major factor in
    the head of POK (high-end 370s) convincing corporate to kill the
    VM370/CMS product, shutdown the development group and transfer all the
    people to POK for MVS/XA (Endicott lab eventually manages to acquire the VM370/CMS product mission, but had to recreate a development group from scratch).

    part of reason that other RDBMS shipping before System/R was opposition
    from "IMS" (& then EAGLE)

    I transfer out to SJR on the west coast and work with Jim Gray and Vera
    Watson on the original SQL/relational, System/R (all work having been
    done on VM370/CMS). Sign a System/R joint study with BofA and they order
    60 VM/4341s for distributed operation (sort of leading edge of coming distributed computing tsunami). Branch office hears about engineering
    4341 and Jan1979 cons me into doing benchmark for national lab that was
    looking at ordering 70 VM/4341s for compute farm (sort of leading edge
    of coming cluster super computing tsunami).

    VM/4341 starts shipping to customers summer 1979 and begin seeing large corporations ordering hundreds of VM/4341s at a time for placing out in departmental areas (inside IBM, departmental conference rooms were
    becoming scarce since so many were being converted into departmental
    VM/4341 computing rooms).

    Was also able to do System/R tech transfer to Endicott for SQL/DS
    ("under the radar" with the corporation pre-occupied with the next great
    DBMS, "EAGLE" ... System/R having met lots of opposition by both the
    "IMS" & "EAGLE" DBMS forces). When "EAGLE" implodes, get request from
    STL for how fast could "System/R" be ported to MVS ... eventually
    released as "DB2" originally for "decision support" only.

    trivia: old archived post with decade of VAX/VMS numbers ... VM/4341s
    sold in approx. same numbers in single or small unit numbers ... big
    difference were the large orders for hundreds of VM/4341 at a time. https://www.garlic.com/~lynn/2002f.html#0
    --
    virtualization experience starting Jan1968, online at home since Mar1970
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From antispam@antispam@fricas.org (Waldek Hebisch) to alt.folklore.computers on Mon Apr 6 01:42:24 2026
    From Newsgroup: alt.folklore.computers

    John Levine <johnl@taugh.com> wrote:
    According to David Wade <g4ugm@dave.invalid>:
    On 05/04/2026 00:44, Lawrence DrCOOliveiro wrote:
    I wonder how many people at DEC worked on TOPS-10 ... remember, they
    were able to provide true multiuser support from the get-go, which CMS
    could not.

    No but CMS is still in use today, and it still doesn't provide true
    multi user support whatever that is

    No matter what it is, it would make no sense since it only runs under VM which provides
    quite a lot of multi-user support.

    I would also note that any VM system that can run CMS can also run several flavors of linux,
    all at the same time, if that's what you want.

    VM6 runs in 370 mode and runs CMS. IIUC Linux needs at least s390 mode
    so can not run under VM6.
    --
    Waldek Hebisch
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From Peter Flass@Peter@Iron-Spring.com to alt.folklore.computers on Sun Apr 5 20:02:23 2026
    From Newsgroup: alt.folklore.computers

    On 4/5/26 17:30, Lynn Wheeler wrote:
    John Levine <johnl@taugh.com> writes:
    No matter what it is, it would make no sense since it only runs under
    VM which provides quite a lot of multi-user support.

    I would also note that any VM system that can run CMS can also run
    several flavors of linux, all at the same time, if that's what you
    want.

    "Future System" overlapped adding virtual memory to all 370s, FS was
    totally different than 370 and was going to completely replace it,
    internal politics during FS was killing off 370 projects and lack of new
    370 during FS period is credited with giving clone 370 makers their
    market foothold.

    when "FS" finally imploded, there was mad rush to get stuff back into
    370 product pipeline, including kicking off quick&dirty 3033&3081 in parallel.

    1974, CERN presented comparison of VM370/CMS and MVS/TSO at SHARE ...
    inside IBM the report was classified "IBM Confidential - Restricted" "on
    need to know" only (not wanting internal employees see the
    comparison). How much better VM370/CMS looked likely was major factor in
    the head of POK (high-end 370s) convincing corporate to kill the
    VM370/CMS product, shutdown the development group and transfer all the
    people to POK for MVS/XA (Endicott lab eventually manages to acquire the VM370/CMS product mission, but had to recreate a development group from scratch).


    We lived thru this. Maintenance was so botched for a couple of releases.
    It's a good thing nobody there could hear us.

    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From Peter Flass@Peter@Iron-Spring.com to alt.folklore.computers on Sun Apr 5 20:05:11 2026
    From Newsgroup: alt.folklore.computers

    On 4/5/26 18:42, Waldek Hebisch wrote:
    John Levine <johnl@taugh.com> wrote:
    According to David Wade <g4ugm@dave.invalid>:
    On 05/04/2026 00:44, Lawrence DrCOOliveiro wrote:
    I wonder how many people at DEC worked on TOPS-10 ... remember, they
    were able to provide true multiuser support from the get-go, which CMS >>>> could not.

    No but CMS is still in use today, and it still doesn't provide true
    multi user support whatever that is

    No matter what it is, it would make no sense since it only runs under VM which provides
    quite a lot of multi-user support.

    I would also note that any VM system that can run CMS can also run several flavors of linux,
    all at the same time, if that's what you want.

    VM6 runs in 370 mode and runs CMS. IIUC Linux needs at least s390 mode
    so can not run under VM6.


    One of the colleges, probably Marist, had an unofficial version of Linux running on a 370. I understand GCC wanted a PC-relative branch
    instruction, so they had to code around that.
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From Lawrence =?iso-8859-13?q?D=FFOliveiro?=@ldo@nz.invalid to alt.folklore.computers on Mon Apr 6 07:03:07 2026
    From Newsgroup: alt.folklore.computers

    On Sun, 5 Apr 2026 20:05:11 -0700, Peter Flass wrote:

    On 4/5/26 18:42, Waldek Hebisch wrote:

    VM6 runs in 370 mode and runs CMS. IIUC Linux needs at least s390
    mode so can not run under VM6.

    One of the colleges, probably Marist, had an unofficial version of
    Linux running on a 370. I understand GCC wanted a PC-relative branch instruction, so they had to code around that.

    Did it really take that many decades for IBM to understand the concept
    of position-independent code?
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From Lynn Wheeler@lynn@garlic.com to alt.folklore.computers on Sun Apr 5 22:19:00 2026
    From Newsgroup: alt.folklore.computers

    Lawrence DrCOOliveiro <ldo@nz.invalid> writes:
    Did it really take that many decades for IBM to understand the concept
    of position-independent code?

    TSS/360 supported position independent code .... could have same shared segments across different virtual address spaces at different address locations.

    OS/360 languages generated executable with "relocatable" addresses and
    loader, loading the executable images when loaded, the relocable
    addresses were updated for the ("fix") loaded address locations (aka "relocatable" until loaded for execution).

    after joining IBM CSC ... with competition from TSS/360 and MULTICS up
    on the 5th flr ... I did a page-mapped filesystem for CP67's CMS
    (nominal filesystem workload about 3times faster (and degrading much
    more gracefully as load increased) and since CMS used OS/360 language processors ... it had fixed addresses as part of loading. I had to do a
    lot of code fiddling in order to emulate TSS/360 being able to load
    shared segments at independent locations.

    With TSS/360 decommitted and all the 360 systems (MVT, MFT, DOS) having
    to support 370 virtual memory .... the wide-spread implementation of the "relocatable addresses" updating to correspond to the loaded address
    ... sort of negated any position-independent orientation.
    --
    virtualization experience starting Jan1968, online at home since Mar1970
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From Lawrence =?iso-8859-13?q?D=FFOliveiro?=@ldo@nz.invalid to alt.folklore.computers on Mon Apr 6 08:20:33 2026
    From Newsgroup: alt.folklore.computers

    On Sun, 05 Apr 2026 22:19:00 -1000, Lynn Wheeler wrote:

    Lawrence DrCOOliveiro <ldo@nz.invalid> writes:

    Did it really take that many decades for IBM to understand the
    concept of position-independent code?

    TSS/360 supported position independent code .... could have same
    shared segments across different virtual address spaces at different
    address locations.

    OS/360 languages generated executable with "relocatable" addresses
    and loader, loading the executable images when loaded, the relocable addresses were updated for the ("fix") loaded address locations (aka "relocatable" until loaded for execution).

    So the code itself was not position-independent? Instead, extra
    information had to be provided in the object format to fix things up
    based on where in memory it was loaded?
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From cross@cross@spitfire.i.gajendra.net (Dan Cross) to alt.folklore.computers on Mon Apr 6 12:03:54 2026
    From Newsgroup: alt.folklore.computers

    In article <87pl4c1oy3.fsf@localhost>, Lynn Wheeler <lynn@garlic.com> wrote: >Lawrence DrCOOliveiro <ldo@nz.invalid> writes:
    Did it really take that many decades for IBM to understand the concept
    of position-independent code?

    TSS/360 supported position independent code .... could have same shared >segments across different virtual address spaces at different address >locations.

    Lynn, sadly, you are arguing with an idiot. Lawrence is not
    interested in how things actually work.

    - Dan C.


    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From Peter Flass@Peter@Iron-Spring.com to alt.folklore.computers on Mon Apr 6 07:30:51 2026
    From Newsgroup: alt.folklore.computers

    On 4/6/26 00:03, Lawrence DrCOOliveiro wrote:
    On Sun, 5 Apr 2026 20:05:11 -0700, Peter Flass wrote:

    On 4/5/26 18:42, Waldek Hebisch wrote:

    VM6 runs in 370 mode and runs CMS. IIUC Linux needs at least s390
    mode so can not run under VM6.

    One of the colleges, probably Marist, had an unofficial version of
    Linux running on a 370. I understand GCC wanted a PC-relative branch
    instruction, so they had to code around that.

    Did it really take that many decades for IBM to understand the concept
    of position-independent code?

    360 was all position-independent. In theory there were no absolute
    addresses, everything was base-displacement. Change the base register
    and Bob's your uncle. Unfortunately there were a couple of gotchas,
    address constants being the worst. Also the small range of addresses
    available from a single base became limiting as programs got larger.
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From Lynn Wheeler@lynn@garlic.com to alt.folklore.computers on Mon Apr 6 07:39:18 2026
    From Newsgroup: alt.folklore.computers


    Peter Flass <Peter@Iron-Spring.com> writes:
    360 was all position-independent. In theory there were no absolute
    addresses, everything was base-displacement. Change the base register
    and Bob's your uncle. Unfortunately there were a couple of gotchas,
    address constants being the worst. Also the small range of addresses available from a single base became limiting as programs got larger.

    OS/360, etc ... large programs required addresses ... on disk the
    addresses were relative to position within the program ... but loaders
    were required to modify the addresses to fixed real addresses in real
    storage.

    tss/360 and support for multiple virtual memory address spaces and
    shared segments wanted the image in memory be exactly the same as the
    image on disk ... w/o requiring all addresses to be modified as the
    whole program was swapped into real memory ... but allowing for demand
    paged in w/o requiring for executable images to be preloaded (and
    addresses modified for their loaded position). Also not requiring for
    shared segments to have the same addresses in different virtual
    addresses spaces.

    OS/360 MVT in transition to VS2/MVS kept the OS/360 preloading/swapping
    in executable image and changing location addresses (making the affected
    pages of the executing image changed). TSS/360 just mapped portions of
    the virtual address space to the executable image on disk ... and in
    case of shared segments could just change segment table pointer to that
    of same shared segment concurrently in use by multiple other virtual
    address spaces.

    W/o location independence and requiring executable image to be otherwise preloaded to have address constants to be modified to their executing
    position ... would have required every executing program image to have
    unique address across the whole system (or have restricted only have
    certain executables to be concurrently mapped into the same address
    space).

    That is what got me providing page-mapped filesystem for CMS ... and CMS
    was using OS/360 compilers and assemblers which assumed address
    constants had to be modified as executables were loaded (had to fiddle
    the programs so the executables images on disk were identical to
    the same as executable images mapped to virtual address spaces).
    --
    virtualization experience starting Jan1968, online at home since Mar1970
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From Peter Flass@Peter@Iron-Spring.com to alt.folklore.computers on Mon Apr 6 12:05:24 2026
    From Newsgroup: alt.folklore.computers

    On 4/6/26 10:39, Lynn Wheeler wrote:

    W/o location independence and requiring executable image to be otherwise preloaded to have address constants to be modified to their executing position ... would have required every executing program image to have
    unique address across the whole system

    windows

    (or have restricted only have
    certain executables to be concurrently mapped into the same address
    space).

    VM DCSS

    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From antispam@antispam@fricas.org (Waldek Hebisch) to alt.folklore.computers on Mon Apr 6 19:21:49 2026
    From Newsgroup: alt.folklore.computers

    Peter Flass <Peter@iron-spring.com> wrote:
    On 4/5/26 18:42, Waldek Hebisch wrote:
    John Levine <johnl@taugh.com> wrote:
    According to David Wade <g4ugm@dave.invalid>:
    On 05/04/2026 00:44, Lawrence DrCOOliveiro wrote:
    I wonder how many people at DEC worked on TOPS-10 ... remember, they >>>>> were able to provide true multiuser support from the get-go, which CMS >>>>> could not.

    No but CMS is still in use today, and it still doesn't provide true
    multi user support whatever that is

    No matter what it is, it would make no sense since it only runs under VM which provides
    quite a lot of multi-user support.

    I would also note that any VM system that can run CMS can also run several flavors of linux,
    all at the same time, if that's what you want.

    VM6 runs in 370 mode and runs CMS. IIUC Linux needs at least s390 mode
    so can not run under VM6.


    One of the colleges, probably Marist, had an unofficial version of Linux running on a 370. I understand GCC wanted a PC-relative branch
    instruction, so they had to code around that.

    AFAICS there is more to this. There was a version of GCC targeting
    370, so in a sense that was handled. But IIUC GCC for 370 emited
    assembler that Paul Edwards used, which was similar or maybe
    identical to assembler for some version of MVS. However, for
    me neither MVS assembler (that is version that I had) nor
    binutils were able to handle assembler output from GCC.

    Beside GCC, AFAICS there is substantial difference in s390 and
    370 system instructions and data structures. So one would have
    to rework low level machine specific support.
    --
    Waldek Hebisch
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From David Wade@g4ugm@dave.invalid to alt.folklore.computers on Mon Apr 6 21:25:15 2026
    From Newsgroup: alt.folklore.computers

    On 06/04/2026 20:21, Waldek Hebisch wrote:
    Peter Flass <Peter@iron-spring.com> wrote:
    On 4/5/26 18:42, Waldek Hebisch wrote:
    John Levine <johnl@taugh.com> wrote:
    According to David Wade <g4ugm@dave.invalid>:
    On 05/04/2026 00:44, Lawrence DrCOOliveiro wrote:
    I wonder how many people at DEC worked on TOPS-10 ... remember, they >>>>>> were able to provide true multiuser support from the get-go, which CMS >>>>>> could not.

    No but CMS is still in use today, and it still doesn't provide true
    multi user support whatever that is

    No matter what it is, it would make no sense since it only runs under VM which provides
    quite a lot of multi-user support.

    I would also note that any VM system that can run CMS can also run several flavors of linux,
    all at the same time, if that's what you want.

    VM6 runs in 370 mode and runs CMS. IIUC Linux needs at least s390 mode
    so can not run under VM6.


    One of the colleges, probably Marist, had an unofficial version of Linux
    running on a 370. I understand GCC wanted a PC-relative branch
    instruction, so they had to code around that.

    AFAICS there is more to this. There was a version of GCC targeting
    370, so in a sense that was handled. But IIUC GCC for 370 emited
    assembler that Paul Edwards used, which was similar or maybe
    identical to assembler for some version of MVS. However, for
    me neither MVS assembler (that is version that I had) nor
    binutils were able to handle assembler output from GCC.

    Beside GCC, AFAICS there is substantial difference in s390 and
    370 system instructions and data structures. So one would have
    to rework low level machine specific support.

    I think this is probably referring to the BIGFOOT port which I think
    initially ran on what was called S370/XA but this is a 31-bit hardware
    so close the ESA

    Dave
    --- Synchronet 3.21f-Linux NewsLink 1.2
  • From Lynn Wheeler@lynn@garlic.com to alt.folklore.computers on Mon Apr 6 17:41:54 2026
    From Newsgroup: alt.folklore.computers

    Peter Flass <Peter@Iron-Spring.com> writes:
    VM DCSS

    A lot of the page-mapped filesystem and advanced shared-segments, I
    updated from CP67 to VM370R2 for my internal CSC/VM ... and very small
    subset was added to VM370R3 as DCSS.

    VM370 had been restricted to "IPL by-name" where images were saved in
    locations defined and disk location specified in DMKSNT. For DCSS a
    special API interfacing to entires in DMKSNT using several of the things
    I had extended for page-mapped filesystem shared-segments (some that I
    had twiddled for location independent ... but wasn't supported by the
    small subset used for DCSS).
    --
    virtualization experience starting Jan1968, online at home since Mar1970
    --- Synchronet 3.21f-Linux NewsLink 1.2