SIMMON ( Simulation Monitor ) fue un sistema propietario de prueba de software desarrollado a finales de la década de 1960 en el Laboratorio de Pruebas de Productos de IBM, entonces ubicado en Poughkeepsie, Nueva York. Fue diseñado para la entonces nueva línea de computadoras System/360 como una herramienta para probar el software que IBM estaba desarrollando para esa arquitectura . SIMMON se describió por primera vez en el simposio IBM SimSymp 1968 , celebrado en Rye, Nueva York. [ 1 ]
SIMMON era un hipervisor , similar al sistema IBM CP-40 que se desarrollaba de forma independiente en el Centro Científico de Cambridge por aquella misma época. La principal diferencia con CP-40 radicaba en que SIMMON admitía una única máquina virtual para probar un solo programa invitado . CP-40, en cambio, admitía varias máquinas virtuales para el trabajo de producción con tiempo compartido . CP-40 evolucionó por diversas etapas hasta convertirse en el actual sistema operativo VM/CMS . SIMMON fue una herramienta de prueba muy útil durante muchos años.
SIMMON fue diseñado para incluir dinámicamente programas desarrollados de forma independiente (herramientas de prueba) para probar el programa invitado de destino. El núcleo de SIMMON mantenía el control sobre el hardware (y el programa invitado) y coordinaba la invocación de las herramientas de prueba.
Modos de procesamiento
Se ofrecieron dos modos de funcionamiento:
- Simulación completa
- Interrumpir
Modo de simulación completa
En este modo, cada instrucción del programa invitado se simulaba sin ceder el control directamente al sistema invitado. Como simulador de conjunto de instrucciones , SIMMON era singular porque simulaba la misma arquitectura en la que se ejecutaba, es decir, la del IBM System/360 /370. Si bien era un orden de magnitud más lento que el modo de interrupción (que se describe más adelante), permitía un seguimiento detallado del funcionamiento del sistema invitado. Este sería el modo utilizado por diversas herramientas de prueba de rastreo de instrucciones .
Modo de interrupción
El modo de interrupción (también conocido como modo Bump) obligaba al programa invitado a ejecutarse en estado de programa de usuario , con el núcleo SIMMON gestionando todas las interrupciones de hardware y simulando todas las instrucciones privilegiadas que el invitado intentaba ejecutar. Este modo podía utilizarse, por ejemplo, por una herramienta de prueba para simular un dispositivo de hardware.
Algunas herramientas de prueba de SIMMON
Estas son algunas de las herramientas de prueba que se desarrollaron para su uso con SIMMON.
ERGENTE
( Generación y prueba de errores ) : Esta herramienta de prueba se desarrolló para probar la recuperación de errores de soporte de dispositivos en el sistema operativo PCP (Programa de Control Primario) de IBM, que se encontraba en desarrollo en ese momento. Utilizaba una novedosa y muy eficiente máquina de estados finitos (FSM) basada en tablas para inyectar errores simulados y verificar que el sistema operativo siguiera las especificaciones detalladas de las acciones que debían tomarse para intentar la recuperación.
El aspecto de la máquina de estados finitos basada en tablas obtuvo una patente estadounidense.Archivado el 15 de febrero de 2017 en Wayback Machine en octubre de 1972.
MAPPER
MAPPER (que no debe confundirse con el producto de Unisys del mismo nombre) era una herramienta de análisis estadístico del rendimiento . Funcionaba permitiendo que el programa bajo prueba se ejecutara en modo de interrupción , pero también utilizaba el temporizador del sistema para interrumpirlo periódicamente. Las direcciones donde se interrumpía el programa se registraban y posteriormente se resumían y tabulaban en forma de mapa, mostrando la densidad de interrupciones en las direcciones de memoria. El resultado se asemejaba a imágenes de gammagrafía nuclear , mostrando las partes del programa más utilizadas en las condiciones de la prueba.
PUNTOS DE ACCESO
HOTSPOTS era una herramienta de rastreo de instrucciones diseñada para identificar áreas problemáticas de rendimiento en el sistema operativo MFT de IBM . Los datos de rastreo de bifurcaciones se grababan en cinta y luego se resumían. El informe tenía el formato de una lista similar a un volcado de memoria , con los puntos de entrada y salida del programa identificados, incluyendo la frecuencia de uso de cada secuencia de instrucciones.
Estos datos permitieron identificar que el componente de gestión de memoria consumía aproximadamente el 20 % de los recursos de la CPU, y se utilizaron para justificar la creación de un grupo de trabajo encargado de intentar mejorar su rendimiento.
Estrés
Aunque no se trata de una herramienta de prueba específica, las relaciones de temporización distorsionadas durante la ejecución con SIMMON revelaron varios problemas, especialmente en las secciones de entrada/salida . A menos que se implementara una herramienta de SIMMON para normalizar y retrasar los eventos de E/S, estos se percibirían como anormalmente rápidos para el programa invitado.
Programas probados
Los programas sometidos a prueba —los llamados programas invitados— debían ser capaces de funcionar de forma independiente en el hardware básico. SIMMON proporcionaba servicios para las herramientas de prueba, pero no para el programa invitado.
Estos fueron algunos de los programas que se probaron utilizando SIMMON:
- Diversos programas de diagnóstico independientes para ingenieros de atención al cliente (CE).
- DOS/360 (incluyendo BOS y TOS)
- Sistema operativo/360 (PCP, MFT y MVS)
- Varias herramientas de prueba de productos
Véase también
Referencias
- ↑ Lehman MM (ed) Proc. SimSymp 1968 , IBM Res. Div., Yorktown Heights, NY; Nov. 1968, 3 vols.
- Depuradores
- Herramientas de prueba de software
- software de la década de 1960
- núcleos de sistemas operativos
- Software para mainframes de IBM