Você está na página 1de 6

What is a "Mainframe"?

Home SiteMap Email

Mainframe is an industry term for a large computer...


by Viking Waters

by Lance H. Vaughan
Reprinted here with his permission

Having read John Campbell's "What is a Mainframe", and


having been asked this question myself many times I would
like to propose a more illuminating definition. First, however,
some very brief biographical info. I first became interested in
computing machines as a teenager. In those days the 2nd
generation was rapidly drawing to a close and System/360
was about to change the computing landscape. My first
programming experience was in high school, where my class
had access to a very fast IBM 7094-II (and before you ask,
no, my high school did not have its own 7094; we were
allowed limited use of one of MIT's systems). In college I
majored in math, primarily because computer science as a
major was still about 4 years in the future. Nevertheless, my
first love has always been computing machines, and I have
invested a lifetime of study and labor in this industry. I have
worked with all platforms except vector processing based
supercomputers. My favorite has always been, and remains
to this day, the mainframe.

One might suppose that it would be easy to define a


mainframe, but such is not the case. Some definitions are so
broad that they include all computing platforms. Others seek
to concentrate on some particular aspect of mainframe
computing (such as the operating systems which run on a
mainframe) and declare that a mainframe is that which runs
or supports this computing aspect. This latter definition
suffers from two problems: 1) it is completely
unenlightening; and 2) it is misleading. For example, the
FLEX/ES simulator allows one to run OS/390, VM, and
VSE/ESA on a fast Intel processor. Yet most people who have
worked with both classes of machine would intuitively
consider the Intel PC to be the opposite of a mainframe.

Moreover, in the debate between client/server oriented


computing, and mainframe based solutions, the inability to
clearly define the latter has cost more than one data center
its mainframe. The "new paradigm" proclaimed that a
clustering of small, limited architecture machines,
interconnected by elaborate topologies, was the wave of the
future. Lost to a nontechnical senior management was the
fact that in implementing this new computational model they
were at the same time eliminating the most powerful,
comprehensive, and sophisticated class of computing
platforms ever brought to the marketplace.

So what is a mainframe? In order to answer this question I


sat down one weekend and reviewed the history of
mainframe computing, concentrating on those elements that
are unique to the mainframe world. The result of this effort
was the following definition, which has the dual advantages
of being both concise and precise. It also invites elaboration
and serves as the starting point for an in depth discussion of
the issues it raises:

"A mainframe is a continually evolving general purpose


computing platform incorporating in it architectural definition
the essential functionality required by its target
applications."

Some additional comments about this definition are in order.


One of the most fundamental features of the mainframe
world is the rapid and apparently endless evolution of the
product line. From 16 general and 4 floating point registers
of System/360, to the control register additions in the early
370s, to the access registers of the latter 370s, to the full
complement of floating point registers of System/390 and
the full 64 bit implementation offered by the z800/900
models; from 6 selector channels to 16 block multiplexing
channels to 256 high speed optical channels; from 142
instructions to over 500 instructions; from real addressing to
virtual addressing to virtual machines; from the simple 8 bit
memory of the 360/30 through generations of development
to the multiported, multilevel caching, multiprocessor
supporting memory of the z900, the entire hardware domain
of the mainframe world has been characterized by an
unmatched, and indeed accelerating, evolution.

During much of the first 20 years of the modern mainframe


era (which began on April 7, 1964) individual models of the
mainframe line were targeted by competitive systems
heavily optimized to provide a superior price/performance
product within a well defined niche market. As the
mainframe evolved through product refresh cycles and new
product announcements, the niche advantage offered by
these special purpose competitors was marginalized, and
their ability to compete in a market that demanded an ever
greater general purpose capability was simply overwhelmed.

The most critical defining element of the mainframe


paradigm is that the solutions it provides are implemented
primarily in hardware, including microcode, an approach
(contrary to what many users of other platforms might
imagine) that is truly unique to the mainframe world. From
the early RPQs of the 360 era, to the numerous "assists" of
the primary 370 era, to the full blown architectural
enhancements of the late 370 and 390 periods the
mainframe has been a hardware test bed of unmatched
scope and versatility. By way of comparison, you may recall
that a few years ago Intel added a half dozen instructions to
its line of Pentium processors to facilitate graphics
processing. Their announcement took a certain pride in
noting that this was the first change to the PC's instruction
set in the previous 13 years!

One of the most striking elements of mainframe computing,


when viewed over time, is the extent to which the
architecture changes to accommodate user requirements.
One of the early selling points of System/360 was its stand-
alone emulation of 2nd generation systems. By the time
System/370 came along, stand-alone emulation was
replaced by integrated emulation, a critical user
requirement. Hundreds of RPQs have been made available
over the years to satisfy one user requirement or another.
Some of these solutions were limited time offerings; others
became a permanent part of the architecture. One of my
favorites from the former group was the High Accuracy
Arithmetic Facility (HAAF) available on the IBM 4361. This
mainframe, marketed as a supermini, was targeted at
university math and physics departments. With installation
of the HAAF one could do floating point arithmetic without
carrying a characteristic in the floating point number.
Moreover, all errors introduced by fraction (mantissa)
shifting were eliminated. This facility permitted floating point
arithmetic to be analyzed for accuracy under a wide range of
computational conditions, a stunning capability for the math
and physics users.

In summary, the essential characteristics of a mainframe


are: rapid and continuing evolution, general purpose
orientation, hardware implemented solutions, and the
criticality of user input to all of these processes.

by Lance H. Vaughan
Reprinted here with his permission

What is a Mainframe?
Definition from SDS
Mainframes used to be defined by their size, and they can
still fill a room, cost millions, and support thousands of users.
But now a mainframe can also run on a laptop and support
two users. So today's mainframes are best defined by their
operating systems: Unix and Linux, and IBM's z/OS, OS/390,
MVS, VM, and VSE. Mainframes combine four important
features: 1) Reliable single-thread performance, which is
essential for reasonable operations against a database. 2)
Maximum I/O connectivity, which means mainframes excel
at providing for huge disk farms. 3) Maximum I/O bandwidth,
so connections between drives and processors have few
choke-points. 4) Reliability--mainframes often allow for
"graceful degradation" and service while the system is
running.

What is a Mainframe?
By Mike
Over the past couple of years, I have had more email then I
can answer regarding "What is a mainframe?" Mostly from
students and newbies to our chosen profession as a
mainframe systems programmer.
It was once defined that a mainframe, was a room or more of
computer equipment. To describe a mainframe as a host
system whose OS origins predate the PC and primarily used
a text dumb terminal model for user interaction. That is no
longer the case in the general sense of the words. Yes,
mainframes can still occupy a room full of equipment and
cost million of dollars and support thousands of users. Today,
a mainframe can also run in a laptop and support only a
couple of users.
I would define a mainframe today as a operating system.
Namely, IBM's z/OS MVS/ESA (OS/390), VM/ESA & VSE/ESA.
All are considered as a mainframe operating system in the
old sense of the word. Some people may argue that UNIX /
LINUX is a mainframe operating system. In the true sense,
they are a mainframe operating systems.
The mainframe operating system can support the UNIX
operating system, known as USS (UNIX System Services)
from IBM, also true of LINUX. UNIX / LINUX can have OS/390
run on it powered by INTEL chips. So, the concept of a
mainframe is a room full of equipment is not true any more.
A mainframe, these days can be no larger then your
desktop!
For purposes of this website, we will define a mainframe as
one that runs, z/OS (OS/390 or MVS), Linux, VM and VSE, in
today's environment, not yesterdays. It's time to move on...

Mainframes combine three


important features:
1) Maximum reliable single-thread performance: Some
processes, such as the merge phase of a sort/merge (sorting
can be subdivided...) MUST be run single thread. Other
operations (balancing b-trees, etc) are single thread and
tend to lock out other accesses. Therefore, single thread
performance is critical to reasonable operations against a
DataBase (especially when adding new rows).
2) Maximum I/O Connectivity: Mainframes excel at providing
a convenient paradigm for HUGE disk farms; While SAN
devices kind of weaken this to some degree, SAN devices
mimic the model of the Mainframe in connectivity "tricks" (at
least internally).
3) Maximum I/O Bandwidth: Despite the huge quantities of
drives that may be attached to a mainframe, the drives are
connected in such a way that there are very few choke-
points in moving data to/from the actual processor complex.
All system architectures are best at different jobs; Each is a
set of compromises. Mainframes are more expensive
because the compromises are less, well, compromised. The
CPU performance is not always greater (in MIPS) than other
processes, but the actual priority here is not raw
performance but reliability. Mainframes, due to their great
cost (and trouble in amortizing this across outages) often
allow for "graceful degradation" and servicing while the
system is running. While this is not a universal trait, it's
interesting to see this priority setting the line in the sand
between performance / price.
There is a useful writing at www.redbooks.ibm.com that has
an appendix relating to the architectural differences between
Intel processors and the S/390 engines. It's about Linux for
the S/390 and refers to the various distributions. I found it
quite edifying.
John R. Campbell
IBM Main Discussion Group

Você também pode gostar