Nick de Smith Applied Telematics Group 7 Vale Avenue Tunbridge Wells Kent TN1 1DJ England +44 892 511000 PDINIT.C This program initialises the VMS pseudo disk device created by PDDRIVER. The PDA0: device is supported only for use by stand-alone BACKUP from RX or TK (etc.) type devices. It is not supported for general use by VMS applications. The device driver alloctes physical pages from non-paged pool. If the pool is too small, VMS will expand it from NPAGEDYN towards NPAGEVIR. Pages allocated in this manner can be returned to pool, but will never be deallocated from the pool back to the free list. ie. non-paged pool can dynamically expand, but not dynamically contract (until you reboot). Therefore, make sure that NPAGEVIR is big enough to handle a PD device in addition to your normal pool requirements. To use the PDA device: a) You must have CMKRNL to load the device driver. SYSGEN> CONNECT PDA0 /NOADAPTER /DRIVER=PDDRIVER [/MAXUNITS=n] where "n" minus 1 is the maxiumum unit number for a PDA device. b) You must have PHY_IO to format it. $ PDINIT [PDAx] [/[NO]BLOCKS[=n]] where "x" is the unit number of the PDA device to create and format, and "n" is the number of blocks you wish to allocate to the PD device. Note that each 2048 blocks takes up 1Mb of non-paged pool. You should specify at least 64. blocks for the device. If you don't specify a device then PDA0: is assumed. If you don't specify /BLOCKS=n then /NOBLOCKS is assumed. c) Initialise and mount the created device. $ INIT PDAn: lognam $ MOUNT PDAn: lognam $ CREATE/DIRECTORY PDAn:[directory] ! etc. To free up the pool pages: a) Dismount the PDAn: device. b) Format the PDAn: device specifying /NOBLOCKS. PDINIT [PDAx] /NOBLOCKS eg. $ SET PROCESS/PRIVILEGE=CMKRNL ! Need CMKRNL to CONNECT a driver $ RUN SYS$SYSTEM:SYSGEN SYSGEN> CONNECT PDA0 /NOADAPTER ! Load the PDAn: driver SYSGEN> EXIT $ SET PROCESS/PRIVILEGE=(NOCMKRNL,PHY_IO) ! Loose CMKRNL, add PHY_IO $ PDINIT /BLOCKS=200 ! Format disk for 200 blocks $ INIT PDA0: NICK ! Make PDA0: a files-11 device $ MOUNT PDA0: NICK ! Mount the disk $ CREATE/DIR PDA0:[NICK] ! Create directories, files etc. $ ... $ DISMOUNT PDA0: ! Dismount the file system $ PDINIT ! Free up the non-paged pool