Next: Dynamic Storage
Up: Eventual
Previous: I/O
Mapping is a facility provided by VMS which gets around the problem of
fitting variable length data into static arrays of fixed length as
imposed by FORTRAN. Essentially the area of disk in which the data
reside are added to virtual memory, the mapping routines returning the
start address in an integer variable. Since FORTRAN has no facilities
for dealing with such pointers their use can be hazardous! Mapping
and pointers should only be used according to the following rules:
-
Mapping should only be done using HDS/ADAM subroutine calls -
there should be no explicit reference to VMS mapping service routines.
-
The value of a pointer may not be changed.
-
The array pointed to may only be manipulated by a lower level
subroutine. The pointer should be passed by reference using
together with the dimensions of the array. Within the subroutine the
array should be dynamically dimensioned unless its length is
potentially zero, in which case the (*) format may be used.
Web Master
Wed Oct 8 09:22:15 BST 1997