Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.1 7/7/83; site rlgvax.UUCP Path: utzoo!linus!decvax!harpo!seismo!rlgvax!guy From: guy@rlgvax.UUCP (Guy Harris) Newsgroups: net.lang.c Subject: Re: automatic initialization to 0 Message-ID: <835@rlgvax.UUCP> Date: Sun, 17-Jul-83 04:37:34 EDT Article-I.D.: rlgvax.835 Posted: Sun Jul 17 04:37:34 1983 Date-Received: Sun, 17-Jul-83 16:53:47 EDT References: <3090@utzoo.UUCP> Organization: CCI Office Systems Group, Reston, VA Lines: 15 Bell is considering an addition to C to permit specification of sharable read-only data vs. non-shared read/write data (to get shared read/write data, use the shm* system calls in UNIX 5.0 - System V - or whatever will appear in 4.2BSD), which will solve the problem much more cleanly than it is being solved now, namely by running selected source modules through an "sed" script that turns ".data" into ".text". As for a micro-based application not clearing out ".bss", the method used by the UNIX kernel, you're right; any C implementation running stand-alone should have a C startup routine which cleans out "bss" (a little tricky if your linker won't provide the start of BSS and the end of BSS as globals, as the UNIX one does) and calls "main". Guy Harris {seismo,mcnc,we13,brl-bmd,allegra}!rlgvax!guy