一种磁盘流量的控制方法和装置与流程

文档序号:11406718阅读:383来源:国知局
一种磁盘流量的控制方法和装置与流程

本发明涉及计算机技术领域,特别涉及一种磁盘流量的控制方法和装置。



背景技术:

近年来,随着大数据的发展,人们对磁盘性能的要求逐渐增强。在磁盘空间一定的情况下,如何提高磁盘的写入速度是人们一直关心的问题。

现有技术中,针对接收到的待写入信息,一般即时将待写入信息写入磁盘。当一段时间内接收到多个待写入信息时,需要按照接收到的时间,依次将每一个待写入信息写入磁盘。

但是,由于不同的待写入信息存储地址的差异,磁头需要在磁盘来回移动,增加磁盘寻道时间较长,导致磁盘的写入效率较低。



技术实现要素:

本发明实施例提供了一种磁盘流量的控制方法和装置,能够提高磁盘的写入效率。

第一方面,本发明实施例提供了一种磁盘流量的控制方法,预先设置时间间隔,还包括:

当接收到外部发送的第一待写入信息时,确定当前时刻;

在外部磁盘的地址中,为所述第一待写入信息分配至少一个第一地址;

判断从所述当前时刻起,所述时间间隔内是否接收到外部发送的第二待写入信息,如果是,在所述地址中,为所述第二待写入信息分配至少一个第二地址;根据所述至少一个第二地址,确定第二磁盘区域;根据所述至少一个第一地址,确定第一磁盘区域;判断所述第一磁盘区域与所述第二磁盘区域是否存在交集,如果是,将所述第一待写入信息写入所述至少一个第一地址,同时将所述第二待写入信息写入所述至少一个第二地址。

优选地,

进一步包括:

确定每一个所述地址的写入顺序,所述地址中包括:柱面号、磁头号和扇区号;

所述根据所述至少一个第一地址,确定第一磁盘区域,包括:

根据每一个所述第一地址的柱面号、磁头号和扇区号,确定每一个所述第一地址对应的第一写入顺序;

根据所述第一写入顺序中排在第一位的所述第一地址和所述第一写入顺序中排在最后一位的所述第一地址,确定所述第一磁盘区域。

优选地,

所述根据所述至少一个第二地址,确定第二磁盘区域,包括:

根据每一个所述第二地址的柱面号、磁头号和扇区号,确定每一个所述第二地址对应的第二写入顺序;

根据所述第二写入顺序中排在第一位的所述第二地址和所述第二写入顺序中排在最后一位的所述第二地址,确定所述第二磁盘区域。

优选地,

所述将所述第一待写入信息写入所述至少一个第一地址,同时将所述第二待写入信息写入所述至少一个第二地址,包括:

根据所述第一写入顺序和所述第二写入顺序,将所述第一待写入信息写入所述至少一个第一地址,同时将所述第二待写入信息写入所述至少一个第二地址。

优选地,

进一步包括:

当所述第一磁盘区域与所述第二磁盘区域不存在交集时,将所述第一待写入信息写入所述至少一个第一地址;将所述第二待写入信息写入所述至少一个第二地址。

第二方面,本发明实施例提供了一种磁盘流量的控制装置,还包括:

设置单元,用于设置时间间隔,

确定单元,用于当接收到外部发送的第一待写入信息时,确定当前时刻;

分配单元,用于在外部磁盘的地址中,为所述确定单元接收的所述第一待写入信息分配至少一个第一地址;

处理单元,用于判断从所述确定单元确定的所述当前时刻起,所述设置单元设置的所述时间间隔内是否接收到外部发送的第二待写入信息,如果是,在所述地址中,为所述第二待写入信息分配至少一个第二地址;根据所述至少一个第二地址,确定第二磁盘区域;根据所述分配单元分配的所述至少一个第一地址,确定第一磁盘区域;判断所述第一磁盘区域与所述第二磁盘区域是否存在交集,如果是,将所述第一待写入信息写入所述至少一个第一地址,同时将所述第二待写入信息写入所述至少一个第二地址。

优选地,

确定单元,进一步用于确定每一个所述地址的写入顺序,所述地址中包括:柱面号、磁头号和扇区号;

所述处理单元,用于根据所述确定单元确定的每一个所述第一地址的柱面号、磁头号和扇区号,确定每一个所述第一地址对应的第一写入顺序;根据所述第一写入顺序中排在第一位的所述第一地址和所述第一写入顺序中排在最后一位的所述第一地址,确定所述第一磁盘区域。

优选地,

所述处理单元,用于根据每一个所述第二地址的柱面号、磁头号和扇区号,确定每一个所述第二地址对应的第二写入顺序;根据所述第二写入顺序中排在第一位的所述第二地址和所述第二写入顺序中排在最后一位的所述第二地址,确定所述第二磁盘区域。

优选地,

所述处理单元,用于根据所述第一写入顺序和所述第二写入顺序,将所述第一待写入信息写入所述至少一个第一地址,同时将所述第二待写入信息写入所述至少一个第二地址。

优选地,

所述处理单元,进一步用于当所述第一磁盘区域与所述第二磁盘区域不存在交集时,将所述第一待写入信息写入所述至少一个第一地址;将所述第二待写入信息写入所述至少一个第二地址。

本发明实施例提供了一种磁盘流量的控制方法和装置,其中,当在预设的时间间隔内接收到第一待写入信息和第二待写入信息时,可以为第一待写入信息和第二待写入信息分配存储所需的第一地址和第二地址,并通过第一地址和第二地址判断第一磁盘区域与第二磁盘区域是否存在交集,当第一磁盘区域与第二磁盘区域存在交集时,说明第一地址的和第二地址的位置相近,此时,应根据第一地址和第二地址在磁盘中的写入顺序,将第一待写入信息和第二待写入信息写入磁盘的相应位置,与现有技术先写入第一待写入信息再写入第二待写入信息相对,该方法可以实现第一待写入信息和第二待写入信息的交替写入。避免磁头在磁盘来回移动,提高磁盘的写入效率。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明一个实施例提供的一种磁盘流量的控制方法流程图;

图2是本发明另一个实施例提供的一种磁盘流量的控制方法流程图;

图3是本发明一个实施例提供的一种磁盘流量的控制装置结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

如图1所示,本发明实施例提供了一种磁盘流量的控制方法,该方法可以包括以下步骤:

步骤101:设置时间间隔;

步骤102:当接收到外部发送的第一待写入信息时,确定当前时刻;

步骤103:在外部磁盘的地址中,为第一待写入信息分配至少一个第一地址;

步骤104:判断从当前时刻起,时间间隔内是否接收到外部发送的第二待写入信息,如果是,执行步骤105;

步骤105:在地址中,为第二待写入信息分配至少一个第二地址;

步骤106:根据至少一个第二地址,确定第二磁盘区域;根据至少一个第一地址,确定第一磁盘区域;

步骤107:判断第一磁盘区域与第二磁盘区域是否存在交集,如果是,执行步骤108;

步骤108:将第一待写入信息写入至少一个第一地址,同时将第二待写入信息写入至少一个第二地址。

在图1所示的实施例中,当在预设的时间间隔内接收到第一待写入信息和第二待写入信息时,可以为第一待写入信息和第二待写入信息分配存储所需的第一地址和第二地址,并通过第一地址和第二地址判断第一磁盘区域与第二磁盘区域是否存在交集,当第一磁盘区域与第二磁盘区域存在交集时,说明第一地址的和第二地址的位置相近,此时,应根据第一地址和第二地址在磁盘中的写入顺序,将第一待写入信息和第二待写入信息写入磁盘的相应位置,与现有技术先写入第一待写入信息再写入第二待写入信息相对,该方法可以实现第一待写入信息和第二待写入信息的交替写入。避免磁头在磁盘来回移动,提高磁盘的写入效率。

在本发明的一个实施例中,为了确定在写入第一待写入信息时,磁头在磁盘上的运动区域,该方法还包括:确定每一个地址的写入顺序,地址中包括:柱面号、磁头号和扇区号;

根据至少一个第一地址,确定第一磁盘区域,包括:

根据每一个第一地址的柱面号、磁头号和扇区号,确定每一个第一地址对应的第一写入顺序;

根据第一写入顺序中排在第一位的第一地址和第一写入顺序中排在最后一位的第一地址,确定第一磁盘区域。

在实际应用场景中,可以通过柱面号,磁头号,扇区号确定存储位置。系统将文件存储到磁盘上时,按柱面、磁头、扇区的方式进行,即最先是第1磁道的第一磁头下(也就是第1盘面的第一磁道)的所有扇区,然后,是同一柱面的下一磁头,一个柱面存储满后就推进到下一个柱面,直到把文件内容全部写入磁盘。

例如,第一地址a、b、c对应的柱面号、磁头号和扇区号分别为111、115、118,则第一磁盘区域包括的磁盘的地址为111、112、……117、118。

在本发明的一个实施例中,为了确定在写入第二待写入信息时,磁头在磁盘上的运动区域,根据至少一个第二地址,确定第二磁盘区域,包括:

根据每一个第二地址的柱面号、磁头号和扇区号,确定每一个第二地址对应的第二写入顺序;

根据第二写入顺序中排在第一位的第二地址和第二写入顺序中排在最后一位的第二地址,确定第二磁盘区域。

第二磁盘区域与第一磁盘区域的确定方法相同,本实施例不再赘述。

在本发明的一个实施例中,为了根据第一地址和第二地址在磁盘中的执行顺序,将第一待写入信息和第二待写入信息分别写入第一地址和第二地址,将第一待写入信息写入至少一个第一地址,同时将第二待写入信息写入至少一个第二地址,包括:

根据第一写入顺序和第二写入顺序,将第一待写入信息写入至少一个第一地址,同时将第二待写入信息写入至少一个第二地址。

例如,第一地址a、b、c对应的柱面号、磁头号和扇区号分别为111、115、118,第二地址d、e对应的柱面号、磁头号和扇区号分别为112、113,则磁盘的写入顺序为a、d、e、b、c,即第一待写入信息和第二待写入信息被交替写入磁盘。

在本发明的一个实施例中,当第一磁盘区域与第二磁盘区域不存在交集时,按照接收到的时间的先后顺序,将第一待写入信息写入至少一个第一地址;将第二待写入信息写入至少一个第二地址。

例如,第一地址a、b、c对应的柱面号、磁头号和扇区号分别为111、115、118,第二地址d、e对应的柱面号、磁头号和扇区号分别为120、125,则磁盘的写入顺序为a、b、c、d、e,即先写入第一待写入信息,再写入第二待写入信息。

如图2所示,本发明实施例以向磁盘中写入m、n为例,对磁盘流量的控制方法进行详细地说明,该方法包括以下步骤:

步骤201:设置时间间隔。

设置时间间隔为1s。

步骤202:当接收到外部发送的第一待写入信息m时,确定当前时刻。

接收系统发送的第一待写入信息m,确定当前时刻为10:00:00。

需要说明的是,在同一时刻,可以接收外部发送的多个第一待写入信息,每一个第一待写入信息的处理方法相同,在本实施例中,仅以一个第一待写入信息的处理为例进行说明。

步骤203:在外部磁盘的地址中,为第一待写入信息m分配至少一个第一地址。

分配的第一地址的数量根据第一待写入信息m的大小进行确定。

例如,为第一待写入信息分配三个第一地址a、b、c。

步骤204:判断从当前时刻起,时间间隔内是否接收到外部发送的第二待写入信息n,如果是,执行步骤205,否则,执行步骤206。

在10:00:01内接收到外部发送的第二待写入信息n,执行步骤205。

在同一时刻,可能接收到多个第二待写入信息,每一个第二待写入信息的处理过程相同,本实施例仅以一个第二待写入信息为例进行说明。

步骤205:在地址中,为第二待写入信息n分配至少一个第二地址,执行步骤207。

为第二待写入信息n分配两个第二地址d、e。

步骤206:将第一待写入信息m写入至少一个第一地址,并终止当前流程。

如果没有接收到第二待写入信息n,则将第一待写入信息写入第一地址a、b、c。

步骤207:确定每一个地址的写入顺序,地址中包括:柱面号、磁头号和扇区号。

确定磁盘中每一个地址的执行顺序。在实际应用场景中,可以通过柱面号,磁头号,扇区号确定存储位置。系统将文件存储到磁盘上时,按柱面、磁头、扇区的方式进行,即最先是第1磁道的第一磁头下(也就是第1盘面的第一磁道)的所有扇区,然后,是同一柱面的下一磁头,一个柱面存储满后就推进到下一个柱面,直到把文件内容全部写入磁盘。

步骤208:根据每一个第二地址的柱面号、磁头号和扇区号,确定每一个第二地址对应的第二写入顺序。

例如,第二地址d、e对应的柱面号、磁头号和扇区号分别为112、113,对应的第二写入顺序分别为112、113。

步骤209:根据第二写入顺序中排在第一位的第二地址和第二写入顺序中排在最后一位的第二地址,确定第二磁盘区域。

确定第二磁盘区域中包括的磁盘的地址为112、113。

步骤210:根据每一个第一地址的柱面号、磁头号和扇区号,确定每一个第一地址对应的第一写入顺序。

第一地址a、b、c对应的柱面号、磁头号和扇区号分别为111、115、118,第一写入顺序为111、115、118。

步骤211:根据第一写入顺序中排在第一位的第一地址和第一写入顺序中排在最后一位的第一地址,确定第一磁盘区域。

第一磁盘区域包括的磁盘的地址为111、112……118。

步骤212:判断第一磁盘区域与第二磁盘区域是否存在交集,如果是,执行步骤213,否则,执行步骤214。

第一磁盘区域与第二磁盘区域存在交集,即公有地址112、113,所以执行步骤213。

步骤213:根据第一写入顺序和第二写入顺序,将第一待写入信息m写入至少一个第一地址,同时将第二待写入信息n写入至少一个第二地址。

写入顺序为a、d、e、b、c,即第一待写入信息和第二待写入信息被交替写入磁盘。第一待写入信息的写入方式为随机写入,第二待写入信息的写入方式为顺序写入。

步骤214:将第一待写入信息m写入至少一个第一地址,将第二待写入信息n写入至少一个第二地址。

当第一磁盘区域与第二磁盘区域不存在交集时,按照接收到的时间的先后顺序进行写入。

写入顺序为a、b、c、d、e,即先写入第一待写入信息,再写入第二待写入信息。

如图3所示,本发明实施例提供了一种磁盘流量的控制装置,包括:

设置单元301,用于设置时间间隔,

确定单元302,用于当接收到外部发送的第一待写入信息时,确定当前时刻;

分配单元303,用于在外部磁盘的地址中,为确定单元302接收的第一待写入信息分配至少一个第一地址;

处理单元304,用于判断从确定单元302确定的当前时刻起,设置单元301设置的时间间隔内是否接收到外部发送的第二待写入信息,如果是,在地址中,为第二待写入信息分配至少一个第二地址;根据至少一个第二地址,确定第二磁盘区域;根据分配单元303分配的至少一个第一地址,确定第一磁盘区域;判断第一磁盘区域与第二磁盘区域是否存在交集,如果是,将第一待写入信息写入至少一个第一地址,同时将第二待写入信息写入至少一个第二地址。

在本发明的一个实施例中,确定单元302,进一步用于确定每一个地址的写入顺序,地址中包括:柱面号、磁头号和扇区号;

处理单元304,用于根据每一个第一地址的柱面号、磁头号和扇区号,确定每一个第一地址对应的第一写入顺序;根据第一写入顺序中排在第一位的第一地址和第一写入顺序中排在最后一位的第一地址,确定第一磁盘区域。

在本发明的一个实施例中,处理单元304,用于根据每一个第二地址的柱面号、磁头号和扇区号,确定每一个第二地址对应的第二写入顺序;根据第二写入顺序中排在第一位的第二地址和第二写入顺序中排在最后一位的第二地址,确定第二磁盘区域。

在本发明的一个实施例中,处理单元304,用于根据第一写入顺序和第二写入顺序,将第一待写入信息写入至少一个第一地址,同时将第二待写入信息写入至少一个第二地址。

在本发明的一个实施例中,处理单元304,进一步用于当第一磁盘区域与第二磁盘区域不存在交集时,将第一待写入信息写入至少一个第一地址;将第二待写入信息写入至少一个第二地址。

上述装置内的各单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。

本发明实施例提供了一种可读介质,包括执行指令,当存储控制器的处理器执行执行指令时,存储控制器执行上述任一实施例的方法。

本发明实施例提供了一种存储控制器,包括:处理器、存储器和总线;

存储器用于存储执行指令,处理器与存储器通过总线连接,当存储控制器运行时,处理器执行存储器存储的执行指令,以使存储控制器执行上述任一实施例的方法。

综上,本发明各个实施例至少具有如下效果:

1、在本发明实施例中,当在预设的时间间隔内接收到第一待写入信息和第二待写入信息时,可以为第一待写入信息和第二待写入信息分配存储所需的第一地址和第二地址,并通过第一地址和第二地址判断第一磁盘区域与第二磁盘区域是否存在交集,当第一磁盘区域与第二磁盘区域存在交集时,说明第一地址的和第二地址的位置相近,此时,应根据第一地址和第二地址在磁盘中的写入顺序,将第一待写入信息和第二待写入信息写入磁盘的相应位置,与现有技术先写入第一待写入信息再写入第二待写入信息相对,该方法可以实现第一待写入信息和第二待写入信息的交替写入。避免磁头在磁盘来回移动,提高磁盘的写入效率。

2、在本发明实施例中,可以根据地址中的柱面号、磁头号和扇区号,确定地址的写入顺序,进而判断第一磁盘区域和第二磁盘区域是否交集。

需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个······”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同因素。

最后需要说明的是:以上仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1