BlogJCL

Calculador Online de Block SIZE, TRKS y CYL de un fichero JCL

A continuación se muestra una calculadora online para obtener el BLOCK SIZE, los TRKS y los CYLS de un fichero MAINFRAME. Esta calculadora ha sido creada a partir de los parámetros oficiales de IBM, los resultados no son exactos pero si ajustados. Es muy práctico para tener una orientación de la magnitud del fichero en función del número de registros y el LRECL.

Calculadora de fichero FB

Resultados para un fichero FB:

Registros por Pista:

Block Size:

TRKS:

CYL:

Calculadora de ficheros VB

Resultados para un fichero VB:

Registros por Pista:

Block Size:

TRKS:

CYL:

Parámetros oficiales de IBM

La siguiente imagen nos muestra los parámetros oficiales de IBM en función del formato, la longitud y el BLOCK SIZE.

Tamaños de bloque predeterminados para RAMAC 3 o ESS 2105 DASD

Definición de los diferentes parámetros de la calculado Online

En el contexto de programación en mainframe y JCL (Job Control Language), el BLOCK SIZE, los TRACKS y los CYL (cilindros) son parámetros que se utilizan para definir y gestionar la organización y el tamaño de los ficheros en el sistema de almacenamiento en disco. Aquí te explico cada uno de estos conceptos:

  1. BLOCK SIZE (Tamaño de Bloque):
    • El BLOCK SIZE se refiere al tamaño de los bloques de datos que se leen o escriben en el fichero. Especifica la cantidad de datos que se manejarán como una unidad.
    • Este parámetro afecta directamente la eficiencia de las operaciones de E/S (entrada/salida). Un bloque más grande puede reducir el tiempo de acceso al disco, ya que se pueden leer o escribir más datos de una vez, pero también puede ocupar más espacio si los registros son pequeños y no se aprovecha completamente el bloque.
    • En JCL, el BLOCK SIZE se especifica utilizando la declaración BLOCKSIZE en la descripción del fichero.
  2. TRACKS (Pistas):
    • En mainframes, el disco está dividido en pistas (tracks) y cilindros. Una pista es una pista circular en una superficie del disco.
    • Los TRACKS se refieren a la cantidad de pistas en las que se almacenará el fichero. Puedes especificar el número de pistas que se asignarán al fichero para su almacenamiento.
    • La elección de TRACKS está relacionada con la organización física de los datos en el disco y puede afectar la eficiencia de las operaciones de acceso al disco.
    • En JCL, el número de TRACKS se especifica mediante la declaración TRACKS en la descripción del fichero.
  3. CYL (Cilindros):
    • Un cilindro es un conjunto de pistas que se encuentran en la misma posición vertical a través de varias superficies del disco. Representa una unidad lógica para el direccionamiento de datos en el disco.
    • El parámetro CYL especifica la cantidad de cilindros que se asignarán al fichero.
    • Así como con TRACKS, la elección de la cantidad de cilindros está relacionada con la optimización del acceso a los datos y la organización física en el disco.
    • En JCL, el número de CYL se especifica mediante la declaración CYLINDERS en la descripción del fichero.

Ejemplo de creación de fichero en JCL

En un entorno mainframe, puedes utilizar el paso SORT de JCL junto con una utilidad como DFSORT o ICETOOL para ordenar registros en un fichero. Aquí tienes un ejemplo de un paso SORT en JCL que incluye la catalogación de un fichero de salida, y luego explicaré los parámetros relevantes:

//SORTSTEP EXEC PGM=SORT
//SYSOUT   DD  SYSOUT=A
//SORTIN   DD  DSN=INPUT.FILE,DISP=SHR
//SORTOUT  DD  DSN=OUTPUT.FILE,
//             DISP=(NEW,CATLG,DELETE),
//             UNIT=SYSDA,
//             SPACE=(CYL,(10,5),RLSE),
//             DCB=(RECFM=FB,LRECL=80,BLKSIZE=0)
//SYSIN    DD  *
  SORT FIELDS=(1,10,CH,A)
/*

Explicación de los parámetros relevantes:

  1. SORTOUT (Salida del SORT):
    • DSN=OUTPUT.FILE: Especifica el nombre del fichero de salida resultante del proceso de ordenamiento.
    • DISP=(NEW,CATLG,DELETE): Indica que el fichero debe ser creado si no existe, catalogado en el catálogo del sistema, y que debe ser eliminado al finalizar el job.
    • UNIT=SYSDA: Especifica la unidad de almacenamiento en la que se creará el fichero. SYSDA es una unidad de disco.
    • SPACE=(CYL,(10,5),RLSE): Define el espacio asignado al fichero. En este ejemplo, se asignan 10 cilindros iniciales con incrementos de 5 cilindros. RLSE indica que el espacio no utilizado debe ser liberado cuando el fichero se cierra.
    • DCB=(RECFM=FB,LRECL=80,BLKSIZE=0): Define las características del Control de Bloque de Datos (DCB) para el fichero de salida. RECFM=FB especifica un formato de registro fijo, LRECL=80 define la longitud del registro como 80 bytes, y BLKSIZE=0 indica que el sistema debe calcular el tamaño del bloque automáticamente.
  2. SYSIN (Entrada del SORT):
    • En el ejemplo, se utiliza la opción SORT FIELDS=(1,10,CH,A) para ordenar los registros basándose en los primeros 10 caracteres en orden alfabético ascendente (A).

Este ejemplo supone que ya tienes un fichero de entrada llamado INPUT.FILE y que deseas ordenar sus registros y almacenar el resultado en un nuevo fichero llamado OUTPUT.FILE. El fichero de salida se cataloga y se especifican los parámetros necesarios para su creación y manejo en el sistema de archivos.

Un comentario en «Calculador Online de Block SIZE, TRKS y CYL de un fichero JCL»

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *