On Sat, Mar 23, 2019 at 08:03:20PM +0100, Bernd Petrovitsch wrote:
Hi all!
On 23/03/2019 17:59, Bharath Vedartham wrote: [..]
I was wondering how we can overwrite the copy functionality while writing our own filesystem in linux. VFS does not offer any sort of API for copy. I think it calls create and
Yes.
write when we execute the copy the file/dir. I am interested in overwriting the way copy happens in my filesystem(which I am writing for fun :p). Any ideas?
strace a "cp" and see which system calls are used. Look into the source code and see how it's implemented.
There is actually more than one method but the usual (while simplest, most versatile and probably fastest) method used is: open source and destination files, read from the source, write into the destination until EOF.
I have observed that it is a mixture of system calls. I am interested in implementing copy-on-write in my filesystem(for fun). I feel that, it would require my creat vfs api to be aware of the fact that "cp" is calling it. I want to keep things as generic as possible. I ll proceed by reading the source of union filesystems (overlayfs) to see how they implement copy-on-write.
MfG, Bernd -- Bernd Petrovitsch Email : bernd@petrovitsch.priv.at LUGA : http://www.luga.at