[TUHS] crt0 -- what's in that name?

Clem Cole clemc at ccc.com
Tue Jun 13 07:31:20 AEST 2023

On Mon, Jun 12, 2023 at 4:17 PM Dave Horsfall <dave at horsfall.org> wrote:

> On Mon, 12 Jun 2023, Dan Cross wrote:
> > 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.
> I've always thought of it as "C run time stage 0".
crt - C RunTme.   I always heard it expressed as C  runtime SYSTEM or START

WRT to BSS -- Block Start Symbol (and sometimes Block End Symbol in some
later assemblers) I believe was (were) part of the original 704 assemblers
from United Aircraft reserving a labeled block of uninitialized space in a
"DUMMY SECTION" (or DSECT) for a hunk of storage.  The OS is going to load
everything together. So, a big feature of the United Aircraft assembler was
to help control memory layout and collect like (common) hunks of things
together (i.e., code vs data).  The whole idea of BSS was to get the loader
to reserve space that did not have to initialized.  As I understand it, the
standard IBM FORTRAN (FAP) and Assembler (MAP) for the 709 and 7090/94
picked it up, with the new FORTRAN compiler being the big driver.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.tuhs.org/pipermail/tuhs/attachments/20230612/bb1d582e/attachment-0001.htm>

More information about the TUHS mailing list