一种磁盘块的分配方法及装置的制造方法_4

文档序号:9523915阅读:来源:国知局
br>[0086]所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0087]另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0088]所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括如果干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
[0089]以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出如果干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
[0090]虽然本发明所揭露的实施方式如上,但所述的内容仅为便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。
【主权项】
1.一种磁盘块的分配方法,其特征在于,包括: 接收磁盘块分配指令,其中,接收到的磁盘块分配指令包括待存储文件的数据虚拟地址; 从至少一个虚拟设备中确定目标虚拟设备; 从确定出的目标虚拟设备的至少一个分区中确定目标分区,其中,所述至少一个分区预先设置有对应的权重,确定出的目标分区为所述至少一个分区中起始地址距离所述数据虚拟地址最近、且权重最高的分区; 在确定出的目标分区中,确定用于存储所述待存储文件的目标磁盘块。2.根据权利要求1所述的磁盘块的分配方法,其特征在于,所述从至少一个虚拟设备中确定目标虚拟设备包括: 在所述至少一个虚拟设备中确定元数据为空的虚拟设备,并将所述元数据为空的虚拟设备作为所述目标虚拟设备; 或者, 采用循环调度算法从所述至少一个虚拟设备中确定所述目标虚拟设备。3.根据权利要求1所述的磁盘块的分配方法,其特征在于,所述从确定出的目标虚拟设备的至少一个分区中确定目标分区包括: 从所述至少一个分区中查找出距离所述数据虚拟地址最近、且权重最高的第一分区; 判断查找出的第一分区当前是否正在被压缩; 如果否,将查找出的第一分区作为所述目标分区。4.根据权利要求1所述的磁盘块的分配方法,其特征在于,所述从确定出的目标虚拟设备的至少一个分区中确定目标分区包括: 从所述至少一个分区中查找出距离所述数据虚拟地址最近、且权重最高的第一分区; 判断查找出的第一分区的分配失败次数是否已经达到预设门限; 如果否,将查找出的第一分区作为所述目标分区。5.根据权利要求1所述的磁盘块的分配方法,其特征在于,所述从确定出的目标虚拟设备的至少一个分区中确定目标分区包括: 从所述至少一个分区中查找出距离所述数据虚拟地址最近、且权重最高的第一分区; 判断查找出的第一分区的权重是否被修改; 如果否,将查找出的第一分区作为所述目标分区。6.根据权利要求1至5中任一项所述的磁盘块的分配方法,其特征在于,所述在确定出的目标分区中,确定用于存储所述待存储文件的目标磁盘块包括: 在确定出目标分区中,判断空闲的磁盘块的数量是否超过预设阈值; 如果超过,采用首次适应算法确定所述目标磁盘块; 如果未超过,采用最佳适配算法确定所述目标磁盘块。7.—种磁盘块的分配装置,其特征在于,包括: 接收单元,用于接收磁盘块分配指令,其中,接收到的磁盘块分配指令包括待存储文件的数据虚拟地址; 虚拟设备分配单元,用于从至少一个虚拟设备中确定目标虚拟设备; 分区分配单元,用于从确定出的目标虚拟设备的至少一个分区中确定目标分区,其中,所述至少一个分区预先设置有对应的权重,确定出的目标分区为所述至少一个分区中起始地址距离所述数据虚拟地址最近、且权重最高的分区; 磁盘块分配单元,用于在确定出的目标分区中,确定用于存储所述待存储文件的目标磁盘块。8.根据权利要求7所述的磁盘块的分配装置,其特征在于,所述虚拟设备分配单元用于执行以下步骤从至少一个虚拟设备中确定目标虚拟设备: 在所述至少一个虚拟设备中确定元数据为空的虚拟设备,并将所述元数据为空的虚拟设备作为所述目标虚拟设备; 或者, 采用循环调度算法从所述至少一个虚拟设备中确定所述目标虚拟设备。9.根据权利要求7所述的磁盘块的分配装置,其特征在于,所述分区分配单元用于执行以下步骤从确定出的目标虚拟设备的至少一个分区中确定目标分区: 从所述至少一个分区中查找出距离所述数据虚拟地址最近、且权重最高的第一分区; 判断查找出的第一分区当前是否正在被压缩; 如果否,将查找出的第一分区作为所述目标分区。10.根据权利要求7所述的磁盘块的分配装置,其特征在于,所述分区分配单元用于执行以下步骤从确定出的目标虚拟设备的至少一个分区中确定目标分区: 从所述至少一个分区中查找出距离所述数据虚拟地址最近、且权重最高的第一分区; 判断查找出的第一分区的分配失败次数是否已经达到预设门限; 如果否,将查找出的第一分区作为所述目标分区。11.根据权利要求7所述的磁盘块的分配装置,其特征在于,所述分区分配单元用于执行以下步骤从确定出的目标虚拟设备的至少一个分区中确定目标分区: 从所述至少一个分区中查找出距离所述数据虚拟地址最近、且权重最高的第一分区; 判断查找出的第一分区的权重是否被修改; 如果否,将查找出的第一分区作为所述目标分区。12.根据权利要求7至11中任一项所述的磁盘块的分配装置,其特征在于,所述磁盘块分配单元,包括: 判断模块,用于在确定出目标分区中,判断空闲的磁盘块的数量是否超过预设阈值; 确定模块,用于如果超过,采用首次适应算法确定所述目标磁盘块;如果未超过,采用最佳适配算法确定所述目标磁盘块。
【专利摘要】本发明公开了一种磁盘块的分配方法及装置。其中,该方法包括:接收磁盘块分配指令,其中,接收到的磁盘块分配指令包括待存储文件的数据虚拟地址;从至少一个虚拟设备中确定目标虚拟设备;从确定出的目标虚拟设备的至少一个分区中确定目标分区,其中,所述至少一个分区预先设置有对应的权重,确定出的目标分区为所述至少一个分区中起始地址距离所述数据虚拟地址最近、且权重最高的分区;在确定出的目标分区中,确定用于存储所述待存储文件的目标磁盘块。本发明根据设备特点进行磁盘块的分配,增加了磁盘块分配的灵活性。
【IPC分类】G06F3/06
【公开号】CN105278873
【申请号】CN201510583538
【发明人】杨光
【申请人】浪潮(北京)电子信息产业有限公司
【公开日】2016年1月27日
【申请日】2015年9月14日
当前第4页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1