Messages in this thread |  | | From | Wayne.Brown@altec ... | Date | Sun, 13 May 2001 21:59:07 -0500 | Subject | Re: Not a typewriter |
| |
On 05/13/2001 at 08:03:30 PM Horst von Brand <vonbrand@sleipnir.valparaiso.cl> 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've always thought it was just an arbitrary decision, based on the general Unix custom of shortnening names by removing vowels, especially since Ken Thompson later said he'd spell it "create" if he had it to do over again. But your explanation sounds more likely. I really should have thought of this, since I used to run into problems with non-unique names under the Minix linker (which, IIRC, had the same 6 char limit).
- 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/
|  |