JP2007525737A - 調整可能な正確度の例外処理を行なうための方法および装置 - Google Patents
調整可能な正確度の例外処理を行なうための方法および装置 Download PDFInfo
- Publication number
- JP2007525737A JP2007525737A JP2006518322A JP2006518322A JP2007525737A JP 2007525737 A JP2007525737 A JP 2007525737A JP 2006518322 A JP2006518322 A JP 2006518322A JP 2006518322 A JP2006518322 A JP 2006518322A JP 2007525737 A JP2007525737 A JP 2007525737A
- Authority
- JP
- Japan
- Prior art keywords
- target
- exception
- code
- context
- signal handler
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Devices For Executing Special Programs (AREA)
- Complex Calculations (AREA)
- Debugging And Monitoring (AREA)
Abstract
Description
場合によっては、トランスレータ19は、対象状態なしが、例外処理に必要であると決定する。これらの場合には、トランスレート済み信号ハンドラ127に送られる対象コンテキスト135は、正確なプロセッサ状態データを含む必要はまったくない。たとえば、Linux(登録商標)オペレーティング・システムでは、例外信号数31が、「Pthread」スレッディング・ライブラリに対して予約される。この信号は、新たに形成される子スレッドからその親に送られて、形成が成功したことを示す。Pthreadライブラリを実施するということは、ハンドラ127がどんな状態も必要としてはおらず、むしろ、例外を送る動作自体が唯一の必要とするデータであることを示している。
正確度の他のレベルは、最新の既知のスタック・フレームを与えることである。最新の既知のスタック・フレームの意味は、スタック・ポインタ、ベース・ポインタ、およびプログラム・カウンタ(PC:Program Counter )レジスタの最新の既知の整合性のある値である。ほとんどの状況において、最も効率的なのは、最新の既知のスタック・フレームを、正確度のデフォルト・レベルにすることである。対象コンテキスト135における残りの未定義の値に、特別な値、たとえば「Oxdeadbeef」を、デバッギング目的で入力する。
レベル2の正確度が適用されるのは、トランスレータ19がデコード時に、(a)特定の対象命令が例外信号をトリガすること、(b)対象信号ハンドラが正確なプログラム・カウンタ値を必要とすることを、決定する場合である。たとえば、x86プロセッサ上では、IRET命令は、ある特定の特権レベルでのみ実行することができる。トランスレータ19がこの命令に、対象特権レベルが低すぎるときに直面する場合には、適切なエミュレーションを行なうためには、対応する対象信号ハンドラを呼び出す必要があるとともに、対象プログラム・カウンタに対する正確な値を信号ハンドラに送る必要がある。
レベル3は、説明している実施形態の最も高い正確度レベルである。レベル3が使用されるのは、トランスレータ19がデコード時に、命令によって例外が発生することおよびプログラム・カウンタPCの値を超えるコンテキストが必要となることを、検出する場合である。場合によっては、トランスレータ19は、デコード時に、対象コード17における特定の命令によって例外が発生すること、例外処理にはプログラム・カウンタを超える何らかの状態が必要であることを判断する。この場合には、デコード時にトランスレータ19は、除外された命令の正確なプログラム・カウンタ値PC(対象アドレス)を記録すること、および除外された命令の前のすべての対象レジスタ値を強制的に修正するためのコードを生成することの両方を行なう。この結果、トランスレータ19は、例外がもたらされたときに、完全な対象コンテキストをもたらすことができる。加えて、ブロック・トランスレーション・モードで動作するシステムの場合には、トランスレータ19は、例外を含むコードのブロックをマークして、コード生成の間にある特定の最適化が適用されることがないようにする。言い換えれば、コード移動を伴ういくつかの最適化においては、対象レジスタ値を、一時的に(すなわち、目的コードにおけるある特定の時点で)対象状態と、たとえ修正されても、整合性がないようにすることができる。これらの最適化は、例外を含むブロックの場合には停止される。これは、トランスレート済み対象信号ハンドラ127に送られる対象状態の正確度を保証するためである。
Claims (30)
- 対象プログラム・コード(17)を目的コード(21)にトランスレーションする間に直面する例外を処理する方法であって、
例外の発生を検出すること、
前記検出された例外に対して必要とされる対象コンテキスト正確度のレベルを、正確度の複数の可能なレベルから選択すること、
信号ハンドラ(22)を呼び出して、前記選択された正確度のレベルを用いて、前記検出された例外を処理すること、
を備える方法。 - 請求項1に記載の方法において、前記例外の発生を検出するステップは、前記対象プログラム・コード(17)のトランスレーションの間に例外信号の発生を検出することを含む、方法。
- 請求項2に記載の方法において、前記トランスレーションによって生成される目的コード(21)が、プロキシ信号ハンドラ(125)を呼び出して、前記検出された例外を処理する、方法。
- 請求項1、2、または3に記載の方法において、前記例外の発生を検出するステップは、目的コード(21)の実行の間に例外信号の発生を検出することを含む、方法。
- 請求項4に記載の方法において、目的オペレーティング・システムが、プロキシ信号ハンドラ(125)を呼び出して、前記検出された例外を処理する、方法。
- 請求項1〜5のいずれか一項に記載の方法において、対象コンテキスト正確度のデフォルト・レベルが、最新の既知のスタック・フレームである、方法。
- 請求項6に記載の方法において、前記最新の既知のスタック・フレームは、最新の既知のスタック・ポインタ値、ベース・ポインタ値、およびプログラム・カウンタ・レジスタ値を含む、方法。
- 請求項7に記載の方法において、前記対象コンテキスト正確度のデフォルト・レベルは、対象レジスタ値の修正を必要としない、方法。
- 請求項1〜8のいずれか一項に記載の方法において、対象コンテキスト正確度の前記可能なレベルのうちの1つは、対象状態なしである、方法。
- 請求項1〜9のいずれか一項に記載の方法において、対象コンテキスト正確度の前記可能なレベルのうちの1つは、正確なプログラム・カウンタ値を含む正確なプログラム・カウンタ状態である、方法。
- 請求項1〜10のいずれか一項に記載の方法において、対象コンテキスト正確度の前記可能なレベルのうちの1つは、修正された対象レジスタと正確なプログラム・カウンタ値とを含む正確な対象レジスタ状態である、方法。
- トランスレータ(19)を用いて対象コードを目的コード(21)にトランスレートするトランスレーション・システムにおいて対象コード例外を処理する方法であって、
目的コンテキストを生成するステップと、
前記目的コンテキストを用いて対象コンテキストを再構築することにより、再構築された対象コンテキストを生成するステップと、
前記再構築された対象コンテキストを用いて、特定の前記例外に付随する対象信号ハンドラのトランスレート済みバージョンを実行するステップと、
を備える方法。 - 請求項12に記載の方法において、前記対象コンテキストを再構築するステップは、全体の対象プロセッサ状態よりも少なく再構築することを含む、方法。
- 請求項12または13に記載の方法において、前記対象コンテキストを再構築するステップは、前記例外を処理するために複数の対象コンテキスト正確度レベルのうちの1つを選択することを含む、方法。
- 請求項14に記載の方法において、前記対象正確度のレベルが、前記トランスレート済み対象信号ハンドラに送られる対象状態がないゼロ・レベルである、方法。
- 請求項14または15に記載の方法において、前記レベルが、前記トランスレート済み対象信号ハンドラに最新の既知のスタック・フレームのみが送られるレベルである、方法。
- 請求項14、15、または16に記載の方法において、前記レベルが、前記トランスレート済み対象信号ハンドラに正確なプログラム・カウンタ値のみが送られるレベルである、方法。
- 請求項14、15、16、または17に記載の方法において、前記正確度のレベルが、前記トランスレート済み対象信号ハンドラに正確な対象コンテキストが送られるレベルである、方法。
- 請求項14、15、16、17、または18に記載の方法において、前記対象コンテキストを再構築するステップが、プロキシ信号ハンドラ・コードによって行なわれる、方法。
- 請求項19に記載の方法において、前記プロキシ信号ハンドラ・コードが、前記トランスレータ(19)によって前記目的コード(21)に登録され、前記トランスレータ(19)はさらに、前記特定の例外に応答して前記複数の対象コンテキスト正確度レベルのうちのどれを用いるべきかを表示するフラッグを、前記プロキシ信号ハンドラ(125)に対して示す、方法。
- 請求項19または20に記載の方法において、前記特定の例外は、前記トランスレータ(19)による対象コードのデコーディングの間に検出される、方法。
- 請求項21に記載の方法において、前記トランスレータ(19)が、デコーディングの間の前記特定の例外の検出に応答して、前記目的コンテキストを生成するとともに、前記プロキシ信号ハンドラ・コードの動作を呼び出す目的コード(21)を、プラントする、方法。
- 請求項19〜22のいずれか一項に記載の方法において、前記特定の例外は、前記目的コード(21)の実行の間に生じる、方法。
- 請求項23に記載の方法において、目的オペレーティング・システムが、前記目的コード(21)の実行の間の前記特定の例外の発生に応答して、前記プロキシ信号ハンドラ・コードに目的コンテキストを送る、方法。
- 請求項24に記載の方法において、前記目的コンテキストを受け取った後に、前記プロキシ信号ハンドラ・コードが、前記トランスレータ(19)をコールし、次に、前記トランスレータ(19)が、選択されたトランスレート済み対象信号ハンドラを呼び出す、方法。
- 請求項14〜25のいずれか一項に記載の方法において、前記例外が、複数の非同期の外部イベントのうちの1つによって生じ、前記例外が、すべての非同期イベントに割り当てられた正確度の選択されたデフォルト・レベルを用いて処理される、方法。
- 請求項26に記載の方法において、前記選択されたデフォルト・レベルは、最新の既知のスタック・フレームである、方法。
- 請求項19〜27のいずれか一項に記載の方法において、前記プロキシ信号ハンドラ・コードは、対象レジスタ・バンクと相互作用するように構成されている、方法。
- 請求項1〜28のいずれか一項に記載の方法を行なうように構成されているトランスレータ装置。
- 請求項1〜28のいずれか一項に記載の方法を行なうためのコンピュータによって実施可能な命令が記録されているコンピュータ可読媒体。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB0315844.1 | 2003-07-04 | ||
GBGB0315844.1A GB0315844D0 (en) | 2003-07-04 | 2003-07-04 | Method and apparatus for performing adjustable precision exception handling |
GB0322953A GB2403563B (en) | 2003-07-04 | 2003-10-01 | Method and apparatus for performing adjustable precision exception handling |
GB0322953.1 | 2003-10-01 | ||
PCT/GB2004/002653 WO2005006106A2 (en) | 2003-07-04 | 2004-06-22 | Method and apparatus for performing adjustable precision exception handling |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2007525737A true JP2007525737A (ja) | 2007-09-06 |
JP2007525737A5 JP2007525737A5 (ja) | 2013-05-23 |
JP5284585B2 JP5284585B2 (ja) | 2013-09-11 |
Family
ID=33554172
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006518322A Expired - Fee Related JP5284585B2 (ja) | 2003-07-04 | 2004-06-22 | トランスレータによって対象プログラム・コードを目的コードにトランスレーションしながら、目的コードを実行する間に直面する例外を処理する方法並びにそのトランスレータ装置及びコンピュータ・プログラム |
Country Status (10)
Country | Link |
---|---|
US (1) | US7685579B2 (ja) |
EP (1) | EP1644829A2 (ja) |
JP (1) | JP5284585B2 (ja) |
KR (1) | KR101103973B1 (ja) |
CN (1) | CN1813242B (ja) |
GB (2) | GB0315844D0 (ja) |
HK (1) | HK1068701A1 (ja) |
IL (1) | IL172828A (ja) |
TW (1) | TWI340916B (ja) |
WO (1) | WO2005006106A2 (ja) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7313790B2 (en) * | 2003-06-23 | 2007-12-25 | Intel Corporation | Methods and apparatus for preserving precise exceptions in code reordering by using control speculation |
US7849467B2 (en) * | 2005-01-06 | 2010-12-07 | Hewlett-Packard Development Company, L.P. | Handling a signal at an application context that employs a remote kernel service |
GB2425372B (en) | 2005-04-20 | 2007-06-13 | Transitive Ltd | Method and apparatus for precise handling of exceptions during program code conversion |
US7577945B2 (en) * | 2005-05-26 | 2009-08-18 | Hewlett-Packard Development Company, L.P. | Memory mapped lazy signal blocking |
US7757221B2 (en) * | 2005-09-30 | 2010-07-13 | Intel Corporation | Apparatus and method for dynamic binary translator to support precise exceptions with minimal optimization constraints |
US7389426B2 (en) | 2005-11-29 | 2008-06-17 | Research In Motion Limited | Mobile software terminal identifier |
DE602005019307D1 (de) * | 2005-11-29 | 2010-03-25 | Research In Motion Ltd | Überprüfung von drahtloser Zugangssoftware mittels Hashing von Kennungen |
US20070294675A1 (en) | 2006-06-20 | 2007-12-20 | Transitive Limited | Method and apparatus for handling exceptions during binding to native code |
US20080052691A1 (en) * | 2006-06-29 | 2008-02-28 | Naveen Neelakantam | Communicating with and recovering state information from a dynamic translator |
WO2008068519A1 (en) | 2006-10-02 | 2008-06-12 | Transitive Limited | Computer system and method of adapting a computer system to support a register window architecture |
GB0623276D0 (en) | 2006-11-22 | 2007-01-03 | Transitive Ltd | Memory consistency protection in a multiprocessor computing system |
GB2448523B (en) * | 2007-04-19 | 2009-06-17 | Transitive Ltd | Apparatus and method for handling exception signals in a computing system |
US8146085B2 (en) | 2007-06-25 | 2012-03-27 | Microsoft Corporation | Concurrent exception handling using an aggregated exception structure |
US7861072B2 (en) * | 2007-06-25 | 2010-12-28 | Microsoft Corporation | Throwing one selected representative exception among aggregated multiple exceptions of same root cause received from concurrent tasks and discarding the rest |
US8146106B2 (en) * | 2007-12-31 | 2012-03-27 | Intel Corporation | On-demand emulation via user-level exception handling |
US8633936B2 (en) * | 2008-04-21 | 2014-01-21 | Qualcomm Incorporated | Programmable streaming processor with mixed precision instruction execution |
GB0813833D0 (en) | 2008-07-29 | 2008-09-03 | Transitive Ltd | Apparatus and method for handling page protection faults in a computing system |
JP5967772B2 (ja) * | 2010-02-11 | 2016-08-10 | エイブリィ デニソン コーポレーション | 新規のアンビル構造を備えたプラスチックファスナーを繰り出すハンドツール |
WO2013048328A1 (en) * | 2011-09-30 | 2013-04-04 | General Electric Company | Systems and methods for self-referenced detection and imaging of sample arrays |
CN103077073B (zh) * | 2013-01-15 | 2016-12-28 | 华为技术有限公司 | 即时功能级仿真器的实现方法和装置及仿真处理器 |
US9733930B2 (en) * | 2015-12-21 | 2017-08-15 | Successfactors, Inc. | Logical level difference detection between software revisions |
US11995324B2 (en) * | 2019-01-18 | 2024-05-28 | The Trustees Of Columbia University In The City Of New York | Methods and systems for fine granularity memory blacklisting to detect memory access violations |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11327918A (ja) * | 1998-02-25 | 1999-11-30 | Hewlett Packard Co <Hp> | 動的変換システム |
US6219832B1 (en) * | 1996-10-09 | 2001-04-17 | Hewlett-Packard Company | System and method of using annotations to optimize dynamically translated code in the presence of signals |
JP2002543490A (ja) * | 1999-04-27 | 2002-12-17 | トランジティブ テクノロジーズ リミテッド | プログラムコード変換において使用する例外処理の方法および装置 |
US20030101439A1 (en) * | 2001-11-29 | 2003-05-29 | Giuseppe Desoli | System and method for supporting emulation of a computer system through dynamic code caching and transformation |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5778211A (en) * | 1996-02-15 | 1998-07-07 | Sun Microsystems, Inc. | Emulating a delayed exception on a digital computer having a corresponding precise exception mechanism |
US5958061A (en) | 1996-07-24 | 1999-09-28 | Transmeta Corporation | Host microprocessor with apparatus for temporarily holding target processor state |
US5764962A (en) * | 1996-07-31 | 1998-06-09 | Hewlett-Packard Company | Emulation of asynchronous signals using a branch mechanism |
US6128641A (en) | 1997-09-12 | 2000-10-03 | Siemens Aktiengesellschaft | Data processing unit with hardware assisted context switching capability |
US6898700B2 (en) | 1998-03-31 | 2005-05-24 | Intel Corporation | Efficient saving and restoring state in task switching |
US6131187A (en) | 1998-08-17 | 2000-10-10 | International Business Machines Corporation | Method and system for translating exception handling semantics of a bytecode class file |
US6308318B2 (en) * | 1998-10-07 | 2001-10-23 | Hewlett-Packard Company | Method and apparatus for handling asynchronous exceptions in a dynamic translation system |
US7065750B2 (en) * | 1999-02-17 | 2006-06-20 | Elbrus International | Method and apparatus for preserving precise exceptions in binary translated code |
US6842811B2 (en) | 2000-02-24 | 2005-01-11 | Pts Corporation | Methods and apparatus for scalable array processor interrupt detection and response |
US7000226B2 (en) * | 2002-01-02 | 2006-02-14 | Intel Corporation | Exception masking in binary translation |
US7003762B2 (en) * | 2002-08-01 | 2006-02-21 | Sas Institute Inc. | Computer-implemented exception handling system and method |
US20040128658A1 (en) * | 2002-12-27 | 2004-07-01 | Guei-Yuan Lueh | Exception handling with stack trace cache |
JP4166096B2 (ja) * | 2003-01-31 | 2008-10-15 | 芦森工業株式会社 | シートベルトリトラクター |
GB0309056D0 (en) | 2003-04-22 | 2003-05-28 | Transitive Technologies Ltd | Block translation optimizations for program code conversion |
-
2003
- 2003-07-04 GB GBGB0315844.1A patent/GB0315844D0/en not_active Ceased
- 2003-10-01 GB GB0322953A patent/GB2403563B/en not_active Expired - Lifetime
- 2003-12-02 US US10/726,857 patent/US7685579B2/en active Active
-
2004
- 2004-06-22 WO PCT/GB2004/002653 patent/WO2005006106A2/en active Application Filing
- 2004-06-22 JP JP2006518322A patent/JP5284585B2/ja not_active Expired - Fee Related
- 2004-06-22 EP EP04743005A patent/EP1644829A2/en not_active Ceased
- 2004-06-22 KR KR1020067000156A patent/KR101103973B1/ko not_active IP Right Cessation
- 2004-06-22 CN CN200480018363.2A patent/CN1813242B/zh not_active Expired - Lifetime
- 2004-06-24 TW TW093118380A patent/TWI340916B/zh active
-
2005
- 2005-02-04 HK HK05100973A patent/HK1068701A1/xx not_active IP Right Cessation
- 2005-12-26 IL IL172828A patent/IL172828A/en unknown
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6219832B1 (en) * | 1996-10-09 | 2001-04-17 | Hewlett-Packard Company | System and method of using annotations to optimize dynamically translated code in the presence of signals |
JPH11327918A (ja) * | 1998-02-25 | 1999-11-30 | Hewlett Packard Co <Hp> | 動的変換システム |
JP2002543490A (ja) * | 1999-04-27 | 2002-12-17 | トランジティブ テクノロジーズ リミテッド | プログラムコード変換において使用する例外処理の方法および装置 |
US20030101439A1 (en) * | 2001-11-29 | 2003-05-29 | Giuseppe Desoli | System and method for supporting emulation of a computer system through dynamic code caching and transformation |
Also Published As
Publication number | Publication date |
---|---|
IL172828A (en) | 2010-11-30 |
HK1068701A1 (en) | 2005-04-29 |
US20050005265A1 (en) | 2005-01-06 |
WO2005006106A2 (en) | 2005-01-20 |
GB0322953D0 (en) | 2003-11-05 |
EP1644829A2 (en) | 2006-04-12 |
KR20060029178A (ko) | 2006-04-04 |
GB2403563A (en) | 2005-01-05 |
IL172828A0 (en) | 2006-06-11 |
CN1813242A (zh) | 2006-08-02 |
GB2403563B (en) | 2005-11-23 |
JP5284585B2 (ja) | 2013-09-11 |
WO2005006106A3 (en) | 2005-08-25 |
TWI340916B (en) | 2011-04-21 |
KR101103973B1 (ko) | 2012-01-06 |
GB0315844D0 (en) | 2003-08-13 |
US7685579B2 (en) | 2010-03-23 |
TW200513967A (en) | 2005-04-16 |
CN1813242B (zh) | 2010-04-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5284585B2 (ja) | トランスレータによって対象プログラム・コードを目的コードにトランスレーションしながら、目的コードを実行する間に直面する例外を処理する方法並びにそのトランスレータ装置及びコンピュータ・プログラム | |
TWI482094B (zh) | 在程式碼轉換期間異常的精確處理之方法與裝置 | |
EP2165258B1 (en) | Apparatus and method for handling exception signals in a computing system | |
US8458674B2 (en) | Method and apparatus for handling exceptions during binding to native code | |
US9495136B2 (en) | Using aliasing information for dynamic binary optimization | |
US10942718B2 (en) | Systems and/or methods for type inference from machine code | |
US7500230B2 (en) | Raising native software code | |
US9129062B1 (en) | Intercepting subroutine return in unmodified binaries | |
KR101244069B1 (ko) | 프로그램 코드 변환시 정밀한 예외 핸들링을 위한 방법 및장치 | |
US8286144B2 (en) | Administering a process filesystem with respect to program code conversion | |
Dodge et al. | A study of initialization in Linux and OpenBSD | |
Paul et al. | A Generic Operating System Kernel |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070621 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070621 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20090731 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20090824 |
|
RD12 | Notification of acceptance of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7432 Effective date: 20090824 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100201 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100303 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100519 Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20100519 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100616 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20100910 Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100910 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20110405 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110719 Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20110719 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20110725 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20111007 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20120322 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20130307 |
|
A524 | Written submission of copy of amendment under article 19 pct |
Free format text: JAPANESE INTERMEDIATE CODE: A524 Effective date: 20130307 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20130405 |
|
A524 | Written submission of copy of amendment under article 19 pct |
Free format text: JAPANESE INTERMEDIATE CODE: A524 Effective date: 20130405 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20130509 |
|
RD14 | Notification of resignation of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7434 Effective date: 20130509 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130530 |
|
LAPS | Cancellation because of no payment of annual fees |