On Fri, 31 Oct 2014, Brian wrote:

Frederic Da Vitoria wrote
I think that Brian is asking if a memory leak could eat the system's
memory
irreversibly. IIUC in Windows, when the program is stopped, all it's
memory
is freed, even if the program leaked memory. I don't know about Linux, but
I'd be surprised if it weren't the same.

--
Frederic Da Vitoria
(davitof)

Membre de l'April - « promouvoir et défendre le logiciel libre » -
http://www.april.org

_______________________________________________
fpc-pascal maillist -

fpc-pascal@.freepascal

http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal


Yes that is exactly what I was asking. For a high reliable system running
24/7 my fear using Object Oriented code vs procedural code is exactly what
you mentioned . If there is a serious leak , or even a small one for an
extended period of time , it can take down the OS. I have seen this happen
with Sun OS and a 3rd party driver that leaked and caused the OS to crash
after an extended period of time.

First, Linux will simply kill off processes if memory is exhausted, to ensure 
system stability.

Second: a driver is something special. Most drivers run in kernel (OS) space.
If the kernel itself leaks memory, obviously it can not kill itself...

Third: on unix, you can tell the system how much memory a program is allowed to consume. If the program tries to consume more, it will simply not receive it. See the getrlimit/setrlimit calls.

So for a user-space program there really is nothing to worry about.

Michael.
_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal

Reply via email to