[MUD-Dev] Re: TECH: Distributed Muds

J C Lawrence claw at 2wire.com
Thu Apr 26 20:38:26 New Zealand Standard Time 2001

On Thu, 26 Apr 2001 21:52:23 -0400 
Derek Snider <derek at idirect.com> wrote:

> From Ola Fosheim Grostad:
>> Derek Snider wrote:

> I still don't think periodic traversal is a bad thing... at least
> this way you know that the memory has not become corrupt.

If you have memory corruption problems you already have far worse
problems that occassional page swaps.  Further, unless you do more
than merely check the linkage pointers for first order correctness
(either NULL or pointing to what looks like another node), you have
absolutely no guarantees as to the state of the contents of any of
those objects ("Yeah, this is a healthy horse.  See!  It has a

> Also, in the case of a memory leak, leaked memory would be paged
> out.

It would be any way.

> As I said... better to have enough RAM than to rely on virtual
> memory.  Also... your program should check the return status of
> malloc().  If malloc fails, then something bad is going on, and it
> should fail gracefully... not coredump.

Most Unix systems get very unhappy when approaching the limits of
system/swap space.  Its got nothing to do with malloc()/sbrk()
returning NULL, and it has everything with basic assumptions about
edge conditions and the kernel coming under stress.  I'd be
surprised if you got a clean core dump at the application level.
I'd be mildly pleased if you got a clean panic and system dump as
versus a spontaneous system reset or lock.

J C Lawrence                                       claw at kanga.nu
---------(*)                          http://www.kanga.nu/~claw/
--=| A man is as sane as he is dangerous to his environment |=--
MUD-Dev mailing list
MUD-Dev at kanga.nu

More information about the MUD-Dev mailing list