【技术实现步骤摘要】
本专利技术涉及电子
,尤其涉及一种文件锁实现方法及装置。
技术介绍
目前,网络附属存储(Network Attached Storage,NAS)支持服务器信息块(Server Message Block,SMB),网络文件系统(Network File System,NFS),文件传输协议(File Transfer Protocol,FTP),超文本传输协议(Hyper Text Transfer Protocol,HTTP)等多种协议,当多种协议的客户端同时工作在一个服务器上时,由于协议之间的壁垒,只能实现协议内的协议一致性,不能实现跨协议的协议一致性。基于上述原因会出现某一协议访问了一个已经被其他协议设置拒绝访问的文件或者目录,例如:用SMB协议创建的文件在设置了排他访问的时候依然可以被NFS协议打开或者删除,两个协议对文件系统操作的流程如图1所示,当SMB客户端先打开一个文件file1并设置排他修改时,NFS客户端的写请求就会直接修改file1,这就造 ...
【技术保护点】
一种文件锁实现方法,其特征在于,第一协议访问文件系统时,该方法包括:将所述第一协议的打开open对象映射为第一文件锁,其中,open对象是指一次打开open请求所产生的协议数据;根据预设的互斥规则将所述第一文件锁和上一次访问文件系统的第二协议对应的第二文件锁做冲突判断,根据冲突判断结果返回创建open请求失败或者允许第一协议访问文件系统。
【技术特征摘要】
1.一种文件锁实现方法,其特征在于,第一协议访问文件系统时,该方
法包括:
将所述第一协议的打开open对象映射为第一文件锁,其中,open对象是
指一次打开open请求所产生的协议数据;
根据预设的互斥规则将所述第一文件锁和上一次访问文件系统的第二协
议对应的第二文件锁做冲突判断,根据冲突判断结果返回创建open请求失败
或者允许第一协议访问文件系统。
2.如权利要求1所述的方法,其特征在于,所述冲突判断包括;
根据所述第二文件锁确定所述第二协议是否允许其他open对象操作所述
文件系统;和/或
根据所述第二文件锁确定所述第二协议是否允许其他open对象缓存数据
到所述文件系统。
3.如权利要求2所述的方法,其特征在于,根据冲突判断结果返回创建
open请求失败或者允许第一协议访问文件系统包括:
当所述冲突判断结果为所述第二协议不允许其他open对象操作所述文件
系统,则返回创建open请求失败;否则允许第一协议访问文件系统;
当所述冲突判断结果为所述第二协议不允许其他open对象缓存数据到所
述文件系统,则在召回第一协议已缓存的数据后,访问所述文件系统。
4.如权利要求1~3任一所述的方法,其特征在于,根据预设的互斥规则
将所述第一文件锁和上一次访问文件系统的第二协议对应的第二文件锁做冲
突判断包括:
确定所述第二文件锁中的第一标志位与所述第一文件锁中对应的第二标
志位不相同,则以所述第一标志位所指示的内容作为冲突判断的结果。
5.如权利要求1~4任一所述的方法,其特征在于,当第一协议内部能够
生成open对象,则将所述第一协议的open对象映射为第一文件锁包括:
确定第一协议的open对象是否有对文件系统的操作请求,如果有任一类
型的操作请求,则将所述第一文件锁中与任一类型的操作对应的标志位置位;
确定第一协议的open对象是否允许其他open对象操作所述文件系统,如
果允许任一类型的操作,则将所述第一文件锁中与任一类型的操作对应的标志
位置位;
确定第一协议的open对象是否请求客户端缓存,如果是,则将所述第一
文件锁中与缓存对应的标志位置位。
6.如权利要求5所述的方法,其特征在于,当第一协议内部不会生成open
对象,则确定第一协议的open对象是否有对文件系统的操作请求之前,该方
法还包括:...
【专利技术属性】
技术研发人员:梁建业,向光友,刘军,
申请(专利权)人:华为技术有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。