I'm not quite sure what you're describing, but I think it is a combination of aufs and tmpfs.
I'd need some retesting to rediscover the details (I can't explain from memory) but the general concept is:
You mount an aufs that represents parallel directory trees between an ordinary already mounted directory tree and a new (initially empty) tmpfs.
On every file lookup or read, the aufs will look in the tmpfs first, but if the file isn't there it would read from the other directory tree.
On every file write, the aufs will write only to the tmpfs. If you write to only part of a file, the rest of the file is copied from the other fs to the tmpfs.
So the aufs represents a modified copy of the underlying directory tree, with the tmpfs holding only the files that are different.
Last edited by johnsfine; 04-08-2009 at 12:55 PM.