JP2012243096A - Guest os management device, guest os management method, and guest os management program - Google Patents
Guest os management device, guest os management method, and guest os management program Download PDFInfo
- Publication number
- JP2012243096A JP2012243096A JP2011112790A JP2011112790A JP2012243096A JP 2012243096 A JP2012243096 A JP 2012243096A JP 2011112790 A JP2011112790 A JP 2011112790A JP 2011112790 A JP2011112790 A JP 2011112790A JP 2012243096 A JP2012243096 A JP 2012243096A
- Authority
- JP
- Japan
- Prior art keywords
- guest
- sleep
- unit
- memory
- monitoring
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
Description
本発明は、ゲストOS管理装置、ゲストOS管理方法及びゲストOS管理プログラムに関する。 The present invention relates to a guest OS management device, a guest OS management method, and a guest OS management program.
従来、複数のOS(Operating System)を1台の物理マシン上で起動させる仮想化技術がある。ここで、上記複数のOSは、ゲストOSと呼ぶことがある。かかる仮想化技術において、複数台のゲストOSが起動された場合に、仮想マシンモニタは、実際には有限個であるコンピュータ資源を仮想的にゲストOSに占有されているように見せかける。これにより、仮想化技術では、特別な変更を加えることなく各ゲストOSを動作させることができる。 Conventionally, there is a virtualization technology for starting a plurality of operating systems (OSs) on one physical machine. Here, the plurality of OSs may be referred to as guest OSs. In such a virtualization technique, when a plurality of guest OSs are activated, the virtual machine monitor makes it appear as if the guest OS virtually occupies a limited number of computer resources. Thereby, in the virtualization technology, each guest OS can be operated without any special change.
また、仮想マシンモニタは、各ゲストOSが占有していると見せかけているコンピュータ資源への利用要求を調整し、ゲストOS間でコンピュータ資源の干渉が起こらないように該コンピュータ資源を共有させる。具体的に、コンピュータ資源の1つとして物理メモリを例に挙げると、仮想マシンモニタは、4GBの物理メモリを1つのゲストOSに256MBずつ割り当てる場合に、16個のゲストOSを起動させることが可能となる。 In addition, the virtual machine monitor adjusts a use request for a computer resource that each guest OS seems to occupy, and shares the computer resource so that the guest OS does not interfere with the computer resource. Specifically, taking physical memory as an example of a computer resource, the virtual machine monitor can start 16 guest OSs when allocating 256 GB of physical memory to each guest OS. It becomes.
但し、このようにして各ゲストOSに割り当てられたメモリ量は、起動時に各ゲストOSが占有することが保証されている反面、起動後にゲストOSがメモリ量を増減しようとすることは困難である。換言すると、各ゲストOSは、処理が多い場合でもメモリ量を増強することができず、処理が少ない場合でも起動時に割り当てられたメモリ量を占有しなければならない。 However, while the amount of memory allocated to each guest OS is guaranteed to be occupied by each guest OS at the time of startup, it is difficult for the guest OS to increase or decrease the amount of memory after startup. . In other words, each guest OS cannot increase the amount of memory even when there are many processes, and must occupy the amount of memory allocated at startup even when there are few processes.
これらのことから、物理マシンのコンピュータ資源の利用を効率化し、より多くのゲストOSを1つの物理マシン上で動作させたいという要求がある。このため、最近では、物理マシンが実際に有する物理メモリ以上のメモリを各ゲストOSに利用させるオーバーコミットメント技術がある。かかるオーバーコミットメント技術は、一つの様態として、同一メモリページの共有、バルーニング又はスワッピング等の技術でも実現される。 For these reasons, there is a demand for efficient use of computer resources of physical machines and for operating more guest OSes on one physical machine. For this reason, recently, there is an overcommitment technology that allows each guest OS to use more memory than the physical memory that the physical machine actually has. Such an overcommitment technique can be realized by a technique such as sharing the same memory page, ballooning, or swapping as one aspect.
同一メモリページを共有する技術は、例えば、各ゲストOSが利用しているメモリページをスキャンし、同一内容のメモリページを検出した場合に、同一内容のメモリページをマージして、空いたメモリページを解放する技術である。かかる技術では、マージしたメモリページに対して書き込み等が発生し、同一の内容ではなくなった場合には、メモリページを複製して、複製したメモリページに対して書き込みを行なわせる。 The technology for sharing the same memory page is, for example, by scanning the memory page used by each guest OS and detecting the memory page with the same content, merging the memory pages with the same content, Is a technology to release In such a technique, when writing or the like occurs in the merged memory page and the contents are not the same, the memory page is duplicated, and writing is performed on the duplicated memory page.
バルーニング技術は、例えば、バルーンドライバと呼ばれるソフトウェアをゲストOSの中で動作させ、ゲストOSのフリーリストにあるメモリページを仮想マシンモニタ側に返却する技術である。かかる技術では、メモリを逼迫している他のゲストOSのフリーリストに、返却されたメモリページが渡されることにより、メモリの利用量が少ないゲストOSからメモリ利用量が多いゲストOSへメモリページを融通する。 The ballooning technique is, for example, a technique in which software called a balloon driver is operated in a guest OS, and a memory page on the guest OS free list is returned to the virtual machine monitor side. In such a technique, the returned memory page is passed to the free list of another guest OS that is struggling with memory, so that a memory page is transferred from a guest OS with a small memory usage to a guest OS with a large memory usage. Be flexible.
スワッピング技術は、例えば、メモリが逼迫してきた場合に、利用頻度の低いメモリページをLRU(Least Recently Used)アルゴリズム等に基づいて選択し、選択したメモリページをディスク領域等の2次記憶領域に退避させる技術である。かかる技術では、2次記憶領域に退避させたメモリページは、物理メモリ上からは削除され空きページとなる。 For example, when the memory is tight, the swapping technique selects a memory page with low usage frequency based on an LRU (Least Recently Used) algorithm or the like, and saves the selected memory page in a secondary storage area such as a disk area. Technology. With this technique, the memory page saved in the secondary storage area is deleted from the physical memory and becomes a free page.
しかしながら、従来技術では、メモリ領域を有効に利用することができないという問題がある。例えば、ゲストOSは、処理するプロセスがない場合にもアイドルプロセスを実行する。また、例えば、タイマ割り込み等の定期的なイベントを発生させ、ゲストOS内の時間調整を行なうことがある。すなわち、処理中ではないゲストOSであっても、少なくとも一部のメモリページを常にメモリ上に保持させおくことが好ましい。これらのことは、オーバーコミットメントの各種技術を利用しても同様に起こり得る。 However, the conventional technique has a problem that the memory area cannot be used effectively. For example, the guest OS executes an idle process even when there is no process to process. Further, for example, a periodic event such as a timer interrupt may be generated to adjust the time in the guest OS. That is, it is preferable to always keep at least a part of memory pages on the memory even for a guest OS that is not being processed. These things can happen as well using various over-commitment technologies.
例えば、同一メモリページを共有する技術は、常に書き込みが行なわれているページや、同一のメモリページが存在しないメモリページの場合に、マージされずに単独のメモリページとしてメモリ上に存在するため、全てのメモリページをマージできるわけではない。また、例えば、バルーニングやスワッピングの技術は、頻繁にアクセスするメモリページを返却又は退避すると、ゲストOS間での頻繁なメモリページのやり取りや、2次記憶領域とメモリとをメモリページが行き来するスラッシングが発生する。これらの結果、従来技術では、オーバーコミットメント技術により、より多くのゲストOSを1つの物理マシン上で動作させているものの、必ずしもメモリ領域を有効に利用できているわけではない。 For example, since the technology for sharing the same memory page is a page that is always written or a memory page that does not have the same memory page, it exists on the memory as a single memory page without being merged. Not all memory pages can be merged. In addition, for example, ballooning and swapping techniques, when memory pages that are frequently accessed are returned or saved, frequent memory page exchanges between guest OSs and thrashing in which memory pages move between the secondary storage area and the memory Occurs. As a result, in the conventional technique, more guest OSs are operated on one physical machine by the overcommitment technique, but the memory area is not always effectively used.
そこで、本発明は、上記に鑑みてなされたものであって、メモリ領域を有効に利用することが可能であるゲストOS管理装置、ゲストOS管理方法及びゲストOS管理プログラムを提供することを目的とする。 Therefore, the present invention has been made in view of the above, and an object of the present invention is to provide a guest OS management device, a guest OS management method, and a guest OS management program capable of effectively using a memory area. To do.
上述した課題を解決し、目的を達成するため、本発明に係るゲストOS管理装置は、自装置上に構築された仮想マシン上で動作するOSを示すゲストOSの動作に関する状況を監視する監視部と、前記監視部によって監視した状況が所定条件を満たす場合に、前記ゲストOSをスリープさせるスリープ部と、前記スリープ部によってスリープさせたゲストOSのメモリページを退避させてから解放するメモリ制御部とを有する。 In order to solve the above-described problems and achieve the object, the guest OS management device according to the present invention monitors a status related to the operation of the guest OS indicating the OS operating on the virtual machine constructed on the own device. And a sleep unit that causes the guest OS to sleep when a situation monitored by the monitoring unit satisfies a predetermined condition, and a memory control unit that releases and then releases the memory page of the guest OS that has been caused to sleep by the sleep unit. Have
本発明に係るゲストOS管理装置、ゲストOS管理方法及びゲストOS管理プログラムの一つの様態によれば、メモリ領域を有効に利用することができるという効果を奏する。 According to one aspect of the guest OS management device, guest OS management method, and guest OS management program according to the present invention, there is an effect that the memory area can be used effectively.
以下に添付図面を参照して、本発明に係るゲストOS管理装置、ゲストOS管理方法及びゲストOS管理プログラムの実施例を説明する。なお、以下の実施例により本発明が限定されるものではない。 Embodiments of a guest OS management apparatus, a guest OS management method, and a guest OS management program according to the present invention will be described below with reference to the accompanying drawings. In addition, this invention is not limited by the following examples.
[仮想化システム構成]
図1を用いて、実施例1に係る仮想化技術のシステム構成を説明する。図1は、実施例1に係る仮想化技術のシステム構成例を示す図である。
[Virtualization system configuration]
The system configuration of the virtualization technology according to the first embodiment will be described with reference to FIG. FIG. 1 is a diagram illustrating a system configuration example of the virtualization technology according to the first embodiment.
例えば、図1に示すように、仮想化技術のシステム構成は、複数のゲストOSを含む仮想マシンを構成する物理マシンと、ネットワークを介して物理マシンに接続可能なクライアントとを含む。上記構成において、各仮想マシンは、一つの様態として、クライアントからのサービス要求をトリガとして動作し、ネットワークを介して特定のサービスをクライアントに提供する。なお、物理マシンは、例えば、PC(Personal Computer)やサーバ装置等の情報処理装置である。また、各装置の数は、図示の数に限られるものではない。 For example, as illustrated in FIG. 1, the system configuration of the virtualization technology includes a physical machine that configures a virtual machine including a plurality of guest OSs, and a client that can be connected to the physical machine via a network. In the above configuration, as one aspect, each virtual machine operates with a service request from the client as a trigger, and provides a specific service to the client via the network. The physical machine is an information processing apparatus such as a PC (Personal Computer) or a server apparatus. Moreover, the number of each apparatus is not restricted to the number of illustration.
[物理マシンの構成]
次に、図2を用いて、実施例1に係る物理マシンの構成を説明する。図2は、実施例1に係る物理マシンの構成例を示す図である。
[Physical machine configuration]
Next, the configuration of the physical machine according to the first embodiment is described with reference to FIG. FIG. 2 is a diagram illustrating a configuration example of the physical machine according to the first embodiment.
例えば、図2に示すように、物理マシンは、クライアントにサービス(サーバサービス)を提供するためのソフトウェアを動作させるゲストOSを含む仮想マシンを少なくとも1つ有する。また、物理マシン上では、仮想マシンモニタ、ハイパーバイザ又はホストOSを含む仮想マシン管理ソフトウェアが動作する。仮想マシンモニタは、例えば、複数のゲストOSを動作させるソフトウェアである。かかる仮想マシン上では、1つ以上のゲストOSが動作する。ハイパーバイザは、例えば、仮想化技術を実現するための制御プログラムである。ホストOSは、例えば、物理マシン上にインストールされたOSを指す。 For example, as illustrated in FIG. 2, the physical machine includes at least one virtual machine including a guest OS that operates software for providing a service (server service) to a client. On the physical machine, virtual machine management software including a virtual machine monitor, a hypervisor, or a host OS operates. The virtual machine monitor is software for operating a plurality of guest OSes, for example. One or more guest OSs operate on the virtual machine. The hypervisor is a control program for realizing a virtualization technology, for example. The host OS refers to an OS installed on a physical machine, for example.
また、物理マシンは、物理メモリ、ディスク、ネットワークカード(NIC:Network Interface Card)、CPU(Central Processing Unit)等の実在するハードウェアを有する。物理メモリは、例えば、物理マシン内でメインメモリとして利用される記憶装置である。ディスクは、例えば、任意の記憶媒体にデータの記録を行なう記憶装置である。ネットワークカードは、例えば、ネットワークを介してクライアント等とパケットを送受信する。CPUは、例えば、物理マシン全体を制御する電子回路である。また、物理メモリやディスクは、2次記憶領域を有する。かかる2次記憶領域の利用については後述する。 The physical machine has real hardware such as a physical memory, a disk, a network card (NIC), and a CPU (Central Processing Unit). The physical memory is a storage device that is used as a main memory in a physical machine, for example. The disk is a storage device that records data on an arbitrary storage medium, for example. For example, the network card transmits / receives a packet to / from a client or the like via the network. The CPU is, for example, an electronic circuit that controls the entire physical machine. Further, the physical memory and the disk have a secondary storage area. The use of the secondary storage area will be described later.
[ゲストOS管理装置の構成]
次に、図3を用いて、実施例1に係るゲストOS管理装置の機能ブロックを説明する。図3は、実施例1に係るゲストOS管理装置の機能ブロックの例を示す図である。
[Guest OS management device configuration]
Next, functional blocks of the guest OS management apparatus according to the first embodiment are described with reference to FIG. FIG. 3 is a diagram illustrating an example of functional blocks of the guest OS management apparatus according to the first embodiment.
例えば、図3に示すように、ゲストOS管理装置100は、監視部110と、スリープ部120と、メモリ制御部130と、レジューム部140とを有する。かかるゲストOS管理装置100の各機能は、一つの様態として、図1又は図2に示した物理マシンに含まれる。または、図4に示すように、ゲストOS管理装置100の一部の機能を別の物理マシン(ネットワーク装置)上に持たせることも可能である。なお、図4は、ゲストOS管理装置100の機能を含むシステム構成例を示す図である。
For example, as illustrated in FIG. 3, the guest
さらに、図2に示すような構成で仮想マシン管理ソフトウェアを動作させた物理マシンを複数台動作させ、ネットワークで接続された別の物理マシンに仮想マシン管理ソフトウェアの動作する各物理マシン上で動作する各ゲストOSのコンピュータ資源の利用状況や各イベントの発生状況を送信させ、それらの情報を受け取った物理マシン上で各ゲストOSをスリープさせるか、レジュームさせるかの判定を行なわせ、スリープさせる、又はレジュームさせると判定した場合にはその指令を該仮想マシン管理ソフトウェアの動作する物理マシンに送信するような構成をとることも可能である。 Further, a plurality of physical machines on which the virtual machine management software is operated with the configuration shown in FIG. 2 are operated, and operate on each physical machine on which the virtual machine management software operates on another physical machine connected via the network. Send the usage status of each guest OS computer and the occurrence status of each event, determine whether to sleep or resume each guest OS on the physical machine that received the information, and put it to sleep, or If it is determined to resume, the command can be transmitted to the physical machine on which the virtual machine management software operates.
監視部110は、ゲストOS管理装置100上に構築された仮想的な別のコンピュータ環境である仮想マシン上で動作するOSを示すゲストOSの動作に関する状況を監視する。かかるコンピュータ資源の一例としては、物理メモリ、ディスク、ネットワークカード、CPU等が挙げられる。つまり、監視部110は、一つの様態として、メモリページへのアクセス等が実行される場合の、コンピュータ資源の利用状況を監視する。また、監視部110は、監視状況をスリープ部120に通知する。また、監視部110は、一つの様態として、ネットワークパケット等を監視する場合、ネットワークで接続された別物理マシン上(ネットワーク装置)に監視部110を配置し、それ以外の機能を物理マシンに持たせても良い。
The monitoring unit 110 monitors the status related to the operation of the guest OS indicating the OS that operates on a virtual machine that is another virtual computer environment built on the guest
また、例えば、監視部110は、ゲストOSの所定イベントの発生状況を監視しても良い。所定イベントの発生状況を監視する場合には、監視部110は、例えば、各ゲストOS内に配置されても良い。かかる所定イベントの一例としては、プロセス又はスレッドの生成・消失、ファイルアクセス、パケットの送受信、例外の発生、オープン又はクローズしているソケット数、ゲストOSの状態を変化させる事象等が挙げられる。つまり、監視部110は、一つの様態として、メモリページへのアクセス等が実行される場合の、所定イベントの発生状況を監視する。このときも同様に、監視部110は、監視状況をスリープ部120に通知する。 For example, the monitoring unit 110 may monitor the occurrence state of a predetermined event of the guest OS. When monitoring the occurrence status of a predetermined event, the monitoring unit 110 may be disposed in each guest OS, for example. Examples of such a predetermined event include process / thread creation / disappearance, file access, packet transmission / reception, exception occurrence, number of open or closed sockets, event that changes the state of the guest OS, and the like. That is, the monitoring unit 110 monitors the occurrence of a predetermined event when access to a memory page or the like is executed as one aspect. Similarly, at this time, the monitoring unit 110 notifies the sleep unit 120 of the monitoring status.
スリープ部120は、監視部110によって監視した状況が所定条件を満たす場合に、ゲストOSをスリープさせる。かかる所定条件は、例えば、図示していない記憶部等に記憶されている。上記コンピュータ資源の利用状況を監視する例で具体的に説明すると、スリープ部120は、監視部110によって監視した所定コンピュータ資源の一定期間の利用状況が所定条件以下である場合に、該当するゲストOSをスリープさせる。つまり、スリープ部120は、コンピュータ資源が利用されていないことから、サービス要求の処理中ではないと判定し、アイドルプロセスの実行等の何らかの形でメモリ領域を利用することがあるゲストOSをスリープさせる。これにより、スリープさせたゲストOSによるメモリアクセス等を停止させることができる。また、スリープ部120は、スリープさせたゲストOSをメモリ制御部130に通知する。
The sleep unit 120 causes the guest OS to sleep when the status monitored by the monitoring unit 110 satisfies a predetermined condition. Such predetermined conditions are stored in, for example, a storage unit (not shown). More specifically, an example of monitoring the usage status of the computer resource will be described below. The sleep unit 120 corresponds to a corresponding guest OS when the usage status of the predetermined computer resource monitored by the monitoring unit 110 is less than or equal to a predetermined condition. Sleep. That is, the sleep unit 120 determines that the service request is not being processed because the computer resource is not used, and sleeps the guest OS that may use the memory area in some form such as execution of an idle process. . As a result, memory access or the like by the guest OS that has been put to sleep can be stopped. In addition, the sleep unit 120 notifies the
詳細には、ゲストOS管理装置100は、サービスの利用要求に対する処理を実行していないときの任意のゲストOSにおける、CPU利用率、メモリ利用率、ネットワーク利用率等を記憶しておき、各コンピュータ資源の何れか一つ又は一つ以上の値を基準値として設定する。そして、スリープ部120は、監視部110によるコンピュータ資源の監視に基づき、予め定められた一定期間に利用状況が基準値以下である場合に、該当するゲストOSにおいてはクライアントからのサービス要求に応じた処理を実行していないと判定し、該当するゲストOSをスリープさせる。
Specifically, the guest
また、上記所定イベントの発生状況を監視する例で具体的に説明すると、スリープ部120は、監視部110によって監視した所定イベントの一定期間の発生状況が所定条件以下である場合に、該当するゲストOSをスリープさせる。つまり、スリープ部120は、イベントが発生していないことから、サービス要求の処理中ではないと判定し、アイドルプロセスの実行等の何らかの形でメモリ領域を利用することがあるゲストOSをスリープさせる。すなわち、図2に示す仮想マシン管理ソフトウェアは、監視部110からの監視結果に基づき、該当するゲストOSをスリープさせる。これにより、スリープさせたゲストOSによるメモリアクセス等を停止させることができる。このときも同様に、スリープ部120は、スリープさせたゲストOSをメモリ制御部130に通知する。
Further, the example of monitoring the occurrence status of the predetermined event will be described in detail. The sleep unit 120 is configured to output a corresponding guest when the occurrence status of the predetermined event monitored by the monitoring unit 110 is equal to or less than a predetermined condition. Sleep the OS. That is, the sleep unit 120 determines that the service request is not being processed because no event has occurred, and sleeps the guest OS that may use the memory area in some form such as execution of an idle process. That is, the virtual machine management software illustrated in FIG. 2 causes the corresponding guest OS to sleep based on the monitoring result from the monitoring unit 110. As a result, memory access or the like by the guest OS that has been put to sleep can be stopped. Similarly, at this time, the sleep unit 120 notifies the
ここで、Apache(登録商標)等のHTTP(HyperText Transfer Protocol)サーバ上でホームページが構築され、クライアントからのHTTP要求に応じて、ホームページを返すWebサービスを提供するOSを例に挙げる。かかるApache(登録商標)は、クライアントからの要求に応じてスレッドを生成し、スレッドにクライアントからの要求を処理させるモデルを採用している。これにより、スレッドがゲストOS上で実行されていない場合には、クライアントからの要求を処理していないと判定できる。 Here, an OS that provides a Web service in which a homepage is constructed on an HTTP (HyperText Transfer Protocol) server such as Apache (registered trademark) and returns the homepage in response to an HTTP request from a client will be described as an example. Such Apache (registered trademark) employs a model in which a thread is generated in response to a request from a client and the thread processes the request from the client. Thereby, when the thread is not executed on the guest OS, it can be determined that the request from the client is not processed.
これらのことから、スリープ部120は、監視部110によるゲストOS上で生成されるスレッドの監視に基づいて、一定期間にApache(登録商標)からのスレッド生成が観測されなかった場合に、該当するゲストOSはクライアントからの要求を処理していないと判定して、該当するゲストOSをスリープさせる。また、スレッドだけでなく、ゲストOS内で生成されるプロセスやオープンしているソケット数等の、ゲストOS内から取得可能な情報に基づいて、スリープさせることにしても良い。 Therefore, the sleep unit 120 corresponds to the case where no thread generation from Apache (registered trademark) is observed for a certain period based on the monitoring of the thread generated on the guest OS by the monitoring unit 110. The guest OS determines that the request from the client is not processed, and sleeps the corresponding guest OS. Further, not only the thread but also the process generated in the guest OS, the number of open sockets, and the like may be set to sleep based on information that can be acquired from the guest OS.
メモリ制御部130は、スリープ部120によってスリープさせたゲストOSのメモリページを退避させてから解放する。例えば、メモリ制御部130は、スリープ部120によってスリープさせたゲストOSのメモリページを2次記憶領域に移動させ、ゲストOSのメモリページを解放する。かかる2次記憶領域は、例えば、物理メモリ、ディスク領域等を指す。また、物理メモリは、特定の領域を2次記憶領域とし、この領域を圧縮メモリ領域とすることも可能である。すなわち、2次記憶領域は、物理メモリ上に設けられた圧縮メモリ領域を指すこともある。
The
レジューム部140は、スリープ部120によってスリープさせたゲストOSに対する特定イベントの発生を監視部110によって検知された場合に、ゲストOSをレジュームし、メモリ制御部130によって解放させたメモリページを読み込んで展開する。かかる特定イベントの一例としては、パケットが到着したこと、一定時間が経過したこと等が挙げられる。
The
例えば、レジューム部140は、スリープ部120によってスリープさせたゲストOSに対するパケットが到着したことを監視部110によって検知された場合に、該当するゲストOSをレジュームすることで、スリープ状態からアクティブ状態へと遷移させる。ここで、ゲストOS管理装置100は、パケットの宛先IP(Internet Protocol)アドレス及び/又はポート番号と、ゲストOSとを対応付けて図示していない記憶部等に記憶しているとともに、各ゲストOSの状態(スリープ状態或いはアクティブ状態)を管理している。これらの情報を利用して、レジューム部140は、ゲストOSに対するパケットが到着したことを監視部110によって検知された場合に、パケットの送信先であるゲストOSがスリープ状態であるか否かを判定している。そして、レジューム部140は、メモリ制御部130によって2次記憶領域に移動させたメモリページを読み込み、メモリ上に復元する。これらにより、到着したパケットは、レジューム後のゲストOSに渡され処理される。なお、パケットの送信先であるゲストOSがアクティブ状態である場合に、レジューム部140は、パケットをそのまま転送する。
For example, when the monitoring unit 110 detects that a packet for a guest OS that has been put to sleep by the sleep unit 120 has arrived, the
また、別の例として、レジューム部140は、スリープ部120によってあるゲストOSをスリープさせる際にタイマをセットし、そのタイマがタイムアップして、予め定めていた一定時間が経過したと判定した場合に、該当するゲストOSをレジュームさせ、スリープ状態からアクティブ状態へと遷移させることもできる。
As another example, when the
[スリープ処理の流れ]
次に、図5を用いて、実施例1に係るスリープ処理を説明する。図5は、実施例1に係るスリープ処理の流れの例を示すフローチャートである。なお、スリープ処理とは、主に、監視部110と、スリープ部120と、メモリ制御部130とによる処理を指す。
[Flow of sleep processing]
Next, the sleep process according to the first embodiment will be described with reference to FIG. FIG. 5 is a flowchart illustrating an example of the flow of the sleep process according to the first embodiment. Note that the sleep processing mainly refers to processing by the monitoring unit 110, the sleep unit 120, and the
例えば、図5に示すように、ゲストOS管理装置100は、ゲストOSの動作に関する状況を監視する(ステップS101)。ゲストOSの動作に関する状況については、例えば、物理メモリ、ディスク、ネットワークカード、CPU等のコンピュータ資源の利用状況と、プロセス又はスレッドの生成・消失、ファイルアクセス、パケットの送受信、例外の発生、オープン又はクローズしているソケット数、ゲストOSの状態を変化させる事象等の特定イベントの発生状況とが挙げられる。
For example, as shown in FIG. 5, the guest
そして、ゲストOS管理装置100は、監視した状況が所定条件を満たすか否かを判定する(ステップS102)。所定条件について、ゲストOS管理装置100は、コンピュータ資源の利用状況を監視した場合に、一定期間の利用状況が所定条件(一定値)以下であるか否かを判定し、特定イベントの発生状況を監視した場合に、一定期間の発生状況が所定条件(一定値)以下であるか否かを判定する。
Then, the guest
このとき、ゲストOS管理装置100は、監視した状況が所定条件を満たすと判定した場合に(ステップS102肯定)、該当するゲストOSをスリープさせる(ステップS103)。一方、ゲストOS管理装置100は、監視した状況が所定条件を満たさないと判定した場合に(ステップS102否定)、該当するゲストOSがアクティブであるため、再度ステップS101の処理を実行する。その後、ゲストOS管理装置100は、スリープさせたゲストOSによって利用されていたメモリページを2次記憶領域に移動させ、メモリを解放する(ステップS104)。
At this time, when the guest
[レジューム処理の流れ]
次に、図6を用いて、実施例1に係るレジューム処理を説明する。図6は、実施例1に係るレジューム処理の流れの例を示すフローチャートである。なお、レジューム処理とは、主に、レジューム部140による処理を指す。
[Resume processing flow]
Next, the resume process according to the first embodiment will be described with reference to FIG. FIG. 6 is a flowchart illustrating an example of a resume process according to the first embodiment. The resume process mainly refers to a process performed by the
例えば、図6に示すように、ゲストOS管理装置100は、ゲストOSに対するパケットが到着したことを検知した場合に(ステップS201肯定)、パケットの送信先のゲストOSがスリープ状態であるか否かを判定する(ステップS202)。このとき、ゲストOS管理装置100は、パケットの送信先のゲストOSがスリープ状態である場合に(ステップS202肯定)、該当するゲストOSをレジュームする(ステップS203)。
For example, as illustrated in FIG. 6, when the guest
そして、ゲストOS管理装置100は、スリープ状態であったゲストOSのメモリページを読み込み、メモリ上に復元する(ステップS204)。その後、ゲストOS管理装置100は、レジュームさせたゲストOSにパケットを転送する(ステップS205)。また、ゲストOS管理装置100は、ゲストOSに対するパケットが到着したことを検知していない場合に(ステップS201否定)、パケットの到着待ちの状態となる。また、ゲストOS管理装置100は、パケットの送信先のゲストOSがスリープ状態でない場合に(ステップS202否定)、この動作中のゲストOSにパケットを転送する(ステップS206)。
Then, the guest
[実施例1による効果]
ゲストOS管理装置100は、ゲストOSにおけるコンピュータ資源の利用状況やイベントの発生状況等に基づいて、利用されていないゲストOSをスリープさせ、スリープさせたゲストOSのメモリページを退避させ解放する。この結果、ゲストOS管理装置100は、利用していないゲストOSがメモリを占有する従来技術と比較して、メモリ領域を有効に利用することができる。
[Effects of Example 1]
The guest
さて、これまで本発明に係るゲストOS管理100の実施例について説明したが、上述した実施例以外にも種々の異なる形態にて実施されてよいものである。そこで、(1)監視対象、(2)スリープの優先順位、(3)スリープの条件、(4)メモリの解放、(5)構成、(6)プログラム、において異なる実施例を説明する。
The embodiments of the
(1)監視対象
上記実施例では、コンピュータの資源利用状況を監視してゲストOSをスリープさせる場合と、イベントの発生状況を監視してゲストOSをスリープさせる場合とを説明したが、これら両方を監視して、両方のスリープの条件又は少なくともいずれか一方のスリープの条件を満たしたときに、ゲストOSをスリープさせても良い。これにより、監視対象を増やしてゲストOSをスリープさせるので、メモリ領域をより有効に利用することができる。
(1) Monitoring target In the above embodiment, the case where the guest OS is caused to sleep by monitoring the resource usage state of the computer and the case where the guest OS is caused to sleep by monitoring the event occurrence state have been described. The guest OS may be put to sleep when monitored and when both sleep conditions or at least one of the sleep conditions is satisfied. As a result, the number of monitoring targets is increased and the guest OS is put to sleep, so the memory area can be used more effectively.
(2)スリープの優先順位
また、上記実施例では、ゲストOSごとに独立してスリープの要否判定を実行する場合を説明した。本発明はこれに限られるものではなく、例えば、物理マシン全体のメモリを監視し、一定値以上のメモリが使用されるようになった場合、又は、所定期間に一定値以上のメモリが使用されている状況が続いた場合に、上記実施例を実行しても良い。具体的には、監視部110は、常にコンピュータ資源の利用状況を監視し、あるゲストOSの利用しているコンピュータ資源の監視状況が所定の条件を満たした場合も該ゲストOSをスリープさせずに、現在の状況を記憶しておき、該ゲストOSの実行を継続させる。また、物理マシンの物理メモリの利用状況が一定値以上になった場合に、スリープ部120は、記憶しておいたコンピュータ資源の利用状況に基づき、スリープさせる条件を満たすものをスリープさせていく。これにより、処理負荷を軽減できるとともに、必要以上にメモリを解放することなく、メモリ領域を有効に利用することができる。
(2) Sleep Priority In the above embodiment, the case where the necessity determination of sleep is executed independently for each guest OS has been described. The present invention is not limited to this. For example, when the memory of the entire physical machine is monitored and a memory of a certain value or more is used, or a memory of a certain value or more is used for a predetermined period. The above embodiment may be executed when the situation continues. Specifically, the monitoring unit 110 always monitors the use status of computer resources, and does not sleep the guest OS even when the monitor status of the computer resources used by a certain guest OS satisfies a predetermined condition. The current status is stored, and the execution of the guest OS is continued. In addition, when the usage status of the physical memory of the physical machine becomes a certain value or more, the sleep unit 120 sleeps those that satisfy the sleep condition based on the stored usage status of the computer resources. As a result, the processing load can be reduced, and the memory area can be used effectively without releasing the memory more than necessary.
さらに、例えば、特定のコンピュータ資源の利用量が予め定めた基準値を超えた場合に、予め定められたゲストOS間の優先順位、又は、1つ以上のゲストOSをグループ化したグループ間に定めた優先順位に基づいて、コンピュータ資源の利用量が一定値以下になるまでスリープさせても良い。具体的には、物理メモリの利用状況が一定値以上になり、ゲストOSを順次スリープさせていく際に、ゲストOS毎又は複数のゲストOSをまとめたグループ毎に優先度を予め設けておき、スリープ条件を満たしたゲストOSのうち、物理メモリの利用状況が一定値以下になるまで、この優先度に基づき優先度の低いものから順次スリープさせていく。これにより、より重要なサービスに対応するゲストOSを必要以上に停止することなく、メモリ領域を有効に利用することができる。 Further, for example, when the usage amount of a specific computer resource exceeds a predetermined reference value, a predetermined priority order among guest OSs or a group in which one or more guest OSs are grouped is determined. On the basis of the priority, the computer resource may be put to sleep until the usage amount of the computer resource becomes a predetermined value or less. Specifically, when the usage status of the physical memory becomes a certain value or more and the guest OSs are sequentially put to sleep, a priority is set in advance for each guest OS or for each group of guest OSes. Based on this priority, the guest OSs that satisfy the sleep condition are made to sleep in order from the lowest priority until the usage state of the physical memory falls below a certain value. As a result, the memory area can be used effectively without stopping the guest OS corresponding to a more important service more than necessary.
(3)スリープの条件
また、上記実施例では、ゲストOSをスリープさせる条件について特に個別に設定せずに、全てのゲストOSで共通である場合を説明したが、ゲストOSごとに異なる条件を設定しても良いし、ゲストOSをグループ化してグループごとに異なる条件を設定しても良い。これにより、サービスの利用度、関連度、重要度等に応じたゲストOSのスリープを実現することができる。
(3) Sleep conditions In the above embodiment, the case where the guest OS is set to sleep is not specifically set individually, but is common to all guest OSes. However, different conditions are set for each guest OS. Alternatively, guest OSs may be grouped and different conditions may be set for each group. As a result, it is possible to realize sleep of the guest OS according to service usage, relevance, importance, and the like.
(4)メモリの解放
また、上記実施例では、スリープさせたゲストOSのメモリページをメモリ制御部130により2次記憶領域に移動する場合を説明したが、仮想マシン管理ソフトウェア(ホストOSや仮想マシンモニタ)の機能で2次記憶領域に移動させるようにしても良い。また、レジュームした後のメモリの展開についても仮想マシン管理ソフトウェア(ホストOSや仮想マシンモニタ)の機能で実行させるようにしても良い。つまり、ゲストOSがスリープした場合には、一つの様態として、ゲストOSの利用していたメモリ領域にメモリアクセスが発生しなくなり、非アクティブのメモリとしてホストOS側が認識することになる。そして、ホストOSのメモリが逼迫してきた場合には、ホストOSのメモリ管理に係る機構が非アクティブのメモリをページアウトする。これらの結果、明示的にメモリページをレジュームと同時に全てページインさせることを要しない。これにより、本発明を適用する実施形態や要求されるパフォーマンスに応じて好適に処理させることができる。
(4) Release of memory In the above embodiment, the case where the memory page of the guest OS that has been put to sleep is moved to the secondary storage area by the
(5)構成
また、上記文書中や図面中等で示した処理手順、制御手順、具体的名称、各種のデータやパラメタ等を含む情報(例えば、スリープ部120やレジューム部140の名称等)については、特記する場合を除いて任意に変更することができる。
(5) Configuration In addition, regarding the processing procedure, control procedure, specific name, information including various data and parameters, etc. (for example, names of the sleep unit 120 and the
また、図示したゲストOS管理装置100の各構成要素は、機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は、図示のものに限られず、その全部又は一部を各種の負担や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合することができる。例えば、スリープ部120とレジューム部140とを、物理マシン上で動作する各ゲストOSのスリープやレジュームを制御する「ゲストOS制御部」として統合しても良い。
Each component of the illustrated guest
また、ゲストOS管理装置100にて行われる各処理機能は、その全部又は任意の一部が、CPU(Central Processing Unit)および当該CPUにて解析実行されるプログラムにて実現され、或いは、ワイヤードロジックによるハードウェアとして実現され得る。
Each processing function performed in the guest
(6)プログラム
図7は、ゲストOS管理プログラムによる処理がコンピュータを用いて具体的に実現されることを示す図である。図7に例示するように、コンピュータ1000は、例えば、メモリ1001と、CPU1002と、ハードディスクドライブインタフェース1003と、ディスクドライブインタフェース1004と、シリアルポートインタフェース1005と、ビデオアダプタ1006と、ネットワークインタフェース1007とを有し、これらの各部はバス1008によって接続される。
(6) Program FIG. 7 is a diagram showing that the processing by the guest OS management program is specifically realized using a computer. As illustrated in FIG. 7, the
メモリ1001は、図7に例示するように、ROM(Read Only Memory)1001a及びRAM(Random Access Memory)1001bを含む。ROM1001aは、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1003は、図7に例示するように、ハードディスクドライブ1009に接続される。ディスクドライブインタフェース1004は、図7に例示するように、ディスクドライブ1010に接続される。例えば、磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1010に挿入される。シリアルポートインタフェース1005は、図7に例示するように、例えばマウス1011、キーボード1012に接続される。ビデオアダプタ1006は、図7に例示するように、例えばディスプレイ1013に接続される。
As illustrated in FIG. 7, the
ここで、図7に例示するように、ハードディスクドライブ1009は、例えば、OS1009a、アプリケーションプログラム1009b、プログラムモジュール1009c、プログラムデータ1009dを記憶する。すなわち、ゲストOS管理プログラムは、コンピュータ1000によって実行される指令が記述されたプログラムモジュール1009cとして、例えばハードディスクドライブ1009に記憶される。具体的には、上記実施例で説明した監視部110と同様の処理を実行する監視手順と、スリープ部120と同様の処理を実行するスリープ手順と、メモリ制御部130と同様の処理を実行するメモリ制御手順と、レジューム部140と同様の処理を実行するレジューム手順とが記述されたプログラムモジュール1009cが、ハードディスクドライブ1009に記憶される。また、ゲストOS管理プログラムによる処理に用いられるデータは、プログラムデータ1009dとして、例えばハードディスクドライブ1009に記憶される。そして、CPU1002が、ハードディスクドライブ1009に記憶されたプログラムモジュール1009cやプログラムデータ1009dを必要に応じてRAM1001bに読み出し、監視手順、スリープ手順、メモリ制御手順、レジューム手順を実行する。
Here, as illustrated in FIG. 7, the
なお、ゲストOS管理プログラムに係るプログラムモジュール1009cやプログラムデータ1009dは、ハードディスクドライブ1009に記憶される場合に限られず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ1010等を介してCPU1002によって読み出されてもよい。あるいは、ゲストOS管理プログラムに係るプログラムモジュール1009cやプログラムデータ1009dは、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶され、ネットワークインタフェース1007を介してCPU1002によって読み出されてもよい。
Note that the
100 ゲストOS管理装置
110 監視部
120 スリープ部
130 メモリ制御部
140 レジューム部
100 guest OS management device 110 monitoring unit 120
Claims (7)
前記監視部によって監視した状況が所定条件を満たす場合に、前記ゲストOSをスリープさせるスリープ部と、
前記スリープ部によってスリープさせたゲストOSのメモリページを退避させてから解放するメモリ制御部と
を有することを特徴とするゲストOS管理装置。 A monitoring unit for monitoring the status related to the operation of the guest OS indicating the OS (Operating System) operating on the virtual machine constructed on the own device;
A sleep unit that causes the guest OS to sleep when a situation monitored by the monitoring unit satisfies a predetermined condition;
A guest OS management apparatus comprising: a memory control unit that saves and then releases a memory page of the guest OS that has been put to sleep by the sleep unit.
前記監視部によって監視した、前記スリープ部によってスリープさせたゲストOSに対する特定イベントの発生を検知した場合に前記ゲストOSをレジュームし、前記メモリ制御部によって解放させたメモリページを読み込んで展開するレジューム部をさらに有することを特徴とする請求項1に記載のゲストOS管理装置。 The monitoring unit monitors the occurrence of a specific event for the guest OS that is put to sleep by the sleep unit,
Resume unit that resumes the guest OS and reads and expands the memory page released by the memory control unit when the occurrence of a specific event detected by the sleep unit is detected by the monitoring unit. The guest OS management apparatus according to claim 1, further comprising:
前記スリープ部は、前記監視部によって監視した所定コンピュータ資源の利用状況が所定条件以下である場合に、前記ゲストOSをスリープさせることを特徴とする請求項1又は2に記載のゲストOS管理装置。 The monitoring unit monitors a usage status of a predetermined computer resource of the guest OS,
The guest OS management apparatus according to claim 1, wherein the sleep unit causes the guest OS to sleep when the usage status of the predetermined computer resource monitored by the monitoring unit is equal to or less than a predetermined condition.
前記スリープ部は、前記監視部によって監視した所定イベントの発生状況が所定条件以下である場合に、前記ゲストOSをスリープさせることを特徴とする請求項1又は2に記載のゲストOS管理装置。 The monitoring unit monitors the occurrence of a predetermined event of the guest OS,
The guest OS management apparatus according to claim 1, wherein the sleep unit causes the guest OS to sleep when an occurrence state of a predetermined event monitored by the monitoring unit is equal to or less than a predetermined condition.
前記ゲストOS管理装置上に構築された仮想マシン上で動作するOSを示すゲストOSの動作に関する状況を監視する監視工程と、
前記監視工程によって監視した状況が所定条件を満たす場合に、前記ゲストOSをスリープさせるスリープ工程と、
前記スリープ工程によってスリープさせたゲストOSのメモリページを退避させてから解放するメモリ制御工程と
を含んだことを特徴とするゲストOS管理方法。 A guest OS management method executed by a guest OS (Operating System) management device,
A monitoring step of monitoring a status related to the operation of the guest OS indicating the OS operating on the virtual machine constructed on the guest OS management device;
A sleep step of causing the guest OS to sleep when the situation monitored by the monitoring step satisfies a predetermined condition;
And a memory control step of saving and releasing the memory page of the guest OS that has been put to sleep by the sleep step.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011112790A JP2012243096A (en) | 2011-05-19 | 2011-05-19 | Guest os management device, guest os management method, and guest os management program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011112790A JP2012243096A (en) | 2011-05-19 | 2011-05-19 | Guest os management device, guest os management method, and guest os management program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2012243096A true JP2012243096A (en) | 2012-12-10 |
Family
ID=47464740
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011112790A Pending JP2012243096A (en) | 2011-05-19 | 2011-05-19 | Guest os management device, guest os management method, and guest os management program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2012243096A (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014191776A (en) * | 2013-03-28 | 2014-10-06 | Fujitsu Ltd | Virtual machine control program, virtual machine control method, virtual machine control device, and cloud system |
JP2014191368A (en) * | 2013-03-26 | 2014-10-06 | Fujitsu Ltd | Management program, management apparatus, and management method |
JP2017033331A (en) * | 2015-08-03 | 2017-02-09 | 富士通株式会社 | Proxy response program, proxy response device, and proxy response method |
JP2017517812A (en) * | 2014-06-24 | 2017-06-29 | インテル コーポレイション | Virtual machine power management |
WO2019123740A1 (en) * | 2017-12-20 | 2019-06-27 | コニカミノルタ株式会社 | Central management device and method for subject monitoring assistance system, and said subject monitoring assistance system |
CN110178117A (en) * | 2017-02-24 | 2019-08-27 | 株式会社东芝 | Control device |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009258982A (en) * | 2008-04-16 | 2009-11-05 | Ntt Docomo Inc | Node device, program, and resource-allocating method |
JP2010224914A (en) * | 2009-03-24 | 2010-10-07 | Ntt Data Corp | Instance management system and computer program |
JP2011060238A (en) * | 2009-09-14 | 2011-03-24 | Ricoh Co Ltd | Information processor, image forming apparatus, operation mode switching method |
-
2011
- 2011-05-19 JP JP2011112790A patent/JP2012243096A/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009258982A (en) * | 2008-04-16 | 2009-11-05 | Ntt Docomo Inc | Node device, program, and resource-allocating method |
JP2010224914A (en) * | 2009-03-24 | 2010-10-07 | Ntt Data Corp | Instance management system and computer program |
JP2011060238A (en) * | 2009-09-14 | 2011-03-24 | Ricoh Co Ltd | Information processor, image forming apparatus, operation mode switching method |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014191368A (en) * | 2013-03-26 | 2014-10-06 | Fujitsu Ltd | Management program, management apparatus, and management method |
US9542217B2 (en) | 2013-03-26 | 2017-01-10 | Fujitsu Limited | System, method, and recording medium |
JP2014191776A (en) * | 2013-03-28 | 2014-10-06 | Fujitsu Ltd | Virtual machine control program, virtual machine control method, virtual machine control device, and cloud system |
JP2017517812A (en) * | 2014-06-24 | 2017-06-29 | インテル コーポレイション | Virtual machine power management |
JP2017033331A (en) * | 2015-08-03 | 2017-02-09 | 富士通株式会社 | Proxy response program, proxy response device, and proxy response method |
US10191760B2 (en) | 2015-08-03 | 2019-01-29 | Fujitsu Limited | Proxy response program, proxy response device and proxy response method |
CN110178117A (en) * | 2017-02-24 | 2019-08-27 | 株式会社东芝 | Control device |
CN110178117B (en) * | 2017-02-24 | 2023-06-02 | 株式会社东芝 | Control device |
WO2019123740A1 (en) * | 2017-12-20 | 2019-06-27 | コニカミノルタ株式会社 | Central management device and method for subject monitoring assistance system, and said subject monitoring assistance system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11181970B2 (en) | System and method for performing distributed power management without power cycling hosts | |
JP4980792B2 (en) | Virtual machine performance monitoring method and apparatus using the method | |
US7849286B2 (en) | Method for dynamic load balancing on partitioned systems | |
US8307369B2 (en) | Power control method for virtual machine and virtual computer system | |
CN112955871B (en) | Resource conservation in containerized systems | |
CN103176845B (en) | A kind of virtual machine deployment method, system and device | |
JP2009145931A (en) | Migration method between virtual computer and physical computer and computer system thereof | |
US20200034073A1 (en) | Accelerating background tasks in a computing cluster | |
Deshpande et al. | Scatter-gather live migration of virtual machines | |
US20110107344A1 (en) | Multi-core apparatus and load balancing method thereof | |
JP4811830B1 (en) | Computer resource control system | |
JP2012243096A (en) | Guest os management device, guest os management method, and guest os management program | |
JP6123626B2 (en) | Process resumption method, process resumption program, and information processing system | |
US10310890B2 (en) | Control method for virtual machine system, and virtual machine system | |
JP2010086145A (en) | Distributed processing system | |
EP4332764A1 (en) | Virtual machine migration method and related apparatus | |
Fukai et al. | Live migration in bare-metal clouds | |
JP2003162515A (en) | Cluster system | |
Zhi et al. | Oasis: energy proportionality with hybrid server consolidation | |
US8799903B1 (en) | Systems and methods for exchanging runtime functionalities between software stacks | |
JP5597293B2 (en) | Computer system and program | |
JP5557612B2 (en) | Computer and transfer program | |
US20180341482A1 (en) | Method and arrangement for utilization of a processing arrangement | |
JP5390651B2 (en) | Computer system and program | |
JP2008165318A (en) | Computer system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130717 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140319 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140401 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140529 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20141202 |