Users create and manipulate segments. Order of segment references is unknown, so in general not possible to assign unique segment number to each shared routine or data object. Segment reference names must be translated into path names via directory search. After segment is known, want to use generalized address instead of this symbolic reference. Add level of indirection so don't have to modify referring segment - a linkage section.
P is called linkage section.
Link data are simply indirect addresses. The set of associations between symbolic word addresses x and word numbers within a segment is the symbol table of that segment. Thus the link pointer must be updated whenever a new segment is executed via procedure call. Convention is to have to two instructions in the linkage segment for the newly called segment that prep the link pointer for that segment and jump to the real entry point within the segment. An argument pointer base register is set before procedure entry that contains the generalized address of the argument list.