Allocates a device for exclusive use by a process and its subprocesses. No other process can allocate the device or assign channels to it until the image that called $ALLOC exits or explicitly deallocates the device with the Deallocate Device ($DALLOC) service. Format SYS$ALLOC devnam ,[phylen] ,[phybuf] ,[acmode] ,[flags] C Prototype int sys$alloc (void *devnam, unsigned short int *phylen, void *phybuf, unsigned int acmode, unsigned int flags);
1 – Arguments
devnam OpenVMS usage:device_name type: character-coded text string access: read only mechanism: by descriptor-fixed-length string descriptor Device name of the device to be allocated. The devnam argument is the address of a character string descriptor pointing to the device name string. The string can be either a physical device name or a logical name. If it is a logical name, it must translate to a physical device name. phylen OpenVMS usage:word_unsigned type: word (unsigned) access: write only mechanism: by reference Word into which $ALLOC writes the length of the device name string for the device it has allocated. The phylen argument is the address of this word. phybuf OpenVMS usage:device_name type: character-coded text string access: write only mechanism: by descriptor-fixed-length string descriptor Buffer into which $ALLOC writes the device name string for the device it has allocated. The phybuf argument is the address of a character string descriptor pointing to this buffer. acmode OpenVMS usage:access_mode type: longword (unsigned) access: read only mechanism: by value Access mode to be associated with the allocated device. The acmode argument is a longword containing the access mode. The most privileged access mode used is the access mode of the caller. Only equal or more privileged access modes can deallocate the device. flags OpenVMS usage:mask_longword type: longword (unsigned) access: read only mechanism: by value Longword of status flags indicating whether to interpret the devnam argument as the type of device to be allocated. Only one flag exists, bit 0. When it is set, the $ALLOC service allocates the first available device that has the type specified in the devnam argument. This feature is available for the following mass storage devices: RA60 RA80 RA81 RC25 RCF25 RK06 RK07 RL01 RL02 RM03 RM05 RM80 RP04 RP05 RP06 RP07 RX01 RX02 TA78 TA81 TS11 TU16 TU58 TU77 TU78 TU80 TU81