I wrote a simple program to do it and I run this program prior to
starting up subsystem QINTER:
PGM
DCL &ERRORSW *LGL
DCL &MSGID *CHAR LEN(7)
DCL &MSGDTA *CHAR LEN(100)
DCL &MSGF *CHAR LEN(10)
DCL &MSGFLIB *CHAR LEN(10)
DCLF FILE(KENNETH/DSPOBJWRKF) RCDFMT(QLIDOBJD)
MONMSG MSGID(CPF0000) EXEC(GOTO CMDLBL(STDERR1))
/* VARY OFF ANY VRT *DEVD'S NOT IN USE */
/* GET NAMES OF ALL THE QPADEV* *DEVD'S */
/* DELETE THE QPADEV* *DEVD'S THAT CAN BE DELETED. */
VRYCFG CFGOBJ(QPACTL01) CFGTYPE(*CTL) STATUS(*OFF) +
RANGE(*NET) ASCVRYOFF(*YES)
MONMSG MSGID(CPF2659) /* Ignore "Incomplete" +
message */
VRYCFG CFGOBJ(QPACTL02) CFGTYPE(*CTL) STATUS(*OFF) +
RANGE(*NET) ASCVRYOFF(*YES)
MONMSG MSGID(CPF2659) /* Ignore "Incomplete" +
message */
VRYCFG CFGOBJ(QPACTL03) CFGTYPE(*CTL) STATUS(*OFF) +
RANGE(*NET) ASCVRYOFF(*YES)
MONMSG MSGID(CPF2659) /* Ignore "Incomplete" +
message */
OVRDBF FILE(DSPOBJWRKF) TOFILE(QTEMP/DSPOBJWRKF) +
MBR(DSPOBJWRKF)
DSPOBJD OBJ(QSYS/QPADEV*) OBJTYPE(*DEVD) +
OUTPUT(*OUTFILE) +
OUTFILE(QTEMP/DSPOBJWRKF) OUTMBR(*FIRST +
*REPLACE)
MONMSG MSGID(CPF0000)
DSPOBJD OBJ(QSYS/PC1*) OBJTYPE(*DEVD) +
OUTPUT(*OUTFILE) +
OUTFILE(QTEMP/DSPOBJWRKF) OUTMBR(*FIRST *ADD)
MONMSG MSGID(CPF0000)
DSPOBJD OBJ(QSYS/HHC*) OBJTYPE(*DEVD) +
OUTPUT(*OUTFILE) +
OUTFILE(QTEMP/DSPOBJWRKF) OUTMBR(*FIRST *ADD)
MONMSG MSGID(CPF0000)
Read: RCVF
MONMSG MSGID(CPF0864) EXEC(GOTO CMDLBL(END))
DLTDEVD DEVD(&ODOBNM)
MONMSG MSGID(CPF2615 CPF2616) /* Ignore "In Use" & +
"Last Dev" messages */
GOTO CMDLBL(READ)
END: RETURN
STDERR1: /* Standard error handling routine */
IF &ERRORSW SNDPGMMSG MSGID(CPF9999) +
MSGF(QCPFMSG) MSGTYPE(*ESCAPE) /* Func chk */
CHGVAR &ERRORSW '1' /* Set to fail ir error occurs */
STDERR2: RCVMSG MSGTYPE(*DIAG) MSGDTA(&MSGDTA) MSGID(&MSGID) +
MSGF(&MSGF) MSGFLIB(&MSGFLIB)
IF (&MSGID *EQ ' ') GOTO STDERR3
SNDPGMMSG MSGID(&MSGID) MSGF(&MSGFLIB/&MSGF) +
MSGDTA(&MSGDTA) MSGTYPE(*DIAG)
GOTO STDERR2 /* Loop back for addl diagnostics */
STDERR3: RCVMSG MSGTYPE(*EXCP) MSGDTA(&MSGDTA) MSGID(&MSGID) +
MSGF(&MSGF) MSGFLIB(&MSGFLIB)
SNDPGMMSG MSGID(&MSGID) MSGF(&MSGFLIB/&MSGF) +
MSGDTA(&MSGDTA) MSGTYPE(*ESCAPE)
ENDPGM
Kenneth
****************************************
Kenneth E. Graap
IBM Certified Specialist
iSeries Multiple System Administrator
NW Natural (Gas Services)
keg@xxxxxxxxxxxxx
Phone: 503-226-4211 x5537
FAX: 503-721-2518
****************************************
-----Original Message-----
From: midrange-l-bounces@xxxxxxxxxxxx
[mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf Of Pat Barber
Sent: Wednesday, August 01, 2007 1:42 PM
To: Midrange Systems Technical Discussion
Subject: Re: When do new QPADEV* devices get created
How did you handle that ???
Graap, Kenneth wrote:
I'd recommend deleting them all each day and letting them recreate as
needed...
Having several hundred QPADEV* virtual devices around can
significantly
affect how long it takes QINTER to start.
By deleting all these virtual devices daily, I was able to shave 15
minutes off a system restart. This was the time saved by having a
quicker startup of the QINTER subsystem.
As an Amazon Associate we earn from qualifying purchases.