I still have a HASP manual in the basement. If you need anything more
specific, let me know.
"JES" stood for "Job Entry Subsystem" as I recall, and was another batch
process handler.
Kevin
Lisa or Jeff wrote:
>
> One thing that always confused me was the difference between
> "MVS", "HASP", and "JES".
>
> I always thought the three terms were interchangeable--that they
> basically referred to IBM's S/370-390 operating system that
> grew out of OS/MVT.
>
> At work, we refer to the printout of dataset use and disposition
> and condition codes as the "HASP listing". Actually, we never
> use the term "JES".
>
> I presume the spooler, job scheduler, resource allocator (both
> CPU and peripheral), and actual CPU supervisor were all part of
> "MVS".
Depending upon how precise you want to be, the terms are not
interchangeable. The spooler and the job scheduler are parts of either
JES2 or JES3. Managing CPU time is done by MVS itself, as is
allocating I/O devices, although JES3 gets involved in the latter.
IBM's term "JES" (Job Entry Subsystem), when used loosely, refers to a
job scheduling and spooling system supporting an OS. More
pedantically, over the years there have been three distinct JES
systems. These were quite different packages; they were not just
different release levels of the same software:
JES (there never was a "JES1") was the spooling system for OS/VS1, the
virtual-storage descendant of OS/360 MFT.
JES2 was the spooling system for most MVS systems. It was derived from
HASP, a spooling system for OS/360 MFT or MVT. HASP4 was the spooling
system for OS/VS2 Release 1 ("SVS"), the virtual-storage descendant of
OS/360 MVT. MVS -- originally announced as OS/VS2 Release 2 and soon
renamed -- was an extensive reworking of the MVT base system. An MVS
system could choose either JES2 or JES3 as its spooling system.
JES3 was the other spooling and job management system for MVS.
Spooling was only one part of this very elaborate system, which was
designed mostly for multi-CPU environments. In its original form it
assumed that driving the unit record equipment would be the job of a
separate CPU. JES3 was derived from ASP (Attached Support Processor),
which ran under OS/360.
The other IBM 370 OS's introduced in 1972 avoided the "JES"
terminological confusion: DOS/VS, derived from DOS/360, could run
IBM's optional POWER spooler. VM/370, derived from CP/67, had its own
built-in spooler.
- Jim Saum
>One thing that always confused me was the difference between
>"MVS", "HASP", and "JES".
>
>I always thought the three terms were interchangeable--that they
>basically referred to IBM's S/370-390 operating system that
>grew out of OS/MVT.
>
>At work, we refer to the printout of dataset use and disposition
>and condition codes as the "HASP listing". Actually, we never
>use the term "JES".
>
MVS was the operating system. HASP (Houston Automatic Spooling, if I
remembe correctly) was one of the input/output/spooling/ scheduling
commponents developed for MVT that would also run under early MVS.
JES was the spooling system for MVS. It came in two very different
flavors JES2 and JES3. While the basic JCL was the same, there were
special JES control cards to handle routing and output processing that
were very different between the two versions.
Many companies extensively modified HASP (they had source in those
days) and were unable to move to JES for many years as the existing
systems satisfied their needs. I think it was MVS SP3 that finally
broke the links and wouldn't run HASP any more. But by then it was
pretty much gone by the wayside anyway.
>I presume the spooler, job scheduler, resource allocator (both
>CPU and peripheral), and actual CPU supervisor were all part of
>"MVS".
No. you had your choice. JES3 was for the really big or wide spread
sites.
Scott Peterson
If your dog is fat, you aren't getting
enough exercise
What, no RJE? ;)
OS/360 (MFT and MVT) was lousy at directly handling unit record
devices. HASP (Houston Automatic Spooling Program) was privileged
user job (OS/360 thought it was just a job) that was created to cure
this situation. It would allocate the real card readers and printers
to itself, and create a bunch of fake devices. It read the jobs on
the card readers mangled the JCL to point at these fake devices. Then
whenever the user program issued an I/O to one of these fake devices
HASP would intercept the I/O and satisfy the request using its disk
spools. It was smart about all this and a program that needed/wanted
direct access to a unit record device could easily get it with the right
JCL.
HASP was distributed through the user's group and was not officially
supported by IBM. The official line was that it was not needed,
and they tried hard to ignore it out of existence. The customers
disagreed and essentially all the big users installed it.
When the /370 systems with paging came out and OS/360 MVT evolved
into MVS, IBM threw in the towel on the old spooling techniques
in OS/360 and brought out JES. JES was rumoured to have evolved
from the HASP source, and was more closely integrated to the OS.
>
> What, no RJE? ;)
RJE was one of the services supplied by HASP.
I worked on HASP starting with OS release 11 ... up thru OS release
18 (HASP-III). One of the things was putting in CMS edit syntax as
well as 2741 & TTY support for early form of CRJE support.
there was also ASP (asyncronous spooling program) done out on the
west coast.
Migrating HASP into the IBM official product (instead of TYPE-III program)
... group finally landed in G'burg and HASP was renamed to JES2. The
G'burg group also eventually picked up ASP ... renamed to JES3. My wife
worked on JES2 & JES3 in the g'burg group until she was con'ed into going
to POK to be responsible for loosely-coupled (she originated peer-coupled
shared data ... original basis for IMS hot standby ... and then parallel
sysplex).
--
--
Anne & Lynn Wheeler | ly...@garlic.com, finger for pgp key
http://www.garlic.com/~lynn/
>HASP was distributed through the user's group
No. It was distributed through the normal IBM channel (PID, or
Program Information Department). For some reason I still recall
the program ID number for the original version: 5.1.014.
> and was not officially
>supported by IBM. The official line was that it was not needed,
>and they tried hard to ignore it out of existence. The customers
>disagreed and essentially all the big users installed it.
True. HASP *was* distributed as an "unofficial, unsupported program
written informally by IBM employees," which was the official definition
of so-called "Type 3" programs. (Quickie Quiz: what type of vehicle
was the favorite of the HASP development team?)
There was no "official" support, but as a practical matter IBM management
recognized that HASP was for all intents and purposes critical to the
success of the OS/360 system, and by extension of the large IBM hardware
product line. There were HASP newsletters sent to customer sites, and
Tom Simpson's team was available to help users who ran into trouble.
Over the years I had several occasions to call for support and would
wind up talking directly to the original programmer of the code in
question. It was a sad day when IBM put other people between the
users and the authors.
And for many years IBM sent Dick Hitt (one of Tom's people on the HASP
team) to SHARE meetings to play the piano at the HASP songfest.
>When the /370 systems with paging came out and OS/360 MVT evolved
>into MVS, IBM threw in the towel on the old spooling techniques
>in OS/360 and brought out JES. JES was rumoured to have evolved
>from the HASP source, and was more closely integrated to the OS.
That's JES-2 that was the outgrowth of HASP. And in any case, the
"Type-1 spooling" that shipped with MVT was incapable of providing
useful function in most shops, so OS/360 users ran either ASP (if
you had lots of computer power) or HASP (if you didn't).
ASP was huge, and begat the similarly huge JES-3. HASP, on the
other hand, was quite compact, and some wags claim that its name
was a direct result of comparisons of the sizes of the two competing
spoolers: the memory requirement of HASP was Half-ASP.
Joe Morris (who still occasionally hums "HASPy Days are Here Again")
>I worked on HASP starting with OS release 11 ... up thru OS release
>18 (HASP-III). One of the things was putting in CMS edit syntax as
>well as 2741 & TTY support for early form of CRJE support.
Um...that was HASP-II version 3, no?
Joe Morris
>ASP was huge, and begat the similarly huge JES-3. HASP, on the
>other hand, was quite compact, ...
In fairness to any ASP/JES3 fans who may be around, ASP (Attached
Support Processor) also did a lot more than HASP, e.g., controlling
cross-system job flow, managing dataset and device allocation so that
OS wouldn't get into allocation delays, and so on.
>..., and some wags claim that its name
>was a direct result of comparisons of the sizes of the two competing
>spoolers: the memory requirement of HASP was Half-ASP.
Another (possible) meaning of the term "half-ASP": ASP usually ran in
a multi-CPU complex. The simplest setup had two CPUs, called a "local"
and a "main". For testing or fallback purposes you could run both
functions on a single CPU, a configuration I remember hearing called
"half-ASP". (This is second-hand; I never worked in an ASP shop
myself.)
Another option for ASP testing was in virtual machines. ASP and JES3
used channel-to-channel adapters (CTCA's) to communicate among CPUs in
the complex. VM/370 (and CP/67 before it, I assume) could simulate
virtual CTCA's connecting virtual machines. So one could test an ASP
complex of several virtual machines all in one real machine under CP.
>Joe Morris (who still occasionally hums "HASPy Days are Here Again")
"To run without it is a sin, ..."
- Jim Saum
That wasn't a piano; it was a S/360 Model 88. There was a story
going around at the time that only one 88 existed and it was
shipped from one SHARE meeting to the next, but I don't know how
much credence to attach to such a tale.
--
Eric Sosman
eso...@acm.org
>That wasn't a piano; it was a S/360 Model 88. There was a story
>going around at the time that only one 88 existed and it was
>shipped from one SHARE meeting to the next, ...
One unfortunate trend is the reuse of historic product names,
e.g., IBM's reuse of the terms "RAMAC" (for both the 305 product of
the mid-1950's and a recent RAID product) and "360" (for both S/360
and the ThinkPad 360). Sentimentalists like me would rather see
historic product names retired, the way teams retire the numbers of
legendary athletes.
Now I see that IBM reused the "88" model number, too, for both the
SHARE-RPQ S/360 Model 88 and the rebranded Stratus fault-tolerant
servers they sold as IBM System/88's.
- Jim Saum
the university was running studant fortran jobs on 709... tape-to-tape
ibsys ... with 1401 providing front end unit-record<->tape support. I
believe thruput was in jobs per second.
initial conversion to OS Release MFT 9.5 on 360/67 (running in 65
mode) resulted in changing from jobs per second (on 709) to minutes
per job (on 360).
adding hasp got the times to around 20-30 seconds per job i.e. w/o
hasp system was running syncronous unit-record input (card-reader)
... processed by the compiler and almost as each card processed
... syncronous unit-record (printer) output. HASP provided asyncronous
processing for the unit-record gear ... allowing "jobs" to be run
effectively at asyncronous buffered disk-to-disk speed.
However that was still slower than the 709 with ibsys & fortran
monitor running tape-to-tape.
waterloo introduced a fortran monitor (watfor) that would accept
multiple student jobs for compile and execution ... and would do it
very efficiently ... and finally we started to see fortran student
workload thruput on the 360 surpase the 709.
--
OS Performance Studies With CP/67
OS MFT 14, OS nucleus with 100 entry trace table, 105 record
in-core job queue, default IBM in-core modules, nucleus total
size 82k, job scheduler 100k.
HASP 118k Hasp with 1/3 2314 track buffering
Job Stream 25 FORTG compiles
Bare machine Time to run: 322 sec. (12.9 sec/job)
times Time to run just JCL for above: 292 sec. (11.7 sec/job)
Orig. CP/67 Time to run: 856 sec. (34.2 sec/job)
times Time to run just JCL for above: 787 sec. (31.5 sec/job)
Ratio CP/67 to bare machine
2.65 Run FORTG compiles
2.7 to run just JCL
2.2 Total time less JCL time
1 user, OS on with all of core available less CP/67 program.
Note: No jobs run with the original CP/67 had ratio times higher than
the job scheduler. For example, the same 25 jobs were run under WATFOR,
where they were compiled and executed. Bare machine time was 20 secs.,
CP/67 time was 44 sec. or a ratio of 2.2. Subtracting 11.7 sec. for
bare machine time and 31.5 for CP/67 time, a ratio for WATFOR less
job scheduler time was 1.5.
I hand built the OS MFT system with careful ordering of
cards in the stage-two sysgen to optimize placement of data sets,
and members in SYS1.LINKLIB and SYS1.SVCLIB.
MODIFIED CP/67
OS run with one other user. The other user was not active, was just
available to control amount of core used by OS. The following table
gives core available to OS, execution time and execution time ratio
for the 25 FORTG compiles.
CORE (pages) OS with Hasp OS w/o HASP
104 1.35 (435 sec)
94 1.37 (445 sec)
74 1.38 (450 sec) 1.49 (480 sec)
64 1.89 (610 sec) 1.49 (480 sec)
54 2.32 (750 sec) 1.81 (585 sec)
44 4.53 (1450 sec) 1.96 (630 sec)
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
--
Anne & Lynn Wheeler | ly...@adcomsys.net, ly...@garlic.com
http://www.garlic.com/~lynn/ http://www.adcomsys.net/lynn
okk .... hasp-i would work on pcp & mft ... and could take over the
machine by modifying the svc new psw directly.
for mvt there was storage protection support and some misc. convention
changes ... which required the installation of a TYPE-1 svc handler
for HASP to assume the privileges it needed.
--
>Joe Morris wrote:
>> And for many years IBM sent Dick Hitt (one of Tom's people on the HASP
>> team) to SHARE meetings to play the piano at the HASP songfest.
>That wasn't a piano; it was a S/360 Model 88. There was a story
>going around at the time that only one 88 existed and it was
>shipped from one SHARE meeting to the next, but I don't know how
>much credence to attach to such a tale.
The "model 88" joke started, IIRC, after a SHARE meeting in New York
when the unions made a huge stink over the idea that a guest in the
hotel would be so stupid as to want to play a piano. (Speakers at
the sessions were warned to avoid doing anything that would appear to
infringe on the unions' territory -- such as moving boxes of handouts
from a hotel room into a meeting room.)
Anyway, there was a movement to end the HASP Songfest, but the result
was that the Board of Directors decided that it was appropriate to
continue the tradition, and that it would ensure that Thursday night
in SCIDS (the boozefest) it would provide a "HASP Model 88 processor,
with no strings attched."
(At least up to the time we got rid of our IBM mainframe and stopped
going to SHARE, no further meetings were held in New York. SHARE
members had better things to do than argue with unions.)
Joe Morris