Return to home

IBM’s early operating systems for 1410, 7090, and S/360
A Blog

Attached,
- a TIF file of the Endicott organization, dating 8/3/64
- 1410/7010 Operating System Timing Report July 30, 1964
- Output of the Program Monitor, analysis

Directory
- Snyder to Garner, 03/25/08 03:40 PM
- Jaeger to Worthington, February 23, 2009 at 6:39:30 PM
- Garner to Jaeger, February 23, 2009 at 11:49:28 PM
- Worthington to Garner, February 24, 2009 at 5:55:05 PM
- Jaeger to Worthington, February 24, 2009 at 8:24:07 PM
- Jaeger to Garner, February 24, 2009 at 8:17:43 PM
- Garner to Palmer, March 16, 2009 at 5:02:38 PM
- Kay to Palmer, March 16, 2009 at 6:17:09 PM
- Jaeger to Garner & Palmer, March 17, 2009 at 5:29:38 PM
- Brooks to Garner, March 18, 2009 at 6:48:14 PM
- Jaeger to Brooks & Garner, March 19, 2009 at 5:12:28 PM
- Garner to Brooks & Palmer, March 24, 2009 at 10:20:24 PM
- Weaver to Garner, March 24, 2009 at 11:47:55 PM
- Brooks to Garner, March 25, 2009 at 10:48:55 AM
- Jaeger to Garner & Brooks, March 25, 2009 at 6:48:23 PM
- Bob C to Garner & Brooks, March 25, 2009 at 11:15:40 PM
- Bob C to Garner, March 26, 2009 at 12:21:45 AM
- Jaeger to Garner & Brooks & Palmer, March 26, 2009 at 4:31:56 PM
- Bob C to Garner & Brooks & Palmer & Jaeger, March 26, 2009 at 10:57:45 PM
- Worthington to Jaeger, March 30, 2009 at 5:56:44 PM
- Jaeger to Worthington, March 31, 2009 at 4:27:57 PM
- Jaeger to Garner & Brooks & Palmer, April 4, 2009 at 5:24:08 AM
- Brooks to Jaeger, April 4, 2009 at 7:01:00 AM
- Jaeger to Brooks, April 4, 2009 at 10:28:10 AM
- Jaeger to Garner, July 24, 2011 at 6:51:09 PM
- Worthington to Garner, July 25, 2011 at 1:26:55 PM
- Espen to Worthington, July 25, 2011 at 2:45:37 PM
- McCarthy to Mak, July 17, 2019 at 12:12:55 PM


From: Van Snyder
To: Robert B Garner/Almaden/IBM@IBMUS 03/25/08 03:40 PM
Subject Re: new 1401 blurb paragraph (was
On Mon, 2008-03-24 at 17:41 -0700, Robert B Garner wrote:
> Van --> Do you know if the Honeywell H-200 was implemented as a
> character serial machine also? I assume the 1410 was too?

H-200 was very much like the 1401 in many respects.

One difference was that in addition to a word mark bit, each character also had an "item mark" bit. I don't remember all the details of usage of the item mark for data fields. H-200 had a sequence register (equivalent to 1401 I-STAR) and a cosequence register. If an instruction had both an item mark and a word mark, the sequence and cosequence registers were swapped. This was called "item trapping," which was used by the liberator run-time library to simulate 1401 instructions that didn't have direct H-200 equivalents.

Another difference was that the H-200 had real data channels, which were used for all I/O, not just the tape drive. So the equivalent of overlap was essentially unavoidable. It also meant that the 1401 I/O op codes were item trapped.

Addresses in the H-200 were binary, with 15 bits for address and three for index register, so H-200 machines could have up to 32768 characters of memory. There was also a 12-bit address mode. I don't remember whether that was P-relative or absolute.

The 1410 was more similar to the 1401. The main difference was that addresses were five characters instead of three. Zones weren't used for addressing unless a special feature to allow addressing more than 100k was installed. 1410 also had 15 index registers instead of three. As in the 1401 they were encoded by zones, but both the tens and hundreds digits were zoned. Also a few more instructions. There was a move instruction (D op-code instead of M though) with a D-modifier that had lots of meanings. Al has a 1410 principles of operation at
http://www.bitsavers.org/pdf/ibm/1410/.
Jay Jaeger <...> is interested in 1410 stuff, and has some manuals.

One interesting feature of 1410 was that it had a "1401 compatibility" switch. If you flipped the switch it just ran 1401 programs without any software intervention or support, although a few arcane things either didn't work or worked subtly differently. One of the Autocoder tapes I have prints "SWITCH TO 1410 MODE, RESET START." The next instruction after the halt is J16365. J was a 1410 branch (jump) instruction, so this was presumably a branch back to the 1410 operating system.

Van


From: Jay Jaeger
Subject: 1410 vs 1401
Date: February 23, 2009 at 6:39:30 PM PST
To: BillWorthington
"Van is right on when he mentioned that the 1410 had a switch which made it a 1401. The bank that I worked for as a programmer from 1960 till 1964 had both a 1401 and a 1410. There were some 1401 program which were run on the 1410 because it was much faster. The main difference to us as programmers between the 1401 and 1410 Autocoders was that we used Input/Output Control System (IOCS) macros for card, printer and tape I/O on the 1410. We were hard pressed for memory with the 4K 1401 and used no IOCS because of the inefficiencies of the generated code. 1410 Autocoder also allowed labels of ten characters vs. six characters for 1401/1440/1460 Autocoder. T here were also some additional instructions in the 1410's repertoire -- Move and Branch instructions come to mind."

Read your pieces on the computer history museum 1401 page. 1410's are my "specialite". I worked on one as an operator, programmer and systems programmer from 1970 until 1975, at the UW school of business. We used to, each summer, run a 1401 program for the Bank of Chicago (or some such) who came up to run the "Undergraduate and Graduate School of Banking" each summer (think they still may). We ran the simulation for them each day.

Paul Pierce (www.percefuller.net) and I also set up a 1410 donation to UW from Oscar Mayer here in town back around 1974 (along with an IBM 7094 II that came from federal surplus). We set it up twice, actually, using the FE install instructions. An FE came and fixed the selectric console on the IBM 1415 for free for us. It ran fine, but we had no peripherals, and in between the two setups it was in cold storage -- cold enough that some wires pulled taut and snapped inside the core (at least, that was what we thought happened).

Indeed every 1410 had 1401 compatibility mode (not sure about the 7010, though). The biggest difference was that the 1410/7010 had 5 character addresses, whereas the 1401 had only 3 character addresses inside the machine. Thus you could have up to 100k core on a 1410 or 7010. It also had an interrupt feature ("priority alert: feature), and sported the IBM-PR-155 operating system -- a more or less direct predecessor to IBM 360 DOS (not to be confused with OS/360). The 1410 had several programming systems (1410-PR-xxx), including a standalone IOCS, the 1410-PR-108 (and disk-based PR-134) (which was called the "processor operating system" -- where "processor" meant compiler, and the aforementioned PR-155.

There were lots of additional instructions, including a table lookup, more instructions dealing with I/O / processor overlap, interrupts, extra devices, etc.

The 1401 also had an IOCS, and some used it.

Now, if only someone could locate a 1410. That would be really cool. I'm not keeping upmy hopes, though.

I have PR-108 and PR-155 running on my core-cycle-level simulator.

www.bitsavers.org/pdf has a pretty good 1410 library.

Jay Jaeger
Madison, WI

PS: There was also a 1401 and 1410 emulator program for the Univac 1100 series mainframes. I have the program documentation (including flowcharts).

---
Jay R. Jaeger The Computer Collection



From: Robert Garner
Subject: Re: 1410 vs 1401 (and your PDP-12 web page)
Date: February 23, 2009 at 11:49:28 PM PST
To: Jay Jaeger
Jay,

Good to hear from you.
Shall I add your name to our 1401_interest email?

> Thus you could have up to 100k core on a 1410 or 7010.
> It also had an interrupt feature ("priority alert: feature),
> and sported the IBM-PR-155 operating system ...
> The 1410 had several programming systems (1410-PR-xxx),
> including a standalone IOCS, the 1410-PR-108 (and disk-based PR-134)
> (which was called the "processor operating system" -- where "processor" meant compiler,

First that I've heard of these OSes. Is there documentation out there? A paper?

> Now, if only someone could locate a 1410.

Would a 1440 rank a reasonable second?
Several months ago we were contacted by a gentleman near San Diego who has a 1440 + console in his garage, pictures here:
http://pub.gbdtc.com/

It was offered as a donation to the CHM, but the Museum has decided to pass on it.
I need to call the owner and check on its status.

Regards,

- Robert

p.s. A few days I had (re-)stumbled onto your 1410 interest from your PDP-12 links.*
http://webpages.charter.net/thecomputercollection/pdp8-12/index.htm

I own a PDP-12, PDP-15, PDP-8/I, PDP-8/M, HP 2116B, etc..



From: Bill Worthington
Subject: Re: 1410 vs 1401 (and your PDP-12 web page)
Date: February 24, 2009 at 5:55:05 PM PST
To: Robert Garner
I should preface this by saying that I too was a 1410 programmer at a bank on the East Coast. (There's a picture of me sitting at the 1410 console on Ed Thelen's team website.) Yes. I did have hair on the top of my head at one time!

Jay, it's nice to hear someone else's fond remembrances of the 1410.

1410-PR-108 and 1410-PR-155 were tape resident operating systems -- although some might argue about PR-108's being quite at that level. The bank elected to stay with PR-108 to the chagrin of the programming staff saying that it was too complicated for the operations staff to handle. As Jay says, PR-155 was similar to IBM's 16K Variant of the Basic Operation System for System/360 (Tape Resident) which quickly became Tape Operating System/360 or TOS/360. PR-108 was akin to the Basic Programming System/360 (or BPS/360).

PR-108 had the Autocoder compiler on it and and full IOCS support for tape. (I can't remember if it supported disks -- 1311, 1305, etc.) As I recall, it also had RPG, COBOL and FORTRAN although we didn't write in those languages -- except for one trial with FORTRAN.

Bill



From: Jay Jaeger
Subject: Re: 1410 vs 1401 (and your PDP-12 web page)
Date: February 24, 2009 at 8:24:07 PM PST
To: Bill Worthington
At 05:55 PM 2/24/2009 -0800, Bill Worthington wrote:

> I should preface this by saying that I too was a 1410 programmer at a bank on the East Coast. (There's a picture of me sitting at the 1410 console on Ed Thelen's team website .)
> Yes. I did have hair on the top of my head at one time!

Cool picture.

> Jay, it's nice to hear someone else's fond remembrances of the 1410.
>
> 1410-PR-108 and 1410-PR-155 were tape resident operating systems -- although some might argue about PR-108's being quite at that level. The bank elected to stay with PR-108 to the chagrin of the programming staff saying that it was too complicated for the operations staff to handle.

PR-155 could also be disk resident (at least on some disks -- I'd have to check what it could reside on -- I don't think it could reside on a 1311, but did support them). I would say that PR-108 was not an operating system -- it did not have a resident monitor of any kind. Each program generated, or at least linked in, its own IOCS

> As Jay says, PR-155 was similar to IBM's /16K Variant of the Basic Operation System for System/360 (Tape Resident)/ which quickly became Tape Operating System/360 or TOS/360. PR-108 was akin to the /Basic Programming System/360/ (or BPS/360).

Here I disagree. Look at the macros that DOS/360 uses -- they are the same (DTF and friends) that the PR-155 used. Capability wise, they (TOS/BPS and PR-155) may have been similar, but looking at roots and where things came from, OS/360 has clear roots coming from the 709x series OSs, and DOS/360 has its roots on the 1410 side.

Paul Pierce and I recovered some original OS/360 distribution tapes, including the ability to gen TOS -- I used it under Hercules (after doing some debugging on the read-tape-backwards support in the process). They read just fine. It is posted up on a couple of sites yet.

> PR-108 had the Autocoder compiler on it and and full IOCS support for tape. (I can't remember if it supported disks -- 1311, 1305, etc.) As I recall, it also had RPG, COBOL and FORTRAN although we didn't write in those languages -- except for one trial with FORTRAN.

Yes, it did. And it did have limited support for disks, but could not reside there. If I recall correctly, PR-134 is effectively PR-108 resident on disk, from what I can remember. PR-155 supported those same languages, as well. With PR-155, the IOCS was resident -- programs shared it. It could also do a checkpoint-restart (The University of Wisconsin freshman registration program used it. I made extra money as a student night-sitting it: at the time city ordinances prohibited having computers running unattended due to perceived fire hazard, I think).

---
Jay R. Jaeger The Computer Collection



From: Jay Jaeger
Subject: Re: 1410 vs 1401 (and your PDP-12 web page)
Date: February 24, 2009 at 8:17:43 PM PST
To: Robert Garner
At 11:49 PM 2/23/2009 -0800, Robert Garner wrote:
> Jay,
>
> Good to hear from you.
> Shall I add your name to our 1401_interest email?

Not at this point, unfortunately. Way too busy: full time job, plus teaching Linux 1 eve/week at local tech school. But thanks for the offer.

> > Thus you could have up to 100k core on a 1410 or 7010.
> > It also had an interrupt feature ("priority alert: feature),
> > and sported the IBM-PR-155 operating system ...
> > The 1410 had several programming systems (1410-PR-xxx),
> > including a standalone IOCS, the 1410-PR-108 (and disk-based PR-134)
> > (which was called the "processor operating system" -- where
>> "processor" meant compiler,
>
> First that I've heard of these OSes. Is there documentation out
> there? A paper?

There is, at least for PR-155. Less so for PR-108 (but PR-134 is a close relative) Go have a look at www.bitsavers.org/pdf/ibm

And, there are tape images on Paul Pierce's site. They run.

> > Now, if only someone could locate a 1410.
>
> Would a 1440 rank a reasonable second?

The 1440 is, I believe, a much closer relative of the 1401 than 1410.



From: Robert B Garner
Subject: Origins of OS/360 in 7090's SOS/IBSYS and DOS/360 in 1410's PR-155 ? (was "Why no IBM OS on 1401? (was Re: Comments on your comments/questions in RE "Early IBM 1401 ..."
Date: March 16, 2009 at 5:02:38 PM PDT
To: Jack Palmer
Cc: ...
Jack,

Thanks for your detailed and generous reply (below) to my questions about early software development at Time-Life building. (If I may ask, I'd also like to forward this discussion to our 1401_software alias. Please note I've cc'd Fred Brooks on this email.) In particular, I'd like to explore your response to my "Why did IBM not offer an OS for the 1401?":

> As for 1401 operating system aspirations, there were none at Time &
> Life. The technology was unproved -- SOS for the 709 was not
> finished until after the 1401 had been announced with just 4000
> characters of memory, and IBSYS was delivered in 1961, after
> Endicott had taken over. Someone from that organization may speak
> to the question relative to a later time frame.

Although we know of 1401 customers who developed their own primitive batch spoolers/OSes, etc for the 1401, there was no planning for an OS down-released to the 1401 after 1410/7010 OSs? Because 1401 was expected to phase down; OS would have dictated 16K configs; customers didn't need an OS or cared/asked for one; or ? Or you were not involved at that time?

There's an email (copied below) from two 1410 users (Jay Jaeger and Bill Worthington) on the 1410 "PR-155" OS.
Would you agree with his assessment?:
> OS/360 has clear roots coming from the 709x series OSs, and
> DOS/360 has its roots on the 1410 side.

If the Wikipedia entry on SOS (below) is accurate--that IBSYS was the 7090's OS--and Jay's comment that OS/360 had roots in 709x series OS, then the family tree for OS/360 was:
     709's SOS --> 709x's IBSYS --> OS/360 ?
The Wikipedia page on OS/360, doesn't mention its antecedents: http://en.wikipedia.org/wiki/OS/360
> IBM introduced a series of stop-gaps to prevent System/360 hardware
> sales from collapsing—first BOS/360 (Basic Operating System, for the
> smallest, card-only machines), then TOS/360 (Tape Operating System,
> for machines with only tape drives), and finally DOS/360 (Disk Operating System)...

And given Jay's observation:
     1410's PR-155 --> DOS/360 ,

do you know what the origins were of the 1410 OS (PR-155) and 7010 OS (name?)?
Or was 1410's PR-155 OS formed out of whole cloth?

Regards,

- Robert

p.s. This is what Wikipedia says about SOS and IBSYS:
http://en.wikipedia.org/wiki/SHARE_Operating_System

The SHARE Operating System, also known as SOS, was created in 1959 as an improvement on the General Motors GM-NAA I/O operating system, the first operating system, by the SHARE user group. The main target was to improve the sharing of programs over GM-NAA I/O.

SHARE Operating System provided new methods to manage buffers and input/output devices, and, like GM-NAA I/O, allowed execution of programs written in assembly language.

Initially it worked on IBM 704 computer, but later was ported to IBM 709.

Later IBM supported it under the name IBSYS, porting it to its new transistor-based computers, the 7090 and 7094.




From: Alan Kay
Subject: Re: Origins of OS/360 in 7090's SOS/IBSYS and DOS/360 in 1410's PR-155 ? (was "Why no IBM OS on 1401? (was Re: Comments on your comments/questions in RE "Early IBM 1401 ..."
Date: March 16, 2009 at 6:17:09 PM PDT
To: Robert B Garner , Jack Palmer
This is all very interesting stuff!

Just to report YA1401OS, we did a pretty nice one at Air Training Command at Randolph AFB ca 1961-2 that fit nicely in the top 1K of memory (of the total 8K machine) which did quite a few things, including spooling, logging, scheduling, etc. The main architect of this was airman Rachon Andre Douglas, a very smart guy who was cross-trained as a programmer after a tour of duty as a Russian linguist in Germany (the AF found that their airmen linguists also did very well at computing and cross-trained quite a few in the early 60s).

Cheers,

Alan




From: Jay Jaeger
Subject: Re: Origins of OS/360 in 7090's SOS/IBSYS and DOS/360 in 1410's PR-155 ? (was "Why no IBM OS on 1401? (was Re: Comments on your comments/questions in RE "Early IBM 1401 ..."
Date: March 17, 2009 at 5:29:38 PM PDT
To: Robert B Garner. Jack Palmer
The 7010 was plug-compatible with the 1410 with some extensions. It ran the same code. So, 1410-PR-xxx there too, where xxx = { 108, 134, 155 and maybe one other }

I expect that PR-155 took some code from PR-108/PR-134. They would not have re-written Autocoder from scratch, for example. But the notion of separate resident (think kernel - IOCS, system calls) and transitional monitors (think control card parser), limited support for multi-programming (SPOOL and Teleprocessing supervisor), the notion of generating a system, and the like, we all new at that point to the 1400 series. I would imagine that they borrowed what concepts they could from IBSYS in the process. But there had to be a fair amount of new code for that.

Jay




From: Fred Brooks
Subject: Re: Origins of OS/360 in 7090's SOS/IBSYS and DOS/360 in 1410's PR-155 ? (was "Why no IBM OS on 1401? (was Re: Comments on your comments/questions in RE "Early IBM 1401 ..."
Date: March 18, 2009 at 6:48:14 PM PDT
To: Robert B Garner
The 1410/7010 Operating System and SOS were the two equal bases for both OS/360 and DOS/360.

The 1410/7010 Operating System supported disks. I don't believe that it required/mandated a disk for systems residence. Can any of you enlighten me on tht point?

Fred



From: Jay Jaeger
Subject: Re: Origins of OS/360 in 7090's SOS/IBSYS and DOS/360 in 1410's PR-155 ? (was "Why no IBM OS on 1401? (was Re: Comments on your comments/questions in RE "Early IBM 1401 ..."
Date: March 19, 2009 at 5:12:28 PM PDT
To: Fred Brooks, Robert B Garner

> The 1410/7010 Operating System supported disks. I don't believe that it required/mandated a disk for systems residence. Can any of you enlighten me on tht point?

Correct. PR-155 was indeed perfectly happy to use (and usually did use) tape for the System Operating File (SOF). There were lots of tape-only 1410's.

The SOF could also reside on 1301 and 2302 disks. The 1410/7010 OS (PR-155) did support 1311 disks, but as far as I know, you could not place the SOF there, though you could put program libraries there -- you just couldn't boot from it.

(OS/360, by way of TOS, could also reside on tape. I genned and played with TOS for a bit a couple of years back, which I recovered with Paul Pierce and passed on to the Hercules repository. Had to debug Hercules tape-backward support to make it go.

Jay



From: Robert Garner
Subject: Re: Origins of OS/360 in 7090's SOS/IBSYS and DOS/360 in 1410's PR-155 ? (was "Why no IBM OS on 1401? (was Re: Comments on your comments/questions in RE "Early IBM 1401 ..."
Date: March 24, 2009 at 10:20:24 PM PDT
To: Fred Brooks, Jack Palmer
Jack, Fred,

Is it reasonable to suggest that PR-155 (1410/7010 OS) was IBM's first internally written OS for its customers?
Did it ship with the first 1410/7010's, 1961/1962?

Referring to: http://en.wikipedia.org/wiki/Timeline_of_operating_systems and
http://en.wikipedia.org/wiki/SHARE_Operating_System
and Fred's and Jack Palmer's email below, here's an attempt at an IBM OS timeline:

1955: General Motors OS for 701 -- written at GM
1956: GM-NAA I/O for 704 based on GM OS -- written at GM
1957: BESYS for 709x -- written at Bell Labs
1959: SHARE OS (SOS) for 704 and 709 -- improvement of GM-NAA I/O by SHARE users group
1961: IBSYS -- port of SOS to 709x
1961: PR-155 on 1410 -- written by IBM (Pok)
1964: DOS/360 origins were in PR-155 and SOS

One of my sources, shows first 1410 delivered Dec, 1961,

Regards,

- Robert

p.s. What did the acronym PR-155 stand for ? "Program Release 155" ? Clever. ;-)



From: Dick Weaver
Subject: Re: Origins of OS/360 in 7090's SOS/IBSYS and DOS/360 in 1410's PR-155 ? (was "Why no IBM OS on 1401? (was Re: Comments on your comments/questions in RE "Early IBM 1401 ..."
Date: March 24, 2009 at 11:47:55 PM PDT
To: Robert Garner
PR = processor

see (in first few pages)

http://www.bitsavers.org/pdf/ibm/1410/C20-1602-8_1410_pgmCatJun68.pdf

dick w



From: Fred Brooks
Subject: Re: Origins of OS/360 in 7090's SOS/IBSYS and DOS/360 in 1410's PR-155 ? (was "Why no IBM OS on 1401? (was Re: Comments on your comments/questions in RE "Early IBM 1401 ..."
Date: March 25, 2009 at 10:48:55 AM PDT
To: Robert Garner

> Is it reasonable to suggest that PR-155 (1410/7010 OS) was IBM's first internally written OS for its customers?

I have no idea.
All I know is that it and IBSYS were the prototype exemplars that heavily influenced OS/360. >

Fred



From: Jay Jaeger
Subject: Re: Origins of OS/360 in 7090's SOS/IBSYS and DOS/360 in 1410's PR-155 ? (was "Why no IBM OS on 1401? (was Re: Comments on your comments/questions in RE "Early IBM 1401 ..."
Date: March 25, 2009 at 6:48:23 PM PDT
To: Robert Garner, Fred Brooks
I'll have to check this weekend when I have more time, but I'm pretty sure that PR-155 came out a couple of years after the initial 1410 shipments, say, 1965 or later. Before that, one used PR-108.

I *think* IBSYS predates that, but my knowledge on the 7000 series stuff is limited, though I did help with jury rigging a connection from an IBM 7094-II to a Datacraft 6024, using a sense switch as the serial port on the 7094 (Paul Pierce did that part) so we could use the card reader on the Datacraft to read FORTRAN programs into the Purdue University Fast FORTRAN Translator (PUFFT). Totally useless, really, but a whole bunch of fun, until the Motor Generator set welded its shaft to its bearing. talk about smoke.... 8^) [The 7094 had *no* peripherals. It was Fed. surplus from White Sands Missile Range]

If we'd of had a card reader for the 1410 we also had [it came from Oscar Mayer here in Madison -- no balogna] I probably would have used that to do it (though I am not sure what I would have jury rigged to the serial port.

On the 1410 I actually worked on while I was in school, we had IBM put on the RPQ for Telegraph support, and lashed that up to a special box build by UW Instrumentation Services Center, and emulated a UNIVAC 1004 to talk to the UNIVAC 1100 on campus. We had the best UNIVAC printed output on campus with our 1403.



From: Bob C
Subject: Re: Origins of OS/360 in 7090's SOS/IBSYS and DOS/360 in 1410's PR-155 ? (was "Why no IBM OS on 1401? (was Re: Comments on your comments/questions in RE "Early IBM 1401 ..."
Date: March 25, 2009 at 11:15:40 PM PDT
To: Robert Garner, Fred Brooks
Robert, Fred

As far as I remember, the initial programming support for the 1410 came out of Endicott (and T/L). At that time I worked on the 1410, we did not have an operating system for it. That would have come later (late 62 or maybe 1963), after we had transferred the support to POK.
After that transfer, it was renamed to the 7010. I had worked with Yvonne Bonnette and Jim Spence(r?) on the transfer of the my piece of the 1410 support. I seem to recall that POK had implemented some type of "operating system" (or some support) to ease the execution of customer applications. Once I, and others, had completed our transfer efforts, we were assigned to work on the 360.

From my recollections, POK was going to implement ALL the software support for the 360. However, what they had planned could not be implemented in time for the first release of the 360 H/W. Also, the initial H/W was to have an 8K entry-point. That entry-point also proved to be a problem for POK. Endicott was tapped to produce the S/W for those 8K machines and to have it ready to ship with the H/W.
Endicott implemented BPS and BOS (most of the S/W was to fit in less than 8K and leave space for user applications). The Supervisor and Access Methods were generated from macros to allow the user to tailor the support to fit their configurations and requirements.

Later, when POK could not make a 16K entry-point, Endicott was asked to provide the S/W to support that H/W configuration. We had to provide a minimum of 3 partitions - a batch job, a Foreground and a spool partition. The Foreground could be used by TP applications (BTAM and QTAM). We essentially expanded the BPS/BOS support into TOS and DOS.

Since most of the Endicott developers had worked on the 1400 systems, that probably had more influence on JCL (1400 RDLIN cards) and other support that the 709, 7090/4. There was no compatibility between the JCL for the Endicott systems and the OS/360 JCL. Likewise, the Endicott approach to "shoe-horn" the S/W into 6K and 16K systems and leave room for the user, with reasonable performance also created certain compatibilty issues with OS/360. Wedid keep the file formats compatible.
As I recall, when POK finally delivered their support, PCP (Primary Control Program - not the hallucinogenics), it required 64K. I believe MFT could run in a 128K machine, but ran better in 256K.

I do remember that Dave Freeman headed up a small group to write a 360 simulator on the 7090/94. I also remember Bob Simonik being one of the people who assisted Dave. As we staffed up to support the 360 effort, Dave was named manager of the IOCS Dept. He had responsibility, not only for the IOCS, but also the Supervisor, Job Control and access methods. We began implementing the support for BPS and BOS under Dave.
Dave was a "very hands-on" type of manager, it would not be surprising that some of his knowledge of the 7090/4 system might have influenced some of the design of the Supervisor, along with any H/W similarities.
Personally, I can't really comment on what influence the 7090/4 might have had on the BPS/BOS Supervisor as I never worked on that system.
Later, John Wertheim took over as manager of the IOCS group.

Please remember, I am attempting to recollect a lot of what I saw and did 45 years ago. I also had meetings with the POK developers. I went to POK quite often back then because of ISAM and BDAM. Bob Perry was the POK manager who had responsibility for the access methods back then. He had 2 people assigned to ISAM and BDAM, Betty McDonough and another person. Later, they left the project and, from what I recall, they "sub-contracted" out the ISAM project. I remember having discussions with them and, in spite of the agreements, incompatibilities crept into the OS/360 version. That and other issues is what eventually led to the development of VSAM.

I am attaching a TIF file of the Endicott organization, dating 8/3/64.
That group was still working on the BPS/BOS support.

Bob C.

P.S. Fred, do you ever have nightmares about some of the "discussions" between/with Marty Belsky and Scott Locken?




From: "Bob C."
Subject: Re: Origins of OS/360 in 7090's SOS/IBSYS and DOS/360 in 1410's PR-155 ? (was "Why no IBM OS on 1401? (was Re: Comments on your comments/questions in RE "Early IBM 1401 ..."
Date: March 26, 2009 at 12:21:45 AM PDT
To: Robert Garner
Robert,

check IBM Sys. Journal, Vol/ 6 (1967), Issue 1.

Dave Freeman, et al wrote an article on the function and design of TOS/DOS. Dave cites that TOS/DOS offer "FUNCTIONAL SERVICES" comparable to the 7010 and 7090 IBSYS. That is a slightly different implication than what has been implied in some of the e-mails flying around - at least to my way of thinking. Also, BPS preceded TOS and BOS preceded DOS.

See: http://www.research.ibm.com/journal/sj/061/ibmsj0601B.pdf .

By the time you see this, you will have already read my previous e-mail, which "drones on".

Here is a "cited" reference by Dave.

http://www.research.ibm.com/journal/sj/022/ibmsjIIRIIG.pdf

BTW, the procedure that is outlined in the article by Ricour and Mei

( http://www.research.ibm.com/journal/sj/061/ibmsj0601D.pdf )

was actually developed by me for ISAM. I also patented that procedure, but in H/W terms (see "patent 3426332"). At that time, S/W could not be patented. In fact, I suspect 99% of the S/W patents would be invalidated due to prior art and being obvious implementations.

Bob

Endicott Programming System 8/3/64).



From: Jay Jaeger
Subject: Re: Origins of OS/360 in 7090's SOS/IBSYS and DOS/360 in 1410's PR-155 ? (was "Why no IBM OS on 1401? (was Re: Comments on your comments/questions in RE "Early IBM 1401 ..."
Date: March 26, 2009 at 4:31:56 PM PDT
To: Robert Garner, Fred Brooks, Jack Palmer
You know, when I get some time, I'll go thru my 1410 SGF tape file and see if I can find any date hints in there -- but not before this weekend.

Jay




From: "Bob C."
Subject: Re: Origins of OS/360 in 7090's SOS/IBSYS and DOS/360 in 1410's PR-155 ? (was "Why no IBM OS on 1401? (was Re: Comments on your comments/questions in RE "Early IBM 1401 ..."
Date: March 26, 2009 at 10:57:45 PM PDT
To: Robert Garner, Fred Brooks, Jack Palmer, Jay Jaeger
Jay

One thing to keep in mind. Back in the 50s and 60s, not all 1400 (1401 -> 1410) was written by Ebdicott Programming Systems. A lot of support and application code was written in customer shops, typically by IBM System Engineers.
IBM also had Data Centers which also wrote code. In most instances, the Programming System programmers were not aware of of all that existed. One avenue of disseminating information back then was the IBM Technical Information Exchange (TIE papers). Only a few of us (Endicott P.S.) ever made an effort to keep up with them. There was also the S/W oriented IBM System Journal, started back in 1962

One thing to keep in mind about the 1410. Earl Wheeler's dept. produced the first COBOL based on the 1961 COBOL specification on the 1410 before implementing it on the 1401. His dept. was in a "race" so IBM could have the first available COBOL (61). I don't remember the reasoning for implementing it on the 1410 first (maybe because more memory made the implementation easier and faster). I also don't recall them implementing any "operating system" to compile and run COBOL programs. If you know how to contact Earl or one of the developers, they could shed more light on the early 1410.
As Ihad mentioned in an early e-mail, the rest of us diid not get involved on the 1410 until after we had completed the 1401 support.

As for IBSYS/IBJOB, you may find the following 2 articles from the 1962 IBM System Journal worthwhile.

A. S. Noble Jr.

http://www.research.ibm.com/journal/sj/022/ibmsjIIRIIG.pdf

R.B. Talmadge

http://www.research.ibm.com/journal/sj/022/ibmsjIIRIIH.pdf

Briefly glancing through them, I can see where they would have influenced the BOS/DOS Supervisor/Linkage Editor implementation (especially given Dave Freeman's background and responsibilities in Endicott's early 360 effort)

Bob C.




From: Bill Worthington
Subject: Re: Origins of OS/360 in 7090's SOS/IBSYS and DOS/360 in 1410's PR-155 ? (was "Why no IBM OS on 1401? (was Re: Comments on your comments/questions in RE "Early IBM 1401 ..."
Date: March 30, 2009 at 5:56:44 PM PDT
To: Jay Jaeger
As a minor point, when IBM's operating systems for S/360 were announced, there were several:
  • Basic Programming Support (barely tape resident, with job to job transition)
    • Known as BPS
  • Basic Operating System (three flavors)
    • 8K Basic Operating System/360 (disk resident)
      • (Discontinued)
    • 16K variant of the Basic Operating System/360 -- tape resident
      • Renamed Tape Operating System/360 (TOS/360)
      • (Discontinued)
    • 16K variant of the Basic Operating System/360 -- disk resident
      • Renamed Disk Operating System/360 (DOS/360) and multiprogramming added
      • Renamed DOS/VSE
      • Renamed VSE/ESA
      • Renamed z/VSE
  • Operating System/360 (three flavors -- controlled by generation options) (Known as OS/360)
    • Primary Control Program -- single thread operating environment
    • Multiprogramming support
      • Replaced by OS/Multiprogramming with a Fixed number of Tasks (OS/MFT)
      • Replaced by OS/Virtual Storage 1 (OS/VS1)
      • (Discontinued)
    • (I can't remember the proper name. It broke main storage down into slots for programs to occupy and then allocated them by program size. It was a variable memory system, but got bogged down by not always having enough contiguous space available to a program to fit into. I think that NASA Houston was the only customer (maybe all NASA??) to make it run after lots of focus by the Federal Systems Division.)
      • Replaced by OS/Multiprogramming with a Variable number of Tasks (OS/MVT)
      • Replaced by OS/Virtual Storage 2 (OS/VS2)
      • Replaced by OS/Multiple Virtual(?) Systems (MVS)
      • Replaced by z/OS
  • Time Sharing System/360 (known as TSS) for S/360 Model 67
    • Long struggle to release
    • It used 32-bit addressing (Yes!! 32-bit)
    • A TSS/370 was released (primarily) for NASA
  • Control Program/Cambridge Monitor System for S/360 Model 67
    • Became Virtual Machine Facility/370 and Conversational Monitor System
    • Became VM/ESA
    • Became z/VM

BPS/360 and BOS/360 (including TOS and DOS) started with a similar job control language which was dissimilar to OS/360. I managed to install most of the above at one time or another.

I don't have the dates for the above operating systems.

Bill




From: Jay Jaeger
Subject: Re: Origins of OS/360 in 7090's SOS/IBSYS and DOS/360 in 1410's PR-155 ? (was "Why no IBM OS on 1401? (was Re: Comments on your comments/questions in RE "Early IBM 1401 ..."
Date: March 31, 2009 at 4:27:57 PM PDT
To: Bill Worthington
I had forgotten that TOS had little to do with OS/360 (oops). I got it confused with PCP.

As for OS/360, my understanding is this. There were three flavors of OS/360, as Bill identified: PCP, MFT and MVT (Source: IBM's early 360 and 370 computers, MIT Press). Although it may not have been originally announced that way, by 1967, when it was released, it was MVT.

According to the book in the beginning there were two concepts: supervisors and schedulers. There were 3 supervisors and 2 schedulers.

PCP was pretty limited, and could only run one job at a time. It had the lowest level of scheduler and supervisor.

The animal that broke memory down into fixed sized slots was MFT. Fragmentation was not an issue. It had the level 2 supervisor and level 2 scheduler. (We didn't run it, but other agencies I know did).

MVT had variable sized slots ("regions") for programs to occupy. It was the level 3 supervisor, along with the level 2 scheduler. Fragmentation was an issue, and I'd guess that was a problem especially early on -- if the initiator had a memory leak, you'd be stuck with fragmentation.

According to the book, MFT was delivered in November 1966, MVT in August 1967. NASA was probably just an MVT guinea pig.

At Wisconsin DOT, we ran MVT until fall 1976, and fragmentation was definitely an issue from time to time. (We then switched to MVS on an Amdahl 470/v6). It would not shock me if the first customer running MVT were NASA, and that it took a lot of debugging. I know that before my arrival, IBM had to work pretty hard to get SMP working properly under MVT on our 360 65/MP system.

NASA at Houston developed HASP for spooling to replace the normal OS/360 "readers" and "writers". That later turned into JES2.

There is of course a much longer litany between MVS and z/OS: MVS/SP, MVS/XA and MVS/ESA (not necessarily in that order).

Jay




From: Jay Jaeger
Subject: Re: Origins of OS/360 in 7090's SOS/IBSYS and DOS/360 in 1410's PR-155 ? (was "Why no IBM OS on 1401? (was Re: Comments on your comments/questions in RE "Early IBM 1401 ..."
Date: April 4, 2009 at 5:24:08 AM PDT
To: Robert Garner, Fred Brooks, Jack Palmer
In those days there was a publication called the "program catalog"

http://www.bitsavers.org/pdf/ibm/1410/C20-1602-8_1410_pgmCatJun68.pdf

Each program had a two-character code. PR stood for "Processor" - something which was a package included things like Autocoder (AU by itself), CB (COBOL by itself), IO (IOCS), and, of course, a Supervisor (SV).

(A quick look there will confirm that PR-134 is indeed PR-108 with disk system residency).

Jay




From: Fred Brooks
Subject: Re: Origins of OS/360 in 7090's SOS/IBSYS and DOS/360 in 1410's PR-155 ? (was "Why no IBM OS on 1401? (was Re: Comments on your comments/questions in RE "Early IBM 1401 ..."
Date: April 4, 2009 at 7:01:00 AM PDT
To: Jay Jaeger
Unfortunately, the 1968 date of the program catalog doesn't tell us much about when PR-134 with disk system residency appeared, which is the interesting question.



From: Jay Jaeger
Subject: Re: Origins of OS/360 in 7090's SOS/IBSYS and DOS/360 in 1410's PR-155 ? (was "Why no IBM OS on 1401? (was Re: Comments on your comments/questions in RE "Early IBM 1401 ..."
Date: April 4, 2009 at 10:28:10 AM PDT
To: Fred Brooks
I'll add it to my "research list", but, as a guess, it probably was not too long after the 1301 was available.

The question already on the list is when did PR-155 appear -- and I'm guessing that was a fair bit later than PR-134.

Jay




From: Jay Jaeger
Subject: Re: 1401's IOCS vs. 1410's PR-108 (was Re: Comparing code size for 1401 vs 360
Date: July 24, 2011 at 6:51:09 PM PDT
To: Robert Garner
1410-PR-108 (not that this is 1410, not 1401) consisted of:

An IOCS that could be generated and put into a library.
A library manager (for libraries of macros and object code)
An assembler, COBOL, RPG and FORTRAN (I think)
A very small monitor that was NOT resident between programs
Some conventions so that all of the compilers, etc. used the same IOCS and libraries.

IBM called PR-108 (and its disk-oriented cousin, PR-134) POS" -- processor (as in assembler/compiler) operating system.

The IBM 1410 program that was a "real" operating system was 1410-PR-155 . It had a true resident monitor and also a transitional monitor that was loaded between program executions to process control cards, etc. IBM called PR-155 an operating system, which was appropriate.

Jay




From: Bill Worthington
Subject: Re: 1401's IOCS vs. 1410's PR-108 (was Re: Comparing code size for 1401 vs 360
Date: July 25, 2011 at 1:26:55 PM PDT
To: Robert Garner
Robert, I would support your opinion of IOCS and perhaps reduce it slightly.

With the 1401, Input/Output Control System (IOCS) was merely a set of macros that could be used by the Autocoder compiler. It generated code for doing I/O to the standard 1401 set of devices -- tape, disk, card reader, card punch and printer -- as Dan's reference to the IOCS Manual states. (Actually, the manual gives the devices supported on the 1401, 1440 and 1460.) As Dan says, almost nobody used IOCS for card and printer I/O. Disks with their three access methods were more complex and customers generally used IOCS for them. Tape was a middle ground.

IMHO, an operating system has to provide program-to-program (step-to-step or job-to-job) transition. IOCS does not provide this. There is a program which I donated to the Museum over three years ago which did provide this for 1401 and 1440 systems. It was a monitor program developed for the Christian Science Mother Church in Boston which had a small, core resident program which provided program-to-program transition using control cards. (Oh no! it could have been called it the Christian Science Monitor. ) It also allowed program overlays. It required a portion of a1311 disk as the program library. It had utilities for maintaining the library too. I wouldn't quite call this an operating system, but it came close to meeting Jay's definition..

I used the monitor when I wrote my Autocoder to S/360 Assembler Language Translator (ASALT) which permitted customers to use their existing 1400 system to convert Autocoder/IOCS programs to any of the three flavors of the Basic Operating System -- BOS, TOS and DOS -- without having to eat into their S/360 test time at an IBM Datacenter. ASALT's generated code would have required over 64K of memory without the ability to overlay segments of it. It was also over 6,000 cards -- not including utilities.

Bill Selmeier and I and others spent quite a bit of time taking the 1401 programs that were donated to the Museum (including mine above) and putting them on a CD. See "Punch card programs for the IBM 1401" -- CHM catalog item X3011.2005.

Regards,
Bill



From: Dan Espen
Subject: Re: 1401's IOCS vs. 1410's PR-108 (was Re: Comparing code size for 1401 vs 360
Date: July 25, 2011 at 2:45:37 PM PDT
To: Bill Worthington
I think I'll conceed that 14xx IOCS is not an operating system.
It did check disk and tape labels at run time, but all the logic was loaded along with the user program.

This statement by Bill is of interest to me:

> IMHO, an operating system has to provide program-to-program (step-to-step or
> job-to-job) transition. IOCS does not provide this."

Early on I started writing my end of card input routines to not only check for physical end of input on the card reader, but ALSO the presence of a comma in column 1 of the input area. You'll all remember that a comma is the opcode for SW (Set Word Mark), and is always present in a self loading object deck.

On a 1440, the card input area could be anywhere, so all the program had to do after end of job processing is clear all the word marks in 1-80,
set one in position 1,
move the input card to 1-80 and branch to 1.
On 1401/1460 you'd probably already have a word mark in 1 so you might have to clear some word marks then branch to 1.

The point is, managing job-to-job transition was no big deal.

Bill also says:

> Disks with their three access methods were more complex and customers
> generally used IOCS for them.

I generally worked in smaller shops.
I never willingly used IOCS even for disk.
IBM provided a routine 500 bytes long that would read or write 100 characters at a given sector.

Sequential I/O was simple since sectors were numbered sequentially.
We did various kinds of random and keyed I/O using our own custom written logic.



From: "J. H. McCarthy"
Subject: Re: IBM 1410
Date: July 17, 2019 at 12:12:55 PM PDT
To: Ron Mak
Thanks Ron: The 1410 was being developed in Endicott the same time that the 1401 was being developed. It was a larger and more sophisticated than the 1401. Before the design was complete the project and associated engineers were transferred to Poughkeepsie, NY where the design was finished and the product was manufactured. --- Jud