KR101244104B1 - 컴퓨터 시스템 및 레지스터 윈도우 아키텍쳐를 지원하도록 컴퓨터 시스템을 구현하는 방법 - Google Patents

컴퓨터 시스템 및 레지스터 윈도우 아키텍쳐를 지원하도록 컴퓨터 시스템을 구현하는 방법 Download PDF

Info

Publication number
KR101244104B1
KR101244104B1 KR1020097009183A KR20097009183A KR101244104B1 KR 101244104 B1 KR101244104 B1 KR 101244104B1 KR 1020097009183 A KR1020097009183 A KR 1020097009183A KR 20097009183 A KR20097009183 A KR 20097009183A KR 101244104 B1 KR101244104 B1 KR 101244104B1
Authority
KR
South Korea
Prior art keywords
subject
code
register
stack
target
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.)
Active
Application number
KR1020097009183A
Other languages
English (en)
Korean (ko)
Other versions
KR20090083358A (ko
Inventor
알렉산더 바라클러프 브라운
Original Assignee
인터내셔널 비지네스 머신즈 코포레이션
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority claimed from GB0619380A external-priority patent/GB0619380D0/en
Application filed by 인터내셔널 비지네스 머신즈 코포레이션 filed Critical 인터내셔널 비지네스 머신즈 코포레이션
Publication of KR20090083358A publication Critical patent/KR20090083358A/ko
Application granted granted Critical
Publication of KR101244104B1 publication Critical patent/KR101244104B1/ko
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/54Link editing before load time
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements
    • G06F9/3012Organisation of register space, e.g. banked or distributed register file
    • G06F9/30123Organisation of register space, e.g. banked or distributed register file according to context, e.g. thread buffers
    • G06F9/30127Register windows
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Executing Machine-Instructions (AREA)
KR1020097009183A 2006-10-02 2007-09-27 컴퓨터 시스템 및 레지스터 윈도우 아키텍쳐를 지원하도록 컴퓨터 시스템을 구현하는 방법 Active KR101244104B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
GB0619380.9 2006-10-02
GB0619380A GB0619380D0 (en) 2006-10-02 2006-10-02 Method and apparatus for program code conversion from a register window based subject computing architecture
US85392406P 2006-10-24 2006-10-24
US60/853,924 2006-10-24
PCT/GB2007/050586 WO2008068519A1 (en) 2006-10-02 2007-09-27 Computer system and method of adapting a computer system to support a register window architecture

Publications (2)

Publication Number Publication Date
KR20090083358A KR20090083358A (ko) 2009-08-03
KR101244104B1 true KR101244104B1 (ko) 2013-03-18

Family

ID=38701709

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097009183A Active KR101244104B1 (ko) 2006-10-02 2007-09-27 컴퓨터 시스템 및 레지스터 윈도우 아키텍쳐를 지원하도록 컴퓨터 시스템을 구현하는 방법

Country Status (6)

Country Link
US (2) US8001535B2 (https=)
EP (1) EP2069928A1 (https=)
JP (1) JP5448165B2 (https=)
KR (1) KR101244104B1 (https=)
GB (1) GB2442566B (https=)
WO (1) WO2008068519A1 (https=)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101244104B1 (ko) * 2006-10-02 2013-03-18 인터내셔널 비지네스 머신즈 코포레이션 컴퓨터 시스템 및 레지스터 윈도우 아키텍쳐를 지원하도록 컴퓨터 시스템을 구현하는 방법
GB2442497B (en) * 2006-10-02 2010-03-31 Transitive Ltd Method and apparatus for administering a process filesystem with respect to program code conversion
JP5496792B2 (ja) * 2010-06-29 2014-05-21 インターナショナル・ビジネス・マシーンズ・コーポレーション コード変換プログラム、方法及びシステム
US8600727B2 (en) * 2011-10-11 2013-12-03 Unisys Corporation Streamlined execution of emulated code using block-based translation mode
US20130132061A1 (en) * 2011-11-18 2013-05-23 Michael J. Rieschl Just-in-time static translation system for emulated computing environments
JP5818695B2 (ja) * 2012-01-04 2015-11-18 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation コード変換方法、プログラム及びシステム
US9535697B2 (en) * 2013-07-01 2017-01-03 Oracle International Corporation Register window performance via lazy register fills
GB2525314B (en) * 2014-01-17 2016-02-24 Imagination Tech Ltd Stack pointer value prediction
US10452370B2 (en) * 2015-01-09 2019-10-22 University Of Virginia Patent Foundation System, method and computer readable medium for space-efficient binary rewriting
CN105787305B (zh) * 2016-02-26 2018-08-10 西北大学 一种抵抗符号执行和污点分析的软件保护方法
CN108133149B (zh) * 2018-01-11 2021-07-23 武汉斗鱼网络科技有限公司 一种数据保护方法、装置及电子设备
US11144364B2 (en) * 2019-01-25 2021-10-12 International Business Machines Corporation Supporting speculative microprocessor instruction execution

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR970012074A (ko) * 1995-08-10 1997-03-29 김광호 레지스터 세트 방법 및 회로
KR970016942A (ko) * 1995-09-29 1997-04-28 김광호 제어레지스터를 이용한 레지스터 확장방법
US20050015758A1 (en) 2003-07-15 2005-01-20 Geraint North Shared code caching method and apparatus for program code conversion

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0643349B1 (en) 1993-09-10 2000-10-18 Sun Microsystems, Inc. Client-side stub interpreter
US6135650A (en) 1995-12-22 2000-10-24 Sun Microsystems, Inc. Method and system for wrapper routine optimization
US6075942A (en) * 1998-05-04 2000-06-13 Sun Microsystems, Inc. Encoding machine-specific optimization in generic byte code by using local variables as pseudo-registers
ES2340370T3 (es) * 1998-10-10 2010-06-02 International Business Machines Corporation Conversion de codigo de programa con traduccion reducida.
JP4709394B2 (ja) * 1999-04-27 2011-06-22 インターナショナル・ビジネス・マシーンズ・コーポレーション プログラムコード変換において使用する例外処理の方法および装置
GB2367654B (en) * 2000-10-05 2004-10-27 Advanced Risc Mach Ltd Storing stack operands in registers
GB2380003A (en) 2001-07-03 2003-03-26 Digital Comm Technologies Ltd Method and apparatus for executing stack based programs using a register based processor
JP3799423B2 (ja) 2002-07-30 2006-07-19 財団法人理工学振興会 命令制御装置、機能ユニット、プログラム変換装置および言語処理装置
US7127592B2 (en) * 2003-01-08 2006-10-24 Sun Microsystems, Inc. Method and apparatus for dynamically allocating registers in a windowed architecture
US7543284B2 (en) * 2003-04-22 2009-06-02 Transitive Limited Partial dead code elimination optimizations for program code conversion
US7536682B2 (en) 2003-04-22 2009-05-19 International Business Machines Corporation Method and apparatus for performing interpreter optimizations during program code conversion
GB2401217B (en) 2003-05-02 2005-11-09 Transitive Ltd Improved architecture for generating intermediate representations for program code conversion
US7299460B2 (en) * 2003-05-29 2007-11-20 Nec Corporation Method and computer program for converting an assembly language program for one processor to another
GB0315844D0 (en) 2003-07-04 2003-08-13 Transitive Ltd Method and apparatus for performing adjustable precision exception handling
GB0316531D0 (en) * 2003-07-15 2003-08-20 Transitive Ltd Method and apparatus for performing native binding
US7434209B2 (en) * 2003-07-15 2008-10-07 Transitive Limited Method and apparatus for performing native binding to execute native code
US7934204B2 (en) * 2003-07-15 2011-04-26 International Business Machines Corporation Partitioning code in program code conversion
US20050102494A1 (en) * 2003-11-12 2005-05-12 Grochowski Edward T. Method and apparatus for register stack implementation using micro-operations
US7363475B2 (en) * 2004-04-19 2008-04-22 Via Technologies, Inc. Managing registers in a processor to emulate a portion of a stack
US20060200811A1 (en) 2005-03-07 2006-09-07 Cheng Stephen M Method of generating optimised stack code
EP1866759B1 (en) 2005-03-30 2012-06-13 International Business Machines Corporation Preparing instruction groups in a processor having multiple issue ports
KR101244104B1 (ko) * 2006-10-02 2013-03-18 인터내셔널 비지네스 머신즈 코포레이션 컴퓨터 시스템 및 레지스터 윈도우 아키텍쳐를 지원하도록 컴퓨터 시스템을 구현하는 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR970012074A (ko) * 1995-08-10 1997-03-29 김광호 레지스터 세트 방법 및 회로
KR970016942A (ko) * 1995-09-29 1997-04-28 김광호 제어레지스터를 이용한 레지스터 확장방법
US20050015758A1 (en) 2003-07-15 2005-01-20 Geraint North Shared code caching method and apparatus for program code conversion

Also Published As

Publication number Publication date
GB2442566B (en) 2009-02-11
JP5448165B2 (ja) 2014-03-19
US8381168B2 (en) 2013-02-19
US8001535B2 (en) 2011-08-16
KR20090083358A (ko) 2009-08-03
EP2069928A1 (en) 2009-06-17
US20080209175A1 (en) 2008-08-28
GB2442566A (en) 2008-04-09
US20110271080A1 (en) 2011-11-03
JP2010506250A (ja) 2010-02-25
GB0718811D0 (en) 2007-11-07
WO2008068519A1 (en) 2008-06-12

Similar Documents

Publication Publication Date Title
KR101244104B1 (ko) 컴퓨터 시스템 및 레지스터 윈도우 아키텍쳐를 지원하도록 컴퓨터 시스템을 구현하는 방법
JP2010506250A5 (https=)
CN101473303B (zh) 在连结到本机码期间处理异常的方法及设备
JP5129929B2 (ja) 制限的な呼び出し規約を有するコードをインストルメントする方法
JP5039031B2 (ja) ネイティブコード及び目的コードをプログラムコード変換中に組み合わせて実行する方法及び装置
US20040255279A1 (en) Block translation optimizations for program code conversation
JPH02272627A (ja) デイジタル・コンピユータ・システムとその手続呼び出し方法
US7386843B2 (en) Method and system for register allocation
JP4833206B2 (ja) 最適化されたプログラムのためのアンワインド情報の生成
US20240231864A9 (en) Hybrid just in time load module compiler with performance optimizations
KR20200031150A (ko) 데이터 처리장치의 데이터 항목들 내의 성분들의 계수
KR20070118663A (ko) 고유 명령어를 이용한 레지스터 화일로서의 오퍼랜드스택에 대한 마이크로프로세서 엑세스
JP2018097817A (ja) 情報処理装置、情報処理方法及びプログラム
CN101523349B (zh) 被配置以支持寄存器窗口架构的计算系统的控制装置和方法
CN114253523A (zh) 读取裸设备的方法、装置、计算机设备和介质
US20140006759A1 (en) Recording medium storing address management program, address management method, and apparatus
WO2002052409A2 (en) Method and apparatus for increasing performance of an interpreter
CN117950675A (zh) 二进制翻译方法、装置、电子设备及可读存储介质
HK40032971A (en) Method and device for explaining and executing intelligent contract instruction
HK40032971B (en) Method and device for explaining and executing intelligent contract instruction
WO1997014096A1 (en) System and method for debugging computer software
JPH07210405A (ja) プログラムカウンタおよびスタックポインタの管理方式
JPH04284539A (ja) 情報処理装置
JPH0566949A (ja) 関数定義コンパイルドコード呼出し方式
GB2460465A (en) Arranging frequently used computer code together

Legal Events

Date Code Title Description
PA0105 International application

St.27 status event code: A-0-1-A10-A15-nap-PA0105

R18-X000 Changes to party contact information recorded

St.27 status event code: A-3-3-R10-R18-oth-X000

N231 Notification of change of applicant
PN2301 Change of applicant

St.27 status event code: A-3-3-R10-R13-asn-PN2301

St.27 status event code: A-3-3-R10-R11-asn-PN2301

N231 Notification of change of applicant
PN2301 Change of applicant

St.27 status event code: A-3-3-R10-R13-asn-PN2301

St.27 status event code: A-3-3-R10-R11-asn-PN2301

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

A201 Request for examination
PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

GRNT Written decision to grant
PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U12-oth-PR1002

Fee payment year number: 1

PG1601 Publication of registration

St.27 status event code: A-4-4-Q10-Q13-nap-PG1601

FPAY Annual fee payment

Payment date: 20160229

Year of fee payment: 4

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 4

FPAY Annual fee payment

Payment date: 20170227

Year of fee payment: 5

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 5

FPAY Annual fee payment

Payment date: 20180227

Year of fee payment: 6

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 6

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000

FPAY Annual fee payment

Payment date: 20190227

Year of fee payment: 7

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 7

FPAY Annual fee payment

Payment date: 20200227

Year of fee payment: 8

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 8

FPAY Annual fee payment

Payment date: 20210226

Year of fee payment: 9

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 9

FPAY Annual fee payment

Payment date: 20220225

Year of fee payment: 10

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 10

FPAY Annual fee payment

Payment date: 20230302

Year of fee payment: 11

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 11

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 12

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 13

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 14

U11 Full renewal or maintenance fee paid

Free format text: ST27 STATUS EVENT CODE: A-4-4-U10-U11-OTH-PR1001 (AS PROVIDED BY THE NATIONAL OFFICE)

Year of fee payment: 14