KR100589798B1 - 중지동안 바이트 코드 최적화 장치 및 방법 - Google Patents
중지동안 바이트 코드 최적화 장치 및 방법 Download PDFInfo
- Publication number
- KR100589798B1 KR100589798B1 KR1019980041791A KR19980041791A KR100589798B1 KR 100589798 B1 KR100589798 B1 KR 100589798B1 KR 1019980041791 A KR1019980041791 A KR 1019980041791A KR 19980041791 A KR19980041791 A KR 19980041791A KR 100589798 B1 KR100589798 B1 KR 100589798B1
- Authority
- KR
- South Korea
- Prior art keywords
- routine
- compilation
- routines
- computer program
- list
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 41
- 238000005457 optimization Methods 0.000 title 1
- 238000004590 computer program Methods 0.000 claims abstract description 50
- 230000000694 effects Effects 0.000 claims description 26
- 230000003111 delayed effect Effects 0.000 claims description 6
- 230000004044 response Effects 0.000 claims description 4
- 230000000977 initiatory effect Effects 0.000 claims 6
- 230000008569 process Effects 0.000 description 16
- 230000006870 function Effects 0.000 description 5
- 238000012544 monitoring process Methods 0.000 description 4
- 241001417527 Pempheridae Species 0.000 description 3
- 230000001934 delay Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000004397 blinking Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000000725 suspension Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/48—Incremental compilation
-
- 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/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
- G06F9/45516—Runtime code conversion or optimisation
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)
- Stored Programmes (AREA)
Abstract
Description
Claims (22)
- 유휴기간을 식별하고;유휴기간동안 컴퓨터 프로그램에 포함된 복수의 루틴으로 부터 선택된 제 1 루틴을 식별하며, 이때, 상기 컴퓨터 프로그램은 인터프리팅된 프로그램 코드와 컴파일링된 프로그램 코드 둘다를 실행하도록 배열되며;유휴기간동안에 일어나는 제 1 루틴의 컴파일링을 초기화하는 단계들을 포함하는 것을 특징으로 하는 컴퓨터 프로그램 처리에서 유휴기간동안 루틴을 동적으로 컴파일링하는 방법.
- 제 1 항에 있어서, 복수의 루틴이 컴퓨터 프로그램과 관련된 제 1 리스트에서 참조되며, 제 1 루틴이 제 1 리스트와 관련된 최고 우선순위의 루틴임을 특징으로 하는 컴퓨터 프로그램 처리에서 유휴기간동안 루틴을 동적으로 컴파일링하는 방법.
- 제 1 항에 있어서, 복수의 루틴으로 부터 선택된 제 1 루틴 집합이 제 1 리스트와 관련되고, 복수의 루틴으로 부터 선택된 제 2 루틴 집합이 제 2 리스트와 관련되며, 상기 제 1 리스트는 컴퓨터 프로그램 처리동안 생성되고, 상기 제 2 리스트는 컴퓨터 프로그램 처리 이전에 생성되며, 제 1 루틴 식별단계가 상기 제 1 리스트로 부터 최고 우선순위 루틴으로서 제 1 루틴을 선택하는 과정을 포함함을 특징으로 하는 컴퓨터 프로그램 처리에서 유휴기간동안 루틴을 동적으로 컴파일링 하는 방법.
- 제 1 항에 있어서, 복수의 루틴으로 부터 선택된 제 1 루틴집합이 제 1 리스트와 관련되고, 복수의 루틴으로 부터 선택된 제 2 루틴집합이 제 2 리스트와 관련되며, 상기 제 1 리스트는 컴퓨터 프로그램 처리동안 생성되며, 상기 제 2 리스트는 컴퓨터 프로그램 처리 이전에 생성되며, 제 1 루틴 식별단계가 상기 제 2 리스트로 부터 최고 우선순위 루틴으로서 제 1 루틴을 선택하는 과정을 포함함을 특징으로 하는 컴퓨터 프로그램 처리에서 유휴기간동안 루틴을 동적으로 컴파일링하는 방법.
- 제 1 항 내지 4 항 중 어느 한 항에 있어서,제 1 루틴의 컴파일링 초기화 이후에 인터럽트가 컴퓨터 프로그램에 의해 수신되는지 여부를 결정하고;인터럽트가 수신되었다고 결정될 때 예정된 기간동안 제 1 루틴의 컴파일링을 계속하고;예정된 기간 이후에 제 1 루틴의 컴파일링이 완결되었는지 여부를 결정하고;예정된 기간후에 제 1 루틴의 컴파일링이 완결되지 않았다고 결정될 때 제 1 루틴의 컴파일링을 중지하는 단계들을 더욱 포함함을 특징으로 하는 컴퓨터 프로그램 처리에서 유휴기간동안 루틴을 동적으로 컴파일링하는 방법.
- 저활성 기간을 식별하고;저활성 기간동안 컴퓨터 프로그램에 포함된 복수의 루틴으로 부터 선택된 제 1 루틴을 식별하며;제 1 루틴이 컴파일링되는지 여부를 저활성 기간동안 결정하고;제 1 루틴이 컴파일링 되지 않는다고 결정될 때 저활성 기간동안 제 1 루틴의 컴파일링을 초기화하는 단계들을 포함하는 것을 특징으로 하는 컴퓨터 프로그램 전체 실행에서 저활성 기간동안 루틴을 동적으로 컴파일링하는 방법.
- 제 6 항에 있어서,제 1 루틴이 컴파일링된다고 결정될 때 저활성기간동안 복수의 루틴으로 부터 선택된 제 2 루틴을 식별하고;제 2 루틴이 컴파일링 되는지 여부를 저활성 기간동안 결정하며,제 2 루틴이 컴파일링 되지 않는다고 결정될 때 저활성 기간동안 제 2 루틴의 컴파일링을 초기화하는 단계들을 더욱 포함함을 특징으로 하는 컴퓨터 프로그램 전체 실행에서 저활성 기간동안 루틴을 동적으로 컴파일링하는 방법.
- 제 7 항에 있어서, 상기 방법은,복수의 루틴 각각에 대한 우선순위 값을 결정하는 단계를 포함하고, 이때, 상기 제 1 루틴이 제 1 루틴에 대한 우선순위 값에 기초하여 식별됨을 특징으로 하는 컴퓨터 프로그램 전체 실행에서 저활성 기간동안 루틴을 동적으로 컴파일링하는방법.
- 제 8 항에 있어서, 복수의 루틴 각각에 대한 우선순위 값을 결정하는 단계가 저활성 기간동안 복수의 루틴 각각과 관련된 호출 카운터를 처리하는 과정을 포함함을 특징으로 하는 컴퓨터 프로그램 전체 실행에서 저활성 기간동안 루틴을 동적으로 컴파일링하는 방법.
- 제 8 항에 있어서, 복수의 루틴 각각에 대한 우선순위 값 결정단계가 저활성 기간동안 복수의 루틴 각각에 대한 컴파일링 시간을 추정하는 과정을 포함함을 특징으로 하는 컴퓨터 프로그램 전체 실행에서 저활성 기간동안 루틴을 동적으로 컴 파일링하는 방법.
- 제 6 항에 있어서, 복수의 루틴으로 부터 선택된 제 1 루틴집합이 제 1 리스트와 관련되고, 복수의 루틴으로 부터 선택된 제 2 루틴집합이 제 2 리스트와 관련되며, 상기 제 1 리스트는 컴퓨터 프로그램 처리동안 생성되고, 상기 제 2 리스트는 컴퓨터 프로그램 처리 이전에 생성되며, 제 1 루틴 식별단계가 제 1 리스트로 부터 최고 우선순위 루틴으로서 제 1 루틴을 선택하는 과정을 포함함을 특징으로 하는 컴퓨터 프로그램 전체 실행에서 저활성 기간동안 루틴을 동적으로 컴파일링하는 방법 .
- 제 6 항 내지 제 11 항 중 어느 한 항에 있어서,제 1 루틴 컴파일링 초기화 이후에 컴퓨터 프로그램에 의해 인터럽트가 수신되는지 여부를 결정하고;인터럽트가 수신되었다고 결정될 때 예정된 기간동안 제 1 루틴의 컴파일링을 계속하며;예정된 기간후에 제 1 루틴의 컴파일링이 완결되었는지 여부를 결정하고;예정된 기간후에 제 1 루틴의 컴파일링이 완결되지 않았다고 결정될 때 제 1 루틴의 컴파일링을 중지하는 단계들을 더욱 포함함을 특징으로 하는 컴퓨터 프로그램 전체 실행에서 저활성 기간동안 루틴을 동적으로 컴파일링하는 방법.
- 제 12 항에 있어서,인터럽트가 수신되지 않았다고 결정될 때 제 1 루틴 컴파일링을 완료하고;저활성 기간동안 복수의 루틴으로 부터 선택된 제 2 루틴을 식별하며;저활성 기간동안 제 2 루틴이 컴파일링 되는지 여부를 결정하고;제 2 루틴이 컴파일링되지 않았다고 결정될 때 저활성 기간동안 제 2 루틴의 컴파일링을 초기화하는 단계들을 더욱 포함함을 특징으로 하는 컴퓨터 프로그램 전체 실행에서 저활성 기간동안 루틴을 동적으로 컴파일링하는 방법.
- 컴퓨터 프로그램의 처리에서 유휴 기간을 식별하고;컴퓨터 프로그램의 처리에서 유휴기간동안 컴퓨터 프로그램에 포함된 복수의 데스크로 부터 제 1 데스크를 식별하며, 이때, 상기 컴퓨터 프로그램은 인터프리팅된 프로그램 코드와 컴파일링된 프로그램 코드 둘다를 실현하도록 배열되며,유휴기간동안 제 1 태스크를 시작하는 단계들을 포함하는 것을 특징으로 하는 컴퓨터 프로그램의 처리에서 유휴 기간동안 지연된 태스크를 동적으로 처리하는 방법.
- 제 14 항에 있어서, 인터럽트가 수신될 때 제 1 태스크를 완결하는 단계를 더욱 포함함을 특징으로 하는 컴퓨터 프로그램의 처리에서 유휴 기간동안 지연된 태스크를 동적으로 처리하는 방법.
- 제 14 항에 있어서, 인터럽트가 수신될 때 제 1 태스크를 지연시키는 단계를 더욱 포함함을 특징으로 하는 컴퓨터 프로그램의 처리에서 유휴 기간동안 지연된 태스크를 동적으로 처리하는 방법.
- 저활성 기간을 식별하는 장치;저활성 기간동안 복수의 루틴으로 부터 선택된 제 1 루틴을 식별하는 장치;저활성 기간동안 제 1 루틴의 컴파일링을 초기화하는 컴파일러를 포함하는 것을 특징으로 하는 컴퓨터 프로그램 처리에서 저활성 기간동안 바이트 코드화 루틴을 동적으로 컴파일링 하는 컴퓨터 시스템.
- 제 17 항에 있어서, 상기 컴퓨터 시스템은,제 1 복수의 루틴 집합에 대해 배열된 제 1 리스트와,제 2 복수의 루틴 집합에 대해 배열된 제 2 리스트를 포함하며,상기 제 1 리스트는 컴퓨터 프로그램과 관련되며, 제 1 루틴은 상기 제 1 리스트와 관련된 최고 우선순위 루틴이며,상기 제 2 리스트는 컴퓨터 프로그램 처리 이전에 생성되고, 상기 제 1 리스트는 컴퓨터 프로그램 처리동안 생성됨을 특징으로 하는 컴퓨터 시스템.
- 제 17 항에 있어서,제 1 루틴 컴파일링 동안 인터럽트 신호를 수신하도록 배열되며 컴파일러와 통신하는 인터럽트 프로세서로서, 이때, 상기 컴파일러는 인터럽트 프로세서로 부터의 신호에 응답하여 예정된 기간동안 제 1 루틴의 컴파일링을 계속하도록 배열되는 특징의 상기 인터럽트 프로세서; 그리고상기 컴파일러와 통신하며 제 1 루틴의 컴파일링을 중지하도록 배열되는 중지 장치를 더욱 포함함을 특징으로 하는 시스템.
- 제 17 항 내지 제 19 항중 어느 한 항에 있어서, 상기 제 1 루틴이 컴파일링되는 시기를 식별하도록 배열되는 진단장치를 더욱 포함함을 특징으로 하는 시스템.
- 유휴 기간을 식별하는 컴퓨터 프로그램 코드 디바이스;유휴 기간동안 컴퓨터 프로그램에 포함된 복수의 루틴으로 부터 선택된 제 1 루틴을 식별하는 컴퓨터 프로그램 코드 디바이스;유휴 기간동안 제 1 루틴의 컴파일링을 초기화하는 컴퓨터 프로그램 코드 디바이스를 포함하는 것을 특징으로 하는 컴퓨터 프로그램 처리에서 유휴 기간동안 루틴을 동적으로 컴파일링 하도록 배열된 컴퓨터 프로그램 코드 디바이스들을 포함하는 컴퓨터로 판독가능한 매체.
- 제 21 항에 있어서, 상기 컴퓨터 프로그램 코드 디바이스들이 반송파로 구현되는 것을 특징으로 하는 컴퓨터로 판독가능한 매체.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/944,735 | 1997-10-06 | ||
US8/944,735 | 1997-10-06 | ||
US08/944,735 US5970249A (en) | 1997-10-06 | 1997-10-06 | Method and apparatus for performing byte-code optimization during pauses |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19990036882A KR19990036882A (ko) | 1999-05-25 |
KR100589798B1 true KR100589798B1 (ko) | 2006-10-25 |
Family
ID=25481974
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019980041791A KR100589798B1 (ko) | 1997-10-06 | 1998-10-07 | 중지동안 바이트 코드 최적화 장치 및 방법 |
Country Status (6)
Country | Link |
---|---|
US (2) | US5970249A (ko) |
EP (1) | EP0908818B1 (ko) |
JP (1) | JPH11237989A (ko) |
KR (1) | KR100589798B1 (ko) |
CN (1) | CN100392595C (ko) |
DE (1) | DE69834230T2 (ko) |
Families Citing this family (96)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6960133B1 (en) | 2000-08-28 | 2005-11-01 | Igt | Slot machine game having a plurality of ways for a user to obtain payouts based on selection of one or more symbols (power pays) |
US6513156B2 (en) * | 1997-06-30 | 2003-01-28 | Sun Microsystems, Inc. | Interpreting functions utilizing a hybrid of virtual and native machine instructions |
US5995754A (en) * | 1997-10-06 | 1999-11-30 | Sun Microsystems, Inc. | Method and apparatus for dynamically optimizing byte-coded programs |
US6317796B1 (en) * | 1997-10-06 | 2001-11-13 | Sun Microsystems, Inc. | Inline database for receiver types in object-oriented systems |
US6792600B1 (en) * | 1998-05-14 | 2004-09-14 | International Business Machines Corporation | Method and apparatus for just in time compilation of instructions |
US6141793A (en) * | 1998-04-01 | 2000-10-31 | Hewlett-Packard Company | Apparatus and method for increasing the performance of interpreted programs running on a server |
US6405367B1 (en) | 1998-06-05 | 2002-06-11 | Hewlett-Packard Company | Apparatus and method for increasing the performance of Java programs running on a server |
US6427234B1 (en) * | 1998-06-11 | 2002-07-30 | University Of Washington | System and method for performing selective dynamic compilation using run-time information |
US6205578B1 (en) * | 1998-08-14 | 2001-03-20 | Ati International Srl | Interpreter for stack-based languages |
JP2000122875A (ja) * | 1998-10-19 | 2000-04-28 | Internatl Business Mach Corp <Ibm> | 例外処理方法およびシステム |
GB9825102D0 (en) | 1998-11-16 | 1999-01-13 | Insignia Solutions Plc | Computer system |
US6324687B1 (en) * | 1998-12-03 | 2001-11-27 | International Business Machines Corporation | Method and apparatus to selectively control processing of a method in a java virtual machine |
US20050149694A1 (en) * | 1998-12-08 | 2005-07-07 | Mukesh Patel | Java hardware accelerator using microcode engine |
US6332215B1 (en) * | 1998-12-08 | 2001-12-18 | Nazomi Communications, Inc. | Java virtual machine hardware for RISC and CISC processors |
GB2344907A (en) * | 1998-12-19 | 2000-06-21 | Int Computers Ltd | Instruction translation and execution mechanism |
US6327702B1 (en) * | 1998-12-30 | 2001-12-04 | Microsoft Corporation | Generating a compiled language program for an interpretive runtime environment |
JP3470948B2 (ja) * | 1999-01-28 | 2003-11-25 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 動的コンパイル時期決定方法、バイトコード実行モード選択方法、及びコンピュータ |
US6507946B2 (en) * | 1999-06-11 | 2003-01-14 | International Business Machines Corporation | Process and system for Java virtual method invocation |
GB2352914A (en) | 1999-08-03 | 2001-02-07 | Sony Uk Ltd | Data broadcast method |
JP3356742B2 (ja) * | 1999-11-17 | 2002-12-16 | インターナショナル・ビジネス・マシーンズ・コーポレーション | プログラム実行方法 |
JP3605327B2 (ja) | 1999-11-18 | 2004-12-22 | 富士通株式会社 | プログラム実行装置 |
DE19963832A1 (de) * | 1999-12-30 | 2001-07-05 | Ericsson Telefon Ab L M | Programmprofilierung |
US6865730B1 (en) * | 2000-03-08 | 2005-03-08 | International Business Machines Corporation | Interprocedural analysis and optimization of an object oriented program in the presence of dynamic class loading |
US6769985B1 (en) | 2000-05-31 | 2004-08-03 | Igt | Gaming device and method for enhancing the issuance or transfer of an award |
US7695363B2 (en) | 2000-06-23 | 2010-04-13 | Igt | Gaming device having multiple display interfaces |
US7699699B2 (en) | 2000-06-23 | 2010-04-20 | Igt | Gaming device having multiple selectable display interfaces based on player's wagers |
US7240342B1 (en) * | 2000-06-30 | 2007-07-03 | Intel Corporation | User transparent continuous compilation |
US6973646B1 (en) * | 2000-07-21 | 2005-12-06 | International Business Machines Corporation | Method for compiling program components in a mixed static and dynamic environment |
US6935955B1 (en) | 2000-09-07 | 2005-08-30 | Igt | Gaming device with award and deduction proximity-based sound effect feature |
EP1197847A3 (en) * | 2000-10-10 | 2003-05-21 | Nazomi Communications Inc. | Java hardware accelerator using microcode engine |
US6739973B1 (en) | 2000-10-11 | 2004-05-25 | Igt | Gaming device having changed or generated player stimuli |
US6964039B2 (en) * | 2000-12-13 | 2005-11-08 | Esmertec Ag | Method to create optimized machine code through combined verification and translation of JAVA™ bytecode |
US7040983B2 (en) | 2001-03-21 | 2006-05-09 | Igt | Gaming device having a multi-round, multi-characteristic matching game |
US6978451B2 (en) * | 2001-05-31 | 2005-12-20 | Esmertec Ag | Method for fast compilation of preverified JAVA bytecode to high quality native machine code |
US7901291B2 (en) | 2001-09-28 | 2011-03-08 | Igt | Gaming device operable with platform independent code and method |
US7666098B2 (en) | 2001-10-15 | 2010-02-23 | Igt | Gaming device having modified reel spin sounds to highlight and enhance positive player outcomes |
US7708642B2 (en) | 2001-10-15 | 2010-05-04 | Igt | Gaming device having pitch-shifted sound and music |
US6848996B2 (en) | 2001-10-15 | 2005-02-01 | Igt | Gaming device with sound recording changes associated with player inputs |
US6993755B1 (en) * | 2001-10-24 | 2006-01-31 | Sun Microsystems, Inc. | Dynamic compilation control |
CA2359862A1 (en) * | 2001-10-24 | 2003-04-24 | Ibm Canada Limited - Ibm Canada Limitee | Using identifiers and counters for controlled optimization compilation |
US6996814B2 (en) | 2001-11-14 | 2006-02-07 | Sun Microsystems, Inc. | Method and apparatus for dynamically compiling byte codes into native code |
US20040088690A1 (en) * | 2002-08-27 | 2004-05-06 | Hayim Shaul | Method for accelerating a computer application by recompilation and hardware customization |
US7290254B2 (en) * | 2003-03-25 | 2007-10-30 | Intel Corporation | Combining compilation and instruction set translation |
JP4713820B2 (ja) * | 2003-05-28 | 2011-06-29 | パナソニック株式会社 | プログラム実行制御装置、プログラム実行制御方法 |
US7789748B2 (en) * | 2003-09-04 | 2010-09-07 | Igt | Gaming device having player-selectable music |
US7105736B2 (en) | 2003-09-09 | 2006-09-12 | Igt | Gaming device having a system for dynamically aligning background music with play session events |
US8954420B1 (en) | 2003-12-31 | 2015-02-10 | Google Inc. | Methods and systems for improving a search ranking using article information |
US20050149498A1 (en) * | 2003-12-31 | 2005-07-07 | Stephen Lawrence | Methods and systems for improving a search ranking using article information |
US7788657B2 (en) * | 2004-02-27 | 2010-08-31 | Tvworks, Llc | Targeted runtime compilation |
US8161053B1 (en) | 2004-03-31 | 2012-04-17 | Google Inc. | Methods and systems for eliminating duplicate events |
US7941439B1 (en) | 2004-03-31 | 2011-05-10 | Google Inc. | Methods and systems for information capture |
US8631076B1 (en) | 2004-03-31 | 2014-01-14 | Google Inc. | Methods and systems for associating instant messenger events |
US7725508B2 (en) | 2004-03-31 | 2010-05-25 | Google Inc. | Methods and systems for information capture and retrieval |
US7680888B1 (en) | 2004-03-31 | 2010-03-16 | Google Inc. | Methods and systems for processing instant messenger messages |
US8275839B2 (en) * | 2004-03-31 | 2012-09-25 | Google Inc. | Methods and systems for processing email messages |
US7581227B1 (en) | 2004-03-31 | 2009-08-25 | Google Inc. | Systems and methods of synchronizing indexes |
US7333976B1 (en) | 2004-03-31 | 2008-02-19 | Google Inc. | Methods and systems for processing contact information |
US8099407B2 (en) | 2004-03-31 | 2012-01-17 | Google Inc. | Methods and systems for processing media files |
US7412708B1 (en) * | 2004-03-31 | 2008-08-12 | Google Inc. | Methods and systems for capturing information |
US8346777B1 (en) | 2004-03-31 | 2013-01-01 | Google Inc. | Systems and methods for selectively storing event data |
US8386728B1 (en) | 2004-03-31 | 2013-02-26 | Google Inc. | Methods and systems for prioritizing a crawl |
KR100725386B1 (ko) * | 2004-09-25 | 2007-06-07 | 삼성전자주식회사 | 가상 머신 어플리케이션을 실행하는 방법 및 그 방법을이용한 디지털 방송 수신기 |
US8043155B2 (en) | 2004-10-18 | 2011-10-25 | Igt | Gaming device having a plurality of wildcard symbol patterns |
US20060212840A1 (en) * | 2005-03-16 | 2006-09-21 | Danny Kumamoto | Method and system for efficient use of secondary threads in a multiple execution path processor |
US9262446B1 (en) | 2005-12-29 | 2016-02-16 | Google Inc. | Dynamically ranking entries in a personal data book |
JP5167589B2 (ja) * | 2006-02-13 | 2013-03-21 | 富士通株式会社 | アプリケーションサーバ装置および仮想マシンプログラム |
US7784041B2 (en) * | 2006-03-30 | 2010-08-24 | Oracle America, Inc. | Mechanism for reducing detectable pauses in dynamic output caused by dynamic compilation |
US8799876B2 (en) * | 2006-09-29 | 2014-08-05 | Intel Corporation | Method and apparatus for assigning subroutines |
US8146065B2 (en) | 2007-08-13 | 2012-03-27 | International Business Machines Corporation | Running time of short running applications by effectively interleaving compilation with computation in a just-in-time environment |
US20090125519A1 (en) * | 2007-11-13 | 2009-05-14 | Intel Corporation | Device, system, and method for regulating software lock elision mechanisms |
KR20090098500A (ko) * | 2008-03-14 | 2009-09-17 | 삼성전자주식회사 | 가상 머신의 유휴 구간 검사 장치 및 방법, 그리고 그방법을 수행하기 위한 컴퓨터 프로그램 |
US8591308B2 (en) | 2008-09-10 | 2013-11-26 | Igt | Gaming system and method providing indication of notable symbols including audible indication |
JP5093509B2 (ja) * | 2008-10-28 | 2012-12-12 | 日本電気株式会社 | Cpuエミュレーションシステム、cpuエミュレーション方法及びcpuエミュレーションプログラム |
US8677329B2 (en) * | 2009-06-03 | 2014-03-18 | Apple Inc. | Methods and apparatuses for a compiler server |
US9117071B2 (en) | 2009-06-03 | 2015-08-25 | Apple Inc. | Methods and apparatuses for secure compilation |
JP2011192239A (ja) * | 2010-03-17 | 2011-09-29 | Sony Corp | 記憶装置および記憶システム |
JP2011192240A (ja) * | 2010-03-17 | 2011-09-29 | Sony Corp | 記憶装置および記憶システム |
CN102610002B (zh) * | 2011-01-20 | 2015-11-25 | 鸿富锦精密工业(深圳)有限公司 | 机台状态侦测系统及方法 |
JP2013061810A (ja) * | 2011-09-13 | 2013-04-04 | Fujitsu Ltd | 情報処理装置、情報処理装置制御方法及び中間コード命令実行プログラム |
US8460090B1 (en) | 2012-01-20 | 2013-06-11 | Igt | Gaming system, gaming device, and method providing an estimated emotional state of a player based on the occurrence of one or more designated events |
US9245407B2 (en) | 2012-07-06 | 2016-01-26 | Igt | Gaming system and method that determines awards based on quantities of symbols included in one or more strings of related symbols displayed along one or more paylines |
US8740689B2 (en) | 2012-07-06 | 2014-06-03 | Igt | Gaming system and method configured to operate a game associated with a reflector symbol |
US9027007B2 (en) * | 2013-03-06 | 2015-05-05 | Qualcomm Incorporated | Reducing excessive compilation times |
US9996325B2 (en) | 2013-03-06 | 2018-06-12 | Qualcomm Incorporated | Dynamic reconfigurable compiler |
JP6127639B2 (ja) | 2013-03-26 | 2017-05-17 | 富士通株式会社 | プログラム実行制御プログラム、プログラム実行制御方法 |
US9239712B2 (en) * | 2013-03-29 | 2016-01-19 | Intel Corporation | Software pipelining at runtime |
US9009691B1 (en) * | 2013-07-12 | 2015-04-14 | Google Inc. | Using an inline stack to improve performance of an applications binary |
US9192857B2 (en) | 2013-07-23 | 2015-11-24 | Igt | Beat synchronization in a game |
US9569185B2 (en) | 2014-02-07 | 2017-02-14 | Oracle International Corporation | Changing de-optimization guard representation during the compilation process |
CN105718298B (zh) * | 2014-12-03 | 2019-02-15 | 龙芯中科技术有限公司 | 动态编译方法及装置 |
CN104951335B (zh) * | 2015-05-22 | 2019-01-04 | 小米科技有限责任公司 | 应用程序安装包的处理方法及装置 |
US9947170B2 (en) | 2015-09-28 | 2018-04-17 | Igt | Time synchronization of gaming machines |
CN105373430A (zh) | 2015-10-13 | 2016-03-02 | 惠州Tcl移动通信有限公司 | 一种动态分配编译机的系统及其方法 |
US11029929B2 (en) * | 2019-01-24 | 2021-06-08 | Red Hat, Inc. | Using emulation to improve startup time for just-in-time compilation |
CN112379984B (zh) * | 2020-11-16 | 2024-07-23 | 神州融安科技(北京)有限公司 | 执行任务的方法、设备、电子设备及计算机可读存储介质 |
KR20230019619A (ko) * | 2021-08-02 | 2023-02-09 | 삼성전자주식회사 | 어플리케이션 최적화 방법 및 이를 지원하는 장치 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5694603A (en) * | 1982-09-28 | 1997-12-02 | Reiffin; Martin G. | Computer memory product with preemptive multithreading software |
US4658351A (en) * | 1984-10-09 | 1987-04-14 | Wang Laboratories, Inc. | Task control means for a multi-tasking data processing system |
US5394537A (en) * | 1989-12-13 | 1995-02-28 | Texas Instruments Incorporated | Adaptive page placement memory management system |
US5586328A (en) * | 1994-10-21 | 1996-12-17 | Microsoft Corporation | Module dependency based incremental compiler and method |
US5995997A (en) * | 1997-05-02 | 1999-11-30 | Microsoft Corporation | Apparatus and methods for optimally allocating currently available computer resources to future task instances versus continued execution of current task instances |
US5933635A (en) * | 1997-10-06 | 1999-08-03 | Sun Microsystems, Inc. | Method and apparatus for dynamically deoptimizing compiled activations |
US5995754A (en) * | 1997-10-06 | 1999-11-30 | Sun Microsystems, Inc. | Method and apparatus for dynamically optimizing byte-coded programs |
US6009517A (en) * | 1997-10-06 | 1999-12-28 | Sun Microsystems, Inc. | Mixed execution stack and exception handling |
-
1997
- 1997-10-06 US US08/944,735 patent/US5970249A/en not_active Expired - Lifetime
-
1998
- 1998-09-24 DE DE69834230T patent/DE69834230T2/de not_active Expired - Lifetime
- 1998-09-24 EP EP98307744A patent/EP0908818B1/en not_active Expired - Lifetime
- 1998-10-06 CN CNB98118295XA patent/CN100392595C/zh not_active Expired - Lifetime
- 1998-10-06 JP JP10319738A patent/JPH11237989A/ja not_active Withdrawn
- 1998-10-07 KR KR1019980041791A patent/KR100589798B1/ko not_active IP Right Cessation
-
1999
- 1999-07-14 US US09/353,124 patent/US6240548B1/en not_active Expired - Lifetime
Non-Patent Citations (1)
Title |
---|
Proc. 6th Workshop HotOS-VI(1997) * |
Also Published As
Publication number | Publication date |
---|---|
CN1234552A (zh) | 1999-11-10 |
JPH11237989A (ja) | 1999-08-31 |
CN100392595C (zh) | 2008-06-04 |
DE69834230D1 (de) | 2006-05-24 |
US6240548B1 (en) | 2001-05-29 |
US5970249A (en) | 1999-10-19 |
DE69834230T2 (de) | 2006-08-31 |
KR19990036882A (ko) | 1999-05-25 |
EP0908818A2 (en) | 1999-04-14 |
EP0908818A3 (en) | 2001-06-20 |
EP0908818B1 (en) | 2006-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100589798B1 (ko) | 중지동안 바이트 코드 최적화 장치 및 방법 | |
US6237141B1 (en) | Method and apparatus for dynamically optimizing byte-coded programs | |
US6865734B2 (en) | Method and apparatus for performing byte-code optimization during pauses | |
US7958499B2 (en) | Program execution control device, program execution control method, control program, and recording medium | |
US6530075B1 (en) | JIT/compiler Java language extensions to enable field performance and serviceability | |
US6631515B1 (en) | Method and apparatus to reduce code size and runtime in a Java environment | |
EP0767938B1 (en) | Method for enforcing a hierarchical invocation structure in real time asynchronous software applications | |
KR101825772B1 (ko) | 선택된 실행 런타임을 갖는 실행을 위한 사용자 코드의 런타임 독립적 표현 기법 | |
US7406684B2 (en) | Compiler, dynamic compiler, and replay compiler | |
US9389889B2 (en) | Application server for optimizing timing of performing dynamic compilation | |
JP2000040022A (ja) | 実行マルチスレッドのタイムプロファイリング方法、被選択スレッドの実行状態決定方法、タイムプロファイリングシステム、コンピュ―タ読取可能な記録媒体 | |
US6978285B2 (en) | Methods and apparatus for concurrent enumeration of an object reference root set | |
EP1444575B1 (en) | Method and apparatus for dynamically compiling byte codes into native code | |
US20040015925A1 (en) | Method, article of manufacture and apparatus for performing automatic intemodule call linkage optimization | |
JP2004078322A (ja) | タスク管理システム、プログラム、記録媒体、及び制御方法 | |
US7225443B2 (en) | Stack usage in computer-related operating systems | |
US20050066305A1 (en) | Method and machine for efficient simulation of digital hardware within a software development environment | |
CN110750346B (zh) | 任务运行优化方法、装置、终端及存储介质 | |
JP3642772B2 (ja) | コンピュータ装置及びプログラム実行方法 | |
US11435989B2 (en) | Thread-local return structure for asynchronous state machine | |
US6671877B1 (en) | Method and device to calculate activity degrees of method programs | |
US8091077B1 (en) | System and method for handling rare events by modification of executable code | |
JP2970262B2 (ja) | プログラムディスパッチ方式 | |
JPH06324888A (ja) | スケジューリングシステム | |
CN105786586A (zh) | 热点方法识别方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20130522 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20140521 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20150518 Year of fee payment: 10 |
|
FPAY | Annual fee payment |
Payment date: 20160517 Year of fee payment: 11 |
|
FPAY | Annual fee payment |
Payment date: 20170522 Year of fee payment: 12 |
|
FPAY | Annual fee payment |
Payment date: 20180516 Year of fee payment: 13 |
|
EXPY | Expiration of term |