分段处理磁盘命令的系统与方法技术方案

技术编号:4258678 阅读:208 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及一种分段处理磁盘命令的系统与方法,将磁盘命令不同行程(process)的多个处理程序,分成多个行程阶段作处理。避免处理器频繁地作内容转换(Context Switch)的动作,同时在同一行程阶段中充分利用处理器的性能,加快处理磁盘命令的时间。

【技术实现步骤摘要】

本专利技术涉及一种,特别涉及一种分阶段处 理磁盘命令的程序队列的系统与方法。
技术介绍
为了提高磁盘命令的处理效率,将 一磁盘命令的处理过程分成几个独立的 阶段,当一磁盘命令在等待某一阶段的处理结果时,可处理另一磁盘命令。而 待处理磁盘命令通常以一队列加以处理,每一待处理磁盘命令均配置一状态标 志,再通过系统不断循环检视该队列中的每一批待处理磁盘命令,依照状态标 志,将该磁盘命令做符合该状态标志的下 -阶段处理,这样可使多批磁盘命令 在其它磁盘命令的处理过程中获得处理。但已知处理多批磁盘命令的技术,在实际执行上,计算机系统的处理程序 是需要靠处理器来执行的,前述的方式虽可实现多批磁盘命令的处理,但在处 理器的观点,每次检测到一批磁盘命令,要执行某个状态后的下一阶段处理,需要执行相当大量的处理器数据交换,如备份、加载、内容转换(Context Switch),以执行该阶段的处理程序。因此每次经过大量处理器数据交换后, 处理完一批磁盘命令,又要检视下一批待处理的磁盘命令。而在长时间运作之 后,每个待处理磁盘命令的状态标志通常都会不同,也即每次检视新的磁盘命 令,就要再加载新的阶段处理程序,因此会产生大量的处理器数据交换。如已 知的技术,处理器处理磁盘命令的性能无法真正的改善。
技术实现思路
本专利技术所要解决的问题在于提出一种,主 要利用计算机系统的中央处理器,将程序执行的不同行程(process),分成多 个行程阶段,且在每一个行程阶段中,仅处理相同状态的一个程序执行的行程。 以针对至少一个磁盘命令,将具有多个处理程序的磁盘命令分段处理。避免处理器频繁地作内容转换(Context Switch)的动作,同时在同一行程阶段中充 分利用处理器的性能,加快处理磁盘命令的时间。为达到上述目的,本专利技术提出一种分段处理磁盘命令的系统,至少包含一 处理器,提供多个行程阶段,且分段处理至少一个磁盘命令,以完成所有该磁 盘命令的执行; 一命令分析单元,提供将该磁盘命令之中的多个处理程序,分 别串行排列在相对应的该行程阶段中,而成为该行程阶段中的一程序队列,供 该处理器处理;以及一队列检视单元,针对每一个该行程阶段,检视该行程阶 段中的所有该程序队列,并通知该处理器处理该行程阶段中尚未处理的该程序 队列。为达到上述目的,本专利技术提出一种分段处理磁盘命令的方法,至少包含下 列步骤(a)提供多个行程阶段;(b)提供一个具有多个处理程序的一磁盘 命令;(c)将该磁盘命令的每个该处理程序分别串行排列在相对应的该行程 阶段中,而成为该行程阶段中的一程序队列;(d)通过一处理器处理一个该 行程阶段中排列的该程序队列;(e)针对一个该行程阶段检视该行程阶段中 的该程序队列是否全部处理完;以及(f)进入下一个行程阶段。附图说明为让本专利技术的上述和其它目的、特征、优点与实施例能更明显易懂,所附 的附图的详细说明如下图1为本专利技术的分段处理磁盘命令的系统的方块图; 图2为本专利技术的分段处理磁盘命令的方法的步骤流程图。主要器件符号说明100:分段处理磁盘命令的系统 110:处理器 120:命令分析单元 130:队列检视单元 1301 130n:行程阶段200:磁盘命令2001 200n:处理程序 300 360:方法歩骤具体实施方式本专利技术为一种。以下配合附图先说明本发 明的磁盘连接层级的判断系统的较佳实施例,再应用本专利技术方法技术,详细说 明本专利技术的磁盘连接层级的判断方法的步骤流程。配合参照图1,为本专利技术的分段处理磁盘命令的系统的方块图。如图所示,本专利技术的分段处理磁盘命令的系统100,至少包含一处理器110、 一命令分析 单元120、及一队列检视单元130。处理器110为一计算机系统的中央处理器 (CPU),提供将程序执行依不同的行程(process),分成多个行程阶段1301 130n,在每一个该行程阶段1301 130n中仅处理相同状态的行程(process), 且处理器110处理完其中一个行程阶段中的所有该程序队列q之后,才进入下 一个行程阶段。处理器110提供以分段处理的方式,处理至少一个磁盘命令 200,并完成所有磁盘命令的执行。命令分析单元120提供将该磁盘命令200 之中的多个处理程序2001 200n,分别串行排列在相对应的该行程阶段 1301 130n中,而成为该行程阶段中的一程序队列q,供处理器110处理。而 队列检视单元130针对每一个该行程阶段1301 130n,检视该行程阶段1301 130n中的所有该程序队列q,并通知处理器110处理该行程阶段中尚未处理的 该程序队列q。直到处理器110处理完该行程阶段中的所有该程序队列q之后, 才会进入下一个行程阶段,进行处理下一个行程阶段中所有的程序队列q。其中,磁盘命令200之中的多个处理程序2001 200n,在处理器110进 行各个处理程序之间,该处理器110必须经过一内容转换(Context Switch) 的动作,即处理器110进行多任务处理时,储存上一个旧行程的状态,然后再 加载下一个新行程的状态。因此,本专利技术通过将磁盘命令200之中的多个处理 程序2001 200n,分别串行排列在相对应的该行程阶段中,比如将所有读 取磁盘(read disk)的处理程序串行在一行程阶段中,而将所有写入磁盘(write disk)的处理程序串行在另一行程阶段中。再通过处理器110针对每一阶段内, 具有相同状态行程(process)的所有程序队列q进行处理。在进行下一行程阶 段时,才一并作一次内容转换(Context Switch)的动作。从而,避免处理器 IIO频繁地作内容转换的动作,同时在同一行程阶段中充分利用处理器110的 性能,加快处理磁盘命令的时间。图2为本专利技术的分段处理磁盘命令的方法的步骤流程图。如图所示,本发 明的分段处理磁盘命令的方法,首先,处理器110将程序执行依不同的行程(process),分成多个行程阶段1301 130n (歩骤300)。接着,提供一个 具有多个处理程序2001 200n的一磁盘命令200 (步骤310)。然后,通过命 令分析单元120将该磁盘命令200的每个该处理程序2001 200n分别串行排 列在相对应的该行程阶段中,而成为该行程阶段中的一程序队列q (步骤 320)。然后即可通过处理器110处理一个该行程阶段中排列的该程序队列q(步骤330)。接着,通过队列检视单元130针对一个该行程阶段,检视该行 程阶段中的该程序队列q是否全部处理完(步骤340)。若上述步骤340中, 该行程阶段中尚有程序队列q还未经由处理器110处理,则本流程继续在步骤 340中将该行程阶段中所有的程序队列q处理完。若上述步骤340中,所有的 程序队列q已处理完毕,则本流程进入下一个行程阶段(步骤350),进行处 理下一个行程阶段中所有的程序队列q。接着,才判断是否所有磁盘命令均处 理完毕(步骤360)。若在步骤360中,尚有产生新的磁盘命令待处理,则本 流程回到步骤310,使得本专利技术的处理器IIO继续以分段处理的方式处理磁盘 命令。但若在步骤360中,所有磁盘命令均已处理完毕,则结束本流程。虽然本专利技术已以一较佳实施例揭露如上,然其并非用以限定本专利技术,任何 本领域的技本文档来自技高网...

【技术保护点】
一种分段处理磁盘命令的系统,其特征在于,至少包含: 一处理器,提供多个行程阶段,且分段处理至少一个磁盘命令,以完成所有该磁盘命令的执行; 一命令分析单元,提供将该磁盘命令之中的多个处理程序,分别串行排列于相对应的该行程阶段中,而 成为该行程阶段中的一程序队列,供该处理器处理;以及 一队列检视单元,针对每一个该行程阶段,检视该行程阶段中的所有该程序队列,并通知该处理器处理该行程阶段中尚未处理的该程序队列。

【技术特征摘要】

【专利技术属性】
技术研发人员:陈志伟卢晓芬
申请(专利权)人:英业达股份有限公司
类型:发明
国别省市:71[中国|台湾]

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

1