首页 > 系统相关 >【Windows开发】使用Windows官方版FUSE开发文件系统

【Windows开发】使用Windows官方版FUSE开发文件系统

时间:2023-04-10 11:44:07浏览次数:48  
标签:git 微软 Windows 文件系统 fuse FUSE dokany 官方版

本文仅分析技术信息,不提供代码!

1.用户态实现文件系统

1. Linux上要自主实现文件系统一般会采用fuse,主要是能在用户态进程直接开发实现,不需要开发内核驱动模块,这部分官方示例代码和开源代码太多了,也没什么好讲的,另外MAC上也有fuse开源项目。

2. Windows也有开源项目dokany,再加上其提供的fuse兼容层,基本上和fuse使用相同,而文件系统方面也有开源的fatfs可以使用。

但是,dokany仍然需要安装驱动,这意味着需要数字签名,对小公司和个人开发者来讲成本略高,当然使用官方提供的已签名版本也可以,只是仍然存在不可控的风险。

2.Windows官方提供的FUSE模块

而2018年的Win10更新上微软新增了一个叫ProjFS模块,本质上是GVFS项目的衍生,微软收购GitHub后开发新版本git工具,原本的git是基于命令或者简单的GUI界面操作,总体上不是很直观,所以微软基于VFS和git云存储,开始了一个GVFS项目,旨在将git工程文件直接映射到微软的资源管理器中(Explorer),GVFS其中的一个模块叫GvFlt,是一个文件系统过滤驱动(dokany的驱动也是这一类),到了2018年,GvFlt独立出来一开始内部叫Primes,简称为Windows投影文件系统,后来改名叫ProjFS,即Windows Projected File System的简称。

总体上可以简单认为,ProjFS模块相当于dokany的微软版,当然细节上很多是围绕Git仓库的管理实现的,所以在使用上和fuse类还是有差距,且在开发过程的理解上可能fuse或dokany更直观一些,但这毕竟是官方原生支持,相对更方便,没有驱动方面的顾虑。

标签:git,微软,Windows,文件系统,fuse,FUSE,dokany,官方版
From: https://www.cnblogs.com/caibirdy1985/p/17302429.html

相关文章

  • Linux|windows——什么是接口与API接口
    今天有个朋友问我什么接口?你们平时都说在写接口,写的是什么鬼啊?我一开始就想,咦小陈同学怎么突然了解编程接口了,不过听到他后一个提问我知道原来他想的是API接口,不过被我主观意识习惯想成了编程定义上的接口。所以就突发其想,想写篇东西说明一下编程定义的接口,与API接口含义。为了区......
  • windows-根据进程名获取进程pid,定时监控多个进程性能并写入csv文件
    #!/usr/bin/python#-*-coding:utf-8-*-importsysimporttimeimportpsutildefget_pid(name):pids=psutil.process_iter()forpidinpids:if(pid.name()==name):return(pid.pid)defwrite_csv(p,pidnum,pidname):cu......
  • IPSEC filters used by Windows 2000 & XP
    IPSECfiltersusedbyWindows2000&XPHifolks,AsaresultofarecentengagementlookingatWindowshosthardening,Icameacrossthislittletrickandthoughtitmightbeusefulatsomepoint.TheMicrosoftIPSECfiltersusedbyWindows200......
  • 【学习笔记】在windows下进行基于TCP的本地客户端和服务端socket通信
    文章目录socket介绍java中使用socket基于tcp的socket通信使用ServerSocket类创建一个web服务器:(java)windows下的基于tcp的socket编程(c++写)InetAddress类的方法附录1TCPUDP附录2websocketsocket介绍Socket的英文原义是“孔”或“插座”。在编程中,Socket被称做套接字,是网络通......
  • windows 配置 oh-my-zsh
    电脑一天都对着命令行,同事让我把界面换一下不然太枯燥了,公司的破电脑限制了powershell的使用(真的拉胯),之前在公司电脑上用picgo也用不了orz问了一下群友都说oh-my-zsh好,折腾一下自己的拯救者安装开启WSL的许可使用管理员身份运行powershell输入Enable-WindowsOptionalFea......
  • VisionMobile:移动平台生态系统冲突报告(十三)Chapter C:Windows Phone
    WindowsPhone7是微软新的移动平台,它和微软早期的WindowsMobileOS完全不同。WindowsPhone7于2010年2月在巴塞罗那的移动世界大会(MWC)首次公布。多个移动运营商参与发布,有AT&T,DeutscheTelekom,Orange,SFR,Sprint,TelecomItalia,Telefónica/O2,Telstra,T-MobileUSA,V......
  • windows 10 家庭版安装Docker和portainer汉化版
    目录前景提要存在问题一、Docker的windows版本安装1、官网下载:https://www.docker.com/(没有本文问题的直接下载就好.)2、本文是找到其他版本的Docker,装一个不是最新的版本,就可以了。3、系统修改开启本机的虚拟器(1)开启Hyper-V(2)开启虚拟平台和Linux子系统修改默认的安装路......
  • Windows10锁屏1分钟息屏问题解决 - 桌面、锁屏、屏保一站搞定
    Windows10桌面、锁屏、屏保一站解决一、背景在Windows10以前的Windows中,桌面和锁屏界面的超时息屏时间是一致的,都是简单在控制面板的电源设置中,调整关闭显示器时间即可。但到了Windows10这个世代,电源中的关闭显示器时间,只对桌面有效,也就是对没有锁屏的Windows桌面有效;一旦用户......
  • misc | 解决windows cmd不能正确显示\033彩色字符
    misc|解决windowscmd不能正确显示\033彩色字符今天重装winpwn结果显示的是乱码,很影响,搜了一下发现可以安装一个工具来解决。参考:https://www.cnblogs.com/naiij/p/9772584.html工具:https://github.com/adoxa/ansicon/releases......
  • windows下无法访问静态图片,报错java.net.UnknownHostException
    如果你是这种方式映射静态文件的,那可以继续看下去了@Value("${prop.me.hddir}")privateStringhddir;privatevoidaddstatic(ResourceHandlerRegistryregistry){Stringdir=hddir+"/static/";log.info("启动加资源路径...addResourceHa......