El sistema de control de entrada / salida ( IOCS ) es cualquiera de varios paquetes en las primeras computadoras de nivel de entrada y mainframe de IBM que proporcionaban acceso de bajo nivel a los registros de los equipos periféricos. IOCS proporciona una funcionalidad similar a File Control Processor (FCP) [1] en el sistema operativo RCA 3301 Realcom, GEFRC [2] en GECOS y Record Management Services [3] (RMS) en DEC VAX / VMS .
Las computadoras en las décadas de 1950 y 1960 trataban típicamente con datos que estaban organizados en registros, ya sea por la naturaleza de los medios, por ejemplo, líneas de impresión, o por requisitos de la aplicación. IOCS estaba destinado a permitir a los programadores de lenguaje Assembler leer y escribir registros sin tener que preocuparse por los detalles de los diversos dispositivos o el bloqueo de registros lógicos en registros físicos. IOCS proporcionó el soporte de E / S en tiempo de ejecución para varios compiladores.
Las computadoras de esta era a menudo no tenían sistemas operativos en el sentido moderno. Los programas de aplicación denominados rutinas IOCS en un monitor residente o incluían instrucciones macro que se expandían a rutinas IOCS.
En algunos casos [4] IOCS fue diseñado para coexistir con el software de Operaciones Periféricas Simultáneas en Línea ( SPOOL ) [5] .
El nivel de acceso está en un nivel superior al proporcionado por BIOS y BDOS en el mundo de las PC; de hecho, IOCS no admite E / S orientadas a caracteres, principalmente porque los sistemas para los que fue diseñado no lo admitían. Existían versiones de IOCS para IBM 705 III , [6] 1401/1440/1460 , 1410/7010 , 7070/7072/7074 , [7] [8] [9] 7080 [10] y 7040/7044/7090/7094 . [11] Estos sistemas influyeron mucho en los componentes de gestión de datos de los sistemas operativos [12] del System / 360 ;el nombre IOCS se llevó a cabo en DOS / 360 a través de z / VSE , [13] con una distinción entre IOCS lógicas ( LIOCS ) [14] y IOCS físicas ( PIOCS ). [14]
Aunque algunos detalles técnicos y la nomenclatura son diferentes entre los distintos paquetes de IOCS, los conceptos fundamentales son los mismos. Para ser más concretos, la discusión y los ejemplos de este artículo se realizarán principalmente en términos de 7070 IOCS. [7] [8] Además, varias líneas de continuación se mostrarán como puntos suspensivos (...) cuando no sirvan para ilustrar la narrativa.
Estructura
Un programa de IOCS debe hacer tres cosas, cada una de las cuales se analiza en una subsección a continuación.
- Identificar los servicios IOCS requeridos
- Cree bloques de control para archivos individuales
- Procesar archivos
Para el 7070, estos se hacen usando 7070 Autocoder [15] [16] declaraciones declarativas e instrucciones macro .
Identificar los servicios IOCS requeridos
IOCS admitió varias clases de equipos de E / S
- Unidades de disco
- Unidades de cinta
- Equipo de registro de la unidad. La longitud del registro fue dictada por los medios físicos, que fueron
- Líneas de impresión sobre papel
- Tarjetas perforadas de 80 columnas [a]
Algunos servicios ofrecidos por IOCS no fueron necesarios para todas las aplicaciones, por ejemplo, puntos de control, procesamiento de etiquetas. Un programa IOCS debe identificar los tipos de dispositivos y servicios particulares que utiliza. Un programa de 7070 IOCS debe especificar una o más declaraciones DIOCS [7] ( págs . 16-19 ) [15] ( págs . 22-25 ) : [b]
11 22 6 56 01 GENERAL DIOCS parámetros generales TAPE DIOCSD729, parámetros de cinta DISK DIOCSD1301, parámetros de disco END DIOCS
Estas declaraciones declarativas identifican registros de índice reservados para el uso de IOCS, indican los canales utilizados, indican si el programa debe coexistir con SPOOL y proporcionan opciones de procesamiento. La sentencia END DIOCS provoca el ensamblaje de IOCS a menos que se solicite una versión preensamblada. El primer formulario (general) se omite cuando se utiliza el formulario D729.
En algunos otros paquetes IOCS, las tarjetas de control proporcionan funciones similares.
Cree bloques de control para archivos individuales
Un programa IOCS debe crear un bloque de control para cada archivo, especificando información única para el archivo. Para 7070 IOCS, estas son entradas en la Tabla de especificaciones de archivos para archivos de cinta, cada una de las cuales es generada por una instrucción DTF [7] ( pp19-26 ) [15] ( pp26-28 ) , o bloques de control separados generados por DDF [8 ] ( págs . 31–37 ) [15] ( págs . 29–30 ) o DUF [7] ( págs . 44–47 ) [15] ( págs . 31–33 ) declaraciones.
11 22 6 56 01 DTF FUERA F CANAL 2 ... ... DAFILE DDF IODEVICE 5 DREFMODE 4 ... ... DUF CONSFILE, 1,4, CARDRDW, CARDIX, CONSEOF, CONSERR
En algunos otros paquetes IOCS, las tarjetas de control proporcionan funciones similares.
Procesar archivos
El código anterior define un archivo de cinta en el canal 1 llamado OUT, un archivo de disco secuencial 1301/1302 llamado DAFILE y un archivo de tarjeta llamado CONSFILE.
Cualquier programa IOCS debe especificar las acciones que desea realizar. En 7070 IOCS, esto se hace con macros de procesamiento. [B]
11 22 6 56 01 ABRIR CONSFILE, FUERA LOOP OBTENER CONSFILE APAGAR B BUCLE CONSEGUIR CLOSECONSFILE, FUERA
En algunos otros paquetes IOCS, las llamadas explícitas a subrutinas proporcionan funciones similares.
Ver también
- BIOS
- Sharp IOCS , un sistema de nombre similar en computadoras de bolsillo de 8 bits de Sharp
Notas
- ^ IBM no admitió las tarjetas de 90 columnas utilizadas por UNIVAC
- ^ a b Tenga en cuenta que los operandos en 7070 Autocoder siempre comienzan en la columna 21.
Referencias
- ^ Manual de formación de RCA 3301 Realcom (PDF) . División RCA EDP. Noviembre de 1964. 94-06-000.
- ^ Manual de referencia de control de archivos y registros GE-635 . GE . CPB-1003.
- ^ Manual de referencia de servicios de administración de registros VAX-11 (PDF) . DIC . Febrero de 1979. AA-D031B-TE.
- ^ IBM 7070 SPOOL System . IBM . J28-6047-1.
- ^ "Sistema SPOOL", 7070-IO-076
- ^ Sistema de control de entrada / salida del manual de referencia para IBM 705 III . IBM . C28-6109.
- ^ a b c d e Sistema de control de entrada / salida IBM 7070/7074 para unidades de cinta magnética IBM 729, equipo de grabación de unidades (7070-IO-904) . IBM . C28-6175-3.
- ^ a b c Sistema de control de entrada / salida IBM 7070/7074 para almacenamiento en disco IBM 1301 y 1302 (7070-IO-940) . IBM . C28-6272-1.
- ^ IBM Programming Systems Analysis Guide 7070 Input / Output Control System (PDF) . IBM . 1961. C28-6119.
- ^ Sistema de control de entrada / salida 7080 para usar con unidades de cinta magnética 729 (PDF) . IBM . C28-6237.
- ^ Manual de referencia, Sistema de control de entrada / salida IBM 709/7090 (PDF) . IBM . C28-6100-2.
- ^ IBM Operating System / 360 Concepts and Facilities (PDF) . IBM . C28-6535-0.
- ^ IBM z / VSE Versión 6 Release 1 System Macros User's Guide (PDF) . IBM . 2015. SC34-2709-00.
- ^ a b Supervisor de DOS y macros de E / S (PDF) . IBM . GC24-S037-12.
- ^ a b c d e Autocoder de la serie de programación IBM 7070 . IBM . C28-6121-3.
- ^ Autocodificador de cuatro cintas IBM 7070 . IBM . J28-6055.
- Bashe, Charles J .; Johnson, Lyle R .; Palmer, John H .; Pugh, Emerson W. (1986). Las primeras computadoras de IBM . Historia de la Computación. Prensa del MIT . págs. 362–363 . ISBN 0-262-02225-7.
- Bohl, M. (1971). Procesamiento de información . Asociados de investigación científica.
- Cenfetelli, AR (1967). "Conceptos de gestión de datos para DOS / 360 y TOS / 360". Revista de sistemas de IBM . IBM . 6 (1): 22–37. doi : 10.1147 / sj.61.0022 .
- Deitel, Harvey M. (1983). Introducción a los sistemas operativos . Serie de programación de sistemas de Addison Wesley. Addison Wesley . págs. 10-11, 35, 158. ISBN 0-201-14473-5.
- Freeman, Donald E .; Perry, Olney R. (1977). Diseño de E / S: Gestión de datos en sistemas operativos . Historia de la Computación. HAYDEN. pag. 3 . ISBN 0-8104-5789-X.
- Katzan, Jr., Harry (1973). Sistemas operativos: un enfoque pragmático . VNR. págs. 98, 101-102 . ISBN 0-442-24253-0.
- Lorin, Harold; Deitel, Harvey M. (1981). Sistemas operativos . Addison Wesley . pag. 74 . ISBN 0-201-14464-6.
- Milenkovic, Milán (1987). Sistemas operativos: conceptos y diseño . McGraw-Hill . ISBN 0-07-100583-8.
- Pugh, Emerson W .; Johnson, Lyle R .; Palmer, John H. (1991). Sistemas 360 y Early 370 de IBM . Historia de la Computación. Prensa del MIT . págs. 295, 324, 326, 561–562, 590 . ISBN 0-262-16123-0.
- Shaw, Alan C. (1974). El diseño lógico de los sistemas operativos . Serie Prentice-Hall en computación automática. Prentice-Hall . ISBN 0-13-540112-7.
enlaces externos
- "RCA 3301 Realcom Training Manual", 94-06-000, noviembre de 1964
- historia de los sistemas operativos
- Sistemas operativos - Historia del sistema operativo
- Pease, David. "Historia de la Computación Moderna Sección 3" . Universidad de California Santa Cruz . Archivado desde el original el 12 de junio de 2010 . Consultado el 27 de agosto de 2020 .
- Conceptos de hardware y software del sistema