Messages in this thread | | | Date | Mon, 14 May 2001 10:31:48 -0400 | From | John Kodis <> | Subject | Re: Not a typewriter |
| |
On Sun, May 13, 2001 at 09:03:30PM -0400, Horst von Brand wrote:
> The old C compiler/old Unix linker guaranteed 6 chars in an external symbol > name only, and C functions got an underscore prepended: _creat. I guess > this is the reason for this wart. As to why 6 chars only, I'd guess some > data structure in the linker was laid out that way. Machines had a few > dozen Kbs of RAM then, space was precious.
I recall that RSX-11 and a few other series of early DEC operating systems stored linker symbols in a "RAD50" encoding scheme which allowed 6 chararacters to be crammed into a 32-bit "long word". I suspect that this is where the limitation originated.
-- John Kodis <kodis@acm.org> Phone: 301-286-7376 - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |