Existem pelo menos dois mecanismos prontamente disponíveis em Linux (mas provavelmente não em cygwin). Existe o sistema de arquivos fuse , veja man fuse
, que permite implementar um sistema de arquivos no espaço do usuário. Por exemplo, curlftpfs
(consulte a man page) converte acessos a arquivos em chamadas curl
ftp.
Em seguida, há a chamada de sistema fanotify , que permite interceptar chamadas feitas para abrir ou ler um arquivo e substituir ou manipular os dados. Veja man fanotify
.