Primero que nada vamos a averiguar que direcciones se encuentran libres para montar nuestro nuevo volumen. z/OS tiene por defecto muchas libres para usos variados.
Desde el menú principal del ispf vamos ingresando las siguientes opciones: M More -> 4 HCD -> Cambiamos si no aparece I/O... para que quede así.
For options 1 to 5, specify the name of the IODF to be used.
I/O definition file . . . 'SYS1.IODF99'
El SYS1.IODF99 (dependiendo de la versión puede ser IODF01) lo sacamos de la primera linea de SYS1.IPLPARM(LOADDB).
Buscamos el 'LOADDB' porque en el HERCULES.CNF estamos usando 'LOADPARM 0A95DBM1 #4 DB2 & CICS'...
-> 1. Define, modify, or view configuration data -> 5. I/O devices
y llegamos al 'I/O Device List'.
----------Device-----
/ Number Type +
_ 000C 2540
_ 000C 2540R-1
_ 000E,2 1403-N1
_ 0120 3380
_ 0121 3380
_ 0122 3380
_ 0123 3380
_ 0124 3380
_ 0125 3380
_ 0126 3380
_ 0127 3380
_ 0128,56 3380
_ 01C0,64 3390
_ 0240,32 3380
_ 0260,32 3390
_ 0300,25 3390
Vemos en la última linea 0300,25 3390 que significa que esta reservando para un dispositivo de tipo DASD (Direct Access Storage Device) la dirección 0300 y las 25 siguientes.
Abrimos el hercules.cnf y verificamos que ningún dispositivo ocupe esta dirección.
En el archivo >hercules.cnf ya agregué el vínculo de la posición 0300 de memoria al archivo de volumen que vamos a crear.
La búsqueda en I/O Device List la mostré como parte del procedimiento que se debe hacer.
Dentro de la carpeta de Hercules vamos a crear una nueva donde iremos poniendo los volumenes que creemos para separarlos de los del sistema.
Asi que creamos 'uservol'. Ahora desde dentro de la carpeta del hercules vamos a ejecutar la aplicación que creara el archivo de windows donde se creara el volumen.
Con el comando 'dasdinit -z c:\00\ZVOL00.300 3390-3 ZVOL00' desde una consola de DOS crearemos en la carpeta c:/00 el archivo ZVOL00.300 que contendra el volumen.
HHCDU044I Creating 3390 volume ZVOL00: 3339 cyls, 15 trks/cyl, 56832 bytes/track
HHCDU041I 3339 cylinders successfully written to file c:\00\ZVOL00.300
HHCDI001I DASD initialization successfully completed.
El archivo ZVOL00.300 contendrá los datos para identificarse como un dispositivo 3390-3 (Almacenamiento de 2 Gigas aprox.) con nombre ZVOL00, y estara comprimido (opción z del principio).
La compresíon permite que el archivo crezca en tamaño a medida que le ingresemos programas, datasets, miembros, etc. si no automaticamente ocuparía mas de 2 Gigs.
El archivo creado ZVOL00.300, debemos incluirlo en la carpeta 'uservol' dentro de hercules, que es lo que especificamos en el hercules.cnf.
Con 'attach 0300 3390 uservol/zvol00.300' en hercules lo montamos. Aún no esta formateado pero sirve de prueba para ver que todo vaya bien hasta acá.
Con 'd u,,,300' en la terminal 1, mostramos que el z/os lo reconozca.
IEE457I 07.46.57 UNIT STATUS FRAME 1 F E SYS=ADCD
UNIT TYPE STATUS VOLSER VOLSTATE
0300 3390 O ZVOL00 PRIV/RSDNT
0301 3390 F-NRD /RSDNT
0302 3390 F-NRD /RSDNT
0303 3390 F-NRD /RSDNT
0304 3390 F-NRD /RSDNT
0305 3390 F-NRD /RSDNT
0306 3390 F-NRD /RSDNT
0307 3390 F-NRD /RSDNT
IEE612I CN=L700 DEVNUM=0700 SYS=ADCD
Ahí aparece en la primera fila.
Con 'v 300,online' en la terminal 1, lo ponemos online.
07.48.54 IOS452I 0300,03, OPERATIONAL PATH ADDED TO PATH GROUP
07.48.54 IEE302I 0300 ONLINE
Para formatearlo, debemos ponerlo offline con 'v 0300,offline' desde la terminal 1.
Ahora con el siguiente JCL INIDISCO formateamos el volumen para ya dejarlo listo.
INIDISCO lo cargamos en IBMUSER.MAG.JCL, y desde allí submitimos.
Al submitir desde la terminal 2, en la terminal 1 nos preguntara si queremos seguir adelante.
*08.02.23 JOB00776 *01 ICK003D REPLY U TO ALTER VOLUME 0300 CONTENTS, ELSE
* T
En la terminal 1 ingresamos el siguiente comando 'R 01,U' (sin comillas), que significa R(esponse) 01(que es el número de pregunta pendiente) y U después de la coma para alterar el volumen 0300.
- 08.03.45 JOB00776 ICK061I 0300 VTOC INDEX CREATION SUCCESSFUL: VOLUME
- IS IN INDEX FORMAT
- 08.03.45 JOB00776 IEF404I INIDISCO - ENDED - TIME=08.03.45
Desde la terminal 1 lo ponemos online con 'v 0300,online' (sin comillas).
Ya podemos verlo, por ejemplo con 'Data Set List Utility' =3.4 desde el menú principal del ispf, y poniendo en 'Volume serial . . ZVOL00' y ENTER.
¡LISTO!
NOTA: con el nuevo hercules.cnf, para iniciar el IPL se debe utilizar la opción 'N 0A81 3390 DASD cckd/zares1.cckd [3339 cyls]'
Hercules CPU0000: 0% z/Arch | Peripherals
| U Addr Modl Type Assignment
0000000000000000 0000000000000000 | A 000E 1403 PRT c:\00\IMPR0E.TXT
PSW 24M......Z | B 000F 1403 PRT c:\00\IMPR0F.TXT
| C 0300 3390 DASD uservol/ZVOL00.300 [3339 cyls]
0 0000000000000000 1 0000000000000000 | D 0580 3420 TAPE *
2 0000000000000000 3 0000000000000000 | E 0581 3420 TAPE *
4 0000000000000000 5 0000000000000000 | F 0582 3420 TAPE *
6 0000000000000000 7 0000000000000000 | G 0583 3420 TAPE *
8 0000000000000000 9 0000000000000000 | H 0584 3420 TAPE *
A 0000000000000000 B 0000000000000000 | I 0700 3270 DSP
C 0000000000000000 D 0000000000000000 | J 0701 3270 DSP
E 0000000000000000 F 0000000000000000 | K 0702 3270 DSP
GPR CR AR FPR | L 0703 3270 DSP
| M 0704 3270 DSP
ADDRESS: 00000000 DATA: 00000000 | N 0A81 3390 DASD cckd/zares1.cckd [3339 cyls]
| O 0A82 3390 DASD cckd/zares2.cckd [3339 cyls]
--------------------------------------| P 0A83 3390 DASD cckd/zadb81.cckd [3339 cyls]
0.00 0 STO DIS RST | Q 0A84 3390 DASD cckd/zadb82.cckd [3339 cyls]
MIPS SIO/s | R 0A85 3390 DASD cckd/zadb83.cckd [3339 cyls]
| S 0A86 3390 DASD cckd/zadb84.cckd [3339 cyls]
STR STP EXT IPL PWR | T 0A87 3390 DASD cckd/zadb91.cckd [3339 cyls]
| U 0A88 3390 DASD cckd/zadb92.cckd [3339 cyls]
--------------------------------------| V 0A89 3390 DASD cckd/zacic1.cckd [3339 cyls]
CPU | W 0A8A 3390 DASD cckd/zadis1.cckd [3339 cyls]
00 STOPPED | X 0A8B 3390 DASD cckd/zadis2.cckd [3339 cyls]
01 STOPPED | Y 0A8C 3390 DASD cckd/zadis3.cckd [3339 cyls]
02 STOPPED | Z 0A8D 3390 DASD cckd/zadis4.cckd [3339 cyls]
03 STOPPED | . 0A8E 3390 DASD cckd/zadis5.cckd [3339 cyls]
O directamente con el comando 'Command ==> IPL 0A81'.