On Mon, 10 Aug 1998, Niels Hald Pedersen wrote:
->
->On my system, it is possible to compile/link a new (changed) version of
->a program, while a copy is still running. After the link, the running
->old copy no more have a valid executable, thus. How come ?
->
It shouldn't be possible as the running program's inode is 'busy'
and anyone (incl. the linker) would fail writing to it with errno=ETXTBSY.
Yet it is possible to remove/rename the running program's image as this
will result only in update of the directory's entry regarding the program
but the inode (and the executable itself) is still valid as the inode is
not freed until it is not used by any process
Regards,
Marin
"Knowledge is not a crime. Some of its applications are..."
- Unknown hacker