一种分区信息处理方法及装置的制作方法

文档序号:6434679阅读:184来源:国知局
专利名称:一种分区信息处理方法及装置的制作方法
技术领域
本发明涉及计算机技术领域,特别是涉及一种分区信息处理方法及装置。
背景技术
随着科技的飞速发展和时代的进步,计算机设备已经成为几乎人人必备的工具, 人们可以通过计算机设备对文件进行保存、查看、修改、删除等操作,大大提高了文件管理的效率。计算机中存放信息的主要的存储设备是硬盘,但是硬盘不能直接使用,必须对硬盘进行分割,分割成的一块一块的硬盘区域,这种磁盘区域就称为磁盘分区。在传统的磁盘管理中,将一个硬盘分为两大类分区主分区和扩展分区。主分区是能够安装操作系统,能够进行计算机启动的分区。主分区是独立的,也是硬盘的第一个分区,实际应用中所见的C 盘通常就是主分区。在一个硬盘中最多只能存在4个主分区。如果一个硬盘上需要超过4 个以上的磁盘分块的话,那么就需要使用扩展分区了。如果使用扩展分区,那么一个物理硬盘上最多只能3个主分区和1个扩展分区。扩展分区不能直接使用,它必须经过第二次分割成为一个一个的逻辑分区(例如D盘、E盘、F盘等等),然后才可以使用,也即,可以将文件存放到某逻辑分区,当需要查看该文件时,就到该逻辑分区对应的盘符下查找。但是在实际应用中,可能会出现以下现象某计算机本来具有多个主分区,或者扩展分区中具有多个逻辑分区,但在某次开机之后发现,有部分甚至全部主分区无法打开,或者部分甚至全部的逻辑分区已经不见了,其中保存的数据也随之丢失。因此,迫切需要本领域技术人员解决的技术问题就在于,如何避免发生用户数据丢失的现象。

发明内容
本发明提供一种分区信息处理方法及装置,能够将分区信息提示给用户,从而避免发生磁盘的逻辑分区丢失的现象。本发明提供了如下方案 一种分区信息处理方法,包括
获取磁盘当前分区以及其下一分区的分区信息;
根据所述分区信息,判断当前分区与其下一分区之间是否存在分区重叠;
如果存在分区重叠,则向用户发出用以表示分区之间存在分区重叠的提示信息。其中,当所述当前分区及其下一分区均为扩展分区中的逻辑分区时,所述获取磁盘当前分区以及其下一分区的分区信息包括通过以下方式获取第一逻辑分区以及第二逻辑分区的分区信息
根据所述第一逻辑分区的上一分区的分区表中标记的分区信息,确定所述第一逻辑分区的结束位置所在的物理扇区号;
根据所述第一逻辑分区的分区表中标记的分区信息,确定所述第二逻辑分区的起始位置所在的物理扇区号;
所述判断当前分区与其下一分区之间是否存在分区重叠包括通过以下方式判断第一逻辑分区与第二逻辑分区之间是否存在分区重叠
判断所述第一逻辑分区的结束位置所在的物理扇区号是否大于所述第二逻辑分区的起始位置所在的物理扇区号,如果是,则所述第一逻辑分区与所述第二逻辑分区之间存在分区重叠;
其中,所述第二逻辑分区是所述第一逻辑分区的下一分区。其中,所述根据所述第一逻辑分区的上一分区的分区表中记录的分区信息,确定所述第一逻辑分区的结束位置所在的物理扇区号包括
查询所述第一逻辑分区的上一分区的分区表,从中获取第一逻辑分区的起始扇区偏移值以及占用的总扇区数;
根据该第一逻辑分区的起始扇区偏移值以及该逻辑分区占用的总扇区数,获取该第一逻辑扇区的结束扇区偏移值;
根据该第一逻辑扇区的结束扇区偏移值以及扩展分区的起始地址获取该第一逻辑分区所在的结束位置所在的物理扇区号。其中,所述根据所述第一逻辑分区的分区表中记录的分区信息,确定所述第二逻辑分区的起始位置所在的物理扇区号包括
查询所述第一逻辑分区的分区表,从中获取所述第二逻辑分区的起始扇区偏移值; 根据该第二逻辑扇区的起始扇区偏移值以及扩展分区的起始地址获取该第二逻辑分区的起始位置所在的物理扇区号。其中,当所述当前分区为主分区,其下一分区为主分区或扩展分区时,所述获取磁盘当前分区以及其下一分区的分区信息包括
根据磁盘0磁道0扇区中的分区表中标记的分区信息,确定所述当前分区的结束位置所在的物理扇区号,以及下一分区的起始位置所在的物理扇区号; 所述判断当前分区与其下一分区之间是否存在分区重叠包括 判断所述当前分区的结束位置所在的物理扇区号是否大于所述下一分区的起始位置所在的物理扇区号,如果是,则所述当前分区与下一分区之间存在分区重叠。一种分区信息处理装置,包括
分区信息获取单元,用于获取磁盘当前分区以及其下一分区的分区信息; 判断单元,用于根据所述分区信息,判断当前分区与其下一分区之间是否存在分区重
叠;
提示单元,用于如果存在分区重叠,则向用户发出用以表示分区之间存在分区重叠的提示信息。其中,当所述当前分区及其下一分区均为扩展分区中的逻辑分区时,所述分区信息获取单元包括
结束位置确定子单元,用于根据所述第一逻辑分区的上一分区的分区表中标记的分区信息,确定所述第一逻辑分区的结束位置所在的物理扇区号;
起始位置确定子单元,用于根据第一逻辑分区的分区表中标记的分区信息,确定所述第二逻辑分区的起始位置所在的物理扇区号;所述判断单元具体用于判断所述第一逻辑分区的结束位置所在的物理扇区号是否大于所述第二逻辑分区的起始位置所在的物理扇区号,如果是,则所述第一逻辑分区与所述第二逻辑分区之间存在分区重叠;
其中,所述第二逻辑分区是所述第一逻辑分区的下一分区。其中,所述结束位置确定子单元包括
第一查询子单元,用于查询所述第一逻辑分区的上一分区的分区表,从中获取第一逻辑分区的起始扇区偏移值以及占用的总扇区数;
结束扇区偏移值确定子单元,用于根据该第一逻辑分区的起始扇区偏移值以及该逻辑分区占用的总扇区数,获取该第一逻辑扇区的结束扇区偏移值;
结束位置物理扇区号确定子单元,用于根据该第一逻辑扇区的结束扇区偏移值以及扩展分区的起始地址获取该第一逻辑分区所在的结束位置所在的物理扇区号。其中,所述起始位置确定子单元包括
第二查询子单元,用于查询所述第一逻辑分区的分区表,从中获取所述第二逻辑分区的数据段起始扇区偏移值;
起始位置确定子单元,用于根据该第二逻辑扇区的起始扇区偏移值以及扩展分区的起始地址获取该第二逻辑分区的起始位置所在的物理扇区号。其中,当所述当前分区为主分区,其下一分区为主分区或扩展分区时,
所述分区信息获取单元具体用于根据磁盘0磁道0扇区中的分区表中标记的分区信息,确定所述当前分区的结束位置所在的物理扇区号,以及下一分区的起始位置所在的物理扇区号;
所述判断单元具体用于判断所述当前分区的结束位置所在的物理扇区号是否大于所述下一分区的起始位置所在的物理扇区号,如果是,则所述当前分区与下一分区之间存在
分区重叠。根据本发明提供的具体实施例,本发明公开了以下技术效果
在本发明实施例中,由于能够判断出磁盘分区之间是否存在分区重叠的现象,并且能够在发现存在分区重叠现象之后,及时地向用户发出提示信息,因此,当用户看到这样的提示信息之后,就可以在向分区中存储数据时,尽量避免将分区占用得过满,进而就可以从一定程度上避免分区丢失的现象产生。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本发明实施例提供的方法的流程图; 图2是本发明实施例提供的装置的示意图。
具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。首先需要说明的是,在磁盘的0扇区0磁道中存在分区表,该分区表中标记了各个主分区的起始地址、结束地址,以及扩展分区的起始地址等分区信息。每个主分区的起始位置处都保存有DBR (—般占用63个扇区,当然也可能是其他数目),以及MFT (Master File Table,主文件表)或者FAT (File Allocation Table,文件配置表)文件表等,如果这些数据被破坏,会导致对应的主分区无法打开。另外,扩展分区的每个逻辑分区由分区信息段(一般包括分区表以及主文件表等, 这部分占用的磁盘总扇区数通常是固定的,例如在某种系统中共占用63个扇区)和数据段两部分组成,其中,分区表通常位于每个逻辑分区的起始位置,用于保存当前逻辑分区的分区信息以及下一分区的分区信息,数据段用于保存具体的数据。逻辑分区是链表形式保存在磁盘中,倘若硬盘丢失了分区表,数据就无法按顺序读取和写入,导致无法操作。而本发明人在实现本发明的过程中发现,之所以会出现主分区无法打开或者逻辑分区丢失的现象,一种可能的原因就在于在电脑使用一段时间后,系统越来越慢,此时避免不了要重装系统,而限于电脑重装的复杂性和耗时,GHOST做系统已经越来越普及。所谓 GHOST,实际上是一种硬盘备份还原工具,它采取镜象系统分区或者文件夹的方式备份和还原数据。但是,由于现在网上各种形式的GHOST软件和系统镜像文件,很多不规范,给用户系统带来了风险。其中一种风险就是引起分区重叠的问题,也即,GHOST自带的分区信息和原用户的分区信息之间存在冲突,从而造成分区重叠。此外,一些是使用了有BUG的分区软件,也可能造成分区的重叠。分区重叠是指某分区与下一分区之间在占用的扇区上存在交叠的部分。这种重叠可能发生在不同主分区之间,还有可能出现在主分区与扩展分区之间,还可能出现在扩展分区的不同逻辑分区之间。以逻辑分区之间的分区重叠为例,如果某一逻辑分区(例如为B分区)的分区表,写入到前面逻辑分区(例如为A分区)的数据段中,此时,一旦A分区数据被写满,则必然会把 B分区的分区表给覆盖。如前文所述,由于逻辑分区是链表形式保存在磁盘中,当前面分区丢失,后面的分区将全部丢失,因此,这种分区重叠的现象会造成逻辑分区的丢失,进而造成用户数据的丢失。尤其是现在游戏和影音文件等的体积越来越大,一个磁盘分区经常被写满,这样,一旦发生分区重叠,则分区丢失的情况就会越来越多。例如,第一个逻辑分区的分区表保存在了其前面主分区中(即第一个逻辑分区的起始位置小于最后一个主分区的结束位置),这样分区就会重叠,当最后一个主分区写满后,第一个逻辑分区的分区表就会被覆盖,这样第一个逻辑分区就会丢失。而第一个逻辑分区的分区表中又记录了第二个逻辑分区的起始信息,因此,第一个逻辑分区丢失之后,第二个逻辑分区也随之丢失,以此类推, 只要第一个逻辑分区丢失,后面的逻辑分区将全部丢失。如果是主分区C与主分区D之间存在分区重叠,则主分区D中的DBR、MFT等数据可能会被主分区C中的数据覆盖,造成主分区D无法打开。在以上分析基础上,本发明实施例提供了一种分区信息处理方法,参见图1,该方法包括以下步骤5101获取磁盘当前分区以及其下一分区的分区信息;获取磁盘的扩展分区的地址;
5102根据所述分区信息,判断当前分区与其下一分区之间是否存在分区重叠; 对于某物理磁盘而言,在其0磁道0扇区保存了该物理磁盘的主分区以及扩展分区的
地址,因此,通过读取物理磁盘0磁道0扇区的信息,即可获取到主分区的地址以及扩展分区的地址。需要说明的是,由于磁盘被划分为多个扇区,并按照一定规则编号为1、2、3……, 因此,主分区及扩展分区的地址通常可以用所在扇区的物理扇区号来表示,例如为 176715。该地址通常是一个绝对的值,也就是说,如果0磁道0扇区中记载的扩展分区的起始扇区的物理扇区号是176715,则扩展分区就是从该扇区号为176715的扇区开始的。另外需要说明的是,在实际应用中,用户可能在自己的计算机中配备多块硬盘,也就是说存在多个物理磁盘,此时,可以每个物理磁盘都可能会发生逻辑分区重叠的现象,因此,可以首先枚举所有物理磁盘,获取所有物理磁盘的句柄,并分别在各个物理磁盘的0磁道0扇区中获取各自的扩展分区的地址的相关信息。而如果需要获取逻辑分区的分区信息,则如前文所述,由于每个逻辑分区都有自己的分区表,每个分区表中都保存有当前逻辑分区以及逻辑分区的分区信息(包括分区的起始位置以及占用的总扇区数等),因此,逻辑分区的分区信息,可以从逻辑分区的分区表中。需要说明的是,在扩展分区的逻辑分区中,在每个逻辑分区的开始位置扇区有EBR (Extended Boot Record)。EBR和MBR不同,它没有引导代码,而是保存了两个分区表第一个分区表是当前分区除本分区DBR (DBR 一般占用63扇区,也有2048或者其他值)之外数据区的起始扇区和占用的扇区数;第二个分区表是下一个分区的起始扇区数和占用的扇区数(包含DBR及数据区在内)。在下一分区的起始位置又包含两个分区表(如果有三个逻辑分区以上)第一个分区表记录了除本分区DBR之外数据区的起始扇区和占用的扇区数,第二个分区表中记录了第三个扩展分区的起始扇区和占用的扇区数。依次类推,逻辑分区中的分区表是以链表形式保存的。逻辑分区的起始地址实际可以从其上一个逻辑分区的分区表中获取。例如,第一个逻辑分区A的起始扇区取该逻辑分区所在扩展分区的起始扇区,它的结束位置为起始扇区加上它所占用的扇区数。第二个逻辑分区B的起始地址取逻辑分区 A中的分区表中第二个分区表项记录的起始地址和占用的扇区数。后面的某逻辑分区Y占用扇区的判断依据以前面的逻辑分区X中的分区表中第二个分区表项记录的起始扇区和占用的扇区数为准。当某一逻辑分区A的起始扇区所在位置加上它所占用的扇区数大于它后面逻辑分区B (A与B在同一扩展分区中)的起始扇区所在的位置,就会造成分区重叠。例如A逻辑分区起始扇区是1000扇区,它占用2000个扇区,B逻辑分区起始扇区在四20扇区,占用1000个扇区。这样A逻辑分区中结束扇区应该是3000扇区,而逻辑分区B起始扇区是^20,A的结束扇区大于B开始扇区,他们共有80个扇区的重叠。这80 个扇区中可能记录着B分区的分区表、DBR和一些其他数据(NTFS中可能会有MFT,FAT格式中,可能会有FAT表)。当A逻辑分区写满后,就会在这80个扇区写入数据,然后,B分区中的分区表、DBR和其他数据就会被破坏,导致B分区及其后面的分区全部丢失,从而造成这些分区上的数据全部丢失,以用户造成损失。因此,具体在获取磁盘当前分区以及其下一分区的分区信息时,可以获取当前分区所在的结束扇区的物理扇区号,以及下一分区所在的起始扇区的物理扇区号;这样,就可以通过判断当前分区所在的结束扇区的物理扇区号是否大于其下一分区所在的起始扇区的物理扇区号,如果是,则当前分区与其下一分区之间存在分区重叠。具体的,如果当前分区及其下一分区均为扩展分区中的逻辑分区时,所述获取磁盘当前分区以及其下一分区的分区信息包括通过以下方式获取第一逻辑分区以及第二逻辑分区的分区信息根据所述第一逻辑分区的上一分区的分区表中标记的分区信息,确定所述第一逻辑分区的结束位置所在的物理扇区号;根据所述第一逻辑分区的分区表中标记的分区信息,确定所述第二逻辑分区的起始位置所在的物理扇区号;然后,判断所述第一逻辑分区的结束位置所在的物理扇区号是否大于所述第二逻辑分区的起始位置所在的物理扇区号,如果是,则所述第一逻辑分区与所述第二逻辑分区之间存在分区重叠。其中,根据第一逻辑分区的上一分区的分区表中记录的分区信息,确定所述第一逻辑分区的结束位置所在的物理扇区号时,具体可以为查询所述第一逻辑分区的上一分区的分区表,从中获取第一逻辑分区的起始扇区偏移值以及占用的总扇区数;根据该第一逻辑分区的起始扇区偏移值以及该逻辑分区占用的总扇区数,获取该第一逻辑扇区的结束扇区偏移值;根据该第一逻辑扇区的结束扇区偏移值以及扩展分区的起始地址获取该第一逻辑分区所在的结束位置所在的物理扇区号。根据所述第一逻辑分区的分区表中记录的分区信息,确定第二逻辑分区的起始位置所在的物理扇区号时,具体可以为查询所述第一逻辑分区的分区表,从中获取所述第二逻辑分区的起始扇区偏移值;根据该第二逻辑扇区的起始扇区偏移值以及扩展分区的起始地址获取该第二逻辑分区的起始位置所在的物理扇区号。如果当前分区为主分区,其下一分区为主分区或扩展分区时,则具体在获取磁盘当前分区以及其下一分区的分区信息时,可以是根据磁盘0磁道0扇区中的分区表中标记的分区信息,确定所述当前分区的结束位置所在的物理扇区号,以及下一分区的起始位置所在的物理扇区号;进而,通过判断当前分区的结束位置所在的物理扇区号是否大于下一分区的起始位置所在的物理扇区号,如果是,则当前分区与下一分区之间存在分区重叠。需要说明的是,具体实现时,除了利用起始扇区的扇区号以及结束扇区的扇区号来表示逻辑分区的起始位置及结束位置以外,还可以利用其它的信息来表示,例如,起始字节、结束字节等等。或者,由于分区表中记载的“偏移量”均是相对于扩展分区的起始地址的,因此。如果不计算起始扇区及结束扇区的物理扇区号,而是之间利用起始扇区及结束扇区的“偏移量”来判断逻辑扇区之间是否存在分区重叠也是可以的,这里不再赘述。S103 如果存在分区重叠,则向用户发出用以表示分区之间存在分区重叠的提示 fn息ο如果判断出逻辑分区之间存在分区重叠的现象,则可以向用户发出提示信息,用以提示用户其计算机存在逻辑分区丢失或主分区无法打开乃至数据丢失的风险。这样,当用户看到这样的提示信息之后,就可以在向逻辑分区或主分区中存储数据时,尽量避免将分区占用得过满,进而就可以从一定程度上避免用户数据丢失的现象产生。
当然,在实际应用中,由于分区可能有多个,可能并不是所有相邻的分区之间都存在分区重叠,而是只有其中的某两个分区之间(例如分区A与分区B)存在分区重叠的现象, 此时,只有当分区A写的过满时,才会引起分区丢失的问题,而其他的分区即时被写满,也不会引起分区丢失。因此,就可以将具体那两个分区之间存在分区重叠提示给用户,例如, 提示用户“分区A与分区B之间存在分区重叠”,这样,用户只要注意分区A中的数据不要写的过满,而其他的分区由于不存在重叠的问题,因此,可以不必注意。从而使得用户更加将专注于可能会引起分区丢失问题的分区,同时又可以使得其他不会引起分区丢失问题的分区空间得到充分得利用。与本发明实施例提供的分区信息处理方法相对应,本发明实施例还提供了一种分区信息处理装置,参见图2,该装置包括
分区信息获取单元201,用于获取磁盘当前分区以及其下一分区的分区信息; 判断单元202,用于根据所述分区信息,判断当前分区与其下一分区之间是否存在分区
重叠;
提示单元203,用于如果存在分区重叠,则向用户发出用以表示分区之间存在分区重叠的提示信息。具体实现时,当所述当前分区及其下一分区均为扩展分区中的逻辑分区时,分区信息获取单元201可以包括结束位置确定子单元,用于根据所述第一逻辑分区的上一分区的分区表中标记的分区信息,确定所述第一逻辑分区的结束位置所在的物理扇区号;
起始位置确定子单元,用于根据第一逻辑分区的分区表中标记的分区信息,确定所述第二逻辑分区的起始位置所在的物理扇区号;
判断单元202具体可以用于判断所述第一逻辑分区的结束位置所在的物理扇区号是否大于所述第二逻辑分区的起始位置所在的物理扇区号,如果是,则所述第一逻辑分区与所述第二逻辑分区之间存在分区重叠;
其中,所述第二逻辑分区是所述第一逻辑分区的下一分区。其中,所述结束位置确定子单元具体可以包括
第一查询子单元,用于查询所述第一逻辑分区的上一分区的分区表,从中获取第一逻辑分区的起始扇区偏移值以及占用的总扇区数;
结束扇区偏移值确定子单元,用于根据该第一逻辑分区的起始扇区偏移值以及该逻辑分区占用的总扇区数,获取该第一逻辑扇区的结束扇区偏移值;
结束位置物理扇区号确定子单元,用于根据该第一逻辑扇区的结束扇区偏移值以及扩展分区的起始地址获取该第一逻辑分区所在的结束位置所在的物理扇区号。所述起始位置确定子单元具体可以包括
第二查询子单元,用于查询所述第一逻辑分区的分区表,从中获取所述第二逻辑分区的数据段起始扇区偏移值;
起始位置确定子单元,用于根据该第二逻辑扇区的起始扇区偏移值以及扩展分区的起始地址获取该第二逻辑分区的起始位置所在的物理扇区号。当所述当前分区为主分区,其下一分区为主分区或扩展分区时,分区信息获取单元201具体用于根据磁盘0磁道0扇区中的分区表中标记的分区信息,确定所述当前分区的结束位置所在的物理扇区号,以及下一分区的起始位置所在的物理扇区号;判断单元202具体用于判断所述当前分区的结束位置所在的物理扇区号是否大于所述下一分区的起始位置所在的物理扇区号,如果是,则所述当前分区与下一分区之间存在
分区重叠。在本发明实施例提供的分区信息处理装置中,由于能够判断出分区之间是否存在分区重叠的现象,并且能够在发现存在分区重叠现象之后,及时地向用户发出提示信息,因此,当用户看到这样的提示信息之后,就可以在向分区中存储数据时,尽量避免将分区占用得过满,进而就可以从一定程度上避免用户数据丢失的现象产生。需要说明的是,本发明实施例提供的装置是与前述方法实施例对应的,因此,装置实施例中未详述部分可参见方法实施例中的介绍,这里不再赘述。以上对本发明所提供的一种分区信息处理方法及装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想, 在具体实施方式
及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
1权利要求
1.一种分区信息处理方法,其特征在于,包括 获取磁盘当前分区以及其下一分区的分区信息;根据所述分区信息,判断当前分区与其下一分区之间是否存在分区重叠; 如果存在分区重叠,则向用户发出用以表示分区之间存在分区重叠的提示信息。
2.根据权利要求1所述的方法,其特征在于,当所述当前分区及其下一分区均为扩展分区中的逻辑分区时,所述获取磁盘当前分区以及其下一分区的分区信息包括通过以下方式获取第一逻辑分区以及第二逻辑分区的分区信息根据所述第一逻辑分区的上一分区的分区表中标记的分区信息,确定所述第一逻辑分区的结束位置所在的物理扇区号;根据所述第一逻辑分区的分区表中标记的分区信息,确定所述第二逻辑分区的起始位置所在的物理扇区号;所述判断当前分区与其下一分区之间是否存在分区重叠包括通过以下方式判断第一逻辑分区与第二逻辑分区之间是否存在分区重叠判断所述第一逻辑分区的结束位置所在的物理扇区号是否大于所述第二逻辑分区的起始位置所在的物理扇区号,如果是,则所述第一逻辑分区与所述第二逻辑分区之间存在分区重叠;其中,所述第二逻辑分区是所述第一逻辑分区的下一分区。
3.根据权利要求2所述的方法,其特征在于,所述根据所述第一逻辑分区的上一分区的分区表中记录的分区信息,确定所述第一逻辑分区的结束位置所在的物理扇区号包括查询所述第一逻辑分区的上一分区的分区表,从中获取第一逻辑分区的起始扇区偏移值以及占用的总扇区数;根据该第一逻辑分区的起始扇区偏移值以及该逻辑分区占用的总扇区数,获取该第一逻辑扇区的结束扇区偏移值;根据该第一逻辑扇区的结束扇区偏移值以及扩展分区的起始地址获取该第一逻辑分区所在的结束位置所在的物理扇区号。
4.根据权利要求2所述的方法,其特征在于,所述根据所述第一逻辑分区的分区表中记录的分区信息,确定所述第二逻辑分区的起始位置所在的物理扇区号包括查询所述第一逻辑分区的分区表,从中获取所述第二逻辑分区的起始扇区偏移值; 根据该第二逻辑扇区的起始扇区偏移值以及扩展分区的起始地址获取该第二逻辑分区的起始位置所在的物理扇区号。
5.根据权利要求1所述的方法,其特征在于,当所述当前分区为主分区,其下一分区为主分区或扩展分区时,所述获取磁盘当前分区以及其下一分区的分区信息包括根据磁盘O磁道O扇区中的分区表中标记的分区信息,确定所述当前分区的结束位置所在的物理扇区号,以及下一分区的起始位置所在的物理扇区号; 所述判断当前分区与其下一分区之间是否存在分区重叠包括 判断所述当前分区的结束位置所在的物理扇区号是否大于所述下一分区的起始位置所在的物理扇区号,如果是,则所述当前分区与下一分区之间存在分区重叠。
6.一种分区信息处理装置,其特征在于,包括分区信息获取单元,用于获取磁盘当前分区以及其下一分区的分区信息;判断单元,用于根据所述分区信息,判断当前分区与其下一分区之间是否存在分区重叠;提示单元,用于如果存在分区重叠,则向用户发出用以表示分区之间存在分区重叠的提示信息。
7.根据权利要求6所述的装置,其特征在于,当所述当前分区及其下一分区均为扩展分区中的逻辑分区时,所述分区信息获取单元包括结束位置确定子单元,用于根据所述第一逻辑分区的上一分区的分区表中标记的分区信息,确定所述第一逻辑分区的结束位置所在的物理扇区号;起始位置确定子单元,用于根据第一逻辑分区的分区表中标记的分区信息,确定所述第二逻辑分区的起始位置所在的物理扇区号;所述判断单元具体用于判断所述第一逻辑分区的结束位置所在的物理扇区号是否大于所述第二逻辑分区的起始位置所在的物理扇区号,如果是,则所述第一逻辑分区与所述第二逻辑分区之间存在分区重叠;其中,所述第二逻辑分区是所述第一逻辑分区的下一分区。
8.根据权利要求7所述的装置,其特征在于,所述结束位置确定子单元包括第一查询子单元,用于查询所述第一逻辑分区的上一分区的分区表,从中获取第一逻辑分区的起始扇区偏移值以及占用的总扇区数;结束扇区偏移值确定子单元,用于根据该第一逻辑分区的起始扇区偏移值以及该逻辑分区占用的总扇区数,获取该第一逻辑扇区的结束扇区偏移值;结束位置物理扇区号确定子单元,用于根据该第一逻辑扇区的结束扇区偏移值以及扩展分区的起始地址获取该第一逻辑分区所在的结束位置所在的物理扇区号。
9.根据权利要求7所述的装置,其特征在于,所述起始位置确定子单元包括第二查询子单元,用于查询所述第一逻辑分区的分区表,从中获取所述第二逻辑分区的数据段起始扇区偏移值;起始位置确定子单元,用于根据该第二逻辑扇区的起始扇区偏移值以及扩展分区的起始地址获取该第二逻辑分区的起始位置所在的物理扇区号。
10.根据权利要求6所述的装置,其特征在于,当所述当前分区为主分区,其下一分区为主分区或扩展分区时,所述分区信息获取单元具体用于根据磁盘0磁道0扇区中的分区表中标记的分区信息,确定所述当前分区的结束位置所在的物理扇区号,以及下一分区的起始位置所在的物理扇区号;所述判断单元具体用于判断所述当前分区的结束位置所在的物理扇区号是否大于所述下一分区的起始位置所在的物理扇区号,如果是,则所述当前分区与下一分区之间存在分区重叠。
全文摘要
本发明公开了一种分区信息处理方法及装置,其中,所述方法包括获取磁盘当前分区以及其下一分区的分区信息;根据所述分区信息,判断当前分区与其下一分区之间是否存在分区重叠;如果存在分区重叠,则向用户发出用以表示分区之间存在分区重叠的提示信息。通过本发明,能够将分区信息提示给用户,从而避免发生用户数据丢失的现象。
文档编号G06F9/50GK102354290SQ20111029880
公开日2012年2月15日 申请日期2011年9月28日 优先权日2011年9月28日
发明者于天佐, 刘科, 唐智, 陆坡, 陈佃晓, 陈耀攀 申请人:奇智软件(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1