Curt, On Tuesday 08 August 2006 05:50, Curt, WE7U wrote:
On Tue, 8 Aug 2006, Randall R Schulz wrote:
That doesn't happen. I can update the library without the process noticing at all.
That's because the software development tools don't overwrite existing files. They move / rename or delete those files and create new ones. This prevents failure of either the tools or the programs using them.
Ummm... As I recall the Unix filesystem does this: If a file is opened by one or more processes and the file gets deleted, the file is still maintained on the system until the last process using it closes the file or dies. At that point the space is free'd up for use again. Until that time it is just hanging around, invisible to new processes but still usable by those that had it open.
That _is_ how the kernel behaves. But the tools could be written to overwrite existing files, but it would just reduce their utility.
This "trick" is used often to create temporary files that other processes can't touch: Create it, open it, then delete it but keep it open.
That's probably why the daemon isn't noticing the change: It's still using the original file it was dynamically linked to when it was started up.
Quite likely.
-- Curt
RRS