In computing, Interactive System Productivity Facility (ISPF) [1] is a software product for many historic IBM mainframe operating systems and currently the z/OS and z/VM operating systems that run on IBM mainframes. It includes a screen editor, the user interface of which was emulated by some microcomputer editors sold commercially starting in the late 1980s, including SPF/PC. [2]
ISPF primarily provides an IBM 3270 terminal interface with a set of panels. Each panel may include menus and dialogs to run tools on the underlying environment, e.g., Time Sharing Option (TSO). Generally, these panels just provide a convenient interface to do tasks—most of them execute modules of IBM mainframe utility programs to do the actual work. ISPF is frequently used to manipulate z/OS data sets via its Program Development Facility (ISPF/PDF). [3]
ISPF is user-extensible and it is often used as an application programming interface. Many vendors have created products for z/OS that use the ISPF interface.
An early version was called Structured Programming Facility (SPF) and introduced in SVS and MVS systems in 1974. [4] IBM chose the name because SPF was introduced about the same time as structured programming concepts. In 1979 IBM introduced a new version and a compatible product for CMS [5] under Virtual Machine Facility/370 Release 5.
In 1980 IBM changed its name to System Productivity Facility [6] and offered a version [7] for CMS under VM/SP. [8]
In 1982 IBM changed the name to Interactive System Productivity Facility, [9] split off some facilities into Interactive System Productivity Facility/Program Development Facility (ISPF/PDF) and offered a version for VSE/AF.
In 1984 IBM released ISPF Version 2 and ISPF/PDF Version 2; the VM versions [10] allowed the user to select either the PDF editor or XEDIT.
IBM eventually merged PDF back into the base product.
ISPF can also be run from a z/OS batch job.
When a foreground (interactive) TSO user invokes ISPF, it provides a menuing system, normally with an initial display of a Primary Option Menu [11] this provides them access to many useful tools for application development and for administering the z/OS operating system.
Such tools include
Underlying ISPF/PDF is an extensive set of tools that allow application developers to create panel-driven applications, and a set of guidelines to promote consistent use of ISPF functions. A "panel" is a character-based "window" which can encompass all or part of a 3270 session's screen real estate. See Text-based user interfaces.
Most mainframe software vendors used ISPF functions to create their applications, so their tools are similar in appearance and operation to ISPF. Similarly, many installations write their own informal tools that use ISPF services.
ISPF services are generally available to any programmer in the shop, and can be used to write panels for either personal or shop-wide use, writing in either compiled languages such as C, COBOL, PL/I, or interpreted languages such as CLIST and REXX.
ISPF applications can be used to perform so-called "file tailoring" functions, customisation of specially crafted JCL members called "skeletons", which can then be submitted as batch jobs to the mainframe.
The editor screen is formatted with 2 lines (info & command line) at the top (or bottom – user choice), a six character line number column in the left margin, and the remainder of the screen width being filled with the records of the dataset being edited. Primary commands (which apply to the whole dataset) such as Find, Print, Sort, etc. are typed in the command line. Line commands (which apply only to specific line(s)) such as copy, move, repeat, insert, exclude, delete, text flow, text split are entered by over-typing the line number fields with a one or two character code representing the command to be applied at that line followed by an optional number which further modifies the supplied command.
The editor has several key features:
The editor can also be invoked in a 'view' mode. It behaves like the editor, but does not allow saving the data. Edited files can also be saved under a different name, creating or replacing another file.
ISPF provides the 'editor interface' which lets an application program display arbitrary data in the familiar editor panel. Thus many vendor packages use this familiar interface.
ISPF is designed to be customized for each user (a fairly new concept in 1974, when it was introduced). Some of the customization is global and some is specific to an ISPF application.
It supports a set of 24 function keys which, when pressed, execute commands. [8] These are customizable: Each user can replace the default commands assigned to any key with his own preferred command (or series of commands). User settings are stored centrally, so that the user can logon from any terminal and that session will remember their previously-chosen commands for each key. Most personal computers copied this, and have a set of 12 or 24 function keys. Even some defaults have endured: the F1 key triggers a "help" function on a large number of mainframe & PC programs.
ISPF remembers each user's choices for such things as screen colors & layout, the location of the command line and scrolling preferences. It also remembers the last-used data set names on each panel, so the next time the panel is used the names are already filled in. This is very convenient for mainframe programmers because they frequently work with the same files repeatedly.
Many of the early users of PCs were mainframe programmers or users, who were accustomed to and liked the ISPF panel system. This led several companies to create partial clones of ISPF that run on DOS, OS/2, Windows or Unix PC systems. In 1984 IBM introduced the EZ-VU dialog manager for DOS PCs, [13] [14] and later OS/2. In 1991 Tritus, Inc introduced Tritus SPF (TSPF), a program to allow use of mainframe ISPF applications and edit macros written in REXX on DOS, OS/2 and Windows; the last release was 1.2.8 in 1994. Freeware ISPF-style editors for Windows include SPF/SE and SPFlite.
In 1994 IBM introduced a built-in downloadable client program called the ISPF Workstation Agent (WSA) [lower-alpha 1] that can install and run on OS/2, Windows and selected UNIX workstations; the z/OS version of ISPF only includes WSA for Windows and selected UNIX workstations. WSA communicates directly with ISPF on z/OS and provides a point-and-click graphical user interface automatically.
The ISPF Workstation Agent can be used to edit PC based files from the ISPF editor to take advantage of the editor's strengths.
IBM mainframes are large computer systems produced by IBM since 1952. During the 1960s and 1970s, IBM dominated the computer market with the 7000 series and the later System/360, followed by the System/370. Current mainframe computers in IBM's line of business computers are developments of the basic design of the System/360.
Multiple Virtual Storage, more commonly called MVS, is the most commonly used operating system on the System/370, System/390 and IBM Z IBM mainframe computers. IBM developed MVS, along with OS/VS1 and SVS, as a successor to OS/360. It is unrelated to IBM's other mainframe operating system lines, e.g., VSE, VM, TPF.
z/OS is a 64-bit operating system for IBM z/Architecture mainframes, introduced by IBM in October 2000. It derives from and is the successor to OS/390, which in turn was preceded by a string of MVS versions. Like OS/390, z/OS combines a number of formerly separate, related products, some of which are still optional. z/OS has the attributes of modern operating systems, but also retains much of the older functionality originated in the 1960s and still in regular use—z/OS is designed for backward compatibility.
In computing, a core dump, memory dump, crash dump, storage dump, system dump, or ABEND dump consists of the recorded state of the working memory of a computer program at a specific time, generally when the program has crashed or otherwise terminated abnormally. In practice, other key pieces of program state are usually dumped at the same time, including the processor registers, which may include the program counter and stack pointer, memory management information, and other processor and operating system flags and information. A snapshot dump is a memory dump requested by the computer operator or by the running program, after which the program is able to continue. Core dumps are often used to assist in diagnosing and debugging errors in computer programs.
Db2 is a family of data management products, including database servers, developed by IBM. It initially supported the relational model, but was extended to support object–relational features and non-relational structures like JSON and XML. The brand name was originally styled as DB/2, then DB2 until 2017 and finally changed to its present form.
The Conversational Monitor System is a simple interactive single-user operating system. CMS was originally developed as part of IBM's CP/CMS operating system, which went into production use in 1967. CMS is part of IBM's VM family, which runs on IBM mainframe computers. VM was first announced in 1972, and is still in use today as z/VM.
Time Sharing Option (TSO) is an interactive time-sharing environment for IBM mainframe operating systems, including OS/360 MVT, OS/VS2 (SVS), MVS, OS/390, and z/OS.
VM is a family of IBM virtual machine operating systems used on IBM mainframes System/370, System/390, zSeries, System z and compatible systems, including the Hercules emulator for personal computers.
IBM CICS is a family of mixed-language application servers that provide online transaction management and connectivity for applications on IBM mainframe systems under z/OS and z/VSE.
z/OS UNIX System Services is a base element of z/OS. z/OS UNIX is a certified UNIX operating system implementation optimized for mainframe architecture. It is the first UNIX 95 to not be derived from the AT&T source code. Through integration with the rest of z/OS, additional Time Sharing Option (TSO) commands are available alongside the usual UNIX services, making it possible to process UNIX files using ISPF. Extensions in JCL make it possible to use these files in batch processing.
Common User Access (CUA) is a standard for user interfaces to operating systems and computer programs. It was developed by IBM and first published in 1987 as part of their Systems Application Architecture. Used originally in the MVS/ESA, VM/CMS, OS/400, OS/2 and Microsoft Windows operating systems, parts of the CUA standard are now implemented in programs for other operating systems, including variants of Unix. It is also used by Java AWT and Swing.
OfficeVision was an IBM proprietary office support application.
The System Display and Search Facility (SDSF) is a component of IBM's mainframe operating system, z/OS, is an interactive user interface that allows users and administrators to view and control various aspects of the mainframe's operation and system resources. Some of the information displayed in SDSF includes Batch job output, Unix processes, scheduling environments, and the status of external devices such as printers and network lines. SDSF is primarily used to access batch and system log files and dumps.
Teleprocessing Network Simulator (TPNS) is an IBM licensed program, first released in 1976 as a test automation tool to simulate the end-user activity of network terminal(s) to a mainframe computer system, for functional testing, regression testing, system testing, capacity management, benchmarking and stress testing.
SPF/PC is an MS-DOS-based text editor and file manager designed to have an interface that was familiar to those using mainframe SPF and ISPF.
A point-and-shoot interface is an efficient object-oriented, text-based interface, usually presented on a non-GUI platform such as DOS or mainframe computers. In a point-and-shoot, many objects are displayed in a list, and to the left of each object is an input field. The operator interacts by moving the cursor to the desired object and marking it by typing a letter or number which represents a command or function.
The IBM Time Sharing System TSS/360 is a discontinued early time-sharing operating system designed exclusively for a special model of the System/360 line of mainframes, the Model 67. Made available on a trial basis to a limited set of customers in 1967, it was never officially released as a supported product by IBM. TSS pioneered a number of novel features, some of which later appeared in more popular systems such as MVS. TSS was migrated to System/370 and 303x systems, but despite its many advances and novel capabilities, TSS failed to meet expectations and was eventually canceled. TSS/370 was used as the basis for a port of UNIX to the IBM mainframe. TSS/360 also inspired the development of the TSS/8 operating system.
The history of IBM mainframe operating systems is significant within the history of mainframe operating systems, because of IBM's long-standing position as the world's largest hardware supplier of mainframe computers. IBM mainframes run operating systems supplied by IBM and by third parties.
System Modification Program/Extended (SMP/E), the proprietary version of System Modification Program (SMP), "is a tool designed to manage the installation of software products on [a] z/OS system and to track the modifications" to those products.
introduces the Interactive System Productivity Facility (ISPF) Productivity Tool (IPT)
Background information: ntvdm.exe NTVDM can run at startup. SPF-PC A 16-bit DOS application based on the mainframe editor ISPF editor.