Jump to content

SIMMON

From Alfawiki
Adapted from the English Wikipedia article SIMMON, available under CC BY-SA 4.0Updated 9 August 2025
SIMMON
Company typeProprietary software
IndustrySoftware testing
FoundedJanuary 1, 1960; 66 years ago (1960-01-01)
Headquarters
Poughkeepsie
,
United States
ProductsSoftware testing framework for IBM System/360
ParentIBM

SIMMON (short for Simulation Monitor) was a proprietary software testing framework created during the late 1960s at IBM's Product Test Laboratory located in Poughkeepsie, New York. It was designed specifically for the then-new System/360 line of computers, functioning as a dedicated environment to evaluate IBM's software developed for that architecture. SIMMON made its initial appearance at the IBM SimSymp 1968 conference held in Rye, New York.

Functioning as a hypervisor, SIMMON shared similarities with the contemporary IBM CP-40 system developed at the Cambridge Scientific Center. Unlike CP-40, which supported multiple virtual machines for time-sharing purposes, SIMMON provided a single virtual machine focused solely on testing one guest application at a time. While CP-40 eventually evolved into the VM/CMS operating system, SIMMON continued to serve as an important testing platform for several years.

The design of SIMMON enabled the flexible integration of independently created test utilities. Its core managed hardware interactions and guest program execution, orchestrating when and how test tools were activated.

Processing modes

SIMMON featured two primary operational modes:

  1. Full simulation
  2. Interrupt

Full simulation mode

In this mode, every instruction executed by the guest program was simulated without directly transferring control to it. Acting as an Instruction Set Simulator, SIMMON uniquely emulated the same architecture it operated on—the IBM System/360/370—allowing comprehensive monitoring of guest program behavior. Although this mode ran slower than Interrupt mode, it was particularly suited for instruction trace analysis tools.

Interrupt mode

Also known as Bump mode, this approach ran the guest program in user mode while SIMMON’s kernel intercepted all hardware interrupts and emulated privileged instructions. This mode was ideal for test tools that simulated hardware device behavior.

ERGENT

(short for ERror GENeration and Test) was developed to assess error recovery mechanisms in IBM's Primary Control Program (PCP). It utilized a highly efficient table-driven finite-state machine (FSM) to introduce simulated errors and verify that the operating system executed predetermined recovery procedures correctly.

The table-driven FSM methodology used by ERGENT was patented in October 1972.

MAPPER

Not related to the Unisys product of the same name, MAPPER served as a statistical performance analysis utility. Operating in Interrupt mode, it employed periodic interrupts triggered by the system timer while running the tested program. The collected interrupt addresses were compiled into a map illustrating interrupt frequency distribution across memory locations, thereby identifying the most heavily utilized sections of code during testing.

HOTSPOTS

HOTSPOTS functioned as an instruction trace tool aimed at detecting performance bottlenecks within IBM’s MFT operating system. It captured Branch trace data onto tape and produced reports detailing program entry and exit points along with usage statistics for each instruction sequence. This analysis uncovered that approximately 20% of CPU time was consumed by the Memory Management subsystem, leading to the establishment of a dedicated task force focused on improving its efficiency.

Stress

While SIMMON was not explicitly designed as a testing utility, its modified execution timing revealed problems, particularly within input/output processes. In the absence of SIMMON utilities to regulate and postpone I/O activities, guest applications encountered I/O responses that were unnaturally accelerated.

Programs tested

Guest applications evaluated using SIMMON were required to operate directly on physical hardware, since SIMMON's support was limited solely to test tools and did not extend to guest systems.

Examples of significant programs tested encompass:

See also