I'm working on security software(SW) for Linux. One thing that our SW does on is that when some process is started, the SW stat()s the process's /proc/ entry and remembers the entry's inode number. When later on the SW needs to ascertain that the process is still running (and hasn't been restarted), it again looks up process's inode and compares to the one remembered. All was fine and dandy until recently I began receiving false alerts for a specifc application - Opera browser 11.10beta. Basically it appears that while Opera was running, the inode number for its /proc/PID entry has changed, which we considered an impossibility. This is a rather big spanner in the works of the SW's security concept - so much relied on the fact that while a process is running, its /proc/ entry's inode remains unchanged.
Could someone please advise as to why such behaviour may be exhibited. Thanks.