如何创建软件驱动



有一些应用程序(让我们称之为提供者),它们(在运行时)在新的驱动器号下提供虚拟文件和目录结构。其他进程对这些文件和目录的访问请求由提供者提供服务。这样的提供商的一个例子可能是Windows的谷歌驱动器(新的,而不是旧的备份和同步),它映射你的谷歌驱动器的内容到一个选定的驱动器号。

我认为应该有一些简单的用户模式API,它应该允许我的应用程序提供一个新的驱动器和文件和目录的内容。我以为很多应用程序都使用这样的API,但是我找不到。我能找到的最接近的是IFS(可安装的文件系统驱动程序)和文件系统过滤器驱动程序,但它们是内核模式的,看起来太复杂了。它们似乎不是为完成这样的任务而设计的。

那么,我应该使用什么API来制作一个简单的软件实现驱动器呢?

除了评论中的建议之外,现在还有投影文件系统,它允许软件通过回调提供类似驱动器的接口,而不仅仅是通过创建实际的磁盘映像。这是我的理解,投影FS是如何,例如,SQL Server做它的表支持的文件接口。

最新更新