EP1059582A2 - Système à machine virtuelle - Google Patents
Système à machine virtuelle Download PDFInfo
- Publication number
- EP1059582A2 EP1059582A2 EP00112037A EP00112037A EP1059582A2 EP 1059582 A2 EP1059582 A2 EP 1059582A2 EP 00112037 A EP00112037 A EP 00112037A EP 00112037 A EP00112037 A EP 00112037A EP 1059582 A2 EP1059582 A2 EP 1059582A2
- Authority
- EP
- European Patent Office
- Prior art keywords
- priority
- operating system
- execution
- executed
- time
- 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.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
Definitions
- This invention relates to a virtual machine system capable of executing multiple operating systems in a computer system.
- FIG. 33 shows an example of the system configuration of a virtual machine system.
- Multiple operating systems A 101, B 102, and C 103 different in properties such as real-time property and magnitude of load are executed under a virtual machine (VM) 100 in one or more CPUs (central processing units), and applications 104, 105, and 106 are executed on their respective operating systems.
- VM virtual machine
- the operation is executed in a time-sharing manner while the operating systems are changed in sequence; the real-time property and responsivity of OS execution control are important factors.
- execution determination means 111 have performed OS execution control so as to change the operating systems equitably at given time intervals based on time slices, as described in 'OS Series Vol. 11 VM" (written by OKAZAKI Tokio and MATSUSAKI Minoru, Kyoritsu Shuppan, 1989) .
- the operating systems are changed based on equal execution allocation and execution time with time slices ignoring the real-time properties of the operating systems, thus the responsivity of the operating system assigned a high real-time property to processing involving a real-time property is degraded remarkably and the response performance and processing efficiency of the whole computer system are lowered remarkably.
- FIG. 35 is a state transition diagram of operating systems before and after clock interrupt service.
- the clock interrupt service of each operating system is executed simply in the fixedly determined order in the computer system, for example, in the order of operating systems A, B, and C. If the heights of the real-time properties of the operating systems are A ⁇ B ⁇ C represented by inequality signs, the response performance of the operating system C requiring a high real-time property to the clock interrupt service is degraded remarkably and the response performance and processing efficiency of the whole computer system are also degraded remarkably.
- FIG. 36 is a state transition diagram of operating systems before and after interrupt service.
- the operating system A is again executed.
- the operating system A being executed before the interrupt service is executed until the next operating system change trigger.
- task state change in the operating system is involved with the interrupt as a cause.
- the response performance of the task related to the interrupt is important as continuation processing related to the interrupt.
- FIG. 37 is a state transition diagram of operating systems before and after multiple interrupt services.
- the operating system A is again executed.
- the operating system A being executed before the multiple interrupt services is executed until the next operating system change trigger.
- task state change in each operating system is also involved with the interrupt as a cause.
- the response performance of the task related to the interrupt is important.
- OS execution control is performed independently of the real-time properties of the operating systems, for example, in such a manner that the operating systems are changed equitably at given time intervals based on time slices or that if interrupt service occurs, the operating system being executed at the time is again executed after the interrupt service.
- a virtual machine system for controlling a plurality of operating systems, comprising storage means for storing an execution priority for each operating system, priority means for comparing the execution priories stored in the storage means in the trigger for determining the next operating system to be executed, and selecting a higher-priority operating system, and execution determination means for executing the operating system selected by the priority means.
- the virtual machine system as claimed in aspect 1 further comprises sequencing means for comparing the execution priories stored in the storage means when a clock interrupt occurs and executing clock interrupt service for each operating system in the priority order.
- the virtual machine system as claimed in aspect 1 further comprises restoration means for storing the operating system being executed when an interrupt occurs, wherein after the interrupt service corresponding to the interrupt, the execution determination means compares the execution priority of the operating system before the interrupt occurrence with the execution priority of the operating system selected by the priority means and selects and executes the operating system assigned a higher priority.
- the virtual machine system as claimed in aspect 3 further comprises accumulation means for sequentially storing the operating systems being executed when multiple interrupts occur in the order in which they occur, wherein when multiple interrupt services corresponding to the multiple interrupts are executed, the execution determination means sequentially executes the operating systems stored in the storage means based on the multiple interrupt occurrence order and after the multiple interrupt services, the execution determination means compares the execution priority of the operating system before the interrupts occurrence, stored in the restoration means with the execution priority of the operating system selected by the priority means and selects and executes the operating system assigned a higher priority.
- a virtual machine system for controlling a plurality of operating systems, comprising storage means for storing priority elements to determine the operating system to be executed, priority means for comparing the priority elements stored in the storage means in the trigger for determining the next operating system to be executed, and selecting a higher-priority operating system, and execution determination means for executing the operating system selected by the priority means.
- the priority means selects the higher-priority operating system based on at least one of the execution state of each operating system, the execution priority of each operating system, the task priority of each executable task in each operating system, and the time slice execution time of each operating system as the priority elements.
- the virtual machine system as claimed in aspect 5 further comprises sequencing means for comparing the execution priories stored in the storage means when a clock interrupt occurs and executing clock interrupt service for each operating system in the priority order, the sequencing means for executing the clock interrupt service for each operating system in the priority order based on at least one of the execution state of each operating system, the execution priority of each operating system, the task priority of each executable task in each operating system, and the time slice execution time of each operating system as the priority elements.
- the virtual machine system as claimed in aspect 5 further comprises restoration means for storing the operating system being executed when an interrupt occurs, wherein after the interrupt service corresponding to the interrupt, the execution determination means compares the priority element of the operating system before the interrupt occurrence with the priority element of the operating system selected by the priority means and selects and executes the operating system assigned a higher priority.
- the execution determination means selects and executes the operating system assigned a higher priority based on at least one of the execution state of each operating system, the execution priority of each operating system, the task priority of each executable task in each operating system, and the time slice execution time of each operating system as the priority elements.
- the virtual machine system as claimed in aspect 8 further comprises accumulation means for sequentially storing the operating systems being executed when multiple interrupts occur in the order in which they occur, wherein when multiple interrupt services corresponding to the multiple interrupts are executed, the execution determination means sequentially executes the operating systems stored in the storage means based on the multiple interrupt occurrence order and after the multiple interrupt services, the execution determination means compares the priority element of the operating system before the interrupts occurrence, stored in the restoration means with the priority element of the operating system selected by the priority means and selects and executes the operating system assigned a higher priority.
- the execution determination means selects and executes the operating system assigned a higher priority based on at least one of the execution state of each operating system, the execution priority of each operating system, the task priority of each executable task in each operating system, and the time slice execution time of each operating system as the priority elements.
- the virtual machine system of the invention compares the priority elements stored in the storage means in the trigger for determining the next operating system to be executed and selects and executes a higher-priority operating system.
- the higher-priority operating system is selected based on at least one of the execution state of each operating system, the execution priority of each operating system, the task priority of each executable task in each operating system, and the time slice execution time of each operating system as the priority elements.
- the priority is determined based on the execution priority, the time slice execution time, etc., and the operating system is selected and executed, whereby it is made possible to always select an operating system assigned a higher real-time property taking precedence over any other operating system; the response performance concerning the higher-priority operating system is enhanced and the response performance of the whole computer system is improved.
- the execution priorities, etc. are compared as the priority elements and the clock interrupt service for each operating system is executed in the priority order, whereby the response performance concerning the operating system assigned a higher real-time property and a higher priority is enhanced and the response performance of the whole computer system is more improved.
- the priority element of the operating system being executed at the interrupt occurrence time is compared with the priority element of the operating system selected by the priority means and the operating system assigned a higher priority is selected and executed, whereby the response performance concerning the operating system assigned a higher real-time property and a higher priority is enhanced and the response performance of the whole computer system is more improved.
- the operating systems stored in the storage means are sequentially executed based on the multiple interrupt occurrence order and after the multiple interrupt services, the priority element of the operating system being executed at the occurrence time of the first one of the multiple interrupts, stored in the restoration means is compared with the priority element of the operating system selected by the priority means and the operating system assigned a higher priority is selected and executed, whereby the response performance concerning the operating system assigned a higher real-time property and a higher priority is enhanced and the response performance of the whole computer system is more improved.
- a virtual machine system can execute multiple operating systems A 101, B 102, and C 103 different in properties such as real-time property and magnitude of load under a virtual machine 100 in one or more CPUs, and can execute applications 104, 105, and 106 on their respective operating systems.
- Various operating systems such as real-time OS built in the virtual machine system and UNIX of a time-sharing system (TSS) can be applied as the operating systems.
- TSS time-sharing system
- FIG. 1 is a block diagram to show the functional configuration of a virtual machine system according to a first embodiment of the invention and FIG. 2 is a schematic representation to show a processing list of operating systems stored in storage means.
- the virtual machine system of the first embodiment comprises storage means 12 for storing the execution state and execution priority of each operating system as priority elements, priority means 13 for comparing the execution priorities of the operating systems as the priority elements stored in the storage means 12 and selecting a higher-priority operating system, and execution determination means 11 for executing the operating system selected by the priority means 13 in the trigger for determining the next operating system to be executed.
- the execution determination means 11, the storage means 12, and the priority means 13 are implemented as software programs and data that can be executed by a CPU in semiconductor memory, etc., provided in a computer system, and the specific structures and operation principles of the means can be provided using well-known art and will not be discussed here; only the features of the embodiment will be discussed.
- the operation of the virtual machine system in the first embodiment is as follows:
- the priority means 13 selects a higher-priority operating system based on the execution state and execution priority of each operating system stored in the storage means 12.
- the execution determination means 11 executes the selected operating system.
- the operating system changing trigger, the operating system changing technique, and the like are similar to those in a general virtual machine system.
- the storage means 12 stores a processing list of the operating systems as shown in FIG. 2.
- the execution priority having a smaller value is assumed to be a higher priority and execution state GO means that the operating system is being executed by the CPU at present, READY means that the operating system can be next executed by the CPU, and SLEEP means that the operating system is in a sleep state and cannot be executed by the CPU.
- the priority means 13 compares the execution priorities of the operating systems placed in the execution state GO or READDY in the processing list and selects a higher-priority operating system. In this case, the executable operating system is A or C and the highest-priority operating system C is selected, then the execution determination means 11 determines execution of the operating system and executes the operating system.
- the real-time properties of the operating systems are represented as the execution priorities and an operating system can be selected in accordance with the execution priorities.
- the operating system assigned a higher execution priority is executed taking precedence over any other operating system, whereby the operating system assigned a higher real-time property can always be executed taking precedence over any other operating system and it is made possible to enhance the response performance concerning the operating system assigned a high real-time property requiring instantaneous response processing.
- FIG. 3 is a block diagram to show the functional configuration of a virtual machine system according to a second embodiment of the invention and FIG. 4 is a state transition diagram of operating systems before and after clock interrupt service in the virtual machine system of the second embodiment of the invention.
- the virtual machine system of the second embodiment comprises sequencing means 14 for comparing the execution priorities of operating systems as the priority elements stored in storage means 12 when clock interrupt service occurs and executing the clock interrupt service for each operating system in the priority order in addition to the components of the virtual machine system of the first embodiment.
- Other components are similar to those of the virtual machine system of the first embodiment and therefore will not be discussed again.
- a clock interrupt is entered periodically (for example, every 10 milliseconds) and clock interrupt service is executed in sequence for each operating system.
- the priority means 13 compares the execution priorities of the operating systems stored in the storage means 12 and selects a higher-priority operating system, and the sequencing means 14 executes the clock interrupt service for each operating system in the priority order based on the selection result of the priority means 13.
- the clock interrupt service is executed in the execution priority order of the operating systems stored in the storage means 12 rather than simply in the fixedly determined order in the computer system (for example, in the order of operating systems A, B, and C).
- the sequencing means 14 selectively executes the clock interrupt service in the order of the operating systems C, B, and A, namely, in the order of the operating systems requiring a higher real-time property.
- the operating system C assigned a high real-time property is selected and is executed by execution determination means 11.
- the clock interrupt service of the operating system assigned a higher priority is executed taking precedence over the clock interrupt service of any other operating system, whereby the operating system assigned a higher real-time property can always be executed taking precedence over any other operating system at the clock interrupt service time and the response performance of the clock interrupt service concerning the operating system assigned a high real-time property requiring instantaneous response processing can be enhanced, so that it is made possible to more enhance the response performance of the whole computer system.
- FIG. 5 is a block diagram to show the functional configuration of a virtual machine system according to a third embodiment of the invention and FIG. 6 is a state transition diagram of operating systems before and after interrupt service in the virtual machine system of the third embodiment of the invention.
- the virtual machine system of the third embodiment comprises restoration means 15 for storing the operating system before the interrupt occurrence in addition to the components of the virtual machine system of the first embodiment.
- execution determination means 11 and priority means 13 compare the execution priority of the operating system being executed at the interrupt occurrence time stored in the restoration means 15 with the execution priority of any executable operating system as priority element and selectively execute the operating system assigned a higher priority.
- Other components are similar to those of the virtual machine system of the first embodiment and therefore will not be discussed again.
- the execution determination means 11 executes the interrupt service. After the interrupt service, the execution determination means 11 compares the execution priority of the operating system before the interrupt occurrence stored in the restoration means 15 with the execution priority of the operating system selected by the priority means 13 and executes the operating system assigned the highest priority at the interrupt service return time.
- the execution priority of the operating system before the interrupt occurrence stored in the restoration means 15 is compared with the execution priority of the executable operating system assigned a high priority selected by the priority means 13 and the operating system assigned the highest priority is executed.
- the execution priority having a smaller value is a higher priority as in the first embodiment
- the operating system C assigned a high real-time property is selected and is executed by the execution determination means 11 without resuming the execution of the operating system A being executed at the interrupt occurrence time.
- the operating system assigned a higher priority is executed taking precedence over any other operating system, whereby the operating system assigned a higher real-time property can always be executed taking precedence over any other operating system at the interrupt occurrence time and the response performance concerning the operating system assigned a high real-time property requiring instantaneous response processing, so that it is made possible to more enhance the response performance of the whole computer system.
- FIG. 7 is a block diagram to show the functional configuration of a virtual machine system according to a fourth embodiment of the invention and FIG. 8 is a state transition diagram of operating systems before and after multiple interrupt services in the virtual machine system of the fourth embodiment of the invention.
- the virtual machine system of the fourth embodiment comprises accumulation means 16 for sequentially storing the operating systems being executed when multiple interrupt services occur in the order in which the multiple interrupts occur in addition to the components of the virtual machine system of the third embodiment.
- execution determination means 11 and priority means 13 compare the execution priority of the operating system before the interrupt occurrence stored in restoration means 15 with the execution priority of any executable operating system as priority element and selectively execute the operating system assigned a higher priority.
- Other components are similar to those of the virtual machine system of the first embodiment and therefore will not be discussed again.
- the execution determination means 11 executes the corresponding interrupt service whenever each interrupt occurs. After the termination of the last interrupt service, the execution determination means 11 executes the interrupt services of the operating systems being executed at the multiple interrupt occurrence time stored in the accumulation means 16 in an opposite order to that in which the multiple interrupts occur. That is, during the multiple interrupt services, normal multiple interrupt services are executed without applying priority processing in accordance with the execution priorities. After the multiple interrupt services, the execution determination means 11 compares the execution priority of the operating system before the interrupt occurrence stored in the restoration means 15 with the execution priority of the operating system selected by the priority means 13 and executes the operating system assigned the highest priority at the interrupt service return time.
- multiple interrupt services occur in the order of operating systems A, B, and C during execution of the operating system A and are executed and after the termination of the interrupt service of the operating system C, the last one of the multiple interrupt services, the interrupt services of the operating systems being executed at the multiple interrupt service occurrence time stored in the accumulation means 16 are executed in the order of B and A.
- the execution priority of the operating system being executed at the occurrence time of the first one of the multiple interrupts stored in the restoration means 15 is compared with the execution priority of the executable operating system assigned a high priority selected by the priority means 13 and the operating system assigned the highest priority is executed.
- the operating system C assigned a high real-time property is selected and is executed by the execution determination means 11 without resuming the execution of the operating system A being executed at the interrupt occurrence time.
- the operating system assigned a higher priority is executed taking precedence over any other operating system, whereby the operating system assigned a higher real-time property can always be executed taking precedence over any other operating system at the multiple interrupt occurrence time and the response performance concerning the operating system assigned a high real-time property requiring instantaneous response processing, so that it is made possible to more enhance the response performance of the whole computer system.
- FIG. 9 is a block diagram to show the functional configuration of a virtual machine system according to a fifth embodiment of the invention and FIG. 10 is a schematic representation to show a processing list of operating systems stored in storage means.
- Fifth to eighth embodiments are embodiments wherein the operating system to be executed is determined based on priorities provided by adding task priorities to the execution priorities in the first to fourth embodiments described above.
- the virtual machine system of the fifth embodiment comprises storage means 12 for storing the execution state and execution priority of each operating system and the task priority of the task being operated or the next task to be operated on each operating system as priority elements, task priority means 17 for comparing the execution priorities and task priorities of the operating systems as the priority elements stored in the storage means 12 and selecting a higher-priority operating system, and execution determination means 11 for executing the operating system selected by the task priority means 17 in the trigger for determining the next operating system to be executed.
- the execution determination means 11, the storage means 12, and the task priority means 17 are implemented as software programs and data that can be executed by a CPU in semiconductor memory, etc., provided in a computer system, and the specific structures and operation principles of the means are almost similar to those in the related art and will not be discussed here; only the features of the embodiment will be discussed.
- the fifth embodiment is an embodiment in which the task priority of the task being operated or the next task to be operated on each operating system is added to the first embodiment for determining the operating system executed taking precedence over any other operating system.
- the required real-time property may vary depending on the task type such as key input processing or data storage and transfer processing.
- the task priority is added for determining the next operating system to be executed.
- the determination method of the task being operated or the next task to be operated by each operating system is similar to that in a general virtual machine system.
- the task priority means 17 selects a higher-priority operating system based on the execution state, execution priority, and task priority of each operating system stored in the storage means 12.
- the execution determination means 11 executes the selected operating system.
- the storage means 12 stores a processing list of the operating systems as shown in FIG. 10.
- the execution priority having a smaller value is assumed to be a higher priority and likewise the task priority having a smaller value is assumed to be a higher priority.
- the sum of the execution priority and the task priority is used as a priority value for determining the operating system to be executed.
- the task priority means 17 compares the execution priorities of the operating systems placed in the execution state GO or READDY in the processing list and the task priorities of the tasks being operated or the next tasks to be operated by the operating systems and selects a higher-priority operating system.
- the executable operating system is A or B and the operating system B having totally the highest priority is selected based on the sum of the execution priority and the task priority, then the execution determination means 11 determines execution of the operating system and executes the operating system.
- the operating system assigned a higher priority considering the execution priority and the task priority is always executed taking precedence over any other operating system, whereby the operating system assigned a higher real-time property requiring instantaneous response processing can be executed taking precedence over any other operating system and it is made possible to enhance the response performance concerning the operating system.
- FIG. 11 is a block diagram to show the functional configuration of a virtual machine system according to a sixth embodiment of the invention and FIG. 12 is a state transition diagram of operating systems before and after clock interrupt service in the virtual machine system of the sixth embodiment of the invention.
- the virtual machine system of the sixth embodiment comprises task sequencing means 18 for comparing the execution priorities of operating systems and the task priorities of the tasks being operated or the next tasks to be operated by the operating systems as the priority elements stored in storage means 12 when clock interrupt service occurs and executing the clock interrupt service for each operating system in the priority order in addition to the components of the virtual machine system of the fifth embodiment.
- Other components are similar to those of the virtual machine system of the fifth embodiment and therefore will not be discussed again.
- task priority means 17 compares the execution priorities and task priorities of the operating systems stored in the storage means 12 and selects a higher-priority operating system, and the task sequencing means 18 executes the clock interrupt service for each operating system in the priority order based on the selection result of the task priority means 17.
- the clock interrupt service is executed in the priority order based on the execution priorities and task priorities of the operating systems stored in the storage means 12 rather than simply in the fixedly determined order in the computer system (for example, in the order of operating systems A, B, and C).
- the execution priority having a smaller value is a higher priority and likewise the task priority having a smaller value is a higher priority and that the sum of the execution priority and the task priority is used as a priority value for determining the operating system to be executed as in the fifth embodiment
- the task sequencing means 18 selectively executes the clock interrupt service in the order of the operating systems B, C, and A, namely, in the order of the operating systems requiring a higher real-time property.
- the operating system B assigned a high real-time property is selected and is executed by execution determination means 11.
- the clock interrupt service of the operating system assigned a higher priority considering the execution priority and the task priority is executed taking precedence over the clock interrupt service of any other operating system, whereby the operating system assigned a higher real-time property requiring instantaneous response processing at the clock interrupt service time can always be executed taking precedence over any other operating system and the response performance of the clock interrupt service concerning the operating system assigned a high real-time property can be enhanced, so that it is made possible to more enhance the response performance of the whole computer system.
- FIG. 13 is a block diagram to show the functional configuration of a virtual machine system according to a seventh embodiment of the invention and FIG. 14 is a state transition diagram of operating systems before and after interrupt service in the virtual machine system of the seventh embodiment of the invention.
- the virtual machine system of the seventh embodiment comprises restoration means 15 for storing the operating system being executed when interrupt service occurs in addition to the components of the virtual machine system of the fifth embodiment.
- execution determination means 11 and task priority means 17 compare the execution priority and task priority of the operating system being executed at the interrupt occurrence time stored in the restoration means 15 with those of any executable operating system as priority elements and selectively execute the operating system assigned a higher priority.
- Other components are similar to those of the virtual machine system of the fifth embodiment and therefore will not be discussed again.
- the execution determination means 11 executes the interrupt service. After the interrupt service, the execution determination means 11 compares the execution priority and task priority of the operating system being executed at the interrupt occurrence time stored in the restoration means 15 with those of the operating system selected by the task priority means 17 and executes the operating system assigned the highest priority at the interrupt service return time.
- the execution priority and task priority of the operating system being executed at the interrupt occurrence time stored in the restoration means 15 are compared with those of the executable operating system assigned a high priority selected by the task priority means 17 and the operating system assigned the highest priority is executed.
- the execution priority having a smaller value is a higher priority and likewise the task priority having a smaller value is a higher priority and that the sum of the execution priority and the task priority is used as a priority value for determining the operating system to be executed as in the fifth embodiment
- the operating system B assigned a high real-time property is selected and is executed by the execution determination means 11 without resuming the execution of the operating system A being executed at the interrupt occurrence time.
- the operating system assigned a higher priority considering the execution priority and the task priority is executed taking precedence over any other operating system, whereby the operating system assigned a higher real-time property requiring instantaneous response processing at the interrupt occurrence time can always be executed taking precedence over any other operating system and the response performance concerning the operating system assigned a high real-time property can be enhanced, so that it is made possible to more enhance the response performance of the whole computer system.
- FIG. 15 is a block diagram to show the functional configuration of a virtual machine system according to an eighth embodiment of the invention and FIG. 16 is a state transition diagram of operating systems before and after multiple interrupt services in the virtual machine system of the eighth embodiment of the invention.
- the virtual machine system of the eighth embodiment comprises accumulation means 16 for sequentially storing the operating systems being executed when multiple interrupt services occur in the order in which the multiple interrupts occur in addition to the components of the virtual machine system of the seventh embodiment.
- execution determination means 11 and task priority means 17 compare the execution priority and task priority of the operating system being executed at the interrupt occurrence time stored in restoration means 15 with those of any executable operating system as priority elements and selectively execute the operating system assigned a higher priority.
- Other components are similar to those of the virtual machine system of the fifth embodiment and therefore will not be discussed again.
- the execution determination means 11 processes normal multiple interrupts without performing priority processing based on the execution priority and the task priority. After the multiple interrupt services, the execution determination means 11 compares the execution priority and task priority of the operating system being executed at the occurrence time of the first one of the multiple interrupts stored in the restoration means 15 with those of the operating system selected by the task priority means 17 and executes the operating system assigned the highest priority at the interrupt service return time.
- multiple interrupt services occur in the order of operating systems A, B, and C during execution of the operating system A and are executed and after the termination of the interrupt service of the operating system C, the last one of the multiple interrupt services, the interrupt services of the operating systems being executed at the multiple interrupt service occurrence time stored in the accumulation means 16 are executed in the order of B and A.
- the execution priority and task priority of the operating system being executed at the occurrence time of the first one of the multiple interrupts stored in the restoration means 15 are compared with those of the executable operating system assigned a high priority selected by the task priority means 17 and the operating system assigned the highest priority is executed.
- the execution priority having a smaller value is a higher priority and likewise the task priority having a smaller value is a higher priority and that the sum of the execution priority and the task priority is used as a priority value for determining the operating system to be executed as in the fifth embodiment
- the operating system B assigned a high real-time property is selected and is executed by the execution determination means 11 without resuming the execution of the operating system A being executed at the interrupt occurrence time.
- the operating system assigned a higher priority considering the execution priority and the task priority is executed taking precedence over any other operating system, whereby the operating system assigned a higher real-time property requiring instantaneous response processing at the multiple interrupt occurrence time can always be executed taking precedence over any other operating system and the response performance concerning the operating system assigned a high real-time property can be enhanced, so that it is made possible to more enhance the response performance of the whole computer system.
- FIG. 17 is a block diagram to show the functional configuration of a virtual machine system according to a ninth embodiment of the invention and FIG. 18 is a schematic representation to show a processing list of operating systems stored in storage means.
- Ninth to twelfth embodiments are embodiments wherein the operating system to be executed is determined based on priorities provided by adding time slice execution time to the execution priorities in the first to fourth embodiments described above.
- the virtual machine system of the ninth embodiment comprises storage means 12 for storing the execution state, execution priority, and time slice execution time of each operating system as priority elements, execution time priority means 19 for comparing the execution priorities and time slice execution times of the operating systems as the priority elements stored in the storage means 12 and selecting a higher-priority operating system, and execution determination means 11 for executing the operating system selected by the execution time priority means 19 in the trigger for determining the next operating system to be executed.
- the execution determination means 11, the storage means 12, and the execution time priority means 19 are implemented as software programs and data that can be executed by a CPU in semiconductor memory, etc., provided in a computer system, and the specific structures and operation principles of the means are almost similar to those in the related art and will not be discussed here; only the features of the embodiment will be discussed.
- the ninth embodiment is an embodiment in which the time slice execution time in each operating system is added to the first embodiment for determining the operating system executed taking precedence over any other operating system.
- the virtual machine system sets and holds the execution time elapsed for each operating system, for example, at the operating system change trigger and when the time becomes the upper limit value defined in the computer system (for example, 10 ms) or more, the initial value (usually, value of 0) is set.
- the time slice execution time calculation method is similar to that in a general virtual machine system.
- the virtual machine system changes and executes a plurality of operating systems every variable or fixed time slice.
- the time slice execution time which is much means a state in which it takes much time in processing execution concerning the operating system and the remaining processing execution time to the upper limit value is less.
- the time slice execution time which is less means a state in which much processing execution time is required until the upper limit value is reached concerning the operating system.
- the upper limit value of the time slice execution time is set to, for example, 10 ms, it is considered that the less the time slice execution time, the higher the priority, and the time slice execution time is added to the execution priority for determining the next operating system to be executed.
- the execution time priority means 19 selects a higher-priority operating system based on the execution state, execution priority, and time slice execution time of each operating system stored in the storage means 12.
- the execution determination means 11 executes the selected operating system.
- the storage means 12 stores a processing list of the operating systems as shown in FIG. 18.
- the execution priority having a smaller value is assumed to be a higher priority and likewise the time slice execution time having a smaller value is assumed to be a higher priority.
- the sum of the execution priority and the time slice execution time is used as a priority value for determining the operating system to be executed.
- time slice priorities 0, 1, 2... may be given, for example, in the ascending order of the time slice execution times for using the sum of the time slice priority and the execution priority as the priority.
- the execution time priority means 19 compares the execution priorities and time slice execution times of the operating systems placed in the execution state GO or READDY in the processing list and selects a higher-priority operating system.
- the executable operating system is A or C and the operating system C having totally the highest priority is selected based on the sum of the execution priority and the time slice execution time, then the execution determination means 11 determines execution of the operating system and executes the operating system.
- the operating system assigned a higher priority considering the execution priority and the time slice execution time is always executed taking precedence over any other operating system, whereby the operating system assigned a higher real-time property requiring instantaneous response processing can be executed taking precedence over any other operating system and it is made possible to enhance the response performance concerning the operating system.
- FIG. 19 is a block diagram to show the functional configuration of a virtual machine system according to a tenth embodiment of the invention and FIG. 20 is a state transition diagram of operating systems before and after clock interrupt service in the virtual machine system of the tenth embodiment of the invention.
- the virtual machine system of the tenth embodiment comprises execution time sequencing means 20 for comparing the execution priorities and time slice execution times of operating systems stored in storage means 12 as the priority elements when clock interrupt service occurs and executing the clock interrupt service for each operating system in the priority order in addition to the components of the virtual machine system of the ninth embodiment.
- Other components are similar to those of the virtual machine system of the ninth embodiment and therefore will not be discussed again.
- execution time priority means 19 compares the execution priorities and time slice execution times of the operating systems stored in the storage means 12 and selects a higher-priority operating system, and the execution time sequencing means 20 executes the clock interrupt service for each operating system in the priority order based on the selection result of the execution time priority means 19.
- the clock interrupt service is executed in the priority order based on the execution priorities and time slice execution times of the operating systems stored in the storage means 12 rather than simply in the fixedly determined order in the computer system (for example, in the order of operating systems A, B, and C).
- the execution time sequencing means 20 selectively executes the clock interrupt service in the order of the operating systems C, B, and A, namely, in the order of the operating systems requiring a higher real-time property. After the termination of the clock interrupt service, the operating system C assigned a high real-time property is selected and is executed by execution determination means 11.
- the clock interrupt service of the operating system assigned a higher priority considering the execution priority and the time slice execution time is executed taking precedence over the clock interrupt service of any other operating system, whereby the operating system assigned a higher real-time property requiring instantaneous response processing at the clock interrupt service time can always be executed taking precedence over any other operating system and the response performance of the clock interrupt service concerning the operating system assigned a high real-time property can be enhanced, so that it is made possible to more enhance the response performance of the whole computer system.
- FIG. 21 is a block diagram to show the functional configuration of a virtual machine system according to an eleventh embodiment of the invention and FIG. 22 is a state transition diagram of operating systems before and after interrupt service in the virtual machine system of the eleventh embodiment of the invention.
- the virtual machine system of the eleventh embodiment comprises restoration means 15 for storing the operating system being executed when interrupt service occurs in addition to the components of the virtual machine system of the ninth embodiment.
- execution determination means 11 and execution time priority means 19 compare the execution priority and time slice execution time of the operating system being executed at the interrupt occurrence time stored in the restoration means 15 with those of any executable operating system as priority elements and selectively execute the operating system assigned a higher priority.
- Other components are similar to those of the virtual machine system of the ninth embodiment and therefore will not be discussed again.
- the execution determination means 11 executes the interrupt service. After the interrupt service, the execution determination means 11 compares the execution priority and time slice execution time of the operating system being executed at the interrupt occurrence time stored in the restoration means 15 with those of the operating system selected by the execution time priority means 19 and executes the operating system assigned the highest priority at the interrupt service return time.
- the execution priority and time slice execution time of the operating system being executed at the interrupt occurrence time stored in the restoration means 15 are compared with those of the executable operating system assigned a high priority selected by the execution time priority means 19 and the operating system assigned the highest priority is executed.
- the execution priority having a smaller value is a higher priority and likewise the time slice execution time having a smaller value is a higher priority and that the sum of the execution priority and the time slice execution time is used as a priority value for determining the operating system to be executed as in the ninth embodiment
- the operating system C assigned a high real-time property is selected and is executed by the execution determination means 11 without resuming the execution of the operating system A being executed at the interrupt occurrence time.
- the operating system assigned a higher priority considering the execution priority and the time slice execution time is executed taking precedence over any other operating system, whereby the operating system assigned a higher real-time property requiring instantaneous response processing at the interrupt occurrence time can always be executed taking precedence over any other operating system and the response performance concerning the operating system assigned a high real-time property can be enhanced, so that it is made possible to more enhance the response performance of the whole computer system.
- FIG. 23 is a block diagram to show the functional configuration of a virtual machine system according to a twelfth embodiment of the invention and FIG. 24 is a state transition diagram of operating systems before and after multiple interrupt services in the virtual machine system of the twelfth embodiment of the invention.
- the virtual machine system of the twelfth embodiment comprises accumulation means 16 for sequentially storing the operating systems being executed when multiple interrupt services occur in the order in which the multiple interrupts occur in addition to the components of the virtual machine system of the eleventh embodiment.
- execution determination means 11 and execution time priority means 19 compare the execution priority and time slice execution time of the operating system being executed at the interrupt occurrence time stored in restoration means 15 with those of any executable operating system as priority elements and selectively execute the operating system assigned a higher priority.
- Other components are similar to those of the virtual machine system of the ninth embodiment and therefore will not be discussed again.
- the execution determination means 11 processes normal multiple interrupts without performing priority processing based on the execution priority and the time slice execution time. After the multiple interrupt services, the execution determination means 11 compares the execution priority and time slice execution time of the operating system being executed at the occurrence time of the first one of the multiple interrupts stored in the restoration means 15 with those of the operating system selected by the execution time priority means 19 and executes the operating system assigned the highest priority at the interrupt service return time.
- multiple interrupt services occur in the order of operating systems A, B, and C during execution of the operating system A and are executed and after the termination of the interrupt service of the operating system C, the last one of the multiple interrupt services, the interrupt services of the operating systems being executed at the multiple interrupt service occurrence time stored in the accumulation means 16 are executed in the order of B and A.
- the execution priority and time slice execution time of the operating system being executed at the occurrence time of the first one of the multiple interrupts stored in the restoration means 15 are compared with those of the executable operating system assigned a high priority selected by the execution time priority means 19 and the operating system assigned the highest priority is executed.
- the operating system C assigned a high real-time property is selected and is executed by the execution determination means 11 without resuming the execution of the operating system A being executed at the interrupt occurrence time.
- the operating system assigned a higher priority considering the execution priority and the time slice execution time is executed taking precedence over any other operating system, whereby the operating system assigned a higher real-time property requiring instantaneous response processing at the multiple interrupt occurrence time can always be executed taking precedence over any other operating system and the response performance concerning the operating system assigned a high real-time property can be enhanced, so that it is made possible to more enhance the response performance of the whole computer system.
- FIG. 25 is a block diagram to show the functional configuration of a virtual machine system according to a thirteenth embodiment of the invention and FIG. 26 is a schematic representation to show a processing list of operating systems stored in storage means.
- Thirteenth to sixteenth embodiments are embodiments wherein the operating system to be executed is determined based on priorities provided by adding the task priorities in the fifth to eighth embodiments and the time slice execution times in the ninth to twelfth embodiments to the execution priorities in the first to fourth embodiments described above.
- the virtual machine system of the thirteenth embodiment comprises storage means 12 for storing the execution state, execution priority, and time slice execution time of each operating system and the task priority of the task being operated or the next task to be operated on each operating system as priority elements, real time priority means 21 for comparing the execution priorities, time slice execution times, and task priorities of the operating systems as the priority elements stored in the storage means 12 and selecting a higher-priority operating system, and execution determination means 11 for executing the operating system selected by the real time priority means 21 in the trigger for determining the next operating system to be executed.
- the execution determination means 11, the storage means 12, and the real time priority means 21 are implemented as software programs and data that can be executed by a CPU in semiconductor memory, etc., provided in a computer system, and the specific structures and operation principles of the means are almost similar to those in the related art and will not be discussed here; only the features of the embodiment will be discussed.
- the thirteenth embodiment is an embodiment in which the time slice execution time in each operating system and the task priority of the task being operated or the next task to be operated on each operating system are added to the first embodiment for determining the operating system executed taking precedence over any other operating system.
- the real time priority means 21 selects a higher-priority operating system based on the execution state, execution priority, time slice execution time, and task priority of each operating system stored in the storage means 12.
- the execution determination means 11 executes the selected operating system.
- the storage means 12 stores a processing list of the operating systems as shown in FIG. 26.
- the execution priority having a smaller value is assumed to be a higher priority
- the time slice execution time having a smaller value is assumed to be a higher priority
- the task priority having a smaller value is assumed to be a higher priority.
- the sum of the execution priority, the time slice execution time, and the task priority is used as a priority value for determining the operating system to be executed.
- the real time priority means 21 compares the execution priorities and time slice execution times of the operating systems placed in the execution state GO or READDY in the processing list and the task priorities of the tasks being operated or the next tasks to be operated by the operating systems and selects a higher-priority operating system.
- the executable operating system is A or B and the operating system B having totally the highest priority is selected based on the sum of the execution priority, the time slice execution time, and the task priority, then the execution determination means 11 determines execution of the operating system and executes the operating system.
- the operating system assigned a higher priority considering the execution priority, the time slice execution time, and the task priority is executed taking precedence over any other operating system, whereby the operating system assigned a higher real-time property requiring instantaneous response processing can always be executed taking precedence over any other operating system and it is made possible to enhance the response performance concerning the operating system.
- FIG. 27 is a block diagram to show the functional configuration of a virtual machine system according to a fourteenth embodiment of the invention and FIG. 28 is a state transition diagram of operating systems before and after clock interrupt service in the virtual machine system of the fourteenth embodiment of the invention.
- the virtual machine system of the fourteenth embodiment comprises real time sequencing means 22 for comparing the execution priorities time slice execution times of operating systems and the task priorities of the tasks being operated or the next tasks to be operated by the operating systems stored in storage means 12 as the priority elements when clock interrupt service occurs and executing the clock interrupt service for each operating system in the priority order in addition to the components of the virtual machine system of the thirteenth embodiment.
- Other components are similar to those of the virtual machine system of the thirteenth embodiment and therefore will not be discussed again.
- real time priority means 21 compares the execution priorities, slice time execution times, and task priorities of the operating systems stored in the storage means 12 and selects a higher-priority operating system, and the real time sequencing means 22 executes the clock interrupt service for each operating system in the priority order based on the selection result of the real time priority means 21.
- the clock interrupt service is executed in the priority order based on the execution priorities, time slice execution times, and task priorities of the operating systems stored in the storage means 12 rather than simply in the fixedly determined order in the computer system (for example, in the order of operating systems A, B, and C) .
- the real time sequencing means 22 selectively executes the clock interrupt service in the order of the operating systems B, C, and A, namely, in the order of the operating systems requiring a higher real-time property.
- the operating system B assigned a high real-time property is selected and is executed by execution determination means 11.
- the clock interrupt service of the operating system assigned a higher priority considering the execution priority, the time slice execution time, and the task priority is executed taking precedence over the clock interrupt service of any other operating system, whereby the operating system assigned a higher real-time property requiring instantaneous response processing at the clock interrupt service time can always be executed taking precedence over any other operating system and the response performance of the clock interrupt service concerning the operating system assigned a high real-time property can be furthermore enhanced, so that it is made possible to more enhance the response performance of the whole computer system.
- FIG. 29 is a block diagram to show the functional configuration of a virtual machine system according to a fifteenth embodiment of the invention and FIG. 30 is a state transition diagram of operating systems before and after interrupt service in the virtual machine system of the fifteenth embodiment of the invention.
- the virtual machine system of the fifteenth embodiment comprises restoration means 15 for storing the operating system being executed when interrupt service occurs in addition to the components of the virtual machine system of the thirteenth embodiment.
- execution determination means 11 and real time priority means 21 compare the execution priority, time slice execution time, and task priority of the operating system being executed at the interrupt occurrence time stored in the restoration means 15 with those of any executable operating system as priority elements and selectively execute the operating system assigned a higher priority.
- Other components are similar to those of the virtual machine system of the thirteenth embodiment and therefore will not be discussed again.
- the execution determination means 11 executes the interrupt service. After the interrupt service, the execution determination means 11 compares the execution priority, time slice execution time, and task priority of the operating system being executed at the interrupt occurrence time stored in the restoration means 15 with those of the operating system selected by the real time priority means 21 and executes the operating system assigned the highest priority at the interrupt service return time.
- the execution priority, time slice execution time, and task priority of the operating system being executed at the interrupt occurrence time stored in the restoration means 15 are compared with those of the executable operating system assigned a high priority selected by the real time priority means 21 and the operating system assigned the highest priority is executed.
- the operating system B assigned a high real-time property is selected and is executed by the execution determination means 11 without resuming the execution of the operating system A being executed at the interrupt occurrence time.
- the operating system assigned a higher priority considering the execution priority, the time slice execution time, and the task priority is executed taking precedence over any other operating system, whereby the operating system assigned a higher real-time property requiring instantaneous response processing at the interrupt occurrence time can always be executed taking precedence over any other operating system and the response performance concerning the operating system assigned a high real-time property can be furthermore enhanced, so that it is made possible to still more enhance the response performance of the whole computer system.
- FIG. 31 is a block diagram to show the functional configuration of a virtual machine system according to a sixteenth embodiment of the invention and FIG. 32 is a state transition diagram of operating systems before and after multiple interrupt services in the virtual machine system of the sixteenth embodiment of the invention.
- the virtual machine system of the sixteenth embodiment comprises accumulation means 16 for sequentially storing the operating systems being executed when multiple interrupt services occur in the order in which the multiple interrupts occur in addition to the components of the virtual machine system of the fifteenth embodiment.
- execution determination means 11 and real time priority means 21 compare the execution priority, time slice execution time, and task priority of the operating system being executed at the interrupt occurrence time stored in restoration means 15 with those of any executable operating system as priority elements and selectively execute the operating system assigned a higher priority.
- Other components are similar to those of the virtual machine system of the thirteenth embodiment and therefore will not be discussed again.
- the execution determination means 11 processes normal multiple interrupts without performing priority processing based on the execution priority and the task priority. After the multiple interrupt services, the execution determination means 11 compares the execution priority, time slice execution time, and task priority of the operating system being executed at the occurrence time of the first one of the multiple interrupts stored in the restoration means 15 with those of the operating system selected by the real time priority means 21 and executes the operating system assigned the highest priority at the interrupt service return time.
- multiple interrupt services occur in the order of operating systems A, B, and C during execution of the operating system A and are executed and after the termination of the interrupt service of the operating system C, the last one of the multiple interrupt services, the interrupt services of the operating systems being executed at the multiple interrupt service occurrence time stored in the accumulation means 16 are executed in the order of B and A.
- the execution priority, time slice execution time, and task priority of the operating system being executed at the occurrence time of the first one of the multiple interrupts stored in the restoration means 15 are compared with those of the executable operating system assigned a high priority selected by the real time priority means 21 and the operating system assigned the highest priority is executed.
- the operating system B assigned a high real-time property is selected and is executed by the execution determination means 11 without resuming the execution of the operating system A being executed at the interrupt occurrence time.
- the operating system assigned a higher priority considering the execution priority, the time slice execution time, and the task priority is executed taking precedence over any other operating system, whereby the operating system assigned a higher real-time property requiring instantaneous response processing at the multiple interrupt occurrence time can always be executed taking precedence over any other operating system and the response performance concerning the operating system assigned a high real-time property can be furthermore enhanced, so that it is made possible to still more enhance the response performance of the whole computer system.
- the number of operating systems controlled in the virtual machine system does not involve any upper limit; it is not limited to three in the described embodiments and execution of any number of operating systems can be controlled.
- the execution priorities of the operating systems are used as fixedly determined values in the described embodiments, but may be able to be changed arbitrarily in response to the virtual machine system, the operating systems, the tasks of the operating systems, etc., while the computer system is operating.
- any values that can represent priority levels may be used and are not limited.
- the operating system execution state may be represented using any other state than GO, READY, or SLEEP shown in FIG. 2, etc.
- any other element such as the sleep time for each operating system or the execution time for each task may be used as a coefficient.
- the sum of the execution priority and the task priority is simply found by calculation in the embodiment.
- a weight coefficient of the task priority or the like may be used for each execution priority, for example, in such a manner that five is added to the task priority each time the execution priority is lowered one level at a time.
- weighting may be executed between elements for finding a total priority.
- the table structure is used in the described embodiments, but any other structure such as a queue structure or a list structure may be used.
- the clock interrupt service for each operating system need not necessarily be performed in one clock interrupt service and may be divided into multiple clock interrupts for processing.
- the upper limit value of the time slice execution time is set to 10 ms in the described embodiments; it is not limited and any value may be used in response to the processing performance of the computer system.
- One upper limit value of the time slice execution time is fixedly used for one virtual machine system, but the upper limit value of the time slice execution time may be determined and used for each operating system.
- the time slice execution time having a smaller value is evaluated as a higher priority; in contrast, the time slice execution time having a large value may be evaluated as a higher priority in response to the situation of the computer system. If it is efficient to execute the operating system assigned the less remaining processing execution time to the upper limit value taking precedence over any other operating system, the priority concerning the time slice execution time is thus set, whereby the response performance of the whole computer system can be enhanced.
- the priority elements such as the execution priorities stored in the storage means are compared in the trigger for determining the next operating system to be executed, and a higher-priority operating system is selected and executed, whereby it is possible to always execute the operating system assigned a higher real-time property and a higher priority taking precedence over any other operating system; the response performance of the operating system assigned a higher real-time property can be enhanced and the processing efficiency of the whole computer system can be improved.
- the priority elements such as the execution priorities are compared and the clock interrupt service for each operating system is executed in the priority order, whereby the response performance concerning the operating system assigned a higher real-time property and a higher priority can be enhanced and the response performance of the whole computer system can be more improved.
- the priority element of the operating system being executed at the interrupt occurrence time is compared with the priority element of the operating system selected by the priority means and the operating system assigned a higher priority is selected and executed, whereby the response performance concerning the operating system assigned a higher real-time property and a higher priority can be enhanced and the response performance of the whole computer system can be more improved.
- the operating systems stored in the storage means are sequentially executed based on the multiple interrupt occurrence order and after the multiple interrupt services, the priority element of the operating system being executed at the occurrence time of the first one of the multiple interrupts, stored in the restoration means is compared with the priority element of the operating system selected by the priority means and the operating system assigned a higher priority is selected and executed, whereby the response performance concerning the operating system assigned a higher real-time property and a higher priority can be enhanced and the response performance of the whole computer system can be more improved.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Hardware Redundancy (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Bus Control (AREA)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11156768A JP2000347883A (ja) | 1999-06-03 | 1999-06-03 | 仮想計算機装置 |
JP15676899 | 1999-06-03 |
Publications (2)
Publication Number | Publication Date |
---|---|
EP1059582A2 true EP1059582A2 (fr) | 2000-12-13 |
EP1059582A3 EP1059582A3 (fr) | 2005-02-02 |
Family
ID=15634900
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP00112037A Withdrawn EP1059582A3 (fr) | 1999-06-03 | 2000-06-02 | Système à machine virtuelle |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP1059582A3 (fr) |
JP (1) | JP2000347883A (fr) |
CN (1) | CN1152305C (fr) |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1387593A2 (fr) * | 2002-07-31 | 2004-02-04 | Matsushita Electric Industrial Co., Ltd. | Terminal et procédé de traitement d' information |
EP1503286A1 (fr) * | 2003-07-30 | 2005-02-02 | Jaluna SA | Réseau de plusieurs systèmes d'exploitation |
EP1548592A1 (fr) * | 2003-06-03 | 2005-06-29 | Sony Corporation | Dispositif de traitement de l'information, procede de commande de processus et programme informatique |
EP1628214A2 (fr) * | 2004-06-30 | 2006-02-22 | Microsoft Corporation | Dispositifs et procédés pour implémenter un système d'exploitation dans un environnement de machine virtuelle |
EP2296089A2 (fr) | 2004-08-18 | 2011-03-16 | Jaluna SA | Systèmes d'exploitation |
CN102047225A (zh) * | 2008-06-02 | 2011-05-04 | 松下电器产业株式会社 | 优先级控制装置以及优先级控制方法 |
US8024742B2 (en) | 2003-09-30 | 2011-09-20 | Jaluna S.A. | Common program for switching between operation systems is executed in context of the high priority operating system when invoked by the high priority OS |
US8201170B2 (en) | 2003-04-09 | 2012-06-12 | Jaluna Sa | Operating systems are executed on common program and interrupt service routine of low priority OS is modified to response to interrupts from common program only |
CN102792274A (zh) * | 2009-07-20 | 2012-11-21 | 摩托罗拉移动公司 | 多环境操作系统 |
CN103067982A (zh) * | 2012-12-14 | 2013-04-24 | 华为技术有限公司 | 一种数据传输方法及设备 |
US8612992B2 (en) | 2003-04-09 | 2013-12-17 | Jaluna Sa | Operating systems |
US8782639B2 (en) | 2011-03-15 | 2014-07-15 | Fujitsu, Limited | Computer scheduling product and apparatus therefor |
US9262196B2 (en) | 2010-11-30 | 2016-02-16 | International Business Machines Corporation | Virtual machine deployment planning method and associated apparatus |
US9342325B2 (en) | 2012-05-17 | 2016-05-17 | Google Technology Holdings LLC | Synchronizing launch-configuration information between first and second application environments that are operable on a multi-modal device |
US9354900B2 (en) | 2011-04-28 | 2016-05-31 | Google Technology Holdings LLC | Method and apparatus for presenting a window in a system having two operating system environments |
US9367331B2 (en) | 2009-07-20 | 2016-06-14 | Google Technology Holdings LLC | Multi-environment operating system |
US9372711B2 (en) | 2009-07-20 | 2016-06-21 | Google Technology Holdings LLC | System and method for initiating a multi-environment operating system |
US9389877B2 (en) | 2009-07-20 | 2016-07-12 | Google Technology Holdings LLC | Multi-environment operating system |
US9417912B2 (en) | 2010-03-12 | 2016-08-16 | Samsung Electronics Co., Ltd. | Ordering tasks scheduled for execution based on priority and event type triggering the task, selecting schedulers for tasks using a weight table and scheduler priority |
US9417753B2 (en) | 2012-05-02 | 2016-08-16 | Google Technology Holdings LLC | Method and apparatus for providing contextual information between operating system environments |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4015898B2 (ja) * | 2002-07-26 | 2007-11-28 | 松下電器産業株式会社 | プログラム実行装置 |
GB2396712B (en) | 2002-11-18 | 2005-12-07 | Advanced Risc Mach Ltd | Handling multiple interrupts in a data processing system utilising multiple operating systems |
KR20070003765A (ko) * | 2003-10-01 | 2007-01-05 | 쟈루나 에스에이 | 운영체제 |
US7500244B2 (en) * | 2004-06-30 | 2009-03-03 | Intel Corporation | Adaptive algorithm for selecting a virtualization algorithm in virtual machine environments |
US7694298B2 (en) * | 2004-12-10 | 2010-04-06 | Intel Corporation | Method and apparatus for providing virtual server blades |
CN101499021A (zh) * | 2008-01-31 | 2009-08-05 | 国际商业机器公司 | 在多个虚拟机上动态分配资源的方法和装置 |
KR101288700B1 (ko) | 2008-03-14 | 2013-08-23 | 미쓰비시덴키 가부시키가이샤 | 멀티 오퍼레이팅 시스템(os) 기동 장치, 컴퓨터 판독 가능한 기록 매체 및 멀티 os 기동 방법 |
JP5405320B2 (ja) * | 2008-04-28 | 2014-02-05 | パナソニック株式会社 | 仮想計算機制御装置、仮想計算機制御方法及び仮想計算機制御プログラム |
WO2009157178A1 (fr) * | 2008-06-24 | 2009-12-30 | パナソニック株式会社 | Dispositif de commande d’ordinateur virtuel, programme de commande d’ordinateur virtuel et circuit de commande d’ordinateur virtuel |
JP5446791B2 (ja) * | 2009-12-02 | 2014-03-19 | トヨタ自動車株式会社 | 情報処理装置 |
KR101719559B1 (ko) * | 2010-06-22 | 2017-03-24 | 삼성전자주식회사 | 방송수신장치 및 그의 스케줄링 방법 |
JP2012033001A (ja) * | 2010-07-30 | 2012-02-16 | Toshiba Corp | 情報処理装置および情報処理方法 |
CN103136052A (zh) * | 2011-11-25 | 2013-06-05 | 展讯通信(上海)有限公司 | 移动终端及安装有多个操作系统的移动终端的控制方法 |
CN102546830B (zh) * | 2012-02-27 | 2015-06-24 | 辛旻 | 一种服务器中实现存储的方法和系统 |
JP7010014B2 (ja) * | 2018-01-18 | 2022-01-26 | 株式会社デンソー | スケジューリング装置 |
CN109032029B (zh) * | 2018-08-14 | 2020-12-08 | 北京东土科技股份有限公司 | 工业服务器对外通信方法、系统、装置及工业服务器 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0301275A2 (fr) * | 1987-07-29 | 1989-02-01 | International Business Machines Corporation | Partage logique des ressources d'un système de traitement de données |
US5095427A (en) * | 1986-01-14 | 1992-03-10 | Hitachi, Ltd. | Dispatch control of virtual machine |
-
1999
- 1999-06-03 JP JP11156768A patent/JP2000347883A/ja active Pending
-
2000
- 2000-06-02 EP EP00112037A patent/EP1059582A3/fr not_active Withdrawn
- 2000-06-02 CN CNB00117889XA patent/CN1152305C/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5095427A (en) * | 1986-01-14 | 1992-03-10 | Hitachi, Ltd. | Dispatch control of virtual machine |
EP0301275A2 (fr) * | 1987-07-29 | 1989-02-01 | International Business Machines Corporation | Partage logique des ressources d'un système de traitement de données |
Non-Patent Citations (3)
Title |
---|
DENG Z ET AL: "A scheme for scheduling hard real-time applications in open system environment" REAL-TIME SYSTEMS, 1997. PROCEEDINGS., NINTH EUROMICRO WORKSHOP ON TOLEDO, SPAIN 11-13 JUNE 1997, LOS ALAMITOS, CA, USA,IEEE COMPUT. SOC, US, 11 June 1997 (1997-06-11), pages 191-199, XP010240880 ISBN: 0-8186-8034-2 * |
JEAN WOLTER: "Re: Linux System calls and Scheduling - Message-ID: <86wwe9ys5v.fsfÐos.inf.tu-dresden.de>#1/1" USENET MESSAGE, [Online] 5 March 1998 (1998-03-05), XP002309004 comp.os.linux.development.system Retrieved from the Internet: URL:http://groups.google.com/groups?selm=8 6wwe9ys5v.fsf%40os.inf.tu-dresden.de&outpu t=gplain> [retrieved on 2004-12-03] * |
STRAATHOF J H ET AL: "UNIX Scheduling for Large Systems" USENIX TECHNICAL CONFERENCE, XX, XX, July 1986 (1986-07), pages 111-139, XP002152623 * |
Cited By (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1387593A2 (fr) * | 2002-07-31 | 2004-02-04 | Matsushita Electric Industrial Co., Ltd. | Terminal et procédé de traitement d' information |
EP1387593A3 (fr) * | 2002-07-31 | 2005-06-15 | Matsushita Electric Industrial Co., Ltd. | Terminal et procédé de traitement d' information |
US8201170B2 (en) | 2003-04-09 | 2012-06-12 | Jaluna Sa | Operating systems are executed on common program and interrupt service routine of low priority OS is modified to response to interrupts from common program only |
US8612992B2 (en) | 2003-04-09 | 2013-12-17 | Jaluna Sa | Operating systems |
EP1548592A4 (fr) * | 2003-06-03 | 2008-04-30 | Sony Corp | Dispositif de traitement de l'information, procede de commande de processus et programme informatique |
US7818751B2 (en) | 2003-06-03 | 2010-10-19 | Sony Corporation | Methods and systems for scheduling execution of interrupt requests |
EP1548592A1 (fr) * | 2003-06-03 | 2005-06-29 | Sony Corporation | Dispositif de traitement de l'information, procede de commande de processus et programme informatique |
WO2005015390A1 (fr) * | 2003-07-30 | 2005-02-17 | Jaluna Sa | Systemes d'exploitation multiples partageant un processeur et une interface reseau |
EP1503286A1 (fr) * | 2003-07-30 | 2005-02-02 | Jaluna SA | Réseau de plusieurs systèmes d'exploitation |
US8024742B2 (en) | 2003-09-30 | 2011-09-20 | Jaluna S.A. | Common program for switching between operation systems is executed in context of the high priority operating system when invoked by the high priority OS |
EP1628214A2 (fr) * | 2004-06-30 | 2006-02-22 | Microsoft Corporation | Dispositifs et procédés pour implémenter un système d'exploitation dans un environnement de machine virtuelle |
EP1628214B1 (fr) * | 2004-06-30 | 2010-06-23 | Microsoft Corporation | Dispositifs et procédés pour implémenter un système d'exploitation dans un environnement de machine virtuelle |
EP2296089A2 (fr) | 2004-08-18 | 2011-03-16 | Jaluna SA | Systèmes d'exploitation |
CN102047225B (zh) * | 2008-06-02 | 2013-10-16 | 松下电器产业株式会社 | 优先级控制装置以及优先级控制方法 |
CN102047225A (zh) * | 2008-06-02 | 2011-05-04 | 松下电器产业株式会社 | 优先级控制装置以及优先级控制方法 |
US9348633B2 (en) | 2009-07-20 | 2016-05-24 | Google Technology Holdings LLC | Multi-environment operating system |
CN102792274A (zh) * | 2009-07-20 | 2012-11-21 | 摩托罗拉移动公司 | 多环境操作系统 |
US9367331B2 (en) | 2009-07-20 | 2016-06-14 | Google Technology Holdings LLC | Multi-environment operating system |
US9372711B2 (en) | 2009-07-20 | 2016-06-21 | Google Technology Holdings LLC | System and method for initiating a multi-environment operating system |
US9389877B2 (en) | 2009-07-20 | 2016-07-12 | Google Technology Holdings LLC | Multi-environment operating system |
US9417912B2 (en) | 2010-03-12 | 2016-08-16 | Samsung Electronics Co., Ltd. | Ordering tasks scheduled for execution based on priority and event type triggering the task, selecting schedulers for tasks using a weight table and scheduler priority |
US9262196B2 (en) | 2010-11-30 | 2016-02-16 | International Business Machines Corporation | Virtual machine deployment planning method and associated apparatus |
US8782639B2 (en) | 2011-03-15 | 2014-07-15 | Fujitsu, Limited | Computer scheduling product and apparatus therefor |
US9354900B2 (en) | 2011-04-28 | 2016-05-31 | Google Technology Holdings LLC | Method and apparatus for presenting a window in a system having two operating system environments |
US9417753B2 (en) | 2012-05-02 | 2016-08-16 | Google Technology Holdings LLC | Method and apparatus for providing contextual information between operating system environments |
US9342325B2 (en) | 2012-05-17 | 2016-05-17 | Google Technology Holdings LLC | Synchronizing launch-configuration information between first and second application environments that are operable on a multi-modal device |
CN103067982A (zh) * | 2012-12-14 | 2013-04-24 | 华为技术有限公司 | 一种数据传输方法及设备 |
CN103067982B (zh) * | 2012-12-14 | 2015-09-09 | 华为技术有限公司 | 一种数据传输方法及设备 |
Also Published As
Publication number | Publication date |
---|---|
JP2000347883A (ja) | 2000-12-15 |
EP1059582A3 (fr) | 2005-02-02 |
CN1276562A (zh) | 2000-12-13 |
CN1152305C (zh) | 2004-06-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1059582A2 (fr) | Système à machine virtuelle | |
US5517643A (en) | Method of allocating memory among a plurality of processes of a computer system | |
JP3008896B2 (ja) | 共有バス型マルチプロセッサシステムの割り込み負荷分散システム | |
US6021425A (en) | System and method for optimizing dispatch latency of tasks in a data processing system | |
US7441240B2 (en) | Process scheduling apparatus, process scheduling method, program for process scheduling, and storage medium recording a program for process scheduling | |
US8230430B2 (en) | Scheduling threads in a multiprocessor computer | |
US5526521A (en) | Method and system for process scheduling from within a current context and switching contexts only when the next scheduled context is different | |
US5774718A (en) | Process scheduling system that allocates CPU time with priority to interactive type processes | |
US8356304B2 (en) | Method and system for job scheduling | |
US20060206887A1 (en) | Adaptive partitioning for operating system | |
EP0426323A2 (fr) | Serveur de fichier de ressource partagée portable utilisant des co-routines | |
US20030028581A1 (en) | Method for resource management in a real-time embedded system | |
WO2003025784A2 (fr) | Procede d'ordonnancement dans une architecture materielle reconfigurable a multiples configurations materielles | |
US7590990B2 (en) | Computer system | |
US7096471B2 (en) | Apparatus for resource management in a real-time embedded system | |
EP1892625A1 (fr) | Ordonnancement à grain fin des systèmes d'exploitation | |
EP1770517A2 (fr) | Améliorations relatives à la sauvegarde de contextes à temps système réduit dans des systèmes d'exploitation statiques à programmation de travaux par priorités | |
Golub | Operating system support for coexistence of real-time and conventional scheduling | |
Nosrati et al. | Task scheduling algorithms introduction | |
US20030023660A1 (en) | Real-time embedded resource management system | |
RU2239228C2 (ru) | Способ распределения времени центрального процессора между задачами в автоматизированных системах управления технологическими процессами | |
JP2001282560A (ja) | 仮想計算機制御方法及びその実施装置並びにその処理プログラムを記録した記録媒体 | |
JP2022550064A (ja) | マルチスレッドマイクロプロセッサにおける共有リソース割り当て | |
JPH05108380A (ja) | データ処理システム | |
Joon et al. | OPTIMIZATION OF SCHEDULING ALGORITHMS FOR LOAD BALANCING USING HYBRID APPROACH |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
AK | Designated contracting states |
Kind code of ref document: A2 Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LI LU MC NL PT SE |
|
AX | Request for extension of the european patent |
Free format text: AL;LT;LV;MK;RO;SI |
|
PUAL | Search report despatched |
Free format text: ORIGINAL CODE: 0009013 |
|
RIC1 | Information provided on ipc code assigned before grant |
Ipc: 7G 06F 9/48 B Ipc: 7G 06F 9/455 A |
|
AK | Designated contracting states |
Kind code of ref document: A3 Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LI LU MC NL PT SE |
|
AX | Request for extension of the european patent |
Extension state: AL LT LV MK RO SI |
|
17P | Request for examination filed |
Effective date: 20050510 |
|
AKX | Designation fees paid |
Designated state(s): DE FI FR GB NL SE |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION HAS BEEN WITHDRAWN |
|
18W | Application withdrawn |
Effective date: 20051206 |