On Mon, Nov 21, 2005 at 10:45:08PM -0800, kuldeep vyas wrote: > I wonder whether Operating System provides some option to ensure that: > a file which is modified in the directory-tree must be accordingly & > instantly updated in all forms of memory(RAM, cache etc.) > I mean whatever is running in the system should not be keep on running > once it's modified to stop & we shouldn't have to wait for next open.
This is a question about your operating system, not coreutils. It's off-topic for this list, really. With traditional Unix semantics, I/O against a file gives consistent results across all processes (on the same machine) which have it open, even if it is 'deleted'. In Unix, the only meaning of the 'unlink' system call is to reduce the link count of a file by one. That's it. It does nothing else. There is no separate 'delete' system call. Once the link count of a file reaches zero, it can no longer be opened (because it no longer has a name, no possible argument to the open(2) system call can select it) but processes that already have it open can continue to use it. When a file is closed and no other processes have the file open, and the current link count of the file is zero, the inode and data blocks of the file's data are reclaimed. I've tried to be clear here, but this is not really the place for long explanations of how Unix works. If you are still in need of further information here, I would suggest that you read the book "Advanced Programming in the Unix Environment" by W. Richard Stevens. Regards, James. _______________________________________________ Bug-coreutils mailing list Bug-coreutils@gnu.org http://lists.gnu.org/mailman/listinfo/bug-coreutils