malloc() behavior (was: Pointer please)
James Jacobsen
james_jacobsen at lycos.co.uk
Sun Oct 5 21:28:44 PDT 2003
It does not matter what freebsd does, C does not require that malloc
initialize space according to Kernighan and Ritchie. Its a good book, I
would say its worth the forty dollars.
--Will
On 10/05/03 20:32:00, Dan Nelson wrote:
> In the last episode (Oct 05), Robert Huff said:
> > Dan Nelson writes:
> > > Could be one of two problems. The program either malloced
> memory
> > > and tried to use it without zeroing it, or it freed some memory
> > > and tried to keep using it. In -current, the malloc has the J
> > > debugging flag set, which fills malloced and freed memory with
> > > 0xd0 (see the malloc manpage).
> >
> > On that page (on my 5.1 system), it says malloc() does not
> zero
> > allocated pages. Is this a change (possibly just for CURRENT), and
> > if so since when? Bexause unless I'm delusional (possible) I
> thought
> > pages /were/ supposed to be zeroed, and doing so was one of the
> > system's "as time permits" chores.
>
> Pages handed to processes by the kernel are always zeroed, but pages
> free()d then malloc()ed again are not zeroed by default on -RELEASEs,
> because they usually aren't returned back to the kernel inbetween
> (unless H is set, and even then it's not guaranteed). -CURRENT
> always
> has the J flag set, which means that any memory returned by malloc or
> passed to free will get overwritten with 0xD0, to aid debugging.
> That's not mentioned in the manpage, although I think it is mentioned
> someplace else (either FAQ or handbook).
>
> --
> Dan Nelson
> dnelson at allantgroup.com
> _______________________________________________
> freebsd-questions at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-questions
> To unsubscribe, send any mail to "freebsd-questions-
> unsubscribe at freebsd.org"
>
>
More information about the freebsd-questions
mailing list