MVS Comandos

Alguns comandos que podem ajudar no bom andamento de um sistema.


Comandos Gerais

d iplinfo

SYSTEM IPLED AT 14.02.46 ON 31/02/2100
RELEASE z/OS 01.09.00 LICENSE = z/OS
USED LOADWW IN DATA.DATASET ON 9999
ARCHLVL = X MTLSHARE = Z
IEASYM LIST = 00
IEASYS LIST = (00) (YY)
IODF DEVICE 8888
IPL DEVICE 7777 VOLUME ONONON

Este comando mostra os dados do sistema, tipo a última data de IPL, em qual volume está o Dataset, em qual Drive estão os parametros que forram carregados no sistema etc.

*Os números acima são fictícios.


d a,XXXXXXX

Este comando mostra o estado de uma das entidades ativas no MVS, podendo ser um Job, uma Task ou usuário.

Seguem alguns exemplos do comando:

d a,xxxxxxxx - onde xxxxxxxx é um nome de Job.

JOBS - M/S - TS USERS SYSAS - INITS - ACTIVE/MAX VTAM OAS
00010 00115 00006 - 000042 - 00085 - 00006/00450 00053

XXXXXXXX JS000 OWT J A=0109 PER=NO SMC=000
PGN=N/A DMN=N/A AFF=NONE
CT=000.119S ET=020.543S
WUID=JOB99999 USERID=ONONON
WKL=BATCH SCL=BATMED P=1
RGP=N/A SRVR=NO QSC=NO
ADDR SPACE ASTE=ZZZZZZZ

Neste comando é possível ver tudo o que diz respeito em relação a um Job que está em um sistema, tais como o tempo de CPU utilizado, o número de JES de um Job, a prioridade do Job no sistema, etc. E mais algumas informações extras mostradas na primeira linha, tais como quantidade de Job no sistema no momento, o número de usuários de TSO no sistema no momento, o máximo de usuários de TSO que podem acessar o sistema ao mesmo tempo, etc.


d a,l

Este comando mostra uma lista de tudo o que está ativo no MVS, sendo Tasks e Jobs.

Segue exemplo:


d r,l

Este comando mostra a lista de Reply dos sistemas.

Exemplo:

ID:R/K T SYSNAME JOB ID MESSAGE TEXT
000011 R XXXX CA7ICOM 11 CA-7.999 (CA7ICOM ) ENTER REQUEST

A resposta do comando acima mostra todos os Replies do sistema, neste caso o reply do CA-7, onde aparece o nome do Job, o número do Reply, etc.


d grs,c

Este comando é usado para verificar contenções em um sistema. Quando dois ou mais Job's ou usuários tentam acessar um mesmo recurso exclusivamente, estes entram em contenção, e alguém terá que esperar. Duas entidades podem acessar um recurso ao mesmo tempo, desde que nenhum deles queira exclusividade sobre o recurso. A contenção pode ainda envolver uma Task, o que gera uma situação mais séria. Se um Job ou usuário estiverem atrapalhando o funcionamento de uma Task ( o HSM por exemplo ), este normalmente tem que ser parado imediatamente, pois pode causar um CRASH no sistema.

Exemplo de uma resposta normal de contenção:

NO ENQ RESOURCE CONTENTION EXISTS
NO LATCH CONTENTION EXISTS

Outro Exemplo:

S=SYSTEM SYSDSN aaaaa.bbbbbbb.ccccc.dddddd.eeeeeeee
SYSNAME JOBNAME ASID TCBADDR EXC/SHR STATUS
xxxxxx - wxyzwxyz 00C6 007FF448 SHARE OWN
xxxxxx - zzzzzzzz 010E 007FF448 EXCLUSIVE WAIT
xxxxxx - www 003A 007E67F8 SHARE WAIT

Neste exemplo de contenção, pode se ver o recurso, que é um Dataset, os Jobs que estão em contenção, o tipo de utilização (SHARE/EXCLUSIVE), o status dos Jobs, etc. O terceiro Job zzzzzzzz, requer o recurso exclusivamente, por isso, ele vai esperar o primeiro usar wxyzwxyz e o terceiro, www, terá que esperar até o segundo terminar. Quem estiver verificando a contenção terá que verificar o que está em contenção, pois se apresenta como Job, e nem sempre o é.


f tso,usermax=0

Este é um comando de MODIFY que configura para 0, neste caso, o número máximo de usuários de TSO que podem entrar no sistema.




Comandos para Job

O comando de Display d a,jobname pode ser usado.


c jobname

Comando usado para 'cancelar' um Job.


c jobname,a=asid

Comando usado para cancelar um Job pelo seu Adress Space. Para ver o AS de um Job, é só usar o comando de Display.


c jobname,dump

Outra opca para cancelar, esta faz um DUMP quando cancela.


force jobname,arm

Este comando cancela o job de uma forma mais bruta, inclusive gera uma mensagem de END OF MEMORY, deve ser usado quando um suporte pede.


force jobname,a=asid

Este comando cancela o job de uma forma mais bruta, inclusive gera uma mensagem de END OF MEMORY, deve ser usado quando um suporte pede.


force jobname,a=asid

Faz o mesmo que o comand acima, so que forca o job de seu address space.


force jobname

Este comando forca o job mais brutalmente que o comando que usa arm.


e jobname,srvclass=batchhot

Este comando muda o parametro SRVCLASS de um Job, que é um parametro de execução, ou seja de performance.
Neste caso, o Job foi colocado em HOT BATCH, que significa que terá mais atenção do sistema para ele.

As opções para se colocar na Classe SRV são:

BATCHDFT - Opção Default, que é a que vem com o Job.

BATCHPRD - Opção de classe de produção.

SLEEP - Opção que coloca o Job em posição sem processamento, funciona como um HOLD.

RESUME - Opção que retira o status de SLEEP da Classe de um Job.




Comandos de MVS Console

K - Comando que 'limpa' a console.

K Q - Clear, limpa a console das mensagens comuns e deixa as Highlighted Messages.

K S,DEL=R - Coloca a console em status ROLL, ou seja as mensanges rolam na console, inclusive as Highlited Messages .

K S,DEL=RD - Coloca a console em status ROLL DELETE, ou seja a console rola e deleta as mensagen comuns e segura as Highlited.

K S,DEL=N - Coloca a console em NO ROLL, ou seja as mensagens ficam travadas na colsone, mas pode gerar contencao na console, vale somente para copiar uma mensagem e liberar em seguida.

K E,1 - Comando usado para apagar as Highlighted uma por uma.

K E,D e K E,NONE - Estes comandos sau usados para mudar a divisao da console, as vezes ela fica dividida no meio, dai usando estes comandos ela volta ao normal.

V CN(XXXXMSTR),MSCOPE=XXXX - Onde XXXX leia-se a LPAR desta console. Comando usado para que uma console pare de receber mensagem de outra LPar, as vezes as Lpares dentro de um Sysplex dividem as consoles, entao se usar este comando colocando a mesma LPar, a console passa a receber soment suas mensagens.




Comandos de Usuario


d ts,l

Este comando mostra a lista de usuarios que estao no sistema no momento


d ts,a

Este comando mostra os usuarios ativos no sistema, detalhadamente.


c u=userid

Comando que cancela o usuario


c u=userid,a=asid

Comando que cancela o uauario pelo 'ADDRESS SPACE'




Comandos de SMS

V SMS,PDSE,ANALYSIS - Comando usado para checar o estado do PDSE do SMS quando alguma mensagem de PDSE aparecer.

O resultado tem que ser algo como:

++NO EXCEPTIONS

V SMS,PDSE,RESTART - Comando usado para reinicializar o PDSE. Usado somente com instrucao do MVS suporte.




Comandos de DEVICE

d m=dev(xxxx)

Onde xxxx seria o número do DEVICE.

Comando que mostra a situação de um Device, se ele esta ativo, se está em uso, se está funcionando normalmente, se a parte fisica e lógica estão ok.


d m=chp(xx)

Onde xx seria o número do CHIPID.

Comando parecido com o acima, mas mostra as informações para um CHIPID, que é o ponto de conexão fisico para DEVICES no Mainframe.


d u, , , ,xxxx

Onde xxxx seria o número de DEVICES.

Este comando mostra a quantidade de DEVICES no sistema, se estão ONLINE, OFFLINE, ALLOC, etc.

O comando tem parametros para ajudar a especificar o Display dos DEVICES.

1- DEVTYPE - Parametro que pode ser usado logo após a primeira vírgula e possibilita mostrar um DEVICE específico (DASD, TAPE, ALL, etc).

Ex.: d u,TAPE,online - Comandos que vai mostrar todos os DEVICES tipo TAPE disponiveis para uso (ONLINE) no sistema.

2 - ONLINE/OFFLINE - Parametro que permite mostrar todos os DEVICES que estao em um estado especifico.

Ex.: d u,DASD,offline - PArametro usado, neste caso, para mostrar os DASDs OFFLINE no sistema.

3 - DEVNUM - Parametro que vai apos a terceira vírgula para poder colocar o número do DEVICE especificado e partir deste numeros, mostrar todos os outros no sistema.

ex.: d u,,,FFFF,256 - Neste caso o parametro indica para serem mostrados 256 DEVICES a partir do ffff.

4 - NNNN - Este parametro, o último, pode ser usado para mostrar uma quantidade determinada de DEVICES, seja para um determinado tipo ou oara todos definidos no sistema.

ex.: d u,tape,aaaa,100 - Comando que mostra 100 unidades de DEVICES no sistema a partir da unidade aaaa.




Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License