CN101458635A - 服务器虚拟环境的磁盘输入/输出调度器及其调度方法 - Google Patents

服务器虚拟环境的磁盘输入/输出调度器及其调度方法 Download PDF

Info

Publication number
CN101458635A
CN101458635A CNA2008100935899A CN200810093589A CN101458635A CN 101458635 A CN101458635 A CN 101458635A CN A2008100935899 A CNA2008100935899 A CN A2008100935899A CN 200810093589 A CN200810093589 A CN 200810093589A CN 101458635 A CN101458635 A CN 101458635A
Authority
CN
China
Prior art keywords
request
formation
timeslice
time
magnetic disc
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CNA2008100935899A
Other languages
English (en)
Inventor
姜东宰
金载烈
金康好
郑盛仁
金明俊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Electronics and Telecommunications Research Institute ETRI
Original Assignee
Electronics and Telecommunications Research Institute ETRI
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Electronics and Telecommunications Research Institute ETRI filed Critical Electronics and Telecommunications Research Institute ETRI
Publication of CN101458635A publication Critical patent/CN101458635A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45545Guest-host, i.e. hypervisor is an application program itself, e.g. VirtualBox

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

提供了一种对于服务器虚拟环境的磁盘I/O调度器及其调度方法,其按比例地将块I/O资源分配给处于服务器虚拟环境中的各个虚拟系统,并严格隔离虚拟系统间的分配的I/O资源,从而保证了虚拟系统的性能,并且也提供了有限资源的有效利用。该磁盘I/O调度器包括对于I/O请求的多个队列、I/O请求增加单元和I/O请求提取单元。该I/O请求增加单元将每个系统的I/O请求增加到相应的队列中。该I/O请求提取单元从队列中提取I/O请求。

Description

服务器虚拟环境的磁盘输入/输出调度器及其调度方法
技术领域
本公开涉及服务器虚拟环境的磁盘(disk)输入/输出(I/O)调度器及其调度方法,更具体地,涉及执行产生、删除和管理各个虚拟系统的队列并根据虚拟系统的服务优先级按比例分配资源的磁盘I/O调度器及其调度方法,从而提供有限的磁盘I/O资源的有效利用同时也保证了虚拟系统的最低性能。
背景技术
因为在服务器虚拟环境中多种虚拟系统工作在单个物理系统上,所以提出了各种方案来给虚拟系统分配/再分配有限的资源。
然而,传统的服务器虚拟环境不能支持基于虚拟系统单元的I/O调度,并且将虚拟系统的输入/输出作为单个进程的输入/输出来对待,从而使得保证虚拟系统的稳定的I/O性能十分困难。
对于一般的系统环境而不是服务器虚拟环境提出了或研究了各种I/O调度方案。然而,大多数这样的I/O调度方案是基于进程单元的I/O调度或者对于由进程优先级定义的优先级组的每一个执行I/O调度。结果,对于一般系统环境的I/O调度方案也被应用于服务器虚拟环境中,因而不能提供适合于服务器虚拟环境的虚拟系统的I/O调度方案。
此外,由于在系统中块I/O资源具有最慢的处理速度,因此将有限的资源有效地分配给各个虚拟系统对于保证期望的性能是一件很重要的事情。
发明内容
因此,本发明的目的是提供一种服务器虚拟环境的磁盘I/O调度器及其调度方法,其按比例将块I/O资源分配给服务器虚拟环境中的各个虚拟系统,并严格隔离虚拟系统之间的分配的I/O资源,从而保证了虚拟系统的性能同时也提供了有限资源的有效利用。
为了实现这些和其它优点,并且根据这里实施的和宽泛描述的本发明的目的,根据本发明一方面的对于服务器虚拟环境的磁盘I/O调度器包括:对于I/O请求的多个队列;I/O请求增加单元,用于将每个系统的I/O请求增加到相应的队列中;和I/O请求提取单元,用于从队列中提取I/O请求。
为了实现上述和其它优点并根据本发明的目的,根据本发明另一方面的对于服务器虚拟环境的磁盘I/O调度方法包括:产生/删除用于处理磁盘I/O请求的各个虚拟系统的队列;将所产生的队列增加到列表中以管理所产生的队列;将所选择的I/O请求增加到相应的队列中;选择一个队列处理I/O请求;从所选队列中提取I/O请求以处理该I/O请求;以及应用严格隔开虚拟系统之间的分配资源限度的策略(policy)以处理I/O请求。
为了实现上述和其它优点并根据本发明的目的,根据本发明另一方面的管理对于服务器虚拟环境的磁盘I/O调度器的时间片(time slice)的方法包括:当时间片结束时调度队列;如果时间片未结束并且如果剩余时间片的时段长于处理一个I/O请求所用时间的时段,则提取增加的I/O请求;如果剩余时间片的时段不长于处理一个I/O请求所用时间的时段并且如果不存在用于存储剩余时间片的增加的时间片存储参数,则初始化该时间片存储参数,将剩余时间片存储在初始化的时间片存储参数中,并且调度队列;以及如果剩余时间片的时段不长于处理一个I/O请求所用时间的时段并且如果存在用于存储剩余时间片值的时间片存储参数,则根据剩余时间片、时间片存储参数值和I/O请求处理时间值,提取增加的I/O请求或将剩余时间片存储在时间片存储参数中,以及调度队列。
通过下面结合附图对本发明的详细描述,本发明的前述和其它目的、特征、方面和优点将变得更加清楚。
附图说明
为提供对本发明的进一步的理解,本说明书包括附图,这些附图被合并进本说明书且构成本说明书的一部分,其示出了本发明的实施例,并和说明书一起用于解释本发明的原理。
图1是根据本发明的实施例的对于服务器虚拟环境的磁盘I/O调度器的示意图;
图2是示出根据本发明的磁盘I/O调度器的队列管理结构的图;
图3是图1中示出的I/O请求增加单元的框图;
图4是图1中示出的I/O请求提取单元的框图;以及
图5是示出严格服从磁盘I/O调度器的分配资源限度的时间片管理方法的流程图。
具体实施方式
下面将参照附图详细描述本发明的特定实施例。
图1是根据本发明的实施例的对于服务器虚拟环境的磁盘I/O调度器的示意图。
参照图1,磁盘I/O调度器110包括:对于I/O请求的多个队列110-1、110-2和110-3;I/O请求增加单元120,在接收到来自每个系统的I/O请求后,将I/O请求增加到队列110-1、110-2和110-3中的相应的一个中;以及I/O请求提取单元130,从队列110-1、110-2和110-3中提取I/O请求,以将提取出的I/O请求增加到设备队列200中。这里,I/O请求增加单元120包括队列哈希(hash),用于基于虚拟系统的标识符检测当前登记的I/O队列,而I/O请求提取单元130从相应的队列中提取I/O请求,以处理来自队列110-1、110-2和110-3的I/O请求。在图1中,参考数字101、102、111、112和113代表I/O请求。
为每个虚拟系统分配一个队列,并为主机系统分配一个队列110-1,从而主机系统具有和虚拟系统相同的访问条件。
在产生虚拟系统的I/O请求却不存在对于此I/O请求的队列的情况下,产生队列。这里,使用虚拟系统的标识符作为关键值来产生队列,然后将所产生的队列登记在该队列哈希中。如果在产生虚拟系统的I/O请求时存在对于I/O请求的队列,则由于通过该队列哈希能够获得关于相关队列的信息,因此将该I/O请求增加到所选队列中。
当队列的引用值为‘0’时删除队列。当进程访问队列以增加I/O请求时队列的引用值增加。另一方面,在该I/O请求完全处理完时,队列的引用值减小。因而,如果在队列中没有待处理的I/O请求并且如果没有要增加的进程,则在处理完最后一个I/O请求后,队列的引用值变为‘0’,删除该队列并从队列哈希中去掉该队列。
图2是示出根据本发明的磁盘I/O调度器的队列管理结构的图。
参照图2,根据本发明的队列管理结构包括队列组220,其属于基于包含在队列管理列表210中的系统标识符211的相关系统。
也就是说,根据各个系统标识符211的队列组220具有连接在列表中的结构,而在列表中的队列具有各个优先级次序230。因而,将在相同系统中的具有相同优先级次序的I/O请求管理在相同的队列中。
上述队列管理结构目的在于扩展调度器的队列,本发明对于每个虚拟系统分配一个队列组220。
在该系统中,不断产生由调试守护进程(demon)或其它应用程序引起的周期的或连续的I/O请求。因此,当虚拟系统开始工作时立刻产生队列,而当该虚拟系统停止工作时删除队列。
当增加新I/O请求时,该I/O调度器合并/分类已存在的I/O请求。
图3是图1中示出的I/O请求增加单元120的框图。
在主机系统产生的I/O请求和虚拟系统产生的I/O请求之间存在特征差别。也即,虚拟系统由于其作为一个完整系统而存在,因而包括其自己的I/O调度器。因而,来自虚拟系统的I/O请求已被包括在虚拟系统中的I/O调度器合并/分类。如果虚拟系统中的I/O调度器包括用于考虑优先级次序而处理I/O请求的例程,则根据优先级次序将来自虚拟系统的I/O请求发送给主机系统的调度器。总之,由于从虚拟系统向主机系统发送的I/O请求已被该I/O调度器完全处理,因此主机系统中的合并/分类处理是尝试重复的合并/分类处理。
基于上面的描述,I/O请求增加单元120考虑I/O请求的处理效率。参照图3,I/O请求增加单元120包括:合并/分类单元121,用于合并/分类I/O请求以将新的I/O请求增加到队列110-1中;以及非合并/非分类单元122,用于将I/O请求增加到队列110-2和110-3中而不用合并/分类I/O请求。
例如,当存在主机系统的I/O请求时,合并/分类单元121合并/分类主机系统的I/O请求以将新的I/O请求增加到队列110-1中。另一方面,当存在虚拟系统的I/O请求时,非合并/非分类单元121将虚拟系统的I/O请求增加到具有简单的先进先出(FIFO)结构的队列110-2和110-3中,而不尝试合并和分类虚拟系统的I/O请求,从而优化I/O性能。
图4是图1中示出的I/O请求提取单元130的框图。
参照图4,I/O请求提取是从队列110-1、110-2和110-3中提取I/O请求以将提取的I/O请求增加到设备队列200中的操作。执行I/O请求提取操作的I/O请求提取单元130包括比例队列调度单元131。
比例队列调度单元131包括时间份额管理器131-1和队列选择策略单元131-2。
磁盘I/O调度器100根据总带宽按照各个虚拟系统的可用I/O带宽之间的比例,将可用I/O带宽分配给各个虚拟系统,使得操作员能够根据各个虚拟系统的I/O特性将合适的资源(即,I/O带宽)分配给各个虚拟系统。例如,磁盘I/O调度器100以30:50:20的比例分别将可用I/O带宽分配给主机系统、第一虚拟系统和第二虚拟系统。这里,分配各个可用I/O带宽意味着保证各个虚拟系统的最小可用I/O带宽,其意味着虚拟系统能够使用所分配的I/O带宽,而不受其它虚拟系统的影响。
可以通过控制磁盘访问权来分配I/O带宽,其可以通过以合适的比例以时间片为基础分配访问块设备的可用时间来支持。
时间份额管理器131-1基于循环(round-robin)方案来管理时间片。一般的循环方案为对象分配相同的时间片,然而本发明的磁盘I/O调度器100以预定的比例为各个队列分配I/O资源使用时间。例如,假定系统包括主机系统和两个虚拟系统,并且按照20:50:30的比例分别将I/O资源分配给主机系统、第一虚拟系统和第二虚拟系统。在这种情况下,根据访问I/O资源的优先级的次序,主机系统/第一虚拟系统/第二虚拟系统具有′20×base_time_slice′/′50×base_time_slice′/′30×base_time_slice′的访问时间的I/O操作执行权。这里,′base_time_slice′是用于分配I/O资源访问时间(如,′N×单位′(N:正整数))的最小单元。
当选择新队列处理I/O请求时,分配/释放时间片。当所分配的时间片用完时,队列选择策略单元131-2根据预定队列选择策略,选择接着将要处理的下一队列。在选择新队列之后的时间片分配后,I/O请求提取单元130从相应的队列中提取I/O请求,直到所分配的时间片用完。在图2的队列管理结构中,将时间片分配给基于系统标识符标识的队列组,并且将所分配的时间片分发给该队列组中的队列。
基于由时间份额管理器131-1分配的时间片,队列选择策略单元131-2选择目标队列,以提取接下来要处理的I/O请求。这里,队列选择策略单元131-2总是选择与分配给该队列的时间片有密切关系的提取下一I/O请求的目标队列。如上所述,队列选择策略是基于循环方案的,并且按照如“主机系统→第一虚拟系统→第二虚拟系统→...→主机系统...”的次序给予访问机会。为了选择提取下一I/O请求的目标队列,队列选择策略单元131-2访问连接到具有下一I/O资源的访问权的系统标识符的队列组。此后,队列选择策略单元131-2依次访问相应的队列以检查是否存在待办I/O请求。如果存在待办I/O请求,则队列选择策略单元131-2从相应的队列中提取I/O请求。
如果不存在待办I/O请求,同时仍剩余足够的分配给所选系统的队列组中的队列的时间片,则队列选择策略单元131-2以预定等待时间等待附加I/O请求,该预定等待时间不长于I/O请求的处理时间。如果在过了该预定等待时间之后仍未附加I/O请求,则队列选择策略单元131-2移动到下一系统的队列组以执行如上所述的相同处理。
为了性能隔离,必须严格执行虚拟系统之间的资源分配。然而,在许多情况下,不能严格遵守分配资源的比例或指定资源分配量。虚拟系统或进程间的I/O资源分配的通常方案分配指定的时间片,以给予访问I/O设备的机会。如果剩余足够的时间片,则该通常方案不会引起问题。然而,如果剩余小于处理一个I/O请求所用时间的不足的时间片,则该通常方案会引起资源分配的公平问题。依据包含在I/O请求中的数据尺寸,处理时间有所差别。在这种情况下,超出分配资源限度的时间段随着数据尺寸的增加而增加。超出分配给虚拟系统的资源的允许限度的频率的增加影响分配给另一虚拟系统的资源,其可以引起性能隔离度的降低。因此,为了保证虚拟系统间的严格的资源分配,本发明的磁盘I/O调度器100提供了严格遵守分配资源限度的时间片管理方法。
图5是示出严格遵守磁盘I/O调度器100的分配资源限度的时间片管理方法的流程图。
参照图5,在步骤S101,磁盘I/O调度器100检查时间片。在步骤S102,磁盘I/O调度器100确定时间片是否结束。
如果时间片结束(在步骤S102),磁盘I/O调度器100进行到步骤S103。在步骤S103,磁盘I/O调度器100调度队列。此后,磁盘I/O调度器100返回到步骤S101。
另一方面,如果时间片未结束(在步骤S102),磁盘I/O调度器100进行到步骤S104。在步骤S104,磁盘I/O调度器100确定剩余时间片LEFTOVER_TS是否小于处理一个I/O请求所用的I/O请求处理时间MAX_TS_UNIT。如果剩余时间片LEFTOVER_TS不小于I/O请求处理时间MAX_TS_UNIT(步骤S104),则磁盘I/O调度器100进行到步骤S105。在步骤S105,磁盘I/O调度器100提取增加的I/O请求,以将所提取的I/O请求增加到设备队列200中。此后,磁盘I/O调度器100返回到步骤S101。
另一方面,如果剩余时间片LEFTOVER_TS小于I/O请求处理时间MAX_TS_UNIT(在步骤S104),磁盘I/O调度器100进行到步骤S106。在步骤S106,磁盘I/O调度器100确定是否存在用于存储剩余时间片LEFTOVER_TS中的增加的时间片存储参数SAVED_TS。如果不存在时间片存储参数SAVED_TS(在步骤S106),则磁盘I/O调度器100进行到步骤S107。在步骤S107,磁盘I/O调度器100初始化时间片存储参数SAVED_TS并将剩余时间片LEFTOVER_TS存储在该初始化的时间片存储参数SAVED_TS中。此后,磁盘I/O调度器100进行到步骤S103。
另一方面,如果存在时间片存储参数SAVED_TS(在步骤S106),则磁盘I/O调度器100进行到步骤S108。在步骤S108,磁盘I/O调度器100确定剩余时间片LEFTOVER_TS和时间片存储参数SAVED_TS的总和是否大于处理一个I/O请求所用的I/O请求处理时间MAX_TS_UNIT。
如果剩余时间片LEFTOVER_TS和时间片存储参数SAVED_TS的总和大于I/O请求处理时间MAX_TS_UNIT(在步骤S108),则磁盘I/O调度器100进行到步骤S109。在步骤S109,磁盘I/O调度器100提取增加的I/O请求,以将该提取的I/O请求存储到设备队列200中。此后,磁盘I/O调度器100进行到步骤S103。
另一方面,如果剩余时间片LEFTOVER_TS和时间片存储参数SAVED_TS的总和不大于I/O请求处理时间MAX_TS_UNIT(在步骤S108),则磁盘I/O调度器100进行到步骤S110。在步骤S110,每次产生剩余时间片LEFTOVER_TS时,磁盘I/O调度器100都将剩余时间片LEFTOVER_TS存储在时间片存储参数SAVED_TS中,直到达到处理一个I/O请求的时间为止。此后,磁盘I/O调度器100进行到步骤S103。
这里,I/O请求处理时间MAX_TS_UNIT由完全处理完每个I/O请求时反馈回的I/O请求处理时间MAX_TS_UNIT来更新。
如上所述,本发明通过执行严格的虚拟系统间的I/O资源分配而使得能够隔离分配给各个虚拟系统的资源。这保证了完全的性能隔离,从而使得能够在分配资源限度内保证分配了资源的系统或进程的性能。
此外,本发明按比例地将块I/O资源分配给处于服务器虚拟环境中的各个虚拟系统,并严格隔离虚拟系统间的分配的I/O资源,从而保证了虚拟系统的性能,也提供了有限资源的有效利用。
此外,本发明执行产生、删除和管理各个虚拟系统的队列,并根据虚拟系统的服务优先级按比例地分配资源,从而提供了有限磁盘I/O资源的有效利用,也保证了虚拟系统的最低性能。
在不脱离本发明的精神或实质特征的情况下,可以以多种形式来实施本发明,并且应当理解,除非特别说明,上述实施例不受前述描述的任何细节的限制,而是应当在所附权利要求书定义的精神和范围内宽泛地理解这些实施例,因此,所附权利要求书意欲包括落入权利要求书的限度和范围之内或这些限度或范围的等同物之内的所有改变和修改。
对相关申请的交叉引用
本申请要求于2007年12月14日在韩国提交的专利申请号为P2007-131364的优先权,其全部内容通过参照而被合并与此。

Claims (14)

1、一种对于服务器虚拟环境的磁盘I/O调度器,包括:
对于I/O请求的多个队列;
I/O请求增加单元,用于将每个系统的I/O请求增加到相应的队列中;和
I/O请求提取单元,用于从队列中提取I/O请求。
2、如权利要求1所述的磁盘I/O调度器,其中,该I/O请求增加单元包括队列哈希,用于基于虚拟系统的标识符检测当前登记的I/O队列。
3、如权利要求1所述的磁盘I/O调度器,其中,该队列管理结构包括与基于虚拟系统标识符的相应系统有关的队列组。
4、如权利要求3所述的磁盘I/O调度器,其中,对于各个系统标识符的队列组与列表相连,并且在该列表中的队列具有各个优先级次序。
5、如权利要求1所述的磁盘I/O调度器,其中,该I/O请求增加单元包括:
合并/分类单元,用于合并/分类主机系统的I/O请求,以将该I/O请求增加到相应的队列中;以及
非合并/非分类单元,用于利用简单的FIFO结构将虚拟系统的I/O请求增加到队列中,而不合并/分类I/O请求。
6、如权利要求1所述的磁盘I/O调度器,其中,该I/O请求提取单元包括:
时间份额管理器,用于管理时间片;和
队列选择策略单元,用于基于由时间份额管理器分配的时间片,选择用于提取接下来将要处理的I/O请求的目标队列。
7、一种对于服务器虚拟环境的磁盘I/O调度方法,包括:
产生/删除用于处理磁盘I/O请求的各个虚拟系统的队列;
将所产生的队列增加到用于管理所产生的队列的列表中;
将所选择的I/O请求增加到相应的队列中;
选择一个队列以处理I/O请求;
从所选队列中提取I/O请求以处理该I/O请求;以及
应用严格隔开虚拟系统之间的分配资源限度的策略以处理I/O请求。
8、如权利要求7所述的磁盘I/O调度方法,其中,队列的产生/删除在虚拟系统开始/停止时产生/删除由虚拟系统标识符所标识的各个虚拟系统的队列。
9、如权利要求7所述的磁盘I/O调度方法,其中,将队列增加到列表中包括:基于为每个虚拟系统标识的列表,通过相同的虚拟系统标识符来管理相同的虚拟系统的队列。
10、如权利要求7所述的磁盘I/O调度方法,其中,将所选的I/O请求增加到相应的队列中包括:对于来自虚拟系统的I/O请求,略过合并/分类操作。
11、如权利要求7所述的磁盘I/O调度方法,其中,应用策略包括:如果剩余时间片长于处理一个I/O请求所用的时间段,则提取附加的I/O请求。
12、一种管理对于服务器虚拟环境的磁盘I/O调度器的时间片的方法,该方法包括:
当时间片结束时调度队列;
如果时间片未结束并且如果剩余时间片的时段长于处理一个I/O请求所用时间的时段,则提取增加的I/O请求;
如果剩余时间片的时段不长于处理一个I/O请求所用时间的时段并且如果不存在用于存储剩余时间片中的增加的时间片存储参数,则初始化该时间片存储参数,将剩余时间片存储在该初始化的时间片存储参数中,并且调度队列;以及
如果剩余时间片的时段不长于处理一个I/O请求所用时间的时段并且如果存在用于存储剩余时间片值的时间片存储参数,则根据剩余时间片、时间片存储参数值和I/O请求处理时间值,提取增加的I/O请求或将剩余时间片存储在时间片存储参数中,并且调度队列。
13、如权利要求12所述的方法,其中提取增加的I/O请求或者将剩余时间片存储在时间片存储参数中和I/O请求处理时间值,以及调度队列包括:
确定剩余时间片和时间片存储参数的和是否大于处理一个I/O请求所用的最大时间值;
如果该和大于最大时间值,则提取增加的I/O请求并调度队列;以及
如果该和不大于最大时间值,则每次产生剩余时间片时都将剩余时间片存储在时间片存储参数中,直到达到处理一个I/O请求的时间为止。
14、如权利要求12所述的方法,其中,该最大时间值由完全处理完每个I/O请求时反馈回的最大时间值来更新。
CNA2008100935899A 2007-12-14 2008-04-25 服务器虚拟环境的磁盘输入/输出调度器及其调度方法 Pending CN101458635A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020070131364A KR100944912B1 (ko) 2007-12-14 2007-12-14 서버 가상화 환경을 위한 디스크 입출력 스케쥴러 및 그의스케쥴링 방법
KR131364/07 2007-12-14

Publications (1)

Publication Number Publication Date
CN101458635A true CN101458635A (zh) 2009-06-17

Family

ID=40769510

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2008100935899A Pending CN101458635A (zh) 2007-12-14 2008-04-25 服务器虚拟环境的磁盘输入/输出调度器及其调度方法

Country Status (2)

Country Link
KR (1) KR100944912B1 (zh)
CN (1) CN101458635A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103744808A (zh) * 2013-12-31 2014-04-23 百度在线网络技术(北京)有限公司 一种用于控制i/o请求的方法与设备
CN104636201A (zh) * 2013-11-15 2015-05-20 中国电信股份有限公司 一种虚拟i/o调度方法和系统
CN104679575A (zh) * 2013-11-28 2015-06-03 阿里巴巴集团控股有限公司 输入输出流的控制系统及其方法
CN104750547A (zh) * 2013-12-31 2015-07-01 华为技术有限公司 虚拟机的输入输出io请求处理方法及装置
CN105227489A (zh) * 2015-08-26 2016-01-06 联想(北京)有限公司 一种带宽管理方法及电子设备
CN106020928A (zh) * 2010-09-30 2016-10-12 亚马逊技术股份有限公司 用专用实施资源进行虚拟资源成本追踪
CN106325974A (zh) * 2016-08-11 2017-01-11 浪潮(北京)电子信息产业有限公司 一种虚拟化io性能优化方法及系统
US11106479B2 (en) 2010-09-30 2021-08-31 Amazon Technologies, Inc. Virtual provisioning with implementation resource boundary awareness

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106776032B (zh) * 2016-12-22 2018-07-03 北京华云网际科技有限公司 分布式块存储的io请求的处理方法和装置
KR101899719B1 (ko) * 2017-04-26 2018-09-17 세종대학교산학협력단 가상 머신에 대한 입출력 성능 제한 방법
KR101982447B1 (ko) * 2018-07-20 2019-08-28 세종대학교산학협력단 가상 머신에 대한 입출력 처리 방법
KR102283364B1 (ko) * 2019-11-29 2021-07-29 세종대학교산학협력단 가상화 환경에서, 대역폭 조절 방법

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BR9915366A (pt) * 1998-11-16 2001-07-31 Ericsson Telefon Ab L M Sistema de processamento, sistema de comunicação possuindo um sistema de processamento, e, processo para processar trabalho em um sistema de processamento tendo múltiplos processadores de memória compartilhada para execução paralela de trabalhos
JP3475899B2 (ja) 2000-03-28 2003-12-10 日本電気株式会社 パケットスイッチ装置受信部のデータ処理方式
KR100544837B1 (ko) * 2003-09-04 2006-01-24 삼성전자주식회사 스케줄링 방법 및 이를 수행하기 위한 스케줄러
KR100625246B1 (ko) * 2003-12-19 2006-09-20 한국전자통신연구원 패킷 스케줄러의 주기적인 자원 할당 방법 및 그 데이터구조를 기록한 기록매체

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11842208B2 (en) 2010-09-30 2023-12-12 Amazon Technologies, Inc. Virtual provisioning with implementation resource boundary awareness
US11106479B2 (en) 2010-09-30 2021-08-31 Amazon Technologies, Inc. Virtual provisioning with implementation resource boundary awareness
CN106020928A (zh) * 2010-09-30 2016-10-12 亚马逊技术股份有限公司 用专用实施资源进行虚拟资源成本追踪
CN104636201B (zh) * 2013-11-15 2018-02-02 中国电信股份有限公司 一种虚拟i/o 调度方法和系统
CN104636201A (zh) * 2013-11-15 2015-05-20 中国电信股份有限公司 一种虚拟i/o调度方法和系统
CN104679575A (zh) * 2013-11-28 2015-06-03 阿里巴巴集团控股有限公司 输入输出流的控制系统及其方法
CN104679575B (zh) * 2013-11-28 2018-08-24 阿里巴巴集团控股有限公司 输入输出流的控制系统及其方法
CN104750547B (zh) * 2013-12-31 2018-05-18 华为技术有限公司 虚拟机的输入输出io请求处理方法及装置
CN103744808B (zh) * 2013-12-31 2017-12-26 百度在线网络技术(北京)有限公司 一种用于控制i/o请求的方法与设备
CN103744808A (zh) * 2013-12-31 2014-04-23 百度在线网络技术(北京)有限公司 一种用于控制i/o请求的方法与设备
CN104750547A (zh) * 2013-12-31 2015-07-01 华为技术有限公司 虚拟机的输入输出io请求处理方法及装置
CN105227489A (zh) * 2015-08-26 2016-01-06 联想(北京)有限公司 一种带宽管理方法及电子设备
CN106325974A (zh) * 2016-08-11 2017-01-11 浪潮(北京)电子信息产业有限公司 一种虚拟化io性能优化方法及系统
CN106325974B (zh) * 2016-08-11 2020-02-07 浪潮(北京)电子信息产业有限公司 一种虚拟化io性能优化方法及系统

Also Published As

Publication number Publication date
KR20090063852A (ko) 2009-06-18
KR100944912B1 (ko) 2010-03-03

Similar Documents

Publication Publication Date Title
CN101458635A (zh) 服务器虚拟环境的磁盘输入/输出调度器及其调度方法
US10698891B2 (en) MxN dispatching in large scale distributed system
US10162677B2 (en) Data storage resource allocation list updating for data storage operations
CN107864211B (zh) 集群资源调度方法及系统
US20170160970A1 (en) Data storage resource allocation using category blacklisting when data management requests fail
US7036123B2 (en) System using fair-share scheduling technique to schedule processes within each processor set based on the number of shares assigned to each process group
US9430285B2 (en) Dividing and parallel processing record sets using a plurality of sub-tasks executing across different computers
CN106033373A (zh) 一种云计算平台中虚拟机资源调度方法和调度系统
JP2014038364A (ja) リソース管理サーバ、リソース管理方法及びリソース管理プログラム
WO2020113310A1 (en) System and method for resource partitioning in distributed computing
CN105046443A (zh) 一种业务工单分配方法及系统
CN110383764A (zh) 无服务器系统中使用历史数据处理事件的系统和方法
CN108399101A (zh) 资源调度的方法、装置和系统
JP6519111B2 (ja) データ処理制御方法、データ処理制御プログラムおよびデータ処理制御装置
CN107515781B (zh) 一种基于多处理器的确定性任务调度及负载均衡系统
CN105874426B (zh) 一种系统调用命令的批处理方法及装置
WO2018126771A1 (zh) 一种存储控制器及io请求处理方法
EP3018581B1 (en) Data staging management system
JP2007188208A (ja) コンピュータリソース割当システムおよび方法
CN115185697A (zh) 一种基于kubernetes的集群资源调度方法、系统、设备和存储介质
Shafer et al. A simulation analyses of factors influencing loading practices in cellular manufacturing
JP2011113268A (ja) クラウドファサード管理システム
US20230155958A1 (en) Method for optimal resource selection based on available gpu resource analysis in large-scale container platform
KR100788328B1 (ko) 그리드 컴퓨팅을 이용한 미들웨어 시스템 및 그 동작 방법
CN110750350A (zh) 一种大资源调度方法、系统、装置及可读存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20090617