[comp.lang.postscript] Regarding eexec, cexec and other mysteries

ldo@waikato.ac.nz (Lawrence D'Oliveiro) (01/08/90)

In article <17491@rpp386.cactus.org>, woody@rpp386.cactus.org (Woodrow Baker)
says

	"The only 2 things that I haven't got down about cexec are how to
	set the  relocation tables up, what they refer to, and some more
	of the system calls."

The relocation table format is very simple. Offset 12 in the header
of the cexec block contains the offset to the relocation table, and offset
14 contains its length in bytes. The table itself is just a sequence
of 16-bit integers, being the offsets from the beginning of the cexec
block of longwords needing relocation. Each longword will have the
base address of the cexec block added to it.

I haven't actually tested this out, as the development system I use
generates position-independent code, so I've never bothered setting
up any relocation tables. But it's an interpretation consistent with
the examples I've examined.

Lawrence D'Oliveiro
Hacker-in-residence
Computer Services Department
University of Waikato
Hamilton, New Zealand
ph:  +64-71-562-889
fax: +64-71-384-066
"I'd rather be hacking than cracking."