Wang VS

The Wang VS Community

(under construction)

The VS is a superb data processing platform. Data processing is at the heart of most businesses, so the VS has a place at the heart of most businesses. First, some background:

Background

The legacy Wang VS was patterned after the IBM 360/370 mainframes and enjoyed great popularity throughout the 1980s. Toward the end of the 1980s most manufacturers of minicomputers and mainframes suffered from the introduction of Unix and Windows servers whose promoters claimed to be able to replace mainframes. Except in the smallest cases this was never true. By the time the dust settled toward the end of the 1990s it became obvious that mainframes of various sizes were here to stay, but the damage had already been done to a number of companies, including Digital Equipment Corporation and Wang Laboratories.

From its high water mark of about 30,000 installed and running systems in the mid-1980s, the Wang VS declined throughout the 1990s. Wang reinvented itself to be in "network services" and "break-fix" businesses, but its VS line persisted, even without any marketing or sales efforts. In 1997, at the last Wang international conference, InterACTION 97, held in Boston, Wang stated that they still had 10,000 VS systems under maintenance.

Year 2000 brought additional attrition, especially as many companies used the blank check of funding for Y2K to replace systems that were already Y2K compliant, including the Wang VS. In many cases, although the VS operating system was by then Y2K compliant, many of the customer-written applications were not. Many false internal claims of VS non-compliance were made in the Y2K era to obtain Y2K funds to replace VS systems.

After Y2K things settled down for the VS with many of the less robust systems already replaced, leaving a core of dedicated, committed customers. But by that time, though, the hardware was aging, as Wang no longer had the size of installed base to fund much new VS engineering. Thus a new reason to replace the VS began to cause more attrition: declining price/performance compared to other systems and increasing difficulties with VS maintenance, including increasingly scarce spare parts. Very little VS hardware was manufactured after the early 1990s, so all supplies of spare parts were, by the time of the new Century, old.

Despite the decline of the VS, Wang introduced new high-end processors in 1996 (the VS16000), 1999 (the VS18000) and 2000 (the VS6700). These were board-level upgrades to existing VS systems. As a testament to Wang engineering, the board-level CPU upgrades could be retrofitted to cabinets as old as the 1985 VS300, whose backplane, busses and I/O architecture were up to the job of supporting a 1999 CPU. By this time, though, very few if any VS sales were being made to completely new customers. Most sales were upgrades or additional systems sold to existing customers.

In 1999 Wang Global (formerly Wang Laboratories) was acquired by the Dutch network services firm Getronics. In 2006 or 7 Getronics was acquired by the Dutch telecom firm KPN. In 2008 KPN sold Getronics North America, including the Wang VS intellectual properties, to U.S.-based Compucom. Support for the VS hardware and software continued throughout, based in Tewksbury, Massachusetts.

The New VS

In late 2003 into the first half of 2004, TransVirtual Systems developed technology to virtualize the Wang VS machine, thus freeing the VS software from dependence on the aging and somewhat proprietary Wang hardware. Most notable about the virtual VS was that no conversion of any kind was required to upgrade from any legacy VS to what was becoming known as the "New VS." Performance also exceeded that of any legacy VS, giving rise to the potential for all legacy VS systems around the world to be upgraded to the New VS without loss of performance or functionality.

Multiple attempts by TransVirtual Systems to acquire the VS software business from Getronics were unsuccessful. The only path forward was to try to work with Getronics to make the New VS a reality. In early 2005 a multi-year contract was signed by Getronics and TransVirtual Systems to bring a new generation of virtual VS to market. First sales and deliveries of the New VS were made in late 2005. Since then, as of this writing, 85 New VS systems have been sold in 11 countries around the world, with many more in the sales pipeline.

In mid-2008 Getronics announced end of support for the legacy VS hardware and appointed TransVirtual Systems as the exclusive reseller of their VS software in the form of the New VS -- the virtual VS.

The New VS runs on common Intel-based x86 and x64 servers, principally the Dell PowerEdge. It has been ported to IBM POWER but performance of the POWER systems was disappointing and, without customer demand, POWER has not been pursued. While the New VS software can run on any Linux-compatible PC, support issues required that TransVirtual Systems decide on a standard platform for the New VS, one that had the necessary features and that would be available and maintainable in most of the world. The Dell PowerEdge was selected for its robust server features, fault tolerance and worldwide availability. Initially the PowerEdge 2800/2850/1850 were used by TransVirtual, then later the PowerEdge 2900/2950/1950. As Dell moves forward to newer and more capable servers, so does TransVirtual.

Although most of the New VS systems use Dell PowerEdge, TransVirtual is also considering qualifying and certifying the IBM xSeries servers to give customers more flexibility and to guard against unpredictable Dell decisions in the evolution of their server line.

Introduction to Features

Most of the features of the New VS stem directly from the VS Operating System and system software. The VS has long been known by those familiar with it as the best, most friendly mainframe class of system ever created. The 100% seamlessly compatible nature of the TransVirtual virtualization of the Wang VS means that all the good features of the VS have been brought forward. Some features of the VS have benefited from becoming virtualized while some entirely new features, transparent to the VS Operating System, have been implemented.

The New VS is an interactive mainframe system that runs on what would be considered PC servers. Its mainframe nature is characterized by a number of capabilities not normally found in PC or Unix servers. These capabilities greatly facilitate medium-to-large-scale data processing application development and execution.

  • Virtual Memory architecture
  • Stack architecture
  • Base/Displacement address architecture
  • Separate code and modifiable memory spaces
  • Data Processing instruction set
  • Native decimal arithmetic instructions
  • Decimal and binary floating point
  • SVC instructions for system services
  • Intelligent channels
  • Microcode-loadable devices
  • Multiline telecomm
  • Synchronous telecomm
  • High (100+) device capacity in each class (disk, tape, workstation, telecomm)
  • High (1000+) interactive user capacity
  • Block mode workstations/terminals
  • Robust native networking (1000+ systems)
  • Clustering
  • Robust OS-level file system
  • Job Queue with cluster routing by Job Class
  • Background Task Initiators
  • Print Queue with cluster and printer routing by Print Class
  • Integrated transaction processing with rollback/rollforward recovery
  • IBM-mainframe-type macroassembler and linker
  • Integrated Development Environment (IDE) supports multiple languages
  • Robust Interactive Debugger supports multiple languages
  • Comprehensive file manipulation utilities
  • Robust job control / scripting language
  • Argument passing by reference
  • Common Link Environment standardizes arguments across languages
  • Native database with transaction processing

The VS was originally patterned after the IBM 360/370. As such, its architecture and instruction set are optimized for business data processing languages, particularly COBOL. Most COBOL statements translate into one or two VS machine instructions. Although COBOL is the most common language used in VS applications the VS also supports compiled BASIC, PL/I, RPG II, FORTRAN, Assembler, C, Procedure (a JCL and scripting language) and Glossary (a workstation microcode progamming language similar to PL/I). All VS languages are supported by the Integrated Development Environment, in which source programs are edited, programs are compiled, linked and run, and the Interactive Debugger can be called into action. The Common Link Environment ensures that modules in all supported languages can be linked together into executables and can pass arguments to each other regardless of the language of individual modules. Thus a COBOL program, for example, can include subprograms written in C, BASIC, PL/I, etc. and all can exchange arguments.

File Types

Business data processing requires various file types, so the VS includes a robust file system at the OS level that understands various types of file organizations and formats:

  • Consecutive files
  • Indexed files
  • Multiply Indexed files
  • Program object files
  • Print files
  • Relative files
  • Log files
  • Word Processing files

No special file systems have to be obtained and loaded for applications to be able to create, write and read the standard file types. Support is integrated at the OS level.

Record Compression

Business data processing also calls for record compression, which the VS provides at the machine level. Source program files, print files and many data files are compressed by default, resulting in considerable disk space efficiencies.

File Sharing and Record Locking

A multiprogramming environment such as the VS provides also requires that files be shared by multiple users and applications. File sharing is provided at the OS level, as are file and record locking.

Transaction Processing

Transaction processing (the ability to “commit” or “roll back” units of processing to ensure that only consistent units of data update are written to data files) is also integrated and provided at the OS level. This includes rollback recovery in the event of unexpected failures and optional rollforward recovery to recover from hard device failures.

Block Mode Workstation I/O

The VS uses no command line interface. Instead, all utilities and properly written applications use block mode screen I/O and function keys, with screen variables instead of command line arguments and switches. This results in highly functional utilities and applications that require little or no memorization or learning curve. Most programs provide reasonable default values for the parameters they require, and parameters can be provided by scripting, calling programs or by the interactive user.

Control Blocks

The VS uses a sophisticated system of control blocks for tracking tasks and their resources. Control blocks are also used to pass parameters from one level of processing to another. All the supported languages can make use of parameter blocks and the OS can intervene when parameters are omitted to prompt the interactive user for missing values. All utilities and properly written applications can be “proceduralized” to provide and accept runtime parameter values to each other with the top-level command level typically being the JCL/scripting language.

Separate Code and Data

In the VS, code and modifiable data are separated. Code can only be modified by the OS while data can only be modified by the running program. Problems that plague Windows and Unix systems, such as buffer overruns that maliciously constructed data can use to modify program code are virtually impossible in mainframe systems that prevent program modification of code by keeping code and data separated, with code in protected memory.

Decimal Arithmetic

The VS performs decimal arithmetic natively, as business data processing involves large amounts of decimal arithmetic. The VS performs decimal arithmetic directly on a number of storage formats including packed decimal and display decimal fields. No software conversion between decimal and other formats is necessary in software when the machine performs decimal arithmetic natively.

The VS also provides both binary and decimal floating point. Decimal floating point is useful for handling business monetary arithmetic ranging up to very large numbers with no loss of accuracy due to binary/decimal rounding.

SVC Instructions

Mainframe OS environments are also characterized by SVC (“service”) instructions for the interface between programs and operating system services. An SVC instruction generates a machine interrupt to request services from the operating system. This avoids the necessity for the programs to have any knowledge of addresses within the OS address space where service routines are located. It also provides a convenient mechanism for saving and restoring program environments while the OS performs or schedules the requested services.

Intelligent Channels

Mainframes are also characterized by the use of intelligent “channels” or I/O controllers which offload considerable work from the central processor and are often microcode loadable as the means of implementing new and improved functionality without modification of hardware.

High Device Capacity

Mainframe-class systems typically provide for large numbers of I/O devices. A VS can be configured to have hundreds of disk drives, tape drives, printers, and intelligent communication lines. In the New VS the disk drives are usually all virtual while tape drives can be physical or virtual. Communication lines in the New VS are usually virtual, with data links functioning over IP networks. The New VS also has the capability to communicate with legacy VS systems and to participate in X.25 networks.

In the New VS, with most VS devices being virtual, devices and their co-processors can be created at will, without capital investment or most physical slot or cabling considerations.

Block Mode Workstations/Terminals

The mainframe user interface is characterized by block mode I/O that offloads work from the central processor to the workstation or terminal. An entire screen is output to the user, containing literals, modifiable fields, guidance on the nature of function keys, and a set of active function keys for instructing the program what do to with regard to the screen of information. Modifiable fields are typically prefilled with reasonable default values.

The interactive user enters data into the modifiable fields and presses a function key. In the IBM world the function keys were Enter and 10 F-Keys, later 12 F-Keys. F-Keys might also have shifted variants. In the Wang world the function keys are Enter and 16 Program Function Keys (PFKs), with 16 shifted variants.

Function keys are often used to implement options for the screen being displayed, such as presenting a list of valid values for the field where the cursor resides, or to go back to a previous screen or exit from the current process.

Robust Native Networking

The VS has a native networking system called Wang System Networking (WSN). WSN is a 7-level protocol stack that provides multipurpose connections between VS systems. The connections support remote logon, file transfer, Wang Office traffic (email, package distribution, scheduling), application-to-application pipes (similar to RPC), etc. WSN also provides network mapping that supports hundreds or thousands of networked VS systems in which each system only needs specific link information for its immediate neighbors. Transparent alternate routing and cost-based routing are supported, making WSN networks very robust and easy to maintain and operate.

In the New VS, WSN functions over IP networks, using existing LAN/WAN/Internet/intranet fabrics.

Clustering

VS clustering, called Resource Sharing Facility (RSF), is virtualized in the New VS and functions over IP networks. Up to 16 VS nodes can be clustered for disk volume and file sharing, remote cluster logon, and Job and Print routing. Distributed database operations are supported with two-phase commit.

VS clustering can expand the effective size of a VS beyond the nominal capacities of a single VS. Users and applications have access to shared volumes and files across the cluster and can submit batch jobs and print jobs to queues in nodes across the cluster. Individual users can log on to other VS nodes in the cluster.

Clustering is similar in principal to the connectivity provided by WSN but is a much tighter form of integration providing for dynamic file access across the cluster.

Background Task Initiators

Interactive systems can perform batch operations but batch-oriented systems cannot easily perform interactive operations. The VS was designed from the ground up to be interactive, but also contains features that facilitate business batch operations. Background Task Initiators are predefined tasks that can execute jobs submitted to the Job Queue without the submitter having to specify all the runtime parameters such as modifiable data area size and subtask quota. The submitter merely specifies the Job Class when submitting a job, and any of the available predefined initiators of that class will run the requested job. This makes job submission simple and provides substantial control over how jobs will be run and the resources they will use. Background Task Initiators are a mainframe feature.

Print Queue and Print Classes

The mainframe environment provides for a degree of predefinition of print jobs. An invoice may have to be directed to a printer normally loaded with invoice forms. The Print Queue allows such print files to be queued to a Print Class without having to know where those printers are configured in the system. Class “I” might be used for invoices, and all an invoicing program need do is queue its output for printing in Class I. There could be four such printers, each designated to accept print jobs of Class I. The VS OS will automatically route such jobs to those printers, allowing the management of the printers and the queued jobs to be completely separated from the programs that generate the invoice print data. System operators can dynamically designate eligible printers as conditions change.

The Print Queue provides for dispositions of files after printing, numbers of copies to be printed, and restarting print jobs if interrupted. These are all mainframe features.

Integrated Transaction Processing

The VS provides transaction processing at the OS level. Any indexed file may be designated to have recovery capability. When such a file is opened for shared or I/O use in the normal course of events the file system automatically opens a Before Image Journal (BIJ) file for each user opening the file. The BIJ, a standard database mechanism, records changes made to the file. When a user program performs a transaction COMMIT, the recorded change log is erased, effectively committing the changes. If a rollback needs to be done, the change log is used to reverse the changes, restoring the file(s) to its condition prior to the beginning of the transaction cycle.

All the supported VS compilers have COMMIT and ROLLBACK statements. It is usually a simple matter to insert the statements at critical locations in programs to define groups of updates as transactions and either commit them entirely or roll them back entirely. If a program makes no use of these statements, all the file changes it makes to recoverable files are logged until the program exits, which causes a COMMIT of all changes or the program is canceled, which causes a ROLLBACK of all the changes. Omitting use of COMMIT and ROLLBACK is not recommended. Programs that are not transaction-enabled may continue to use files without recovery capability and behave normally.

IBM-mainframe-type macroassembler and linker

The VS macroassembler and linker are instantly recognizable to IBM mainframe programmers. The VS instruction set is a superset of IBM 360/370 and the assembler and linker tools are functionally equivalent. The macro language is the same. On the one hand this means that IBM mainframe assembler language programmers can easily transition to the VS, and the power of the tools on the other hand means that it is entirely practical to write and maintain complete applications in VS Assembler. It is extremely easy to write helper modules in Assembler to add capabilities to applications written in high-level languages.

Argument Passing by Reference

User and batch tasks in the VS run in individual user virtual address spaces in which nested programs are loaded and run in the same address space. This allows arguments to be passed by reference and for called modules and programs to modify arguments to pass values back to calling programs. This is extremely efficient as it avoids copying argument and parameter values.

Common Link Environment

The VS uses a standard for the passage of arguments to/from programs called the Common Link Environment (CLE). The compilers and the Procedure Language interpreter follow this standard, allowing construction of applications employing modules of any of the supported languages.

Native database with transaction processing

The VS has a very powerful optional database, the Professional Application Creation Environment (PACE). PACE provides for the creation and use of relational databases with ironclad referential integrity and transaction processing. Default data entry and retrieval applications can be created at the touch of a button, then edited and customized to suit. Simpler databases and applications can be created with no procedural programming whatsoever, while more complex databases and applications can make use of COBOL or RPG as a Host Language Interface (HLI) to customize and control all aspects of database and application behavior.


Views: 574

© 2017   Created by Thomas E. Mitchell.   Powered by

Badges  |  Report an Issue  |  Terms of Service

Hit Counter by B-25