Full virtualization for jobs

Hello
I’m looking to start a project where we want to fully virtualize all file system access for processes within a particular job. Somewhat similar to containerization, but the file data served would be dynamic (in our case retrieving remote files) rather than static container images.

Would this be something possible with minifilters?

Specifically, would minifilters be able to virtualize drives that otherwise don’t exist on my system? For example, even if I do not have a T: drive, I would need a T: to appear to specific processes. It seems that all the examples I find are minifilters attaching to existing drives.

Thanks!

Sounds to me like you writing a file system. And tbh that would be a lot easier for the scope you have described.

The bit you describe (working from dos device T:) is the easy bit. You can do it properly (surface a device, make sure that only your recogniser can mount it and then map a dos device, or do it with mirrors and reparse points…

But won’t the cloud mini filter do what you need?

Thanks for the reply.

The part I’m still unsure about is how to make that mount specific to a process/job. Even if only a specific process can do the mount, how does this prevent other processes from seeing it? If I run 2 processes like this, how are they able to both mount a T: that is virtualized differently for each?