一种基于位管理的分布式文件系统节点编号分配方法技术方案

技术编号:8190999 阅读:259 留言:0更新日期:2013-01-10 01:53
本发明专利技术提供一种基于位管理的分布式文件系统节点编号分配方法,其方法内容包括:在分布式文件系统中将每一个节点编号的空闲或使用情况转换为数组元素变量中的某一位来表示(0表示空闲,1表示被占用);当需要分配一个节点编号时,从数组的搜索索引开始遍历每个元素变量中的每个位,找到第一个为0的位,根据元素变量在数组中的索引和该位在元素变量中的索引计算出节点编号值进行返回,将该位设置为1;当需要释放一个节点编号时,根据节点编号值计算出数组索引和元素变量内的索引来确定对应的位将其清零,并根据数组索引来确定是否修改搜索索引。该方法简化了节点编号分配与回收的过程,降低了维护空闲节点编号的系统开销,提高了节点编号分配效率。

【技术实现步骤摘要】

【技术保护点】
一种基于位管理的分布式文件系统节点编号分配方法,其特征在于内容包括:将分布式文件系统中每一个节点编号的空闲或使用情况转换为数组元素变量中的某一位来表示,用位值1或0来分别表示该节点编号占用或空闲状态;当需要分配一个节点编号时,会从数组的搜索索引开始遍历每个元素变量中的每个位,找到第一个为0的位,根据元素变量在数组中的索引和该位在元素变量中的索引计算出节点编号值进行返回,然后将该位设置为1;当需要释放一个节点编号时,会根据节点编号值计算出数组索引和元素变量内的索引来确定对应的位将其清零,并根据数组索引来确定是否修改搜索索引,数组的长度在没有空闲位时,允许动态扩充,当数组的搜索索引在分配节点编号时,作为数组的起始位置查找空闲位,并根据查找情况进行调整;在回收节点编号时,若对应的数组索引小于搜索索引,则重新设置搜索索引使其指向含有最小空闲节点编号的元素变量;具体实现过程如下:1)初始化阶段:(1)bitmasksize变量初始化为0x100,用以表示freebitmask数组的长度;(2)freebitmask是一个含有bitmasksize个元素的数组,它的每一个元素都是一个4字节的变量,该数组中每个元素会被初始化为0;(3)searchpos变量初始化为0,表示freebitmask数组的搜索索引;2)分配节点编号过程:(1)若searchpos小于bitmasksize并且freebitmask[searchpos]元素变量值等于0xFFFFFFFF,则searchpos自加1并返回步骤1),本步骤的作用是从searchpos位置开始在freebitmask数组中找到一个至少含有一个空闲位bit=0的元素变量;(2)如果searchpos等于bitmasksize,则bitmasksize加上0x80,并根据新的bitmasksize值调整freebitmask数组长度,新申请的元素变量被初始化为0,本步骤的作用是若freebitmask数组中所有的元素变量的每一位都是占用位bit=1,则为freebitmask数组扩展新的元素变量并初始化为0表示所有位都是空闲位;(3)根据freebitmask[searchpos]元素变量从低位到高位计算第一个空闲位的索引位置bitpos,将该位置1表示占用位;(4)计算节点编号nodeid=?(searchpos>5和位索引bitpos=nodeid&0x1F;(2)根据数组索引pos和位索引bitpos将freebitmask数组中的对应元素的对应位清零,即设为空闲位;(3)若pos...

【技术特征摘要】

【专利技术属性】
技术研发人员:张明富颜秉珩
申请(专利权)人:浪潮电子信息产业股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1