Is kernel-FD-auto-close exactly equal to explicit-FD-close?

From: Ajay Garg
Date: Tue Aug 16 2016 - 07:59:48 EST


Hi All.

We have deployed a simple C-application on an embedded-platform
running Linux, and we spuriously observe file-corruption. In
particular, there is an all-important "config" file, and some of its
lines are lost spuriously.

Now, our application opens quite a few files on the file-systems, and
one serial-port.
During the course, if an error occurs, we simply "exit(1)" the binary,
without any special code for closing any opened-file-descriptors.

I tested with "lsof", and confirmed that after binary exit, any
open-file-descriptors are closed (automatically by kernel).


With this as the background, I revisit my question :: Is
kernel-file-descriptor-auto-close exactly equal to
explicit-file-descriptor-close?

Will be grateful for pointers; as of now, nightmares have begun striking me.


Thanks and Regards,
Ajay