Re: Memory problems?
From: Michael Brown (see_at_signature.below)
Date: Fri, 19 Aug 2005 09:36:02 +1000
Jon D wrote:
> I had a time recently when I had the following error message from
> time to time.
> ------------ START ----------------
> smc.exe - Application Error
> The instruction at "0x77121767" referenced memory at "0x0014fffc".
> The memory could not be "read".
> Click on OK to terminate the program
> ----------- END -----------------
> Does this indicate that I might have a problem with the RAM memory on
> my mobo?
No, it just means Sygate is a poorly programmed piece of junk :) OK, that's
being a bit harsh; it's one of the better-written personal firewalls, but it
has still caused me a large number of problems in the past. What the error
code means is that an smc.exe tried to access a bit of memory that it
shouldn't have. Windows keeps track (to a rough degree) of which areas of
the virtual address space of the application actually have memory allocated
to them, and an access violation like the above is fired when a program
access an area of the virtual address space that does not have memory
allocated to it.
In addition, the memory address it referenced is typical of a programming
error. Why? Well, quite often you have code that finds the index of some
entry in a list, then looks up that entry in another list (or the same
list). If the item does not exist in the list that was searched, a return
value of -1 is often given (since the index -1 does not exist in zero-based
arrays). The address that it was trying to read in the error message above
would be accessed if you tried to access element -1 in an array (of
pointers, say) at 0x00150000. This indicates sloppy programming from Sygate.
Unless you are 100% sure (as in can logically prove) that the element must
be in the list, you should check for an index of -1.
It's possible that a hardware error caused the program to go into an
undefined state (where proofs from logic do not necessarily apply) and that
caused the software error, but given the number of problems I've seen with
Sygate I'd say it's almost certainly just lazy programming.
> (PS: SMC.exe is one of the executables for Sygate Personal
-- Michael Brown www.emboss.co.nz : OOS/RSI software and more :) Add michael@ to emboss.co.nz ---+--- My inbox is always open