In computer programming, a dope vector is a data structure used to hold information about a data object, e.g. an array, especially its memory layout.
A dope vector typically contains information about the type of array element, rank of an array, the extents of an array, and the stride of an array as well as a pointer to the block in memory containing the array elements.
It is often used in compilers to pass entire arrays between procedures in a high level language like Fortran.
Prior to the invention of the linked-list a dope vector was used internally in the internal structure of computer systems.
The dope vector included an identifier, a length, a parent address, and a next child address. The identifier was an assigned name and was mostly useless, but the length was the amount of allocated storage to this vector from the end of the dope vector that contained data of use to the internal processes of the computer. This length by many was called the offset, span of vector length. The parent and child references were absolute core references, or register and offset settings to the parent or child depending on the type of computer.
Dope vectors were managed internally by the operating system and allowed the processor to allocate and de-allocate storage in specific segments as needed.
Later dope vectors had a status bit that told the system if they were active; if it was not active it would be reallocated when needed. Using this technology the computer could perform a more granular memory management.
Other articles related to "vectors, vector, dope vector":
... For "one-dimensional" (single-indexed) arrays — vectors, sequence, strings etc ... Thus, if we have a vector containing elements (2, 5, 7, 3, 8, 6, 4, 1), and we want to create an array slice from the 3rd to the 6th items, we get (7, 3, 8, 6) ... This feature can be used, for example, to extract one-dimensional slices (vectors) or two-dimensional slices (rectangular matrices) from a three-dimensional array ...
... into a record called the array's descriptor or stride vector or dope vector ... values allowed for each index may also be included in the dope vector ... The dope vector is a complete handle for the array, and is a convenient way to pass arrays as arguments to procedures ...
Famous quotes containing the word dope:
“I was once a shameless, full-time dope fiend.”
—Gus Van Sant, U.S. screenwriter and director, and Dan Yost. Bob Hughes (Matt Dillon)