📌 Explicação
O parâmetro UNIT=
define em qual unidade de armazenamento física ou lógica o dataset vai ser alocado. Pode ser:
-
Um dispositivo real (ex: disco, fita)
-
Um grupo de dispositivos (ex:
SYSDA
,TAPE
) -
Um nome definido no sistema (ex: pool de volumes)
🧰 Usos mais comuns
-
Alocar arquivos em disco (
UNIT=SYSDA
) -
Gravar em fita (
UNIT=TAPE
) -
Controlar onde os datasets temporários serão armazenados
-
Jobs que precisam de performance ou controle de I/O
🧾 Sintaxe
//DDNAME DD DSN=nome.do.dataset,
// DISP=...,UNIT=unidade,...
Valores mais usados:
-
SYSDA
→ disco padrão (System Direct Access) -
TAPE
→ unidade de fita -
DISK
→ também representa disco (menos comum) -
3390
→ modelo de disco específico (antigo, mas usado em ambientes legados)
💻 Exemplo prático
//SAIDA DD DSN=CDICAS.SAIDA.RELATORIO,
// DISP=(NEW,CATLG,DELETE),
// UNIT=SYSDA,SPACE=(TRK,(10,5))
Aqui, o dataset CDICAS.SAIDA.RELATORIO
será criado em disco, usando a unidade padrão do sistema.
⚙️ Regras
-
Se
DISP=NEW
, oUNIT=
é obrigatório (junto comSPACE=
). -
A unidade pode ser compartilhada com outros jobs, ou dedicada.
-
Alguns sites têm nomes simbólicos definidos para grupos de dispositivos.
💡 Dicas
-
Use sempre
UNIT=SYSDA
pra manter portabilidade e simplicidade. -
Evite hardcode de unidades específicas, tipo
UNIT=3390
, a não ser que o ambiente exija. -
Em jobs com
SORT
,TAPE
ou geração de backups, oUNIT=
precisa estar alinhado com o dispositivo físico real.
✅ Conclusão
UNIT=
é o endereço físico da parada. Ele diz pro sistema: "aloca esse arquivo aqui nesse tipo de recurso". Ignorar ou usar errado pode dar erro de alocação. Saber configurar esse parâmetro garante que seus arquivos sejam criados onde devem — com eficiência e sem conflitos.