本申请涉及数据处理,尤其涉及一种linux系统下访问非标文件系统的方法和系统。
背景技术:
1、随着大数据应用在各行业的成熟应用,各行业对数据的采集和存储也愈加重视,在各种服务器嵌入式产品中都增加了相关数据的存储功能,受限于标准文件系统的性能问题与物理空间不足后无法循环覆盖的问题,目前大部分服务器嵌入式产品都采用了自研的非标文件系统用来解决实际使用中标准文件系统的不足。
2、但是对于用户来说,非标文件系统不像标准文件系统可以通过系统接口直接访问,需要非标文件系统厂家提供数据访问接口或界面程序进行访问。对于普通用户来说,数据访问接口需要通过编码开发来实现访问,难度较高;通过界面程序访问对于普通用户来说使用场景受限,易用性低。
技术实现思路
1、为了解决上述技术缺陷之一,本申请提供了一种linux系统下访问非标文件系统的方法和系统。
2、本申请第一个方面,提供了一种linux系统下访问非标文件系统的方法,linux系统下包括非标文件系统;linux系统包括vfs模块,fuse模块和用户态的处理线程,且fuse模块中已注册非标文件系统的读写接口;
3、该方法包括:
4、vfs模块获取用户通过用户态标准接口下发的指令后,将指令下发给fuse模块;
5、fuse模块将指令转发给用户态的处理线程;
6、用户态的处理线程解析指令;通过内核态的磁盘读写模块,基于解析结果对非标文件系统的磁盘数据进行处理。
7、可选地,通过内核态的磁盘读写模块,基于解析结果对非标文件系统的磁盘数据进行处理之后,还包括:
8、用户态的处理线程通过内核态磁盘读写模块获取反馈数据,并将反馈数据转发给fuse模块;反馈数据是对非标文件系统的磁盘数据进行处理得到的;
9、fuse模块将反馈数据发送至vfs模块;
10、vfs模块将反馈数据返回给用户态标准接口。
11、可选地,fuse模块位于linux系统的内核中。
12、可选地,方法还包括:
13、linux系统的内核加载非标文件系统;
14、linux系统的内核向fuse模块传递非标文件系统的信息;
15、linux系统的内核将非标文件系统挂载在linux系统下的文件夹节点上;
16、linux系统的内核将非标文件系统的读写接口注册到fuse模块中;
17、linux系统的内核创建用户态的处理线程。
18、可选地,linux系统的内核打开fuse模块功能;或者,
19、linux系统的内核未打开fuse模块功能,但linux系统的内核在编译时进行了fuse模块功能的使用配置。
20、本申请第二个方面,提供了一种linux系统,linux系统下包括非标文件系统;linux系统包括vfs模块,fuse模块和用户态的处理线程,且fuse模块中已注册非标文件系统的读写接口;
21、vfs模块,用于获取用户通过用户态标准接口下发的指令后,将指令下发给fuse模块;
22、fuse模块,用于将指令转发给用户态的处理线程;
23、用户态的处理线程,用于解析指令;通过内核态的磁盘读写模块,基于解析结果对非标文件系统的磁盘数据进行处理。
24、可选地,用户态的处理线程,用于通过内核态磁盘读写模块获取反馈数据,并将反馈数据转发给fuse模块;反馈数据是对非标文件系统的磁盘数据进行处理得到的;
25、fuse模块,用于将反馈数据发送至vfs模块;
26、vfs模块,用于将反馈数据返回给用户态标准接口。
27、可选地,其特征在于,fuse模块位于linux系统的内核中。
28、可选地,linux系统的内核加载非标文件系统;向fuse模块传递非标文件系统的信息;将非标文件系统挂载在linux系统下的文件夹节点上;将非标文件系统的读写接口注册到fuse模块中;创建用户态的处理线程。
29、可选地,linux系统的内核打开fuse模块功能;或者,
30、linux系统的内核未打开fuse模块功能,但linux系统的内核在编译时进行了fuse模块功能的使用配置。
31、本申请提供一种linux系统下访问非标文件系统的方法和系统,该linux系统下包括非标文件系统;linux系统包括vfs模块,fuse模块和用户态的处理线程,且fuse模块中已注册非标文件系统的读写接口;该方法包括:vfs模块获取用户通过用户态标准接口下发的指令后,将指令下发给fuse模块;fuse模块将指令转发给用户态的处理线程;用户态的处理线程解析指令;通过内核态的磁盘读写模块,基于解析结果对所述非标文件系统的磁盘数据进行处理。本申请提供的方法通过linux系统的vfs模块,fuse模块和用户态的处理线程实现了通过标准读写接口对非标文件系统的直接访问,通过非标文件系统带给用户便捷性与易用性。
1.一种linux系统下访问非标文件系统的方法,其特征在于,所述linux系统下包括非标文件系统;所述linux系统包括vfs模块,fuse模块和用户态的处理线程,且所述fuse模块中已注册所述非标文件系统的读写接口;
2.根据权利要求1所述的方法,其特征在于,所述通过内核态的磁盘读写模块,基于解析结果对所述非标文件系统的磁盘数据进行处理之后,还包括:
3.根据权利要求1所述的方法,其特征在于,所述fuse模块位于所述linux系统的内核中。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
5.根据权利要求3所述的方法,其特征在于,所述linux系统的内核打开fuse模块功能;或者,
6.一种linux系统,其特征在于,所述linux系统下包括非标文件系统;所述linux系统包括vfs模块,fuse模块和用户态的处理线程,且所述fuse模块中已注册所述非标文件系统的读写接口;
7.根据权利要求6所述的linux系统,其特征在于,所述用户态的处理线程,用于通过所述内核态磁盘读写模块获取反馈数据,并将所述反馈数据转发给所述fuse模块;所述反馈数据是对所述非标文件系统的磁盘数据进行处理得到的;
8.根据权利要求6所述的linux系统,其特征在于,所述fuse模块位于所述linux系统的内核中。
9.根据权利要求8所述的linux系统,其特征在于,所述linux系统的内核加载所述非标文件系统;向所述fuse模块传递所述非标文件系统的信息;将所述非标文件系统挂载在所述linux系统下的文件夹节点上;将所述非标文件系统的读写接口注册到所述fuse模块中;创建用户态的处理线程。
10.根据权利要求8所述的linux系统,其特征在于,所述linux系统的内核打开fuse模块功能;或者,