ORVYL and WYLBUR
|Written in||360/370 Assembler|
|Initial release||1967, 1968|
|Platforms||IBM S/360, S/370, and successors|
|History of IBM mainframe operating systems|
ORVYL and WYLBUR are the names associated with the Stanford Timesharing System. Initially developed in 1967-68 for the IBM S/360-67 mainframe computer, it was one of the first time-sharing systems to be made available for IBM computers.
The names ORVYL and WYLBUR are often used interchangeably, but:
- ORVYL is a timesharing monitor that supports a file system, command language, program execution and debugging, and provides supervisor services;
- WYLBUR is a text editor, limited word processor, job submission and retrieval, and e-mail program designed to work in conjunction with ORVYL or with IBM's OS/360, SVS, and MVS operating systems; and
- MILTEN is terminal control software used by both ORVYL and WYLBUR for start/stop terminals.
WYLBUR is not a full standalone operating system in the mold of Dartmouth Time Sharing System (DTSS) or Unix. Instead it runs on top of an IBM batch operating system (OS/360, SVS, MVS). It takes the form of an editor with a Remote Job Entry system and thus has much the same relationship to the IBM operating systems as Emacs does to Unix. For these reasons WYLBUR is often thought of as a text editor rather than a time-sharing system. However whereas Unix does not need Emacs to provide text editing services, IBM's operating systems originally needed WYLBUR. Later innovations such as IBM's Time Sharing Option (TSO) made WYLBUR less relevant for IBM users and gradually replaced it.
ORVYL and WYLBUR were used at the Stanford Linear Accelerator Center (SLAC), the European Organization for Nuclear Research (CERN), the U.S. National Institutes of Health (NIH), and many other sites. Retired from most sites in the late 1990s owing to concerns about Y2K issues, they remained in use at NIH until December 2009. ORVYL and WYLBUR are still available as open source from Stanford. There are also proprietary versions such as SuperWYlbur.
ORVYL and WYLBUR were much admired as shown by this excerpt from a 2004 article titled "Computing at CERN: the mainframe era":
- [In 1976 the IBM S/370-168] also brought with it the MVS (Multiple Virtual Storage) operating system, with its pedantic Job Control Language, and it provided the opportunity for CERN to introduce WYLBUR, the well-loved, cleverly designed and friendly time-sharing system developed at SLAC, together with its beautifully handwritten and illustrated manual by John Ehrman. WYLBUR was a masterpiece of design, achieving miracles with little power (at the time) shared amongst many simultaneous users. It won friends with its accommodating character and began the exit of punch-card machinery as computer terminals were introduced across the lab.
Advantages and disadvantages
ORVYL and WYLBUR first became available in 1967-68, before TSS/360, TSO, or any other official time-sharing solution from IBM. This was roughly the same time that third-party time-sharing systems such as MTS became available and the under the radar development effort of CP-67 at IBM's own Cambridge Scientific Center took place. WYLBUR had the additional advantage that it could be used in conjunction with IBM's mainstream operating system, OS/360.
WYLBUR is a single-address-space system, unlike TSO. This conserved memory in the days when memory was precious. So even when TSO was available, organizations seeking to minimize memory use would often keep some or even a majority of their users on WYLBUR rather than letting them use the TSO interactive environment.
WYLBUR provides compressed Partitioned Data Sets (PDSs, aka libraries) to save disk space. In MVS source code is typically stored as a sequence of card images (80 character lines). If a line contained only one or just a few characters, 80 characters were still used to store that line. Even when data, e.g., source code, are stored as variable blocked (VB), space could be wasted on strings of embedded blanks. WYLBUR implements stream-oriented storage of text in PDSs, (and sequential data sets) so that a one character line might only take 16 characters (line length, offset, chunk length, character) rather than 80 to store. WYLBUR, or an external program run via JCL was used to convert files to and from the WYLBUR compressed format.
Although TSO allows a user to do more than a locked-down WYLBUR system did, it is possible to write WYLBUR Exec scripts that execute batch jobs to perform functions that ordinarily would have required a TSO account, filling a batch job skeleton out with parameters, submitting the batch job, retrieving the output and displaying it on the screen.
WYLBUR has some security advantages over TSO, and some disadvantages. Advantages include:
- Being able to write rules to restrict user access to datasets other than those owned by them and stored under their prefix. This is analogous to a user's home directory on UNIX, and looks something like WYL.AV99.HCO, where AV99 is roughly analogous to the "group" and HCO the "user" within the group.
- Being fairer about resource use. WYLBUR doesn't implement commands such as TSO's alloc which can intentionally or unintentionally prevent others' access to data files for an extended period of time or use tremendous amounts of memory or CPU time. In this way, it minimizes the impact of any single user on all other users.
- Commands to set certain status parameters or "spy" on the commands being executed by other users were restricted to administrative users and could not be executed by regular users.
Disadvantages related to security included:
- WYLBUR is a single-address-space system. That means that if a user can figure out how to access raw bytes in the address space, they can potentially access information they do not own. For example, there once existed a program written by two college students in the WYLBUR Exec scripting language which could dig the password of the most recently logged on user out of WYLBUR's memory.
- Because the WYLBUR process runs under the system account assigned to WYLBUR, one is completely dependent on its enforcement of dataset access protections according to the rules set up in WYLBUR. Enforcement of the access rules could be completely disabled by an administrative user, for system maintenance purposes, who might not remember to re-enable them.
- WYLBUR implements disk quotas, with an interesting twist: any system user could give away all or part of their quota to other users. This functionality could be combined with typical course-related student accounts that went away at the end of every semester, and computer-savvy student staff who had non-expiring accounts with low disk quotas, in a manner not always anticipated by university staff.
- In systems running the ACF2 security package, a user with accounts in both TSO and WYLBUR that are tied to the same account name could reset the contents of their WYLBUR account's security record interactively from within TSO. This could be used to turn a regular WYLBUR user into an administrative WYLBUR user, increase its disk quota, etc.
||This article includes a list of references, but its sources remain unclear because it has insufficient inline citations. (August 2010)|
- ORVYL/370 Timesharing System Functional Description, Stanford University, 1978
- WYLBUR Reference Manual, Stanford University, 1984
- Using its own markup language
- "WYLBUR Will Be Retiring", Titan News, Center for Information Technology, National Institutes of Health (NIH), April 7, 2009
- ORVYL, WYLBUR, and MILTEN source and documentation, available for free as Open Source from Stanford University under a license modeled after the "Mozilla 1.1 License" certified by the "Open Source Initiative (OSI)"
- "Computing at CERN: the mainframe era", Chris Jones, CERN Courier, September 6, 2004
- "WYLBUR: an interactive text editing and remote job entry system", Roger Fajman, Stanford University and John Borgelt, WYLBUR Systems Inc., Palo Alto, CA, Communications of the ACM (CACM), Vol.16, Issue 5 (May 1973), pp. 314–322, ISSN:0001-0782
- ORVYL and WYLBUR software download from Stanford University
- Usenet notes on WYLBUR[dead link]