JP2010061253A - Memory management server and method, and program - Google Patents
Memory management server and method, and program Download PDFInfo
- Publication number
- JP2010061253A JP2010061253A JP2008224320A JP2008224320A JP2010061253A JP 2010061253 A JP2010061253 A JP 2010061253A JP 2008224320 A JP2008224320 A JP 2008224320A JP 2008224320 A JP2008224320 A JP 2008224320A JP 2010061253 A JP2010061253 A JP 2010061253A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- data
- image file
- storage device
- application program
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 39
- 238000007726 management method Methods 0.000 claims abstract description 46
- 238000013507 mapping Methods 0.000 claims abstract description 36
- 238000012545 processing Methods 0.000 claims abstract description 14
- 230000006870 function Effects 0.000 description 21
- 230000003287 optical effect Effects 0.000 description 8
- 230000000694 effects Effects 0.000 description 7
- 230000010365 information processing Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- 239000004065 semiconductor Substances 0.000 description 5
- 230000001360 synchronised effect Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000002411 adverse Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000001747 exhibiting effect Effects 0.000 description 1
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
本発明は、メモリ管理サーバ、方法及びプログラムに関する。さらに、詳細には、WEBアプリケーションプログラム毎にアプリケーションサーバでメモリを共有するサーバ、方法及びプログラムに関する。 The present invention relates to a memory management server, a method, and a program. More specifically, the present invention relates to a server, a method, and a program for sharing a memory among application servers for each WEB application program.
一般的に、WEBアプリケーションプログラムにおいてリクエスト毎に同じデータを参照したい場合にはデータベースサーバを使用している。 Generally, a database server is used when it is desired to refer to the same data for each request in a WEB application program.
しかし、さらに早いスピードを求められるWEBアプリケーションプログラムの場合には、データをWEBサーバの共有メモリ上に格納(記憶)し、メモリアクセスのみでデータを検索することによってデータベースサーバによるオーバヘッドを回避することがある(例えば特許文献1参照)。 However, in the case of a WEB application program that requires higher speed, it is possible to avoid the overhead caused by the database server by storing (storing) the data on the shared memory of the WEB server and retrieving the data only by memory access. Yes (see, for example, Patent Document 1).
WEBサーバ上の半導体素子による共有メモリを使用するとデータへのアクセスを高速に実行することが可能となるが、WEBアプリケーションプログラムがリクエスト毎に新たなプロセスを生成するようなものである場合には、共有メモリを使用することができない。 If a shared memory by a semiconductor element on the WEB server is used, data can be accessed at a high speed. However, if the WEB application program generates a new process for each request, The shared memory cannot be used.
また、共有メモリを使用する場合にはアプリケーションサーバのメモリリソースを消費することになるために、あまり大量のデータを共有メモリに格納(記憶)することができない。 Further, when the shared memory is used, the memory resources of the application server are consumed, so that a large amount of data cannot be stored (stored) in the shared memory.
本発明は、このような状況に鑑みてなされたものであり、HDD(Hard Disc Drive)等のアプリケーションサーバの記憶装置にアプリケーションプログラムが利用するメモリ構造を保持した共有メモリ領域(メモリイメージファイル)を構築し、この領域をWEBアプリケーションプログラムから参照することによって上記問題を解決するとともに、データベースサーバの代替としての機能を担うことによって高速検索を可能とするメモリ管理サーバ及び方法及びプログラムを提供することを目的とする。 The present invention has been made in view of such a situation, and a shared memory area (memory image file) holding a memory structure used by an application program in a storage device of an application server such as an HDD (Hard Disc Drive) is provided. To provide a memory management server, a method, and a program capable of solving the above problem by constructing and referring to this area from a WEB application program, and enabling high-speed search by assuming a function as an alternative to a database server Objective.
(1)補助記憶装置を共有メモリとして、複数のアプリケーションから利用することを可能にするための方法であって、アプリケーションプログラムにおいて使用される前記データを連続した内部メモリ領域を確保する工程と、前記連続した内部メモリ領域に前記アプリケーションプログラムにおいて使用される前記データを書き込む工程と、前記連続した内部メモリ領域に書き込まれた前記データを補助記憶装置にメモリイメージファイルとしてメモリマッピング処理する工程と、前記内部メモリのデータと前記メモリイメージファイルのデータの同期をとる工程と、を含み,前記メモリイメージファイルの前記データは前記メモリ領域のメモリ構造を保持し、複数の前記アプリケーションプログラムが、前記記憶装置の前記メモリイメージファイルを共有することを特徴とするメモリ管理方法。 (1) A method for making it possible to use an auxiliary storage device as a shared memory from a plurality of applications, the step of securing a continuous internal memory area for the data used in an application program, A step of writing the data used in the application program in a continuous internal memory area; a step of performing a memory mapping process as a memory image file in the auxiliary storage device with the data written in the continuous internal memory area; Synchronizing the data of the memory and the data of the memory image file, wherein the data of the memory image file retains a memory structure of the memory area, and a plurality of the application programs are stored in the storage device. Memory image Memory management method is characterized by the sharing the file.
(1)に係る発明によれば、補助記憶装置を共有メモリとして、複数のアプリケーションから利用することを可能にするために、アプリケーションプログラムに使用されるデータを連続したメモリ領域に書き込み、連続した内部メモリ領域に書き込まれたデータを内部メモリ領域のメモリ構造を保持したままで、メモリマッピング処理し、メモリマッピング処理されたメモリイメージファイル(メモリマップファイルとも呼ぶ)を物理的に格納する補助記憶装置に同期を取る(データを書き込む)動作を実行する。ここで、「補助記憶装置」とは、典型的には、コンピュータ装置に備えられたハードディスク等の書き込み可能な記憶装置または記憶媒体を指すが、「内部メモリ」(主記憶)との対比のために使用しており、必ずしも物理的にコンピュータ装置筐体の内部、外部に位置することを意味するものではない。 According to the invention according to (1), in order to make it possible to use the auxiliary storage device as a shared memory from a plurality of applications, data used for the application program is written in a continuous memory area, and a continuous internal memory is used. A memory mapping process is performed on the data written in the memory area while maintaining the memory structure of the internal memory area, and a memory image file (also referred to as a memory map file) subjected to the memory mapping process is physically stored in an auxiliary storage device Performs synchronization (writes data) operation. Here, “auxiliary storage device” typically refers to a writable storage device or storage medium such as a hard disk provided in a computer device, but for comparison with “internal memory” (main memory). It does not necessarily mean that it is physically located inside or outside the computer apparatus housing.
このようにして、(1)に係る発明によれば、アプリケーションプログラムに使用されるデータがネットワークを介して接続されたデータベースサーバに記憶されている場合に比較すると通信回線を介した送受信がないのでデータ検索の高速化が容易に達成される。 Thus, according to the invention according to (1), there is no transmission / reception via the communication line as compared with the case where the data used for the application program is stored in the database server connected via the network. High speed data retrieval is easily achieved.
また、アプリケーションサーバのローカルな記憶部にマッピング処理をしていない状態でデータが記憶されている場合に比較すると、本発明ではフォーマット変換が不要となるのでデータ検索の高速化が容易に達成される。 Compared to the case where the data is stored in the local storage unit of the application server in a state where no mapping process is performed, format conversion is not required in the present invention, so that the speed of data retrieval can be easily achieved. .
また、アプリケーションサーバのメインメモリにデータを記憶する場合には、アプリケーションサーバの起動時にアプリケーションサーバのローカルな記憶部に記憶されているデータを一旦メインメモリに読み込む必要があるのでメモリ読み込み時間がかかるが、本発明ではそのような待ち時間がなくなる。 Further, when data is stored in the main memory of the application server, it takes time to read the memory because the data stored in the local storage unit of the application server needs to be once read into the main memory when starting the application server. In the present invention, such waiting time is eliminated.
さらに、メインメモリは一般的に価格および実装面積の制限から大きな容量を保持することが困難であるために、データ領域に多くの容量を使用すると他のプログラムの実行速度が遅くなるなどの弊害が発生するが、本発明ではデータへの検索速度の高速化を維持しつつそのような弊害も発生しない。 Furthermore, since it is difficult to maintain a large capacity of the main memory because of the limitation of the price and mounting area in general, the use of a large amount of data in the data area may cause other programs to run slower. Although this occurs, the present invention does not cause such an adverse effect while maintaining a high search speed for data.
また、本発明によれば、OS(Operating System)や開発言語に対応したメモリイメージファイルを作成することにより環境に依存しない構成とすることが可能になる。 Furthermore, according to the present invention, it is possible to create a configuration that does not depend on the environment by creating a memory image file corresponding to an OS (Operating System) or a development language.
共有メモリ領域(メモリイメージファイル)をHDD(Hard Disc Drive)等のアプリケーションサーバの記憶装置に記憶しているので、WEBサーバがダウンしてもデータが失われることがない。 Since the shared memory area (memory image file) is stored in the storage device of the application server such as an HDD (Hard Disc Drive), data is not lost even if the WEB server goes down.
また、WEBアプリケーションプログラムがリクエスト毎に新たなプロセスを生成するようなものである場合であっても、メモリイメージファイルとしてデータが保持されているので検索(アクセス)が可能となる。
(2)前記内部メモリ領域の前記データの並び順と前記補助記憶装置の前記メモリイメージファイルの前記データの並び順とが同じであることを特徴とする(1)に記載のメモリ管理方法。
Even if the WEB application program generates a new process for each request, the data is stored as a memory image file, so that retrieval (access) is possible.
(2) The memory management method according to (1), wherein an arrangement order of the data in the internal memory area is the same as an arrangement order of the data in the memory image file of the auxiliary storage device.
(2)に係る発明によれば、(1)において作成するメモリイメージファイルの前記データは前記内部メモリ領域の前記データの並び順と同じであるので複数のアプリケーションプログラムで一つのファイルとして扱われることが可能となる。 According to the invention according to (2), since the data of the memory image file created in (1) is the same as the order of the data in the internal memory area, it is handled as a single file by a plurality of application programs. Is possible.
このようにして、(2)に係る発明によれば、一つのアプリケーションプログラムに使用されるデータをまとめて一つのメモリイメージファイルにすることができるので、データを効率よく管理することが可能となった。 In this way, according to the invention according to (2), data used in one application program can be combined into one memory image file, so that data can be managed efficiently. It was.
また、WEBアプリケーションプログラムがリクエスト毎に新たなプロセスを生成するようなものである場合であっても、メモリイメージファイルとしてデータが保持されているのでWEBアプリケーションプログラム毎にデータの検索(アクセス)が可能となる。 Even if the WEB application program generates a new process for each request, data can be retrieved (accessed) for each WEB application program because the data is stored as a memory image file. It becomes.
(3)前記アプリケーションプログラムはWEBアプリケーションプログラムであり、前記補助記憶装置は前記WEBアプリケーションプログラムが動作するWEBアプリケーションサーバ内にある記憶装置であることを特徴とする(1)または(2)に記載のメモリ管理方法。 (3) The application program is a WEB application program, and the auxiliary storage device is a storage device in a WEB application server on which the WEB application program operates. (1) or (2) Memory management method.
(3)に係る発明によれば、WEBアプリケーションで使用したいデータを、メモリに格納する場合と同じイメージでファイル化し、HDD等の記憶装置に保存する。 According to the invention according to (3), data desired to be used in the WEB application is filed with the same image as that stored in the memory and stored in a storage device such as an HDD.
このようにして、(3)に係る発明によれば、共有メモリ領域であるメモリイメージファイルがHDD等の記憶装置に存在するので、WEBサーバがダウンしてもデータが失われることがない。 Thus, according to the invention according to (3), since the memory image file that is the shared memory area exists in the storage device such as the HDD, data is not lost even if the WEB server goes down.
(4)前記メモリイメージファイルは読み出し専用とし、前記メモリイメージファイルのデータの内容を変更する場合には前記メモリイメージファイル全体を差し替えることを特徴とする請求項(1)乃至(3)の何れか一項に記載のメモリ管理方法。 (4) The memory image file is read-only, and when the data content of the memory image file is changed, the entire memory image file is replaced. The memory management method according to one item.
このようにして、(4)に係る発明によれば、メモリイメージファイルの内容を変更する場合には、メモリイメージファイルの差し替えのみでデータの更新が可能となる。 Thus, according to the invention according to (4), when the contents of the memory image file are changed, the data can be updated only by replacing the memory image file.
(5)補助記憶装置を共有メモリとして、複数のアプリケーションから利用することを可能にするためのメモリ管理サーバ装置であって、アプリケーションプログラムにおいて使用される前記データを連続した内部メモリ領域を確保する記憶領域確保手段と、前記連続した内部メモリ領域に前記アプリケーションプログラムにおいて使用される前記データを書き込むデータ書込手段と、前記連続した領域に書き込まれた前記データを補助記憶装置にメモリイメージファイルとしてメモリマッピング処理するメモリマッピング手段と、前記内部メモリのデータと前記メモリイメージファイルのデータを同期をとる同期手段と、を備え、前記メモリイメージファイルの前記データは前記内部メモリ領域のメモリ構造を保持し、複数のアプリケーションプログラムが、前記補助記憶装置の前記メモリイメージファイルを共有することを特徴とするメモリ管理サーバ装置。 (5) A memory management server device for enabling an auxiliary storage device to be used as a shared memory from a plurality of applications, and for storing a continuous internal memory area for the data used in the application program Area allocation means, data writing means for writing the data used in the application program in the continuous internal memory area, and memory mapping as a memory image file for the data written in the continuous area in an auxiliary storage device Memory mapping means for processing; and synchronization means for synchronizing the data of the internal memory and the data of the memory image file, wherein the data of the memory image file holds a memory structure of the internal memory area, Application Down program, memory management server apparatus characterized by sharing the memory image file of the auxiliary storage device.
(5)に係る発明によれば、補助記憶装置を共有メモリとして、複数のアプリケーションから利用することを可能にするために、アプリケーションプログラムに使用されるデータを連続した内部メモリ領域に書き込み、連続した内部メモリ領域に書き込まれたデータをメモリマッピング処理し、メモリマッピング処理されたメモリイメージファイルを物理的に存在する記憶装置に同期を取る(データを書き込む)動作を実行する。なお、「補助記憶装置」の定義は、(1)で説明したものと同様である。 According to the invention according to (5), in order to make it possible to use the auxiliary storage device as a shared memory from a plurality of applications, the data used for the application program is written to the continuous internal memory area and continuously The memory mapping process is performed on the data written in the internal memory area, and the memory image file subjected to the memory mapping process is synchronized with the storage device that physically exists (data is written). The definition of “auxiliary storage device” is the same as that described in (1).
このようにして、(5)に係る発明によれば、アプリケーションプログラムに使用されるデータがデータベースサーバに記憶されている場合に比較すると通信回線を介した送受信がないのでデータ検索の高速化が容易に達成される。 In this way, according to the invention according to (5), since data used for the application program is stored in the database server, there is no transmission / reception via the communication line, so the data search can be speeded up easily. To be achieved.
また、アプリケーションサーバのローカルな記憶部にマッピング処理をしていない状態でデータが記憶されている場合に比較すると本発明ではフォーマット変換が不要となるのでデータ検索の高速化が容易に達成される。 Further, compared to the case where data is stored in the local storage unit of the application server in a state where mapping processing is not performed, in the present invention, format conversion is not required, so that data search can be easily speeded up.
また、アプリケーションサーバのメインメモリにデータを記憶する場合には、アプリケーションサーバの起動時にアプリケーションサーバのローカルな記憶部に記憶されているデータを一旦メインメモリに読み込む必要があるのでメモリ読み込み時間がかかるが、本発明ではそのような待ち時間がなくなった。 Further, when data is stored in the main memory of the application server, it takes time to read the memory because the data stored in the local storage unit of the application server needs to be once read into the main memory when starting the application server. In the present invention, such a waiting time is eliminated.
さらに、メインメモリは一般的に価格および実装面積の制限から大きな容量を保持することが困難であるために、データ領域に多くの容量を使用すると他のプログラムの実行速度が遅くなるなどの弊害が発生するが本発明では、データへの検索速度の高速化を維持しつつそのような弊害も発生しない。 Furthermore, since it is difficult to maintain a large capacity of the main memory because of the limitation of the price and mounting area in general, the use of a large amount of data in the data area may cause other programs to run slower. Although it occurs, the present invention does not cause such an adverse effect while maintaining a high search speed for data.
また、本発明によれば、OSや開発言語に対応したメモリイメージファイルを作成することにより環境に依存しない構成とすることが可能になる。 Further, according to the present invention, it is possible to make a configuration independent of the environment by creating a memory image file corresponding to the OS or the development language.
共有メモリ領域(メモリイメージファイル)をHDD等のアプリケーションサーバの記憶装置に記憶しているので、WEBサーバがダウンしてもデータが失われることがない。 Since the shared memory area (memory image file) is stored in the storage device of the application server such as the HDD, data is not lost even if the WEB server goes down.
また、WEBアプリケーションプログラムがリクエスト毎に新たなプロセスを生成するようなものである場合であっても、メモリイメージファイルとしてデータが保持されているので検索(アクセス)が可能となる。 Even if the WEB application program generates a new process for each request, the data is stored as a memory image file, so that retrieval (access) is possible.
(6)(1)乃至(4)何れか一項に記載の方法をコンピュータに実行させることを特徴とするプログラム。 (6) A program that causes a computer to execute the method according to any one of (1) to (4).
このような構成によれば、当該プログラムをコンピュータに実行させることにより、(5)と同様の効果が期待できる。 According to such a configuration, the same effect as in (5) can be expected by causing the computer to execute the program.
本発明によれば、アプリケーションプログラムに使用されるデータがデータベースサーバに記憶されている場合に比較すると通信回線を介した送受信がないのでデータ検索の高速化が容易に達成される。 According to the present invention, as compared with the case where data used for an application program is stored in the database server, there is no transmission / reception via the communication line, so that the speed of data retrieval can be easily achieved.
また、アプリケーションサーバのローカルな記憶部にマッピング処理をしていない状態でデータが記憶されている場合に比較すると本発明ではフォーマット変換が不要となるのでデータ検索の高速化が容易に達成される。 Further, compared to the case where data is stored in the local storage unit of the application server in a state where mapping processing is not performed, in the present invention, format conversion is not required, so that data search can be easily speeded up.
また、アプリケーションサーバのメインメモリにデータを記憶する場合には、アプリケーションサーバの起動時にアプリケーションサーバのローカルな記憶部に記憶されているデータを一旦メインメモリに読み込む必要があるのでメモリ読み込み時間がかかるが、本発明ではそのような待ち時間がなくなった。 Further, when data is stored in the main memory of the application server, it takes time to read the memory because the data stored in the local storage unit of the application server needs to be once read into the main memory when starting the application server. In the present invention, such a waiting time is eliminated.
さらに、メインメモリは一般的に価格および実装面積の制限から大きな容量を保持することが困難であるために、データ領域に多くの容量を使用すると他のプログラムの実行速度が遅くなるなどの弊害が発生するが、本発明ではデータへの検索速度の高速化を維持しつつそのような弊害も発生しない。 Furthermore, since it is difficult to maintain a large capacity of the main memory because of the limitation of the price and mounting area in general, the use of a large amount of data in the data area may cause other programs to run slower. Although this occurs, the present invention does not cause such an adverse effect while maintaining a high search speed for data.
また、本発明によれば、OS(Operating System)や開発言語に対応したメモリイメージファイルを作成することにより環境に依存しない構成とすることが可能になる。 Furthermore, according to the present invention, it is possible to create a configuration that does not depend on the environment by creating a memory image file corresponding to an OS (Operating System) or a development language.
共有メモリ領域(メモリイメージファイル)をHDD(Hard Disc Drive)等のアプリケーションサーバの記憶装置に記憶しているので、WEBサーバがダウンしてもデータが失われることがない。 Since the shared memory area (memory image file) is stored in the storage device of the application server such as an HDD (Hard Disc Drive), data is not lost even if the WEB server goes down.
また、データの内容が変更になった場合であっても、メモリイメージファイルの差し替えで容易に対応することが可能である。 Further, even when the data content is changed, it is possible to easily cope with the replacement of the memory image file.
また、WEBアプリケーションプログラムがリクエスト毎に新たなプロセスを生成するようなものである場合であっても、メモリイメージファイルとしてデータが保持されているので検索(アクセス)が可能となる。 Even if the WEB application program generates a new process for each request, the data is stored as a memory image file, so that retrieval (access) is possible.
以下、本発明の実施形態について図を参照しながら説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[システム全体構成]
図1には、本実施形態に係るメモリ管理サーバ(アプリケーションサーバ)10と、ユーザ端末30とから構成される情報処理システム1を示す。なお、図1においては、情報処理システム1は、メモリ管理サーバ10と、ユーザ端末30とがそれぞれ一つずつで示されているが、これに限られず、それぞれ複数台で構成されても良い。
[Entire system configuration]
FIG. 1 shows an
メモリ管理サーバ10は、図2に示すように、制御部300を構成するCPU(Central Processing Unit)310(マルチプロセッサ構成ではCPU320等複数のCPUが追加されても良い)、バスライン200、通信I/F(I/F:インタフェース)330、メインメモリ340、BIOS(Basic Input Output System)350、I/Oコントローラ360、ハードディスク370、光ディスクドライブ380、並びに半導体メモリ390を備える。なお、ハードディスク370、光ディスクドライブ380、並びに、半導体メモリ390はまとめて記憶装置410と呼ばれる。
As shown in FIG. 2, the
制御部300は、メモリ管理サーバ10を統括的に制御する部分であり、ハードディスク370に記憶された各種プログラムを適宜読み出して実行することにより、上述したハードウェアと協働し、本発明に係る各種機能を実現している。
The
通信I/F330は、メモリ管理サーバ10が、ネットワークを介してユーザ端末30等の他の装置と情報を送受信する場合のネットワーク・アダプタである。
The communication I /
BIOS350は、メモリ管理サーバ10の起動時にCPU310が実行するブートプログラムや、メモリ管理サーバ10のハードウェアに依存するプログラム等を記録する。
The
I/Oコントローラ360には、ハードディスク370、光ディスクドライブ380、及び半導体メモリ390等の記憶装置410を接続することができる。
A
ハードディスク370は、本ハードウェアをメモリ管理サーバ10として機能させるための各種プログラム、本発明の機能を実行するプログラム及び後述するテーブル等を記憶する。なお、メモリ管理サーバ10は、外部に別途設けたハードディスク(図示せず)を補助記憶装置として利用することもできる。
The
光ディスクドライブ380としては、例えば、DVD−ROMドライブ、CD−ROMドライブ、DVD−RAMドライブ、CD−RAMドライブを使用することができる。この場合は各ドライブに対応した光ディスク400を使用する。光ディスク400から光ディスクドライブ380によりプログラム又はデータを読み取り、I/Oコントローラ360を介してメインメモリ340又はハードディスク370に提供することもできる。
As the
なお、本発明でいうコンピュータとは、記憶装置、制御部等を備えた情報処理装置をいい、メモリ管理サーバ10は、記憶装置410、制御部300等を備えた情報処理装置により構成される。
Note that the computer in the present invention refers to an information processing apparatus including a storage device, a control unit, and the like, and the
また、本発明に係るメモリ管理サーバ10は、上述のような構成を有することにより、アプリケーションプログラムにおいて使用されるデータをメモリイメージファイルとしてメモリマッピング処理をし、メモリイメージファイルをメモリ管理サーバ10の記憶装置410にメモリイメージファイルとして書き込み、同期をとり、メモリイメージファイルのデータはメインメモリ340のメモリ構造を保持したままで、複数のアプリケーションプログラムが記憶装置410のメモリイメージファイルを共有する機能を有している。
In addition, the
ここで、当該機能を発揮するための構成について、図3に示す機能ブロック図を用いて説明する。メモリ管理サーバ10は、データ演算手段としてのデータ演算部11と、記憶領域確保手段としての記憶領域確保部12と、データ書込手段としてのデータ書込部13と、メモリマッピング処理手段としてのメモリマッピング部14と、同期手段としての同期部15と、メモリイメージファイルを記憶するメモリイメージファイル記憶部16と、メモリマッピング処理前後のデータが読み書きされる内部メモリ17、とを備える。
Here, a configuration for exhibiting the function will be described with reference to a functional block diagram shown in FIG. The
データ演算部11は、アプリケーションプログラムにおいて使用されるデータの大きさを演算する機能を有する。
The
メモリイメージファイルに必要な領域を確保するためにはデータの大きさを演算することが必要となる。 In order to secure the necessary area in the memory image file, it is necessary to calculate the size of the data.
複数の異なるアプリケーションプログラムがメモリ管理サーバ10で動作している場合があり、その場合にはアプリケーションプログラム毎に使用されるデータの大きさが演算される。そして、アプリケーションプログラム毎にメモリイメージファイルが形成されるので、複数のアプリケーションプログラムで共有されるメモリイメージファイル(またはメモリマップファイルとも呼ぶ)が複数存在する場合もある。
There are cases where a plurality of different application programs are operating on the
アプリケーションプログラムにおいて使用されるデータの大きさは、一例としてC言語の場合にはsizeof()関数を用いることによって演算することが可能である。また、通常のファイルIOでは、書き込みを行うと自動的に領域が確保されるため、あらかじめ領域を確保しておく必要はない場合もあるが、例えば、mmapを使用したIOでは読み書きする大きさをあらかじめ設定しておく必要があり、その大きさはmmap関数の引数として渡す必要がある。 For example, in the case of C language, the size of data used in the application program can be calculated by using a sizeof () function. In addition, in a normal file IO, an area is automatically secured when writing is performed, so it may not be necessary to secure an area in advance. For example, an IO using mmap has a read / write size. It is necessary to set in advance, and the size needs to be passed as an argument of the mmap function.
記憶領域確保部12は、アプリケーションプログラムにおいて使用される前記データを連続した記憶領域で確保する機能を有する。
The storage
連続した領域を確保するのは、マップさせたいファイルの必要サイズ(大きさ)を実際にデータとして使用しているサイズに合わせる為である。 The reason why the continuous area is secured is to match the required size (size) of the file to be mapped with the size actually used as data.
連続した領域を確保することは、内部メモリ17を一時的に使用することで実現できる。
Ensuring a continuous area can be realized by temporarily using the
データ書込部13は連続した内部メモリ領域にアプリケーションプログラムにおいて使用されるデータを書き込む機能を有する。
The
これは、マッピング処理をする前にマップファイルにデータを書き込む必要があるからである。 This is because it is necessary to write data to the map file before performing the mapping process.
一例としてC言語の場合にはread(fd,&c,sizeof(char))関数で,sizeof(char)のバイト数のデータをアドレス&cから読み込み、write(fd,&c,sizeof(char))関数で、sizeof(char)のバイト数のデータをアドレス&cから書き込むことが可能になる。 As an example, in the case of C language, read (fd, & c, size of (char)) function reads the number of bytes of size of (char) from address & c, and write (fd, & c, size of (char)) function , Sizeof (char) byte data can be written from the address & c.
メモリマッピング部14は、連続した内部メモリ領域に書き込まれたデータをメモリイメージファイルとしてメモリマッピング処理する機能を有する。
The
一例としてC言語の場合には、mmap(0,size,PROT_READ|PROT_WRITE,MAP_SHARED,fd,0)でメモリマッピング処理を実行できる。 As an example, in the case of C language, the memory mapping process can be executed with mmap (0, size, PROT_READ | PROT_WRITE, MAP_SHARED, fd, 0).
式中、第1引数が“0”であるので、新しいマッピングの開始アドレスはカーネルが選択する。この方法は最も移植性のある新しいマッピングの方法である。 In the formula, since the first argument is “0”, the kernel selects the start address of the new mapping. This method is the most portable new mapping method.
また、PROT_READはページが読み込み可能であることを許可し、PROT_WRITEはページが書き込み可能であることを許可し、MAP_SHAREDはマッピングが共有されることを許可する PROT_READ allows the page to be readable, PROT_WRITE allows the page to be writable, and MAP_SHARED allows the mapping to be shared.
但し、書き込みはファイル全体での書き換え(ファイルの差し替え)を許可し、ファイルの一部だけの書き込みは許可されない。 However, writing permits rewriting of the entire file (replacement of the file), and writing of only a part of the file is not permitted.
同期部15はメモリイメージファイルを記憶装置(メモリイメージファイル記憶部16)にメモリイメージファイルとして同期をとる機能を有する。
The
内部メモリのデータをハードディスク上のような物理記憶領域上にあるメモリイメージファイル記憶部16との同期を取る。
The data in the internal memory is synchronized with the memory image
すなわち、内部メモリ17に展開されたメモリイメージファイルの(データ)構造(メモリ構造)をそのまま維持した状態で、メモリイメージファイル記憶部16にそのメモリ構造を書き込むので、複数のアプリケーションが内部メモリ17のメモリ構造を保持したままで、メモリイメージファイル記憶部16のメモリイメージファイルを共有することが可能となる。
That is, since the memory structure is written in the memory image
また、この場合には内部メモリ17のデータとメモリイメージファイルのデータの並び順が同じとなる。
In this case, the arrangement order of the data in the
一例としてC言語の場合に、実際にメモリイメージファイルに書き込み同期を取るには、msync(ptr,size,0)関数を用いることができる。この場合、ptrから始まり長さ“size”のメモリ領域に対応するデータがHDD等の記憶装置410に記憶される。そして、最後にファイルがクローズされる(close(fd))。
As an example, in the case of the C language, the mssync (ptr, size, 0) function can be used to actually write and synchronize with the memory image file. In this case, data corresponding to the memory area of length “size” starting from ptr is stored in the
このような構成によれば、アプリケーションプログラムに使用されるデータの大きさを演算し、アプリケーションプログラムに使用されるデータを連続した内部メモリ領域に書き込み、連続した内部メモリ領域に書き込まれたデータをメモリマッピング処理し、メモリマッピング処理されたメモリイメージファイルを物理的に存在する記憶装置に同期を取る(データを書き込む)動作を実行するので、メモリイメージファイルのデータはメインメモリ340のメモリ構造を保持し、複数のアプリケーションプログラムが記憶装置410のメモリイメージファイルを共有することが可能となる。
According to such a configuration, the size of data used for the application program is calculated, the data used for the application program is written to the continuous internal memory area, and the data written to the continuous internal memory area is stored in the memory. Since the mapping process is performed and the memory image file subjected to the memory mapping process is synchronized (written) with a storage device that physically exists, the data of the memory image file retains the memory structure of the
したがって、アプリケーションサーバの記憶装置において、アプリケーションプログラムが利用するデータの記憶されているメモリ領域をあたかも一つのファイル(メモリ構造を保持したまま保存されたデータ)として扱うことが可能となったので、大量のデータを共有することが可能になるとともに、この領域をWEBアプリケーションプログラムから参照することによって、データベースサーバの代替としての機能を担うことによって高速検索を可能とすることが可能になった。 Therefore, in the storage device of the application server, the memory area in which the data used by the application program is stored can be handled as a single file (data saved while retaining the memory structure). It is possible to share these data, and by referring to this area from the WEB application program, it is possible to perform high-speed search by assuming a function as an alternative to the database server.
[処理手順]
ここで、本発明を適用した場合において実現され得る具体的な処理手順について、図4に示すフローチャート(C言語を使用した場合)を参照して説明する。なお、以下に示す処理手順は、一例であってこれ以外にも実現され得る処理手順は無数に存在する。
[Processing procedure]
Here, a specific processing procedure that can be realized when the present invention is applied will be described with reference to a flowchart (when C language is used) shown in FIG. The processing procedure shown below is an example, and there are innumerable processing procedures that can be realized in addition to this.
ステップS1において、メモリ管理サーバ10はマップ用のファイルをオープンする。例えば、マップ用のファイルの名称を“MapFile”とした場合には、open(“MapFile”,O_RDWR|O_CREATE,0666)でマップ用のファイルをオープンすることができる。
In step S1, the
ステップS2において、メモリ管理サーバ10のデータ演算部11は、アプリケーションプログラム毎にアプリケーションプログラムに使用されるデータの大きさを演算し、その大きさをマップファイルの領域の大きさとする。
In step S2, the
ステップS3において、メモリ管理サーバ10の記憶領域確保部12は、ステップS2において演算されたデータの大きさに対応して、内部メモリ17上にメモリ領域を確保する。
In step S3, the storage
ステップS4において、メモリ管理サーバ10のデータ書込部13はステップS3において確保されたマップファイルに、アプリケーションプログラムにおいて使用されるデータを書き込む。
In step S4, the
一例としてC言語の場合にはread(fd,&c,sizeof(char))関数で,sizeof(char)のバイト数のデータをアドレス&cから読み込み(アプリケーションで使用されるデータを読み込み)、write(fd,&c,sizeof(char))関数で、sizeof(char)のバイト数のデータをアドレス&cから書き込むことが可能になる。 For example, in the case of C language, read (fd, & c, sizeof (char)) function is used to read the number of bytes of sizeof (char) from address & c (read data used in the application), and write (fd , & C, sizeof (char)) function, it is possible to write the data of the number of bytes of sizeof (char) from the address & c.
ステップS5において、メモリ管理サーバ10のメモリマッピング部14は、ステップS4において連続した内部メモリ領域に書き込まれたデータをメモリイメージファイルとしてメモリマッピング処理をする。
In step S5, the
一例としてC言語の場合には、mmap(0,size,PROT_READ|PROT_WRITE,MAP_SHARED,fd,0)でメモリマッピング処理を実行できる。 As an example, in the case of C language, the memory mapping process can be executed with mmap (0, size, PROT_READ | PROT_WRITE, MAP_SHARED, fd, 0).
ステップS6において、メモリ管理サーバ10の同期部15は、メモリイメージファイルを記憶装置(メモリイメージファイル記憶部16)に書き込み同期をとる。
In step S6, the
すなわち、内部メモリ17に展開されたメモリイメージファイルの(データ)構造(メモリ構造)をそのまま維持した状態で、メモリイメージファイル記憶部16にそのメモリ構造を書き込み、同期を取る。
That is, while maintaining the (data) structure (memory structure) of the memory image file developed in the
一例としてC言語の場合に、msync(ptr,size,0)関数を用いて書き込み同期を取ることができる。そして、ファイルがクローズされる(close(fd))。 As an example, in the case of C language, write synchronization can be achieved by using an mssync (ptr, size, 0) function. Then, the file is closed (close (fd)).
ステップS7において、ユーザがユーザ端末30を利用してメモリ管理サーバ10に存在するアプリケーションプログラムを呼び出し、アプリケーションを実行している場合に、そのアプリケーションプログラムに使用されるデータにリクエスト要求が発生する。
In step S <b> 7, when a user calls an application program existing in the
ステップS8において、メモリ管理サーバ10の制御部300は、ステップS7においてデータが要求されたアプリケーションプログラム毎に用意された、メモリ管理サーバ10内のメモリイメージファイル記憶部16に記憶されたメモリイメージファイルからデータを読み出す。
In step S8, the
このような構成によれば、アプリケーションプログラムに使用されるデータの大きさを演算し、アプリケーションプログラムに使用されるデータを連続した内部メモリ領域に書き込み、連続した内部メモリ領域に書き込まれたデータをメモリマッピング処理し、メモリマッピング処理されたメモリイメージファイルを物理的に存在する記憶装置に同期を取る(データを書き込む)動作を実行するので、メモリイメージファイルのデータはメインメモリ340のメモリ構造を保持したままで、複数のアプリケーションプログラムが記憶装置410のメモリイメージファイルを共有することが可能となる。
According to such a configuration, the size of data used for the application program is calculated, the data used for the application program is written to the continuous internal memory area, and the data written to the continuous internal memory area is stored in the memory. Since the mapping process is performed and the memory image file subjected to the memory mapping process is synchronized with the storage device that physically exists (data is written), the memory image file data retains the memory structure of the
したがって、アプリケーションサーバの記憶装置において、アプリケーションプログラムが利用するデータの記憶されているメモリ領域をあたかも一つのファイル(メモリ構造を保持したまま保存されたデータ)として扱うことが可能となったので、大量のデータを共有することが可能になるとともに、この領域をWEBアプリケーションプログラムから参照することによって、データベースサーバの代替としての機能を担うことによって高速検索を可能とすることが可能になった。 Therefore, in the storage device of the application server, the memory area in which the data used by the application program is stored can be handled as a single file (data saved while retaining the memory structure). It is possible to share these data, and by referring to this area from the WEB application program, it is possible to perform high-speed search by assuming a function as an alternative to the database server.
[全体構成の概念]
全体構成の概念図を図5に示す。
メモリ管理サーバ10にアプリケーション(プログラム)1、アプリケーション(プログラム)2およびアプリケーション(プログラム)3が実装されている場合に、アプリケーション(プログラム)1、アプリケーション(プログラム)2およびアプリケーション(プログラム)3に使用されているデータ18がメインメモリ340の記憶部分に記憶されている。
[Overall configuration concept]
A conceptual diagram of the overall configuration is shown in FIG.
When application (program) 1, application (program) 2 and application (program) 3 are mounted on
本実施形態においては、制御部300のデータ演算部11、記憶領域確保部12、データ書込部13、メモリマッピング部14および同期部15がメモリマッピング処理プロセス19を実行する。
In the present embodiment, the
メモリマッピング処理プロセス19によってデータ18は、それぞれのアプリケーション(プログラム)が使用するデータ毎に分割して処理される。
すなわち、アプリケーション1用のデータは、アプリケーション1用メモリイメージファイル16aとして一つのファイルがメモリ領域のように取り扱われる形態でメモリイメージファイル記憶部16に記憶される。
That is, the data for
同様に、アプリケーション2用のデータは、アプリケーション2用メモリイメージファイル16bとして一つのファイルがメモリ領域のように取り扱われる形態でメモリイメージファイル記憶部16に記憶される。
Similarly, the data for the application 2 is stored in the memory image
また、同様に、アプリケーション3用のデータは、アプリケーション3用メモリイメージファイル16cとして一つのファイルがメモリ領域のように取り扱われる形態でメモリイメージファイル記憶部16に記憶される。
Similarly, the data for the application 3 is stored in the memory image
ユーザ端末30aを使用しているユーザがメモリ管理サーバ10に実装されているアプリケーション1を実行している場合に、アプリケーション1がアプリケーション1用のデータを使用する場合には、メモリイメージファイル記憶部16に記憶されているアプリケーション1用メモリイメージファイル16aを検索し、データを取得し、アプリケーション1の実行を続ける。
When the user using the
また、ユーザ端末30aを使用しているユーザがメモリ管理サーバ10に実装されているアプリケーション2を実行している場合に、アプリケーション2がアプリケーション2用のデータを使用する場合には、メモリイメージファイル記憶部16に記憶されているアプリケーション2用メモリイメージファイル16bを検索し、データを取得し、アプリケーション1の実行を続ける。
Further, when the user using the
同様にユーザ端末30cを使用しているユーザがメモリ管理サーバ10に実装されているアプリケーション1を実行している場合に、アプリケーション1がアプリケーション1用のデータを使用する場合には、メモリイメージファイル記憶部16に記憶されているアプリケーション1用メモリイメージファイル16aを検索し、データを取得し、アプリケーション1の実行を続ける。
Similarly, when the user using the
また、同様に、ユーザ端末30cを使用しているユーザがメモリ管理サーバ10に実装されているアプリケーション2を実行している場合に、アプリケーション2がアプリケーション2用のデータを使用する場合には、メモリイメージファイル記憶部16に記憶されているアプリケーション2用メモリイメージファイル16bを検索し、データを取得し、アプリケーション1の実行を続ける。
Similarly, when the user using the
以上、本発明の実施形態について説明したが、本発明は上述した実施形態に限るものではない。また、本発明の実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本発明の実施例に記載されたものに限定されるものではない。 As mentioned above, although embodiment of this invention was described, this invention is not restricted to embodiment mentioned above. The effects described in the embodiments of the present invention are only the most preferable effects resulting from the present invention, and the effects of the present invention are limited to those described in the embodiments of the present invention. is not.
なお、本実施形態においては、メモリ管理サーバ10は、ハードディスク370及び光ディスクドライブ380を有する構成として説明したが、これに限られず、これらの駆動系を有さない構成、いわゆるゼロスピンドルによる構成であっても良い。このような構成の場合には、ハードディスク370に記憶される内容は、大容量の半導体メモリ390に記憶される。
In the present embodiment, the
1 情報処理システム
10 メモリ管理サーバ
11 データ演算部
12 記憶領域確保部
13 データ書込部
14 メモリマッピング部
15 同期部
16 メモリイメージファイル記憶部
17 内部メモリ
30 ユーザ端末
DESCRIPTION OF
Claims (6)
アプリケーションプログラムにおいて使用されるデータを連続した内部メモリ領域に確保する工程と、
前記連続した内部メモリ領域に前記アプリケーションプログラムにおいて使用される前記データを書き込む工程と、
前記連続した内部メモリ領域に書き込まれた前記データを補助記憶装置にメモリイメージファイルとしてメモリマッピング処理する工程と、
前記内部メモリ領域のデータと前記補助記憶装置のメモリイメージファイルのデータを同期をとる工程と、
を含み、
前記メモリイメージファイルの前記データは前記内部メモリ領域のメモリ構造を保持し、複数のアプリケーションプログラムが、前記補助記憶装置の前記メモリイメージファイルを共有することを特徴とするメモリ管理方法。 A method for enabling an auxiliary storage device to be used as a shared memory from a plurality of applications,
Securing the data used in the application program in a continuous internal memory area;
Writing the data used in the application program in the continuous internal memory area;
A memory mapping process as a memory image file for the data written in the continuous internal memory area in an auxiliary storage device;
Synchronizing the data of the internal memory area and the data of the memory image file of the auxiliary storage device;
Including
The memory management method, wherein the data of the memory image file retains a memory structure of the internal memory area, and a plurality of application programs share the memory image file of the auxiliary storage device.
アプリケーションプログラムにおいて使用されるデータを連続した内部メモリ領域に確保する記憶領域確保手段と、
前記連続した内部メモリ領域に前記アプリケーションプログラムにおいて使用される前記データを書き込むデータ書込手段と、
前記連続した内部メモリ領域に書き込まれた前記データをメモリイメージファイルとして補助記憶装置にメモリマッピング処理するメモリマッピング手段と、
前記内部メモリ領域のデータと前記補助記憶装置のメモリイメージファイルのデータを同期をとる同期手段と、
を備え、
前記メモリイメージファイルの前記データは前記内部メモリ領域のメモリ構造を保持し、複数のアプリケーションプログラムが、前記補助記憶装置の前記メモリイメージファイルを共有することを特徴とするメモリ管理サーバ装置。 A memory management server device that enables an auxiliary storage device to be used as a shared memory from a plurality of applications,
Storage area securing means for securing data used in the application program in a continuous internal memory area;
Data writing means for writing the data used in the application program to the continuous internal memory area;
Memory mapping means for performing memory mapping processing on the auxiliary storage device as a memory image file for the data written in the continuous internal memory area;
Synchronization means for synchronizing the data of the internal memory area and the data of the memory image file of the auxiliary storage device;
With
The memory management server device, wherein the data of the memory image file retains a memory structure of the internal memory area, and a plurality of application programs share the memory image file of the auxiliary storage device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008224320A JP5520462B2 (en) | 2008-09-02 | 2008-09-02 | Memory management server, method and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008224320A JP5520462B2 (en) | 2008-09-02 | 2008-09-02 | Memory management server, method and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010061253A true JP2010061253A (en) | 2010-03-18 |
JP5520462B2 JP5520462B2 (en) | 2014-06-11 |
Family
ID=42188001
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008224320A Expired - Fee Related JP5520462B2 (en) | 2008-09-02 | 2008-09-02 | Memory management server, method and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5520462B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014241136A (en) * | 2014-06-18 | 2014-12-25 | 株式会社三菱東京Ufj銀行 | Information processing apparatus |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05233402A (en) * | 1992-02-21 | 1993-09-10 | Toshiba Corp | Memory mapped file access system |
JP2002288058A (en) * | 2001-01-25 | 2002-10-04 | Yahoo Inc | High performance client server communication system |
-
2008
- 2008-09-02 JP JP2008224320A patent/JP5520462B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05233402A (en) * | 1992-02-21 | 1993-09-10 | Toshiba Corp | Memory mapped file access system |
JP2002288058A (en) * | 2001-01-25 | 2002-10-04 | Yahoo Inc | High performance client server communication system |
Non-Patent Citations (4)
Title |
---|
CSNB200200370001; スティーヴンス W・リチャード: UNIXネットワークプログラミング 第2版 Vol.2 , 20000815, p. 293〜312, 株式会社ピアソン・エデュケーション * |
CSND200500404009; 平田 豊: '目指せ!C言語プログラマー' I/O 第29巻 第10号, 20041001, p. 140〜141, 株式会社工学社 * |
JPN6012016211; 平田 豊: '目指せ!C言語プログラマー' I/O 第29巻 第10号, 20041001, p. 140〜141, 株式会社工学社 * |
JPN6012016212; スティーヴンス W・リチャード: UNIXネットワークプログラミング 第2版 Vol.2 , 20000815, p. 293〜312, 株式会社ピアソン・エデュケーション * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014241136A (en) * | 2014-06-18 | 2014-12-25 | 株式会社三菱東京Ufj銀行 | Information processing apparatus |
Also Published As
Publication number | Publication date |
---|---|
JP5520462B2 (en) | 2014-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4702962B2 (en) | MEMORY CONTROL DEVICE, PROGRAM, AND METHOD | |
JP5255348B2 (en) | Memory allocation for crash dump | |
US9092426B1 (en) | Zero-copy direct memory access (DMA) network-attached storage (NAS) file system block writing | |
US8095772B2 (en) | Large memory pages for shared libraries | |
US10282427B2 (en) | Metadata storing technique | |
JP2003528391A (en) | Method and apparatus for storing changes to file attributes without having to store additional copies of file contents | |
JP5778296B2 (en) | Virtual computer system, virtualization mechanism, and data management method | |
JP5426576B2 (en) | Data input / output method and apparatus using virtualization technology | |
JP5773493B2 (en) | Information processing device | |
US20190324868A1 (en) | Backup portion of persistent memory | |
US20060277221A1 (en) | Transactional file system with client partitioning | |
JP5556025B2 (en) | Storage system | |
US7913059B2 (en) | Information processing device, data transfer method, and information storage medium | |
US9588884B2 (en) | Systems and methods for in-place reorganization of device storage | |
CN109983452A (en) | System and method for continuously available Network File System (NFS) status data | |
JP5520462B2 (en) | Memory management server, method and program | |
CN106775501A (en) | Elimination of Data Redundancy method and system based on nonvolatile memory equipment | |
WO2023235040A1 (en) | File system improvements for zoned storage device operations | |
US10430287B2 (en) | Computer | |
JP2001134486A (en) | Microprocessor and storage device | |
CN113204520A (en) | Remote sensing data rapid concurrent read-write method based on distributed file system | |
KR20090131142A (en) | Apparatus and method for memory management | |
US10706012B2 (en) | File creation | |
WO2015194027A1 (en) | Computer system, data update method, and virtualization server | |
KR101236478B1 (en) | Method for Providing Software Computing Environment for Low-Speed Portable Storage |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20091208 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20120312 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120314 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120403 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20120418 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120604 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20121106 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140407 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5520462 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees | ||
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R371 | Transfer withdrawn |
Free format text: JAPANESE INTERMEDIATE CODE: R371 |