实现对磁盘IO的截获,并通过异步方式将截获内容发布到网络的异地,实现数据的网络raid1
该驱动主要实现写IO截获,其他的处理是通过应用程序实现
支持linux主流的发行版
同时也实现了windows版本的过滤驱动,实现的功能类似
DriverEntry函数作为过滤驱动的入口函数,主要负责初始化驱动的各个分发函数。它首先会将所有的分发函数都设置成一个统一的处理函数,这个函数是对大部分 irp请求的处理方式;其次,它会将我们驱动关心的分发函数指定成为驱动专门实现的函数。另外,还需要指定这个驱动的AddDevice函数和驱动的Unload函数。我们的驱动会被注册成为磁盘卷设备的上层过滤驱动,PnPmanager将会在一个新的磁盘卷设备建立之后,首先调用本驱动的AddDevice函数,然后再调用磁盘卷设备驱动中的AddDevice函数。这就让过滤驱动有了在系统加入磁盘卷设备起作用之前做一些工作的机会,而Unload函数会在过滤驱动结束的时候被调用,用来做一些清理的工作。