I had thought that crt stood for “compiler runtime”. You’ll find files on a NetBSD (and
other BSDs) in /usr/lib/csu called crt0, crtbegin, crtend (etc) which are included in the
compiled binaries at build time and are used to include machine dependent things need to
initialise programs.
(The acronym could be wrong of course - bss is the notorious one, where even the man page
for a.out has this has a bug: "Nobody seems to agree on what bss stands for.”)
C
On 12 Jun 2023, at 20:45, segaloco via TUHS
<tuhs(a)tuhs.org> wrote:
Probably derivative of /etc/brt1 and /etc/brt2. If there's a
<lang>rt<digit> convention before that I can't say. If they're going
for UNIX-y nomenclature though bootloaders were mboot, tboot, uboot, etc. As an aside,
Sega used the nomenclature "icd_blkX" where X is a digit to number 128-byte
blocks of their initial loader, icd I presume standing for something like initial code. I
feel like I've seen "icd" used elsewhere, but couldn't say where. In
any case, I'm sure a lot could be devoted to running down the history of names like
crt0, mch, mdec, icd, uboot, and so on. Unfortunately those sorts of trivia haven't
bubbled up in my manual studies.
- Matt G.
------- Original Message -------
On Monday, June 12th, 2023 at 11:53 AM, Clem Cole <clemc(a)ccc.com> wrote:
This makes sense since there was B runtime to
start, and Dennis was messing with things. No idea but I wonder if that was the impetus
for the rename from B to newB to C - when he introduced a new runtime?
ᐧ
On Mon, Jun 12, 2023 at 2:30 PM Dan Cross <crossd(a)gmail.com> wrote:
On Mon, Jun 12, 2023 at 2:22 PM ron minnich <rminnich(a)gmail.com> wrote:
This came up lately in the riscv firmware
universe. Someone named early boot bt0, I mentioned crt0, and ... when did that name first
appear? I first saw it in v6 but I'm sure it was long before.
The Unix tree shows it in 2nd Edition:
https://www.tuhs.org/cgi-bin/utree.pl?file=V2/lib/crt0.s
That would suggest it was more or less contemporaneous with C itself.
- Dan C.