[TUHS] crt0 -- what's in that name?
segaloco via TUHS
tuhs at tuhs.org
Tue Jun 13 07:32:58 AEST 2023
> It may be that crt stood for "compiler run time" back when C was the
> only compiler in town.
>
> -Paul W.
I don't know about this, only given the fact that B was already there and had a brt1 and brt2, crt0 seems like a natural follow-on to this naming scheme and I would suspect the c in crt0 referring to the language, not "compiler" was probably there from the genesis. These are the single letter associations I've found:
- a - assembly as in liba.a
- b - B lang as in libb.a, brt1, bilib
- c - C lang as in libc.a, crt0
- e - Explor as in libe.a
- f - Fortran as in fc, f77, libf.a, fr0
- l - LIL as in lc (LIL compiler)
- m - m6 as in /sys/lang/mdir
Of course letters get reused for things, this logic would imply the LIL language would have a libl.l but that instead is the lex library as appears a little later on. Y of course eventually gets associated with yacc. Not affirmative proof but I would be more inclined to suspect the c there is a language reference than standing for "compiler"
- Matt G.
P.S. The "bss" definition that lives in my head is "block-sized storage" but frankly I can't recall where I picked that up. I feel like I didn't just make that up but Google returns nothing.
More information about the TUHS
mailing list