> 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/