CN102193853B - Monitor of virtual machine and its dispatching method - Google Patents

Monitor of virtual machine and its dispatching method Download PDF

Info

Publication number
CN102193853B
CN102193853B CN201110058516.8A CN201110058516A CN102193853B CN 102193853 B CN102193853 B CN 102193853B CN 201110058516 A CN201110058516 A CN 201110058516A CN 102193853 B CN102193853 B CN 102193853B
Authority
CN
China
Prior art keywords
task
scheduler
monitor
virtual machine
operation
Prior art date
Application number
CN201110058516.8A
Other languages
Chinese (zh)
Other versions
CN102193853A (en
Inventor
徐尚范
柳在敏
Original Assignee
三星电子株式会社
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
Priority to KR1020100022495A priority Critical patent/KR101658035B1/en
Priority to KR10-2010-0022495 priority
Application filed by 三星电子株式会社 filed Critical 三星电子株式会社
Publication of CN102193853A publication Critical patent/CN102193853A/en
Application granted granted Critical
Publication of CN102193853B publication Critical patent/CN102193853B/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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
    • G06F9/4887Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic
    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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

Abstract

There is provided a kind of monitor of virtual machine and its dispatching method.Operable at least two domain of the virtual monitor device.Monitor of virtual machine may include at least one operation queue and multiple schedulers, and at least two schedulers in the plurality of scheduler include different scheduling characteristics.Receiving from domain for task can be inserted into operation queue by monitor of virtual machine, and the scheduler that can select for scheduler task from the plurality of scheduler according to event type, wherein, the task can be inserted into operation queue.

Description

Monitor of virtual machine and its dispatching method

This application claims being submitted to Korea Spro 10-2010-0022495 of Korean Intellectual Property Office on March 12nd, 2010 The rights and interests of state's patent application, the entire disclosure of this application are merged with this for any purpose by quoting.

Technical field

Below description is related to for while operating the Intel Virtualization Technology of multiple operating systems and realizing the tune of real-time operation Degree technology.

Background technology

Virtualization is that a kind of multiple virtual machines of permission make the operating system of their own be grasped in single master computer The technology of work.

According to virtualization, master computer operation monitor of virtual machine, and the virtual monitor device for running creates multiple virtual Machine.Virtual machine (VM) is the implementation of the machine (that is, computer) of the configuration processor as physical machine.VM can be software or SOC(system on a chip) (SOC, system-on-chip).One purposes is while supporting real time operating system as high level operating system (OS), for example, Linux or Windows.The multiple virtual machines created by master computer can be run simultaneously, and each virtual machine Virtual hardware resource with its own.For example, each virtual machine can have one or more virtual center processing units (VCPU), and a part of memorizer of master computer can be taken.

Scheduling during virtual environment is realized in VCPU units, similarly, is based only upon the time quantum for distributing to each VCPU Sub (time quantum) (time limit (time limit)) realizes traditional scheduling.Therefore, this causes to supporting real in systems The restriction of Shi Gongneng.Although virtualization has been used for server technology, for each server application, VM is equably using system System resource, equally, traditional technology is not used to the consumer electronics with real-time processing requirement.

The content of the invention

In a general aspect, there is provided a kind of monitor of virtual machine for operating at least two domains, the virtual machine prison Control device includes:Operation queue;Multiple schedulers, at least two schedulers in the plurality of scheduler include that different scheduling are special Property;Controller, the controller are configured to:Receiving from domain for task is inserted into into operation queue, according to event type from described Multiple schedulers select the scheduler of task of operation queue is inserted into for scheduling.

The monitor of virtual machine may also include:Table memorizer, the table memorizer are configured to store in following items At least one:Weight table, the weight table are configured to the priority weighting according to event type logger task;Timetable, this when Between table be configured to operation time limit of logger task;Scheduler list, the scheduler list are configured to record according to event class Type is by selected scheduler.

In the monitor of virtual machine, controller is also configured to:The task of reception is inserted into into operation queue;It is logical Cross the order of the priority that task is determined using the attribute and weight table of task.

In the monitor of virtual machine, the attribute of task is may include for triggering the event source of task.

In the monitor of virtual machine, priority weighting can change according to the type of scheduler.

In the monitor of virtual machine, controller is also configured to:The task of reception is inserted into into operation queue;Root Demand according to the emergent management of the task to receiving or the demand to the real-time processing of receiving for task determine receiving for task The order of priority.

In the monitor of virtual machine, controller is also configured to:The task of reception is inserted into into operation queue;Produce Raw or renewal timetable.

In the monitor of virtual machine, controller is also configured to the scheduler for calling selection, and is inserted into fortune The task of capable queue is scheduled according to the characteristic of the scheduler for calling.

In the monitor of virtual machine, it is possible to provide multiple operation queues.

In the monitor of virtual machine, the plurality of operation queue can be respectively mapped to by the monitor of virtual machine pipe Multiple physical resources of reason.

In the monitor of virtual machine, the plurality of operation queue can be respectively mapped to the plurality of scheduler.

In the monitor of virtual machine:Controller is also configured to determine and will insert according to the attribute of receiving for task The operation queue of the task.

In the monitor of virtual machine:Operation queue, and controller are provided in the form of the matrix with row and column It is also configured to the row and column by the task is inserted is determined according to the attribute of receiving for task.

In the monitor of virtual machine:Scheduler may include time limit scheduler, and controller is also configured to ring Should interrupt in the time and occur as event type, call time limit scheduler.

In another general aspect, there is provided a kind of dispatching method for operating the monitor of virtual machine at least two domains, The dispatching method comprises the steps:Receiving from domain for task is inserted into into operation queue;According to event type from being included in Select in multiple schedulers in the monitor of virtual machine for scheduling be inserted into operation queue task scheduler.

In the dispatching method, may include the step of the insertion task:Determined using the attribute and weight table of task The order of the priority of task, wherein, the priority weighting of weight table record task.

In the dispatching method, may include the step of the insertion task:When producing or updating the operation of logger task The timetable of limit.

In the dispatching method, may include the step of the insertion task:Being determined according to the attribute of receiving for task will Insert the operation queue of the task.

The dispatching method may also include step:The scheduler of selection is called, wherein, according to the characteristic of the scheduler for calling Task to being inserted into operation queue is scheduled.

In another general aspect, there is provided a kind of computer-readable information storage medium including program, the program are used for Indicate that computer realizes the dispatching method of the monitor of virtual machine at least two domains of operation, methods described includes following step Suddenly:Receiving from domain for task is inserted into at least one operation queue;Select to use from the plurality of scheduler according to event type In the scheduler of scheduler task, wherein, the task is inserted into operation queue.

In another general aspect, there is provided a kind of real-time spy for providing the real-time task performed in multiple virtual machines The method of property, methods described comprise the steps:Real-time task is included in target with enterprising in monitor of virtual machine (VMM) Row scheduling;Multiple operation queues are maintained, wherein, each operation queue includes the different qualities with regard to (VMM);By multiple virtual Virtual machine is called in the instruction of the state of machine.

Methods described may also include step:By scheduling entity, the plurality of operation queue and CPU (CPU) Carry out correspondence to be scheduled real-time task.

Methods described may also include step:By the call access control of VMM come the probability of test dispatching real-time task.

Methods described may also include step:Real-time task is adjusted based at least one of event weights table and time chart Priority orders.

Methods described may also include step:Tune is called and is run with mode of priority by by scheduled targeted packets Degree device.

In another general aspect, there is provided a kind of monitor of virtual machine for operating at least two domains, the virtual machine Watch-dog includes:Controller, the controller are configured to:Receiving from domain for task is inserted into into operation queue;According to event class Type selects the scheduler for being scheduled to the task from multiple schedulers, wherein, in the plurality of scheduler extremely Few two schedulers include different scheduling characteristics.

The monitor of virtual machine may also include table memorizer, the table memorizer be configured to store following items in extremely One item missing:Weight table, the weight table are configured to the priority weighting according to event type logger task;Timetable, the time Table is configured to the operation time limit of logger task;Scheduler list, the scheduler list are configured to record according to event type By selected scheduler.

In the monitor of virtual machine, controller is also configured to:The task of reception is inserted into into operation queue;Make The order of the priority of task is determined with the attribute and weight table of task.

In the monitor of virtual machine, the attribute of task is may include for triggering the event source of task.

Monitor of virtual machine in, priority weighting can change according to the type of scheduler.

In the monitor of virtual machine, controller is also configured to:The task of reception is inserted into into operation queue;Root Demand according to the emergent management of the task to receiving or the demand to the real-time processing of receiving for task determine receiving for task The order of priority.

In the monitor of virtual machine, controller is also configured to:Task is inserted into into operation queue;Produce or more New timetable.

In the monitor of virtual machine:Controller is also configured to the scheduler for calling selection, is inserted into operation team The task of row is scheduled according to the characteristic of the scheduler for calling.

In the monitor of virtual machine:Operation queue is provided in the form of the matrix with row and column;Controller may be used also It is configured to the row and column by the task is inserted is determined according to the attribute of receiving for task.

In the monitor of virtual machine:Scheduler may include time limit scheduler;Controller be also configured in response to Time interrupts as event type generation, calls time limit scheduler.

May also include in the monitor of virtual machine:Multiple operation queues, each operation queue include at least one task, Each operation queue is associated with a scheduler in the plurality of scheduler respectively.

Monitor of virtual machine in, when the scheduler of selection can be configured as reception event, the scheduling of the selection Device is interrupted by the interrupt schedule device in the plurality of scheduler.

In the monitor of virtual machine, when the task in the operation queue being associated with interrupt schedule device is completed, The monitor of virtual machine can be configured to the operation queue that scheduler is associated for processing with interrupting.

In the monitor of virtual machine, when the task in the operation queue being associated with interrupt schedule device is completed, institute State monitor of virtual machine to be configured to process what is be associated with the scheduler in addition to the scheduler and interrupt schedule device that select Operation queue.

In the monitor of virtual machine:Operation queue can be associated with the scheduler for selecting;The scheduler of selection can quilt The change in response to not having event to trigger scheduler is configured to, it is another in the scheduler handle of the selection and the plurality of scheduler The corresponding another operation queue of one scheduler.

In the monitor of virtual machine, the scheduler of selection is also configured to:Process related to the scheduler for selecting A part for the operation queue of connection;Then process another operation queue corresponding with another scheduler.

In the monitor of virtual machine, urgent task or event can change the excellent of the multiple tasks in operation queue First level order.

A kind of computer-readable information medium is may include for indicating that computer realizes the program of said method.

From described in detail below, accompanying drawing and claim, further feature and aspect can be clearly.

Description of the drawings

Fig. 1 illustrates the example of monitor of virtual machine.

Fig. 2 illustrates the example of scheduler list.

Fig. 3 illustrates the example of weight table.

Fig. 4 illustrates the example of timetable.

Fig. 5 A illustrate the example of the operation of monitor of virtual machine.

Fig. 5 B illustrate another example of the operation of monitor of virtual machine.

Fig. 6 A illustrate another example of monitor of virtual machine.

Fig. 6 B illustrate another example of monitor of virtual machine.

Fig. 7 illustrates the example of the dispatching method of monitor of virtual machine.

Fig. 8 illustrates the example of operation queue.

Fig. 9 illustrates another example of monitor of virtual machine.

Figure 10 illustrates the example of the method for the logic of control monitor of virtual machine.

Throughout the drawings and detailed description, unless otherwise stated, identical drawing reference numeral is interpreted as indicating similar elements, characteristic And structure.For clear, illustration and convenience, relative size and the description of these elements can be exaggerated.

Specific embodiment

The complete reason that the following detailed description obtains method described here, equipment and/or system to help reader is provided Solution.Therefore, will to be provided to this area general for the various changes of system described here, equipment and/or method, modification and equivalent Logical technical staff.Description continuous process step and/or operation be example, however, except must by particular order occur Outside step and/or operation, the order of step and/or operation is not limited to elaboration in this and can be with as known in the art Mode changes.Additionally, in order to more clear and simple and clear, the description of known function and structure can be omitted.

Fig. 1 illustrates the example of monitor of virtual machine (VMM).

As shown in figure 1, monitor of virtual machine 100 can be present between multiple domains 101 and 102 and hardware platform 103.Domain Each in 101 and 102 can be operating system or application program.Hardware platform 103 can be physical unit, for example, in Central Processing Unit (CPU), memorizer and input/output end port.

Monitor of virtual machine 100 can allow multiple domains 101 and 102 by virtualizing to hardware platform 103 while work. That is, single physical system resource is used by the virtualization that each Tong Guo the monitor of virtual machine 100 in domain 101 and 102 is carried out Make multiple virtualization system resources.

Domain 101 and 102 can be categorized as directly having access to main domain (host domain) 101 Hes of hardware platform 103 The guest domain (guest domain) 102 of hardware platform 103 can be used under the assistance in main domain 101.Each domain 101 and 102 can Include polytype task 104 and 105 respectively.

Monitor of virtual machine 100 may include at least one operation queue 110, multiple schedulers 121,122 and 123, control Device 130 and table memorizer 140.

Operation queue 110 can store from domain 101 and 102 task 104 and 105 for receiving, or with regard to task 104 and 105 Information.According to the example, task 104 and 105 can be stored in operation team in the form of scheduling entity (schedule entity) In row 110, wherein, the scheduling entity can be used for the unit dispatched.

Task T1, T2 and T3 being stored in operation queue 110 can be used as to be adjusted by scheduler 121,122 and 123 The object of degree.According to the example, monitor of virtual machine 100 may include single operation queue 110 or multiple operation queues 110. During monitor of virtual machine 100 includes the example of multiple operation queues 110 (see, e.g., Fig. 6 A and Fig. 6 B), operation queue 100 CPU core (for example, CPU#0, CPU#1, CPU#2 in Fig. 6 A and Fig. 6 B) can be bound to respectively, or can be bound to respectively Scheduler 121,122 and 123.Furthermore it is possible to each operation team of the format management of two-dimentional (2D) matrix (see, e.g., Fig. 8) Row 110.The order of task (for example, task T1, T2 and T3) is not limited to shown in accompanying drawing.

Fig. 8 illustrates the example of operation queue.

As shown in Figure 8, operation queue 800 can be provided in the form of two-dimensional matrix.There is two dimension in operation queue 800 In the example of matrix, the task with different attribute is storable between row or column.For example, task 1T1 with attribute A and appoint Business 2T2 is storable in first row 801, and task 3T3 with attribute B, task 4T4 and task 5T5 are storable in secondary series 802 In.

The attribute of task can be represented for triggering the demand of task.For example, task 1T1 and task 2T2 can be by making a reservation for The task of event triggering, task 3T3, task 4T4 and task 5T5 can be by the task of predetermined down trigger.Task these Attribute may include event, for example, resource, time limit (deadline) and/or interruption.These are the non-limiting examples of task.

Referring again to Fig. 1, scheduler 121,122 and 123 can determine that task T1, T2 and T3 for being present in operation queue 110 Execution sequence.Scheduler 121,122 and 123 can have different scheduling characteristics respectively.For example, the first scheduler 121 can be with It is time limit priority scheduling device, the second scheduler 122 can be circulation (round-robin) scheduler, the 3rd scheduler 123 can be with It is event priority scheduling device.However, the type not limited to this of scheduler, can provide the type of scheduler in a variety of manners.Extremely Few two schedulers can have different scheduling characteristics.

Be present in that task T1, T2 and T3 of operation queue 110 can be scheduled in device 121,122 and 123 one is (for example, First scheduler 121, wherein, the first scheduler 121 is most suitably adapted for obtaining real-time performance in the scheduled time) scheduling.

Controller 130 can receive task 104 and 105 respectively from domain 101 and 102, and the task 104 and 105 of reception is inserted Enter to operation queue 110.According to an example, task 104 and 105 can be inserted into operation queue 110 in the form of scheduling entity, Wherein, the scheduling entity can be used as the unit dispatched.

Task 104 and 105 can be inserted into operation queue 110 by controller 130, so as to task 104 and 105 can be based on attribute It is divided.For example, as shown in figure 8, can management operating queue 800 with a matrix type, task can be inserted into operation queue 800 so that the attribute of task can be different between row or column.The attribute of task can be represented for triggering the demand of the task, and Event source is may include, for example, call transmission/reception, time limit and/or interruption.By operation corresponding with domain 101 and 102 can be System (OS) collects the information of the attribute with regard to task.

In addition, in response to controller 130 insert task 104 and 105, controller 130 can task based access control priority it is suitable Sequence adjusts operation queue 110.If the attribute of task corresponds to event, the order of the priority of task can be based on weight table 141 determine.In addition, if the attribute of task corresponds to event, then weight table 141 can not be used to determine the suitable of the priority of task Sequence, but the demand of the demand according to the emergent management to task or the real-time processing to task is determining the priority of task Sequentially.The demand to emergent management or the demand to real-time processing can be determined in time limit of task based access control.

Used as an example, controller 130 can which task will be by which kind of thing based on the information learning provided by operating system Part type is triggered.Weight table 141 can store the excellent of the task for each scheduler 121,122 and 123 according to the type of event First level weight.For example, even if task 1T1 and task 2T2 are with attribute corresponding with event, if task 1T1 is by event type E1 is triggered and task 2T2 is triggered by event type E2, then controller 130 can refer to is needed with the triggering illustrated in weight table 141 Attribute A1, A2 and A3 of related task are asked, the priority orders of task 1T1 and task 2T2 are determined.

As another example, if task 1T1 and task 2T2 are with attribute corresponding with event and task 1T1 and appoint Business both 2T2 are triggered by event type E1, then controller 130 can be based on the demand of the emergent management to task or the reality to task When the demand that processes, determine the priority orders of task 1T1 and task 2T2.For example, if task 1T1 was with the time limit of five seconds And task 2T2 was with the time limit of ten seconds, then compared to task 2T2, it may be necessary to process task 1T1 of being more eager, so as to task 1T1 is with the priority higher than task 2T2.

In addition, task 104 and 105 can be inserted into operation queue 110 by controller 130, and can produce or renewal table is deposited The timetable 142 of reservoir 140.Timetable 142 can store the time correlation restriction for each task, for example, each task The operation time limit.For example, if controller 130 receives task 3T3 with the time limit as task attribute, controller 130 can Task 3T3 is inserted into into operation queue 110 and the operation time limit of task 3T3 be recorded into timetable 142.

In addition, controller 130 can be selected in multiple schedulers 121,122 and 123 based on the information of the event with regard to producing One be scheduled with task T1, T2 and T3 to being inserted in operation queue.Term " event " is represented can be according to being provided with The operation of the device of monitor of virtual machine and the related event of the various types of systems that occur or interruption.For example, based on void The data processing equipment for intending monitor unit 100 is installed in the example of mobile phone, and " event " or event type may include to beat electricity Words and answer the call, be turned on and off the moment that camera, the operation of the intervalometer being arranged in mobile phone and time is set. These are non-limiting examples.The tune selected according to event type can be selected based on the scheduler list 143 of table memorizer 140 Degree device.For example, perform to obtain the event of real-time characteristic within the default time limit in the event of needs, then controller 130 can adjusted Time limit priority scheduling device 121 is selected in degree device 121,122 and 123.

In addition, controller 130 can call the scheduler 121 of selection.The scheduler 121 for calling can be according to the scheduling of its own Scheme is scheduled to task T1, T2 of being present in operation queue 110 and T3.

As described above, monitor of virtual machine 100 can be by using being suitable for making a reservation in multiple schedulers 121,122 and 123 State or be suitable for each task attribute scheduler come allow operation queue 110 task T1, T2 and T3 be scheduled, its In, each in scheduler 121,122 and 123 has different scheduling characteristics.

Fig. 2 illustrates the example of scheduler list.

As depicted in figs. 1 and 2, scheduler list 143 may include event 201 and according to event 201 by the scheduler for calling 202.Controller 130 can allow the scheduler for being suitable for each event to be called by referring to scheduler list 143.For example, exist In the example that event E1 and event E3 occur, scheduler S1 can be called.In the example that event E3 occurs, scheduler S2 can quilt Call.Event 201 can represent various types of system events of the system based on monitor of virtual machine.In addition, scheduler S1 and Each in scheduler S2 can represent the scheduler with different qualities or different scheduling strategies.Can be by manufacturer's preset schedule Device list 143 and renewable scheduler list 143 later.

Fig. 3 illustrates the example of weight table.

As shown in figures 1 and 3, weight table 141 can have each task that depends on for each scheduler S1 and S2 to belong to The weight 302 of property 301.Task attribute 301 can be represented for triggering the demand of task, and may include event source, for example, calling Send/reception, time limit and/or interruption.Can be by controller 130 by collecting with regard to this with 101 and 102 corresponding operating system of domain The information of a little task attributes.

Operation queue 110, controller 130 are inserted in response to task T1, T2 with attribute corresponding with event and T3 Can refer to the order that weight table 141 determines the priority of task T1, T2 and T3 that are inserted into operation queue 110.For example, receiving In the example of triggering to being triggered by event E1 for task 1T1 and by event E2 for task 2T2, controller 130 can refer to weight The priority higher than task 2T2 is given task 1T1 by table 141.In one example, can be for each scheduler S1 and S2 differently Using weight.For example, if event E1 and event E2 indistinctively affect the scheduling characteristic of scheduler S2, scheduler S2 permit Perhaps task 1T1 and task 2T2 have equal weight.

Meanwhile, if task 1T1 and task 2T2 with attribute A1, A2 and A3 corresponding with event and task 1T1 and appoint Business both 2T2 are triggered by event type E1, then task 1T1 and task 2T2 can have equal priority based on weight table 141. In one example, controller 130 can be appointed based on the demand of the emergent management to task or to the demand determination of the real-time processing of task The order of the priority of business 1T1 and task 2T2.Weight Biao141Ke You manufacturer is pre- and can subsequently be updated.

Fig. 4 illustrates the example of timetable.

As shown in Figure 1 and Figure 4, timetable 142 can store the restriction of the time correlation for each task, for example, each The operation time limit of task.For example, task can be inserted into operation queue 110 and update timetable 142 periodically by controller 130.

Fig. 5 A and Fig. 5 B illustrate the example of the selectivity scheduling operation of monitor of virtual machine.

As shown in Fig. 1, Fig. 5 A and Fig. 5 B, it will be assumed that three tasks T1, T2 and T3 are received, and task T1, task T2 Triggered by event E1, E2 and E3 with task T3 respectively.In addition, for the example may be assumed that event E3 is to interrupt the time and dispatch Device S1 and scheduler S2 is present.

Controller 130, and can be by task it is contemplated that task attribute is determining the order of the priority of task T1, T2 and T3 T1, T2 and T3 are inserted into operation queue 130.Controller 130 can task based access control attribute (for example, " event ") come by using weight Table 141 adjusts the order of the priority of task T1, T2 and T3, and can change the arrangement of the task of being inserted into operation queue 130 Sequentially.

According to example, weight table 141 illustrates priority weighting, and the priority weighting can be different for each scheduler. Accordingly, in response to controller 130 determine task priority order, can according to using scheduler be inserted into operation to adjust The order of the priority of the task of queue 130.For example, the order of priority is determined if based on scheduler S1, then by event E1 Task T1 of triggering can have highest priority, and task T1, T2 and T3 can be with task 1T1, task 2T2 and tasks The order (see, e.g. Fig. 5 A) of 3T3 is inserted into operation queue 130.In addition, if determining priority based on scheduler S2 Sequentially, then being triggered by event E3 for task T3 can have highest priority, and task T1, T2 and T3 can with T3, T2 and The order (see, e.g. Fig. 5 B) of T1 is inserted into operation queue 130.

When there is scheduled event after operation queue 110 is inserted in task T1, T2 and T3, controller 130 can be from tune Degree device S1 and S2 select the scheduler of the type for being suitable for the scheduled event.

For example, as shown in Fig. 2 and Fig. 5 A, if event E1 occurs, controller 130 can refer to scheduler list 143 and adjust Use scheduler S1.In addition, if event E3 occurs, then controller 130 can refer to scheduler list 143 and call scheduler S2.

In event E3 is time interruption and scheduler S2 is the example of time limit scheduler, controller 130 will can have There is the task that time correlation is limited timetable 142 to be updated while being inserted into operation queue 130, and can interrupt in time of origin While activate time limit scheduler, so as to limiting with time correlation for task preferentially can be dispatched, for example, with time phase Close limiting for task and there is highest weighting and/or priority.In addition, interrupting not duration of existence in the time, controller 130 can be activated Another suitable scheduler, so as to task can be scheduled according to the predefined procedure of the priority determined by the scheduler for activating.

Fig. 6 A illustrate another example of monitor of virtual machine.

As shown in Figure 6A, monitor of virtual machine 100 may include each CPU core (CPU#0, the CPU# for hardware platform 103 1 and CPU#2) multiple operation queue 110-1,110-2 and 110-3.In fig. 6, three operation queues 110-1,110-2 and 110-3 can be respectively mapped to three CPU cores (CPU#0, CPU#1 and CPU#2) of hardware platform 103.In response to 104 He of task 105 are received, and controller 130 can determine 104 He of task for receiving insertion using the task attribute received from operating system 105 suitable operation queue.

Fig. 6 B illustrate another example of monitor of virtual machine.

As shown in Figure 6B, monitor of virtual machine 100 may include multiple operation queue 110-1 for different task attribute, 110-2 and 110-3.In fig. 6b, operation queue 110-1,110-2 and 110-3 can be best suited for each task attribute, and can It is respectively mapped to scheduler 121,122 and 123.Received in response to task 104 and 105, controller 130 can be used from operation System receive task attribute come determine by insertion receive task 104 and 105 suitable operation queue.

Fig. 7 illustrates the example of the dispatching method of monitor of virtual machine.The example of dispatching method is illustrated in being applied to Fig. 1 System.

As shown in Figure 1 and Figure 7, in operation 701, monitor of virtual machine 100 can be by appointing for receiving from each domain 101 and 102 Business is inserted at least one operation queue 110.As an example, the task of reception can according to the order of the priority of task quilt Operation queue 110 is inserted into, wherein, the order of the priority of the task can be based on weight table 141 or the urgent place to task The demand of reason is determining.In addition, when task is inserted into operation queue 110, when can produce or update the operation of logger task The timetable 142 of limit.

In addition, in operation 702, monitor of virtual machine 100 may be selected scheduler and be inserted into appointing for operation queue 110 to dispatch Business T1, T2 and T3.That is, monitor of virtual machine 100 can select to adjust from multiple schedulers 121,122 and 123 according to event type Spend device to determine the execution sequence of the task in hardware platform.For example, controller 130 can refer to and be stored in table memorizer 140 Scheduler list 143 select for the optimal scheduler of the attribute of current state or task.

In operation 703, monitor of virtual machine 100 can call the scheduler of selection.For example, controller 130 can call selection Scheduler and the scheduler for calling can be allowed according to the scheduling characteristic or scheduling strategy of the scheduler for calling to dispatch presence Task T1, T2 and T3 in operation queue 110.

In response to there are multiple operation queues 110, monitor of virtual machine 100 can use the task category from operating system transmission Property is selecting to be suitable for the operation queue of task attribute, and task is inserted into the operation queue of selection.

As described above, monitor of virtual machine 100 operable (as an example) is respectively provided with multiple scheduling of different scheduling characteristics Device 121,122 and 123, and scheduler task can be carried out using the scheduler for being suitable for state-event or task attribute.By this side Formula, can suitably dispatch the sensitive preplanned mission of the demand to user, for example, real-time task.

Fig. 9 illustrates another example of monitor of virtual machine (VMM).

The example of Fig. 9 includes the element similar to the element of Fig. 1, but is illustrated in more detail.May be provided in real time Task in domain (RT-DOMAIN) establishment (for example, call access control (admission control), according to the characteristic of task Relation between packet and scheduler), so as to when multiple real-time domains are run on VMM, for the task in each real-time domain With the task in multiple real-time domains, real-time characteristic is ensured that.

Embodiment includes that task provides real-time when multiple virtual machine (virtual Domains) is run in monitor of virtual machine (VMM) Characteristic.For example, embodiment in real-time domain with the unit management real-time task of the scheduling of VMM, in multiple real-time domain management roles Priority orders, packet scheduling entity and scheduling.

When the task of RT-DOMAIN is created, the task can be by the Scheduling Framework (schedule of VMM Framework)/admission control cell is tied to the scheduling entity of VMM and is inserted into operation queue (for example, the operation team of Fig. 1 The multistage operation queue of row 110 or Fig. 9).When a task is created, real time operating system (RTOS, the Real Time in real-time domain Operating System) information (for example, time limit, cycle, event source etc.) can be sent to by receiving by the interface of VMM offers Control unit.The real-time task similar to the task 104 of Fig. 1 can be tied to by the admission control cell of VMM based on described information The scheduling entity of VMM, and the scheduling entity can be inserted into operation queue.

Consider the characteristic of scheduling entity, admission control cell can maintain multiple operation queues and when scheduling entity is inserted into When can determine that object run queue.Operation queue may include the fortune for focusing on the time limit of task (that is, with highest priority) The operation queue of the interactivity of row queue and emphasis task.

Operation queue is inserted in response to scheduling entity, admission control cell can be based on the category of transmitting from RTOS for task Property adjustment scheduling entity priority orders.For example, for being triggered by event source for task, can be according to for event weights table (for example, the adjusted value of the weight table of Fig. 1 priority orders 141) is adjusting the priority of scheduling entity.As another example, For the task with the restriction with regard to the time, chart (time chart) of can holding time in call access control, so as to can be The task with the restriction with regard to the time is reruned in time limit.

Event weights table can be the table with the priority weighting for distributing to each physical event source or logic event source, Wherein, the physical event source or logic event source are provided from system.Event weights can be statically provided when system is designed Table or when event weights table is dynamically updated during runtime.Time chart (for example, 142) may be used by the time chart of Fig. 1 It is provided to the time slot of the scheduling entity that maintenance is created.

Can be by (for example, the scheduler 121,122 of Fig. 1 and 123) dispatching for the scheduled time optimal scheduler It is inserted into the scheduling entity of operation queue.For example, whenever timer interruption occurring or needs to arrange intervalometer, VMM is renewable Time chart and can running life scheduler dispatching the real-time task with time restriction.In addition, if occurring except timing Device interrupt outside another type of event, then VMM scheduling entity can be adjusted using the scheduler of the event is suitable for Degree.Generic domain (GP-DOMAIN) task can with the priority lower than real-time task (for example, RT-DOMAIN tasks), wherein, The generic domain task may not be real-time task.

Figure 10 illustrates control for the example of the method for the logic of monitor of virtual machine.

In method 1000, in operation 1010, the request for process task can be received.In operation 1020, can be closed In the decision for having been received by which type of task.(for example, can be when any applicable if the task is periodic task Between perform the task), then 1030 can be made regarding whether there is available empty slot (empty time slot) really in operation It is fixed.If finding empty slot, in operation 1050, empty slot is obtained.In operation 1055, cycle timer can be set.In operation In 1060, task can be ratified to be processed.If not finding empty slot in operation 1030, in operation 1070, it is rejected by Task.

If receiving in 1020 determination of operation for task is time limit task (that is, with the stipulated time or phase for completing The task of limit), then in operation 1040, can be made regarding whether there is the confirmation of available empty slot.If finding empty slot, In operation 1090, empty slot can be obtained.In operation 1095, snapshot intervalometer (snapshot timer) can be set.If in behaviour Make 1040 and do not find empty slot, then in operation 1080, whether can carry out with regard to receiving for task with than being present in time slot In the high priority of task confirmation, wherein, the time slot is corresponding to the time limit being associated with task.("No" is divided if not ), then in operation 1070, task can be rejected.If receiving for task has higher priority ("Yes" branch), in behaviour Make 1085, desired time slot can be divided, and in operation 1095, snapshot intervalometer can be set.In operation 1060, can ratify Task is being processed.

Embodiment may include can to provide in virtual environment real-time characteristic and can allow for more effectively run it is various The method and system of the real time operating system and real-time application external member of type.Embodiment can be provided and can use same hardware (for example, Processor or CPU) processing the Intel Virtualization Technology of multiple domains (for example, real-time partial and common segment).Embodiment can provide this Plant Intel Virtualization Technology, i.e. the Intel Virtualization Technology in the environment for expecting multiple real-time VM operations provides real-time task and processes.

The type and quantity of scheduler can be pre-seted by manufacturer or renewable and supplementary.VMM 100 can be logic Structure.For example, when the event of reception or interruption, any scheduler can be by another scheduler interrupts.When complete with interrupt schedule Device association particular queue in task when, VMM 100 can based on to interrupt scheduler setting, can return to for quilt originally The queue of the scheduler (for example, the scheduler of interruption) of interruption, or different dispatcher queues can be proceeded to.There may be one Or multiple run time queues.Urgent task or event can change the order of the task in queue.

If no event triggering changes in the scheduler, particular scheduler can process the run time of another scheduler Queue.For example, if not triggering the particular event of another scheduler, particular scheduler can process its part own queue, Then the queue of another scheduler can be jumped to.For example, if there is no the task with the time limit on the horizon, then the time limit is excellent (for example, 121) scheduler can process the queue for other schedulers to first scheduler.Certainly, these are non-limiting examples.

Above-mentioned process, function, method and/or software can be recorded, store or be fixed to including one of programmed instruction or In multiple computer-readable recording mediums, described program instruction will be performed by computer so that process run or configuration processor refer to Order.The medium can also individually include programmed instruction, data file, data structure etc. or programmed instruction, data file, number According to the combination of structure etc..Medium and programmed instruction can be specifically designed or construct, or medium and programmed instruction can be right The technical staff of computer software fields is known and can answer.(for example, firmly the example of computer-readable medium includes magnetizing mediums Disk, floppy disk and tape), optical medium (for example, CD-ROM disk and DVD), magnet-optical medium (for example, CD) and be particularly configured to deposit Hardware unit (for example, read only memory (ROM), random access memory (RAM), the flash storage of storage and execute program instructions Device etc.).The example of programmed instruction includes (for example, produced by compiler) machine code and the file comprising higher level code, Wherein, the higher level code can be performed using interpreter by computer.In order to perform above-mentioned operation and method, description Hardware unit can be configured for use as one or more software modules, and vice versa.In addition, computer-readable recording medium can divide Cloth is to by the computer system of network connection, and can store in a distributed way and computer readable code executed or journey Sequence is instructed.

Only as non-exhaustive example, device described here can be incorporated into the movement consistent with content disclosed herein Device and device or mobile device and device are used together, wherein, the example of the mobile device includes cell phone, individual number Word assistant (PDA), digital camera, portable game machine and MP3 player, portable/personal multimedia player (PMP), handss Hold formula e-book, portable tablet PC and/or PC on knee, global positioning system (GPS) navigator, the example bag of described device Include Desktop PC, high-definition television (HDTV), Disc player, setting and/or Set Top Box etc..

Computing system or computer may include the microprocessor for being electrically connected to bus, user interface and Memory Controller Device.Computing system or computer may also include flash memory device.Flash memory device can be deposited by Memory Controller Storage N-bit data.By microprocessor processes or will be by microprocessor processes, N can be 1 or whole more than 1 to the N-bit data Number.When computing system or computer are mobile device, can additionally provide battery to provide the behaviour of computing system or computer Make voltage.

Those skilled in the art will appreciate that, computing system or computer may also include application chip group, camera Image processor (CIS), movement dynamically random access storage device (DRAM) etc..Memory Controller and flash memory device can Composition carrys out the solid-state driving/disk (SSD) of data storage using nonvolatile memory.

Have been described for some examples.It is to be understood, however, that various modifications can be carried out.For example, if the technology of description is not with With it is sequentially executed and/or if the part in system, architecture in description, device or circuit with difference where formula Combine and/or replaced or supplemented by other parts or its equivalent, then can obtain suitable result.Therefore, other embodiment Within the scope of the claims.

Claims (36)

1. a kind of monitor of virtual machine for operating at least two domains, the monitor of virtual machine includes:
Operation queue;
Multiple schedulers, at least two schedulers in the plurality of scheduler include different scheduling characteristics;
Table memorizer, is configured to store at least one in following items:
Weight table, the weight table are configured to record in each task and affiliated multiple schedulers distributed in multiple tasks Each scheduler priority weighting, wherein, for each scheduler priority weighting independently of the excellent of other schedulers First level weight, at least two schedulers in the plurality of scheduler are mutually different in terms of priority weighting;
Timetable, the timetable are configured to the operation time limit for recording each task with the operation time limit;
Scheduler list, the scheduler list are configured to record according to event type by selected scheduler;
Controller, the controller are configured to:
The operation queue that task is inserted into the monitor of virtual machine in the plurality of task that will be received from real-time domain is simultaneously Update timetable;
Select to use from the plurality of scheduler with reference to the scheduler list being stored in table memorizer according to the attribute of event type The scheduler of the task of operation queue is inserted in scheduling;
The order of the priority of task in operation queue is adjusted according to the attribute of task and weight table, wherein, the category of task Property is represented for triggering the demand of task;
The order of the priority of task is determined using the attribute and weight table of task,
Wherein, based on a determination that order dispatching the execution of the plurality of task.
2. monitor of virtual machine as claimed in claim 1, wherein, the attribute of task is included for triggering the event source of task.
3. monitor of virtual machine as claimed in claim 1, wherein, priority weighting changes according to the type of scheduler.
4. monitor of virtual machine as claimed in claim 1, wherein, controller is additionally configured to:
It is whether the task of needing real-time processing according to whether task needs emergent management or task, determines the priority of task Sequentially.
5. monitor of virtual machine as claimed in claim 1, wherein, controller is additionally configured to:
Generation time table.
6. monitor of virtual machine as claimed in claim 1, wherein,
Controller is additionally configured to the scheduler for calling selection;
The task of being inserted into operation queue is scheduled according to the characteristic of the scheduler for calling.
7. monitor of virtual machine as claimed in claim 1, wherein, multiple operation queues are provided.
8. monitor of virtual machine as claimed in claim 7, wherein, the plurality of operation queue is respectively mapped to by described virtual Multiple physical resources of monitor unit management.
9. monitor of virtual machine as claimed in claim 7, wherein, the plurality of operation queue is respectively mapped to the plurality of tune Degree device.
10. monitor of virtual machine as claimed in claim 7, wherein, controller is additionally configured to the category according to receiving for task Property determine will insert the task operation queue.
11. monitor of virtual machine as claimed in claim 1, wherein:
Operation queue is provided in the form of the matrix with row and column;
Controller is additionally configured to determine the task by the row and column being inserted into according to the attribute of receiving for task.
12. monitor of virtual machine as claimed in claim 1, wherein:
Scheduler includes time limit scheduler;And
Controller is additionally configured to interrupt in response to the time to be occurred as event type, calls time limit scheduler.
A kind of 13. dispatching methods for operating the monitor of virtual machine at least two domains, the dispatching method include following step Suddenly:
Task in the multiple tasks that will be received from real-time domain is inserted into operation queue, comes true using the attribute and weight table of task Determine the order of the priority of task and update timetable, wherein, weight table record has appoints for each in the plurality of task Business and multiple schedulers in each scheduler priority weighting, for each scheduler priority weighting independently of other The priority weighting of scheduler, at least two schedulers in the plurality of scheduler are mutually different in terms of priority weighting, The operation time limit of timetable logger task;And
According to the attribute of event type with reference to the scheduler list being stored in table memorizer from being included in the virtual machine monitoring Select in the plurality of scheduler in device for scheduling be inserted into operation queue task scheduler;
According to the attribute and weight table of task, the order of the priority of task in operation queue is adjusted, wherein, the category of task Property represented for triggering the demand of task,
Wherein, based on a determination that order dispatching the execution of the plurality of task.
14. dispatching methods as claimed in claim 13, wherein, include the step of the insertion task:Produce logger task The timetable in operation time limit.
15. dispatching methods as claimed in claim 13, wherein, include the step of the insertion task:According to receiving for task Attribute determine will insert the task operation queue.
16. dispatching methods as claimed in claim 13, also including step:
The scheduler of selection is called,
Wherein, the task of being inserted into operation queue is scheduled according to the characteristic of the scheduler for calling.
A kind of 17. methods for providing the real-time characteristic of the real-time task performed in multiple virtual machines, methods described include Following steps:
Real-time task is included in target to be scheduled on monitor of virtual machine VMM;
The order of the priority of task is determined using the attribute and weight table of task and timetable is updated, wherein, weight token Record has the priority weighting for each scheduler in each task and multiple schedulers in task, for each scheduler Priority weighting independently of other schedulers priority weighting, at least two schedulers in the plurality of scheduler are excellent It is mutually different in terms of first level weight, the operation time limit of timetable logger task;
The timetable in the operation time limit of more new record real-time task;
Multiple operation queues are maintained, each operation queue includes the different qualities with regard to VMM;
Scheduler is called with reference to the scheduler list being stored in table memorizer by the instruction of the state of multiple virtual machines;
According to the attribute and weight table of task, the order of the priority of task in operation queue is adjusted, wherein, the category of task Property is represented for triggering the demand of task.
18. methods as claimed in claim 17, also including step:By scheduling entity, the plurality of operation queue and central authorities Processing unit CPU carries out correspondence to be scheduled real-time task.
19. methods as claimed in claim 17, also including step:By the call access control of VMM come test dispatching real-time task Probability.
20. methods as claimed in claim 17, also including step:Based at least one of event weights table and time chart The priority orders of adjustment real-time task.
21. methods as claimed in claim 17, also including step:By the targeted packets to being scheduled come with mode of priority Call and traffic control device.
A kind of 22. monitor of virtual machine for operating at least two domains, the monitor of virtual machine include:Table memorizer, quilt It is configured to store at least one in following items:
Weight table, the weight table are configured to recording needle to each scheduler in each task and multiple schedulers in task Priority weighting, for each scheduler priority weighting independently of other schedulers priority weighting, it is the plurality of At least two schedulers in scheduler are mutually different in terms of priority weighting;
Timetable, the timetable are configured to the operation time limit for recording each task with the operation time limit;
Scheduler list, the scheduler list are configured to record according to event type by selected scheduler;
Controller, the controller are configured to:
Job in the multiple tasks that will be received from real-time domain is inserted into the operation queue of the monitor of virtual machine more New timetable;
Selected for described from multiple schedulers with reference to the scheduler list being stored in table memorizer according to event type The scheduler that task is scheduled, and the attribute according to task and weight table, adjust the priority of the task in operation queue Order, wherein, the attribute of task is represented for triggering the demand of task, wherein, at least two in the plurality of scheduler Scheduler includes different scheduling characteristics;
The order of the priority of task is determined using the attribute and weight table of task.
23. monitor of virtual machine as claimed in claim 22, wherein, the attribute of task is included for triggering the event of task Source.
24. monitor of virtual machine as claimed in claim 22, wherein, priority weighting changes according to the type of scheduler.
25. monitor of virtual machine as claimed in claim 22, wherein, controller is additionally configured to:
The task of reception is inserted into into operation queue;
Demand according to the emergent management of the task to receiving or the demand to the real-time processing of receiving for task determine what is received The order of the priority of task.
26. monitor of virtual machine as claimed in claim 22, wherein, controller is additionally configured to:
The task of reception is inserted into into operation queue;And
Generation time table.
27. monitor of virtual machine as claimed in claim 22, wherein:
Controller is additionally configured to the scheduler for calling selection;
The task of operation queue is inserted into according to the scheduling of the characteristic of the scheduler for calling.
28. monitor of virtual machine as claimed in claim 22, wherein:
Operation queue is provided in the form of the matrix with row and column;
Controller is additionally configured to the row and column by the task is inserted is determined according to the attribute of receiving for task.
29. monitor of virtual machine as claimed in claim 22, wherein,
Scheduler includes time limit scheduler;And
Controller is additionally configured to interrupt in response to the time to be occurred as event type, calls time limit scheduler.
30. monitor of virtual machine as claimed in claim 22, also include:Multiple operation queues, each operation queue include to A few task, each operation queue are associated with a scheduler in the plurality of scheduler respectively.
31. monitor of virtual machine as claimed in claim 30, wherein, the scheduler of selection is configured to:When the event of reception The scheduler of the selection is interrupted by the interrupt schedule device in the plurality of scheduler.
32. monitor of virtual machine as claimed in claim 31, wherein, when completing in the operation team being associated with interrupt schedule device During task in row, the monitor of virtual machine is configured to process the operation queue being associated with the scheduler of interruption.
33. monitor of virtual machine as claimed in claim 31, wherein, when completing in the operation team being associated with interrupt schedule device During task in row, the monitor of virtual machine is configured to process and the tune in addition to the scheduler and interrupt schedule device that select The associated operation queue of degree device.
34. monitor of virtual machine as claimed in claim 22, wherein:
Operation queue is associated with the scheduler for selecting;
The scheduler of selection is configured to respond to not have event to trigger the change of scheduler, process with the plurality of scheduler The corresponding another operation queue of another scheduler.
35. monitor of virtual machine as claimed in claim 33, wherein, the scheduler of selection is additionally configured to:
Process a part for the operation queue being associated with the scheduler for selecting;And
Then process another operation queue corresponding with another scheduler.
36. monitor of virtual machine as claimed in claim 22, wherein, urgent task or event change in operation queue The priority orders of multiple tasks.
CN201110058516.8A 2010-03-12 2011-03-11 Monitor of virtual machine and its dispatching method CN102193853B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020100022495A KR101658035B1 (en) 2010-03-12 2010-03-12 Virtual machine monitor and scheduling method of virtual machine monitor
KR10-2010-0022495 2010-03-12

Publications (2)

Publication Number Publication Date
CN102193853A CN102193853A (en) 2011-09-21
CN102193853B true CN102193853B (en) 2017-04-05

Family

ID=44343244

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110058516.8A CN102193853B (en) 2010-03-12 2011-03-11 Monitor of virtual machine and its dispatching method

Country Status (5)

Country Link
US (1) US9417912B2 (en)
EP (1) EP2372548A1 (en)
JP (1) JP6383518B2 (en)
KR (1) KR101658035B1 (en)
CN (1) CN102193853B (en)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8826271B2 (en) 2010-04-28 2014-09-02 Cavium, Inc. Method and apparatus for a virtual system on chip
JP5987315B2 (en) * 2011-03-18 2016-09-07 株式会社リコー Display control apparatus and program
TWM432075U (en) * 2011-10-25 2012-06-21 Chunghwa Telecom Co Ltd Monitoring device and monitoring system applicable to cloud algorithm
CN103136045A (en) * 2011-11-24 2013-06-05 中兴通讯股份有限公司 Dispatching method and device of virtualization operating system
CN102541651B (en) * 2011-12-12 2013-07-31 华中科技大学 Real-time scheduling system of embedded virtual machine (VM)
CN103186450A (en) * 2011-12-28 2013-07-03 英业达集团(天津)电子技术有限公司 Method and system for monitoring virtual resource consumption
US9298504B1 (en) * 2012-06-11 2016-03-29 Amazon Technologies, Inc. Systems, devices, and techniques for preempting and reassigning tasks within a multiprocessor system
CN103577265A (en) * 2012-07-25 2014-02-12 田文洪 Method and device of offline energy-saving dispatching in cloud computing data center
US9110695B1 (en) * 2012-12-28 2015-08-18 Emc Corporation Request queues for interactive clients in a shared file system of a parallel computing system
CN104035818A (en) * 2013-03-04 2014-09-10 腾讯科技(深圳)有限公司 Multiple-task scheduling method and device
KR102052964B1 (en) * 2013-03-12 2019-12-06 삼성전자 주식회사 Method and system for scheduling computing
US9268495B2 (en) * 2013-03-15 2016-02-23 Apple Inc. Managing I/O priorities
CN103677990B (en) * 2013-12-13 2018-01-16 清华大学 Dispatching method, device and the virtual machine of virtual machine real-time task
CN104010028B (en) * 2014-05-04 2017-11-07 华南理工大学 A kind of dynamic management strategy method of virtual resource that performance is weighted under cloud platform
US9563366B2 (en) 2014-05-13 2017-02-07 International Business Machines Corporation Using queues corresponding to attribute values associated with units of work and sub-units of the unit of work to select the units of work and their sub-units to process
US9575800B2 (en) * 2014-05-13 2017-02-21 International Business Machines Corporation Using queues corresponding to attribute values and priorities associated with units of work and sub-units of the unit of work to select the units of work and their sub-units to process
US9921879B2 (en) * 2014-05-13 2018-03-20 International Business Machines Corporation Using queues corresponding to attribute values associated with units of work to select the units of work to process
US9772959B2 (en) 2014-05-30 2017-09-26 Apple Inc. I/O scheduling
US9092376B1 (en) 2014-08-29 2015-07-28 Nimble Storage, Inc. Methods and systems for ordering virtual machine snapshots
CN104252401B (en) * 2014-08-29 2017-02-15 北京阅联信息技术有限公司 Weight based device status judgment method and system thereof
US10268958B1 (en) * 2014-09-10 2019-04-23 Amazon Technologies, Inc. Recommended launch configuration
US9778990B2 (en) * 2014-10-08 2017-10-03 Hewlett Packard Enterprise Development Lp Methods and systems for concurrently taking snapshots of a plurality of virtual machines
US9727252B2 (en) 2014-11-13 2017-08-08 Hewlett Packard Enterprise Development Lp Methods and systems for optimal snapshot distribution within a protection schedule
CN104915256B (en) * 2015-06-05 2019-03-26 惠州Tcl移动通信有限公司 A kind of the Real-Time Scheduling implementation method and its system of task
JP6501632B2 (en) * 2015-06-05 2019-04-17 キヤノン株式会社 Information processing system and control method thereof
KR20170011350A (en) 2015-07-22 2017-02-02 삼성전자주식회사 Storage device for supporting virtual machines, storage system including the storage device, and method of the same
US9870266B2 (en) * 2015-07-30 2018-01-16 Nasdaq, Inc. Background job processing framework
CN105467873B (en) * 2015-11-27 2018-04-17 北京友信宏科电子科技有限公司 A kind of method for scheduling task and device of vehicle AC motor control
US20170177395A1 (en) * 2015-12-21 2017-06-22 Mingqiu Sun Embedded architecture based on process virtual machine
KR101707601B1 (en) 2015-12-31 2017-02-16 숭실대학교산학협력단 Virtual machine monitor and schduling method of virtual machine monitor
US10235211B2 (en) * 2016-04-22 2019-03-19 Cavium, Llc Method and apparatus for dynamic virtual system on chip
US10353590B2 (en) 2016-05-19 2019-07-16 Hewlett Packard Enterprise Development Lp Methods and systems for pre-processing sensor measurements
CN106095545B (en) * 2016-06-01 2019-06-25 东软集团股份有限公司 Method for scheduling task and device
CN107526529A (en) * 2016-06-21 2017-12-29 伊姆西公司 Method and apparatus for virtual machine
KR101872621B1 (en) * 2016-12-16 2018-06-28 주식회사 한화 Apparatus and method for managing available resource of air vehicle equipped with mfr
KR101852608B1 (en) 2017-02-10 2018-06-07 숭실대학교산학협력단 Virtual machine monitor, schduling method of virtual machine monitor and computer readable medium of thereof
WO2019202365A1 (en) * 2018-04-18 2019-10-24 Pratik Sharma Event based task scheduler for cloud

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2636722B2 (en) * 1993-12-25 1997-07-30 日本電気株式会社 Multi-task execution management system
US5826081A (en) * 1996-05-06 1998-10-20 Sun Microsystems, Inc. Real time thread dispatcher for multiprocessor applications
DE69724736D1 (en) 1996-10-25 2003-10-16 Fujitsu Serv Ltd Process sequencing
JP2000137621A (en) 1998-10-30 2000-05-16 Toshiba Corp Device for managing event and computer readable recording medium recording program
JP2000347883A (en) * 1999-06-03 2000-12-15 Matsushita Electric Ind Co Ltd Virtual computer device
JP2001117786A (en) * 1999-10-19 2001-04-27 Nec Corp Process scheduling device and process scheduling method
US7356817B1 (en) 2000-03-31 2008-04-08 Intel Corporation Real-time scheduling of virtual machines
US7296271B1 (en) 2000-06-28 2007-11-13 Emc Corporation Replaceable scheduling algorithm in multitasking kernel
US7191440B2 (en) 2001-08-15 2007-03-13 Intel Corporation Tracking operating system process and thread execution and virtual machine execution in hardware or in a virtual machine monitor
US7093250B1 (en) * 2001-10-11 2006-08-15 Ncr Corporation Priority scheduler for database access
JP4028444B2 (en) 2003-06-27 2007-12-26 株式会社東芝 Scheduling method and real-time processing system
US7424709B2 (en) 2003-09-15 2008-09-09 Intel Corporation Use of multiple virtual machine monitors to handle privileged events
WO2005064463A1 (en) * 2003-12-26 2005-07-14 Matsushita Electric Industrial Co., Ltd. Task scheduling apparatus, method, program, storage medium and transmission medium for prioritized signal handler scheduling
CA2559603A1 (en) * 2004-03-13 2005-09-29 Cluster Resources, Inc. System and method for providing advanced reservations in a compute environment
GB0519981D0 (en) * 2005-09-30 2005-11-09 Ignios Ltd Scheduling in a multicore architecture
KR100809294B1 (en) 2006-03-10 2008-03-07 삼성전자주식회사 Apparatus and method for executing thread scheduling in virtual machine
AT468556T (en) 2006-04-13 2010-06-15 Microsoft Corp Virtual execution system for resource restricted equipment
AU2008213820B2 (en) * 2007-02-06 2013-09-05 Reneo, Inc. A resource tracking method and apparatus
US8893130B2 (en) * 2007-03-26 2014-11-18 Raytheon Company Task scheduling method and system
US20080320274A1 (en) * 2007-06-19 2008-12-25 Raza Microelectronics, Inc. Age matrix for queue dispatch order
US20090037926A1 (en) * 2007-08-01 2009-02-05 Peter Dinda Methods and systems for time-sharing parallel applications with performance isolation and control through performance-targeted feedback-controlled real-time scheduling
JP2009223842A (en) * 2008-03-19 2009-10-01 Fujitsu Ltd Virtual machine control program and virtual machine system
US8650570B2 (en) 2008-06-02 2014-02-11 Microsoft Corporation Method of assigning instructions in a process to a plurality of scheduler instances based on the instruction, in which each scheduler instance is allocated a set of negoitaited processor resources
US9367350B2 (en) * 2008-10-03 2016-06-14 Microsoft Technology Licensing, Llc Meta-scheduler with meta-contexts

Also Published As

Publication number Publication date
KR101658035B1 (en) 2016-10-04
KR20110103257A (en) 2011-09-20
JP2011192281A (en) 2011-09-29
CN102193853A (en) 2011-09-21
US9417912B2 (en) 2016-08-16
JP6383518B2 (en) 2018-08-29
EP2372548A1 (en) 2011-10-05
US20110225583A1 (en) 2011-09-15

Similar Documents

Publication Publication Date Title
Brandenburg Scheduling and locking in multiprocessor real-time operating systems
Yu et al. A taxonomy of scientific workflow systems for grid computing
Athas et al. Multicomputers: Message-passing concurrent computers
US8972983B2 (en) Efficient execution of jobs in a shared pool of resources
CN101069161B (en) Scheduling method, scheduling device, and multiprocessor system
Barker et al. A load balancing framework for adaptive and asynchronous applications
US9542223B2 (en) Scheduling jobs in a cluster by constructing multiple subclusters based on entry and exit rules
Warneke et al. Nephele: efficient parallel data processing in the cloud
Palanisamy et al. Purlieus: locality-aware resource allocation for MapReduce in a cloud
RU2481618C2 (en) Hierarchical infrastructure of resources backup planning
US8572622B2 (en) Reducing queue synchronization of multiple work items in a system with high memory latency between processing nodes
He et al. Matchmaking: A new mapreduce scheduling technique
Checconi et al. Hierarchical multiprocessor CPU reservations for the linux kernel
TWI261784B (en) Methods and apparatus to dispatch interrupts in multiprocessor systems
US20110161943A1 (en) Method to dynamically distribute a multi-dimensional work set across a multi-core system
Lin et al. Scheduling scientific workflows elastically for cloud computing
Rao et al. Survey on improved scheduling in Hadoop MapReduce in cloud environments
CN101702134B (en) Mechanism to schedule threads on os-sequestered without operating system intervention
Mao et al. Scaling and scheduling to maximize application performance within budget constraints in cloud workflows
Tsai et al. A hyper-heuristic scheduling algorithm for cloud
US8539498B2 (en) Interprocess resource-based dynamic scheduling system and method
TW201337769A (en) Resource management in a multicore architecture
WO2007078673A1 (en) Dynamically repositioning workflow by end users
CN104040486A (en) Decoupling PAAS resources, jobs, and scheduling
US8839260B2 (en) Automated cloud workload management in a map-reduce environment

Legal Events

Date Code Title Description
PB01 Publication
C06 Publication
SE01 Entry into force of request for substantive examination
C10 Entry into substantive examination
GR01 Patent grant
GR01 Patent grant