5 ms·
How is this implemented on Windows vs OS X?
by jorangreef 11y ago
How is this implemented on Windows vs OS X?
- dkopi 11y agoIt can't. This is the type of features that have to be developed for each OS separately.
- jorangreef 11y agoYes, that's what's I meant, how would you develop it on Windows vs OS X etc? What options are available on those platforms?
- dkopi 11y agoI don't know how dropbox has actually implemented this, and I'm not sure about OSX, But on windows you might use a kernel file system filter driver or a shell namespace extension: https://msdn.microsoft.com/en-us/library/windows/desktop/cc144095(v=vs.85).aspx https://msdn.microsoft.com/en-us/library/windows/desktop/cc1... This looks like an open source project that provides something similar for google drive: https://github.com/google/google-drive-shell-extension https://github.com/google/google-drive-shell-extension On linux this could probably be even easier, just mounting a directory to a remote NFS server.
- hemancuso 11y agoIf you look in the Dropbox install the driver is already being distributed on Mac and Windows. It's a filter driver.
- deleted 11y ago[deleted]
- gkya 11y agoMy first guess is decoupled drivers with an abstraction that the actual dropbox client service uses. One driver for windows, one for mac. Though I don't know if you can do user mode filesystems on those, but there is this: https://dokan-dev.github.io/ https://dokan-dev.github.io/ Or else they may have used some fs event notification library to intercept access to files, but I think that would be harder (impossible? IDK win32/mac) to do than a filesystem.
- _razvan 11y agoFrom a first look on Windows, this is implemented with NTFS sparse files [1] and a file system minifilter. The sparse files act as placeholders so that you can browse your entire Dropbox structure. When you access a file, the minifilter sees that and starts fetching the data from Dropbox servers in the background. You can think of it as HSM [2] [1] https://msdn.microsoft.com/en-us/library/windows/desktop/aa365564%28v=vs.85%29.aspx https://msdn.microsoft.com/en-us/library/windows/desktop/aa3... [2] https://en.wikipedia.org/wiki/Hierarchical_storage_management https://en.wikipedia.org/wiki/Hierarchical_storage_managemen...