JP2006244516A - 微細粒度変換判別方法及び装置 - Google Patents
微細粒度変換判別方法及び装置 Download PDFInfo
- Publication number
- JP2006244516A JP2006244516A JP2006112312A JP2006112312A JP2006244516A JP 2006244516 A JP2006244516 A JP 2006244516A JP 2006112312 A JP2006112312 A JP 2006112312A JP 2006112312 A JP2006112312 A JP 2006112312A JP 2006244516 A JP2006244516 A JP 2006244516A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- memory
- host
- target instruction
- bit
- 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
- 238000013519 translation Methods 0.000 title description 14
- 238000012850 discrimination method Methods 0.000 title 1
- 239000010419 fine particle Substances 0.000 claims description 22
- 238000000034 method Methods 0.000 claims description 22
- 239000002245 particle Substances 0.000 claims description 5
- 230000004044 response Effects 0.000 claims 3
- 238000001514 detection method Methods 0.000 claims 1
- 238000006243 chemical reaction Methods 0.000 description 25
- 239000000872 buffer Substances 0.000 description 17
- 230000014616 translation Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000006658 host protein synthesis Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000704 physical effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3802—Instruction prefetching
- G06F9/3812—Instruction prefetching with instruction modification, e.g. store into instruction stream
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/3017—Runtime instruction translation, e.g. macros
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3802—Instruction prefetching
- G06F9/3808—Instruction prefetching for instruction reuse, e.g. trace cache, branch target cache
-
- 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/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Executing Machine-Instructions (AREA)
- Medicines Containing Plant Substances (AREA)
- Liquid Crystal Substances (AREA)
- Pharmaceuticals Containing Other Organic And Inorganic Compounds (AREA)
Abstract
【解決手段】ホスト命令に変換されたターゲット命令を格納するメモリ・サブページに対する書き込みを検出するステップと、書き込みがアドレスされたメモリ・ページのサブエリアが、変換されたターゲット命令を格納しているか否かについて検出を行うステップと、アドレスされたターゲット命令から変換されたホスト命令を無効にするステップとを含む。
【選択図】図3
Description
Claims (6)
- ターゲット命令セットからホスト命令セットに命令を変換するコンピュータにおいて、メモリ・ページに対する書き込みが、ホスト命令に変換されたターゲット命令に対するものか否かについて判定を行う方法であって、
ホスト命令に変換されたターゲット命令を格納する物理的メモリ・ページに対して物理的にアドレスされた書き込みを検出するステップであって、
物理的にアドレス可能なメモリ内に、ホスト命令に変換されたターゲット命令を格納している物理的メモリ・ページ毎にインディケータを格納するステップと、
かかる物理的メモリ・ページの各々に書き込みが行われようとしたときに、前記インディケータを検出するステップと、
から成るステップと、
前記書き込みがアドレスされた前記物理的メモリ・ページのサブエリアが、変換されたターゲット命令を格納しているか否かについて、前記インディケータを記憶していないルックアップ・テーブル内に記憶されたサブエリア・インディケータを用いて検出を行うステップと、
物理的にアドレスされたターゲット命令から変換されたホスト命令を無効にするステップと、
を含む方法。 - ターゲット命令セットからホスト命令セットに命令を変換するコンピュータであって、
ホスト命令を実行する処理ユニットと、
システム・メモリと、
システム・メモリへのアクセスを制御するメモリ管理ユニットであって、
ホスト命令に変換されたターゲット命令を格納し、第1の数のエントリーを有するシステム・メモリの物理的部分を示す手段と、
物理的にアドレスされた命令に応答して、ホスト命令に変換されたターゲット命令を格納し、前記第1の数のエントリーより少数の第2の数のエントリーを有するシステム・メモリの前記物理的部分のサブエリアを示す手段と、
ターゲット命令のみを格納している物理的システム・メモリの部分に対して書き込みが行われようとしたときに、物理的システム・メモリのかかる部分に格納されているターゲット命令から変換されたホスト命令を無効にする手段と、
ターゲット命令を格納している物理的システム・メモリの部分のサブエリアに対して書き込みが行われようとしたときに、物理的システム・メモリのかかるサブエリアに格納されているターゲット命令から変換されたホスト命令を無効にする手段と、
を含むメモリ管理ユニットと、
を備えているコンピュータ。 - ターゲット命令セットからホスト命令セットに命令を変換するコンピュータにおいてシステム・メモリに対するアクセスを制御するメモリ管理ユニットであって、
物理的にアドレスされた命令に応答して、ホスト命令に変換されたターゲット命令を格納し、第1の数のエントリーを有するシステム・メモリの部分を示す手段と、
物理的にアドレスされた命令に応答して、ホスト命令に変換されたターゲット命令を格納し、前記第1の数のエントリーより少数の第2の数のエントリーを有するシステム・メモリの前記部分のサブエリアを示す手段と、
ターゲット命令のみを格納しているシステム・メモリの部分に対して書き込みが行われようとしたときに、システム・メモリのかかる部分に格納されているターゲット命令から変換されたホスト命令を無効にする手段と、
ターゲット命令を格納しているシステム・メモリの部分のサブエリアに対して書き込みが行われようとしたときに、システム・メモリのかかるサブエリアに格納されているターゲット命令から変換されたホスト命令を無効にする手段と、
を含むメモリ管理ユニット。 - コンピュータ・システムのメモリを保護するための方法であって、
あるページ・テーブル・サイズを有しかつページ・テーブル・エントリーを含むページ・テーブルを維持するステップと、
前記ページ・テーブル・サイズより小さな微粒子テーブル・サイズを有しかつ微粒子テーブル・エントリーを含む微粒子テーブルを維持するステップと、
ターゲット命令をメモリ・ページの第1のサブエリアに記憶するステップと、
前記ターゲット命令をホスト命令の変換されたグループに変換するステップと、
前記メモリ・ページに対応するページ・テーブル・エントリ内にTビットをセットするステップと、
前記第1のサブエリアに対応する微粒子テーブル・エントリ内に微粒子Tビットをセットするステップと、
から成る方法。 - 請求項4記載のコンピュータ・システムのメモリを保護するための方法であって、更に、
前記ホスト命令の変換されたグループを無効化すること無しに、前記メモリ・ページの第2のサブエリアにデータを書き込むステップを含む、
ことを特徴とする方法。 - 請求項4記載のコンピュータ・システムのメモリを保護するための方法であって、更に、
前記第1のサブエリアに対する書き込み処理を始めるステップと、
前記Tビットを検査するステップと、
前記微粒子Tビットを検査するステップと、
前記ホスト命令の変換されたグループを無効化するステップと、
を含むことを特徴とする方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/417,356 US6363336B1 (en) | 1999-10-13 | 1999-10-13 | Fine grain translation discrimination |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001530689A Division JP4275884B2 (ja) | 1999-10-13 | 2000-09-06 | 微細粒度変換判別 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2006244516A true JP2006244516A (ja) | 2006-09-14 |
JP4417346B2 JP4417346B2 (ja) | 2010-02-17 |
Family
ID=23653666
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001530689A Expired - Lifetime JP4275884B2 (ja) | 1999-10-13 | 2000-09-06 | 微細粒度変換判別 |
JP2006112312A Expired - Lifetime JP4417346B2 (ja) | 1999-10-13 | 2006-04-14 | 微細粒度変換判別方法及び装置 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001530689A Expired - Lifetime JP4275884B2 (ja) | 1999-10-13 | 2000-09-06 | 微細粒度変換判別 |
Country Status (9)
Country | Link |
---|---|
US (1) | US6363336B1 (ja) |
EP (1) | EP1240582B1 (ja) |
JP (2) | JP4275884B2 (ja) |
KR (1) | KR100573446B1 (ja) |
CN (1) | CN1196994C (ja) |
AT (1) | ATE377212T1 (ja) |
CA (1) | CA2384254C (ja) |
DE (1) | DE60036960T2 (ja) |
WO (1) | WO2001027743A1 (ja) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7941647B2 (en) | 1999-01-28 | 2011-05-10 | Ati Technologies Ulc | Computer for executing two instruction sets and adds a macroinstruction end marker for performing iterations after loop termination |
US6826748B1 (en) | 1999-01-28 | 2004-11-30 | Ati International Srl | Profiling program execution into registers of a computer |
US8127121B2 (en) * | 1999-01-28 | 2012-02-28 | Ati Technologies Ulc | Apparatus for executing programs for a first computer architechture on a computer of a second architechture |
US8074055B1 (en) | 1999-01-28 | 2011-12-06 | Ati Technologies Ulc | Altering data storage conventions of a processor when execution flows from first architecture code to second architecture code |
US8121828B2 (en) * | 1999-01-28 | 2012-02-21 | Ati Technologies Ulc | Detecting conditions for transfer of execution from one computer instruction stream to another and executing transfer on satisfaction of the conditions |
US7111290B1 (en) * | 1999-01-28 | 2006-09-19 | Ati International Srl | Profiling program execution to identify frequently-executed portions and to assist binary translation |
US6954923B1 (en) | 1999-01-28 | 2005-10-11 | Ati International Srl | Recording classification of instructions executed by a computer |
US6779107B1 (en) | 1999-05-28 | 2004-08-17 | Ati International Srl | Computer execution by opportunistic adaptation |
US7761857B1 (en) | 1999-10-13 | 2010-07-20 | Robert Bedichek | Method for switching between interpretation and dynamic translation in a processor system based upon code sequence execution counts |
US6845353B1 (en) | 1999-12-23 | 2005-01-18 | Transmeta Corporation | Interpage prologue to protect virtual address mappings |
US7680999B1 (en) * | 2000-02-08 | 2010-03-16 | Hewlett-Packard Development Company, L.P. | Privilege promotion based on check of previous privilege level |
US6594821B1 (en) | 2000-03-30 | 2003-07-15 | Transmeta Corporation | Translation consistency checking for modified target instructions by comparing to original copy |
US6615300B1 (en) | 2000-06-19 | 2003-09-02 | Transmeta Corporation | Fast look-up of indirect branch destination in a dynamic translation system |
US6826682B1 (en) | 2000-06-26 | 2004-11-30 | Transmeta Corporation | Floating point exception handling in pipelined processor using special instruction to detect generated exception and execute instructions singly from known correct state |
GB2393274B (en) * | 2002-09-20 | 2006-03-15 | Advanced Risc Mach Ltd | Data processing system having an external instruction set and an internal instruction set |
US7310723B1 (en) | 2003-04-02 | 2007-12-18 | Transmeta Corporation | Methods and systems employing a flag for deferring exception handling to a commit or rollback point |
US6925928B2 (en) * | 2003-09-18 | 2005-08-09 | Anthony Fox | Trash compactor for fast food restaurant waste |
JP4520790B2 (ja) * | 2004-07-30 | 2010-08-11 | 富士通株式会社 | 情報処理装置およびソフトウェアプリフェッチ制御方法 |
US8413162B1 (en) | 2005-06-28 | 2013-04-02 | Guillermo J. Rozas | Multi-threading based on rollback |
US7774583B1 (en) | 2006-09-29 | 2010-08-10 | Parag Gupta | Processing bypass register file system and method |
US7478226B1 (en) * | 2006-09-29 | 2009-01-13 | Transmeta Corporation | Processing bypass directory tracking system and method |
US8006055B2 (en) | 2008-03-04 | 2011-08-23 | Microsoft Corporation | Fine granularity hierarchiacal memory protection |
JP5246014B2 (ja) * | 2009-04-22 | 2013-07-24 | 富士通株式会社 | 仮想化プログラム、仮想化処理方法及び装置 |
KR20170066681A (ko) | 2012-12-27 | 2017-06-14 | 인텔 코포레이션 | 이진 변환된 자가 수정 코드 및 교차 수정 코드의 처리 |
US9081707B2 (en) * | 2012-12-29 | 2015-07-14 | Intel Corporation | Apparatus and method for tracking TLB flushes on a per thread basis |
US9411600B2 (en) * | 2013-12-08 | 2016-08-09 | Intel Corporation | Instructions and logic to provide memory access key protection functionality |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4589092A (en) * | 1983-12-12 | 1986-05-13 | International Business Machines Corporation | Data buffer having separate lock bit storage array |
US4638462A (en) * | 1985-01-31 | 1987-01-20 | International Business Machines Corporation | Self-timed precharge circuit |
US4794522A (en) * | 1985-09-30 | 1988-12-27 | International Business Machines Corporation | Method for detecting modified object code in an emulator |
EP0425771A3 (en) * | 1989-11-03 | 1992-09-02 | International Business Machines Corporation | An efficient mechanism for providing fine grain storage protection intervals |
CA2078310A1 (en) * | 1991-09-20 | 1993-03-21 | Mark A. Kaufman | Digital processor with distributed memory system |
US5437017A (en) * | 1992-10-09 | 1995-07-25 | International Business Machines Corporation | Method and system for maintaining translation lookaside buffer coherency in a multiprocessor data processing system |
US5548746A (en) * | 1993-11-12 | 1996-08-20 | International Business Machines Corporation | Non-contiguous mapping of I/O addresses to use page protection of a process |
US5781750A (en) * | 1994-01-11 | 1998-07-14 | Exponential Technology, Inc. | Dual-instruction-set architecture CPU with hidden software emulation mode |
US5577231A (en) * | 1994-12-06 | 1996-11-19 | International Business Machines Corporation | Storage access authorization controls in a computer system using dynamic translation of large addresses |
US5560013A (en) * | 1994-12-06 | 1996-09-24 | International Business Machines Corporation | Method of using a target processor to execute programs of a source architecture that uses multiple address spaces |
US5832205A (en) * | 1996-08-20 | 1998-11-03 | Transmeta Corporation | Memory controller for a microprocessor for detecting a failure of speculation on the physical nature of a component being addressed |
US6199152B1 (en) * | 1996-08-22 | 2001-03-06 | Transmeta Corporation | Translated memory protection apparatus for an advanced microprocessor |
US6009516A (en) * | 1996-10-21 | 1999-12-28 | Texas Instruments Incorporated | Pipelined microprocessor with efficient self-modifying code detection and handling |
US6243668B1 (en) * | 1998-08-07 | 2001-06-05 | Hewlett-Packard Company | Instruction set interpreter which uses a register stack to efficiently map an application register state |
-
1999
- 1999-10-13 US US09/417,356 patent/US6363336B1/en not_active Expired - Lifetime
-
2000
- 2000-09-06 EP EP00960034A patent/EP1240582B1/en not_active Expired - Lifetime
- 2000-09-06 KR KR1020027004731A patent/KR100573446B1/ko not_active IP Right Cessation
- 2000-09-06 WO PCT/US2000/024651 patent/WO2001027743A1/en active IP Right Grant
- 2000-09-06 AT AT00960034T patent/ATE377212T1/de not_active IP Right Cessation
- 2000-09-06 CA CA002384254A patent/CA2384254C/en not_active Expired - Fee Related
- 2000-09-06 CN CNB00814186XA patent/CN1196994C/zh not_active Expired - Lifetime
- 2000-09-06 DE DE60036960T patent/DE60036960T2/de not_active Expired - Lifetime
- 2000-09-06 JP JP2001530689A patent/JP4275884B2/ja not_active Expired - Lifetime
-
2006
- 2006-04-14 JP JP2006112312A patent/JP4417346B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
WO2001027743A1 (en) | 2001-04-19 |
ATE377212T1 (de) | 2007-11-15 |
US6363336B1 (en) | 2002-03-26 |
EP1240582A4 (en) | 2005-08-31 |
EP1240582A1 (en) | 2002-09-18 |
CN1196994C (zh) | 2005-04-13 |
DE60036960T2 (de) | 2008-08-14 |
EP1240582B1 (en) | 2007-10-31 |
CA2384254A1 (en) | 2001-04-19 |
JP4417346B2 (ja) | 2010-02-17 |
CA2384254C (en) | 2004-11-02 |
JP4275884B2 (ja) | 2009-06-10 |
CN1399735A (zh) | 2003-02-26 |
KR100573446B1 (ko) | 2006-04-26 |
JP2003511788A (ja) | 2003-03-25 |
DE60036960D1 (de) | 2007-12-13 |
KR20020039685A (ko) | 2002-05-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4417346B2 (ja) | 微細粒度変換判別方法及び装置 | |
US7404181B1 (en) | Switching to original code comparison of modifiable code for translated code validity when frequency of detecting memory overwrites exceeds threshold | |
US6604187B1 (en) | Providing global translations with address space numbers | |
US8028341B2 (en) | Providing extended memory protection | |
EP0118828B1 (en) | Instruction fetch apparatus and method of operating same | |
US5835962A (en) | Parallel access micro-TLB to speed up address translation | |
JP3016575B2 (ja) | 複数キャッシュ・メモリ・アクセス方法 | |
JP5608594B2 (ja) | プレロード命令制御 | |
US20040199820A1 (en) | Systems and methods for replicating virtual memory on a host computer and debugging using replicated memory | |
KR20060093140A (ko) | 스토리지 무효화, 버퍼 엔트리 제거 | |
JP2004503870A (ja) | 変換索引バッファのフラッシュフィルタ | |
US5873123A (en) | Processor and method for translating a nonphysical address into a physical address utilizing a selectively nonsequential search of page table entries | |
US11138128B2 (en) | Controlling guard tag checking in memory accesses | |
US5764944A (en) | Method and apparatus for TLB invalidation mechanism for protective page fault | |
CN112639750A (zh) | 用于控制存储器存取的装置及方法 | |
US8479182B2 (en) | Program, apparatus, and method of optimizing a java object | |
KR100218617B1 (ko) | 변환우선참조 버퍼를 이용하여 메모리를 관리하는 데이터 처리 시스템의 효율적인 메모리 관리 방법 및 시스템과 그를 이용한 데이터 처리 시스템 | |
US10423537B2 (en) | Address space resizing table for simulation of processing of target program code on a target data processing apparatus | |
US7971002B1 (en) | Maintaining instruction coherency in a translation-based computer system architecture | |
JPH02239330A (ja) | 情報処理装置 | |
JPH02287850A (ja) | 仮想メモリ装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060627 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080729 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080908 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20081205 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20081210 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081217 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090326 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20090626 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20090701 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20090724 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20090729 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20090814 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20090820 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20090917 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090924 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20091027 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20091125 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4417346 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121204 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121204 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131204 Year of fee payment: 4 |
|
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 |
|
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 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |