JP2008518355A - 異種混合アーキテクチャからの複数のオブジェクトファイルを一組のファイルに統合する方法 - Google Patents
異種混合アーキテクチャからの複数のオブジェクトファイルを一組のファイルに統合する方法 Download PDFInfo
- Publication number
- JP2008518355A JP2008518355A JP2007538925A JP2007538925A JP2008518355A JP 2008518355 A JP2008518355 A JP 2008518355A JP 2007538925 A JP2007538925 A JP 2007538925A JP 2007538925 A JP2007538925 A JP 2007538925A JP 2008518355 A JP2008518355 A JP 2008518355A
- Authority
- JP
- Japan
- Prior art keywords
- code
- processor
- generated
- multiprocessor
- computer 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 claims abstract description 23
- 238000004590 computer program Methods 0.000 claims description 14
- 238000010586 diagram Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 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
- 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
-
- 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/54—Link editing before load time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- 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/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4482—Procedural
- G06F9/4484—Executing subprograms
-
- 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)
- Computer Hardware Design (AREA)
- Devices For Executing Special Programs (AREA)
- Stored Programmes (AREA)
Abstract
【選択図】図2
Description
Claims (25)
- 第1プロセッサと第2プロセッサとを含むマルチプロセッサであって、
当該マルチプロセッサは、第2プロセッサ上で動作するオブジェクトコードであるOC2コードに対応させて第1プロセッサ上で動作するオブジェクトコードであるOC1コードを生成するように構成されており、前記OC1コードは前記OC2コードへのポインタであるシンボルの定義を含むことを特徴とするマルチプロセッサ。 - 当該マルチプロセッサは、前記第2プロセッサ上での前記OC2コードの実行を生じさせるために、前記OC2コードに対応する前記OC1コードを前記第1プロセッサ上で実行するように構成されることを特徴とする請求項1に記載のマルチプロセッサ。
- 前記OC2コードに対応する前記OC1コードを生成するように構成されたシステムツールをさらに含むことを特徴とする請求項1に記載のマルチプロセッサ。
- DMAコントローラをさらに含み、前記第1プロセッサはシステムメモリを含み、前記第2プロセッサはローカルストアを含み、当該マルチプロセッサは、データが前記第1プロセッサのシステムメモリにロードされ、DMAコントローラによって前記第2プロセッサの前記ローカルストアに転送されることによって、そのデータが前記第2プロセッサに渡されるように構成されることを特徴とする請求項1に記載のマルチプロセッサ。
- 前記OC2コードに対応する前記OC1コードは、前記OC2コードをラッパーの形で同封することにより生成されることを特徴とする請求項4に記載のマルチプロセッサ。
- 前記OC2コードをラッパーの形で同封することにより前記OC2コードに対応する前記OC1コードを生成するように構成されたシステムツールをさらに含むことを特徴とする請求項5に記載のマルチプロセッサ。
- 前記OC2コードに対応して生成された前記OC1コードは、
シンボルの定義をもつヘッダ部と、前記OC2コードとを含み、
前記シンボルは前記OC2コードへのポインタであることを特徴とする請求項5に記載のマルチプロセッサ。 - マルチプロセッサ上の異種混合アーキテクチャからの複数のオブジェクトファイルを統合するための方法であって、
第2プロセッサ上で動作するオブジェクトコードであるOC2コードへのポインタをもたせて、第1プロセッサ上で動作するオブジェクトコードであるOC1コードを生成し、前記第1プロセッサ上で前記生成されたOC1コードを実行することにより、前記第2プロセッサ上での前記OC2コードの実行を生じさせることを特徴とする方法。 - 前記OC1コードを生成するためにシステムツールが供給されることを特徴とする請求項8に記載の方法。
- 前記生成されたOC1コードは前記OC2コードを含むことを特徴とする請求項8に記載の方法。
- 前記生成されたOC1コードは、
シンボルの定義をもつヘッダ部と、前記OC2コードとを含み、
前記シンボルは前記生成されたOC1コードに含まれた前記OC2コードへのポインタであることを特徴とする請求項10に記載の方法。 - 前記第1プロセッサから前記第2プロセッサへオブジェクトコードを実行のために渡すステップをさらに含むことを特徴とする請求項10に記載の方法。
- 前記OC1コードによる前記OC2コードへの参照を前記生成されたOC1コードに対する参照として解決するステップをさらに含むことを特徴とする請求項8に記載の方法。
- 前記生成されたOC1コードを実行可能なプログラムに変換するステップをさらに含むことを特徴とする請求項8に記載の方法。
- 前記生成されたOC1コードをアーカイブに変換するステップをさらに含むことを特徴とする請求項8に記載の方法。
- 前記生成されたOC1コードをダイナミック共有ライブラリに変換するステップをさらに含むことを特徴とする請求項8に記載の方法。
- マルチプロセッサ上の異種混合アーキテクチャからの複数のオブジェクトファイルを統合するためのコンピュータプログラム製品であって、前記コンピュータプログラム製品はコンピュータプログラムが具体化された媒体を有し、前記コンピュータプログラムは、
第1プロセッサ上で動作するオブジェクトコードであるOC1コードであって、第2プロセッサ上で動作するオブジェクトコードであるOC2コードへのポインタを含むOC1コードを生成するためのコンピュータコードと、前記第1プロセッサ上で前記生成されたOC1コードを実行することにより、前記第2プロセッサ上での前記OC2コードの実行を生じさせるためのコンピュータコードとを含むことを特徴とするコンピュータプログラム製品。 - 前記OC1コードを生成するためにシステムツールが供給されることを特徴とする請求項17に記載のコンピュータプログラム製品。
- 前記生成されたOC1コードは前記OC2コードを含むことを特徴とする請求項17に記載のコンピュータプログラム製品。
- 前記生成されたOC1コードは、
シンボルの定義をもつヘッダ部と、
前記OC2コードとを含み、
前記シンボルは前記生成されたOC1コードに含まれた前記OC2コードへのポインタであることを特徴とする請求項19に記載のコンピュータプログラム製品。 - 前記第1プロセッサから前記第2プロセッサへオブジェクトコードを実行のために渡すためのコンピュータコードをさらに含むことを特徴とする請求項19に記載のコンピュータプログラム製品。
- 前記OC1コードによる前記OC2コードへの参照を前記生成されたOC1コードに対する参照として解決するためのコンピュータコードをさらに含むことを特徴とする請求項17に記載のコンピュータプログラム製品。
- 前記生成されたOC1コードを実行可能なプログラムに変換するためのコンピュータコードをさらに含むことを特徴とする請求項17に記載のコンピュータプログラム製品。
- 前記生成されたOC1コードをアーカイブに変換するためのコンピュータコードをさらに含むことを特徴とする請求項17に記載のコンピュータプログラム製品。
- 前記生成されたOC1コードをダイナミック共有ライブラリに変換するためのコンピュータコードをさらに含むことを特徴とする請求項17に記載のコンピュータプログラム製品。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/976,264 | 2004-10-28 | ||
US10/976,264 US20060095898A1 (en) | 2004-10-28 | 2004-10-28 | Method for integrating multiple object files from heterogeneous architectures into a set of files |
PCT/US2005/034460 WO2006049740A2 (en) | 2004-10-28 | 2005-09-23 | Method for integrating multiple object files from heterogeneous architectures into a set of files |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2008518355A true JP2008518355A (ja) | 2008-05-29 |
JP2008518355A5 JP2008518355A5 (ja) | 2008-11-20 |
JP5072599B2 JP5072599B2 (ja) | 2012-11-14 |
Family
ID=36178031
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007538925A Expired - Fee Related JP5072599B2 (ja) | 2004-10-28 | 2005-09-23 | 異種混合アーキテクチャからの複数のオブジェクトファイルを一組のファイルに統合する方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20060095898A1 (ja) |
EP (1) | EP1815329A2 (ja) |
JP (1) | JP5072599B2 (ja) |
KR (1) | KR100892191B1 (ja) |
CN (1) | CN101048734A (ja) |
WO (1) | WO2006049740A2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010029812A1 (ja) * | 2008-09-09 | 2010-03-18 | 日本電気株式会社 | マルチコアにおけるプログラミングシステム、その方法及びそのプログラム |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7644402B1 (en) * | 2004-03-17 | 2010-01-05 | Sun Microsystems, Inc. | Method for sharing runtime representation of software components across component loaders |
US8120610B1 (en) * | 2006-03-15 | 2012-02-21 | Adobe Systems Incorporated | Methods and apparatus for using aliases to display logic |
US8255919B2 (en) * | 2007-03-23 | 2012-08-28 | Qualcomm Atheros, Inc. | Distributed processing system and method |
KR100968774B1 (ko) * | 2008-09-18 | 2010-07-09 | 고려대학교 산학협력단 | 다수의 이종 프로세서를 구비하는 멀티 프로세싱 시스템 및그 구동 방법 |
US20110113409A1 (en) * | 2009-11-10 | 2011-05-12 | Rodrick Evans | Symbol capabilities support within elf |
US9235458B2 (en) | 2011-01-06 | 2016-01-12 | International Business Machines Corporation | Methods and systems for delegating work objects across a mixed computer environment |
US9052968B2 (en) * | 2011-01-17 | 2015-06-09 | International Business Machines Corporation | Methods and systems for linking objects across a mixed computer environment |
US9104504B2 (en) | 2013-03-13 | 2015-08-11 | Dell Products Lp | Systems and methods for embedded shared libraries in an executable image |
US9753710B2 (en) * | 2013-11-07 | 2017-09-05 | Netronome Systems, Inc. | Resource allocation with hierarchical scope |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03208187A (ja) * | 1989-10-12 | 1991-09-11 | Texas Instr Inc <Ti> | 拡張グラフィック機能を与える方法 |
US5247678A (en) * | 1989-10-12 | 1993-09-21 | Texas Instruments Incorporated | Load time linker for software used with a multiprocessor system |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2272085A (en) * | 1992-10-30 | 1994-05-04 | Tao Systems Ltd | Data processing system and operating system. |
US6029000A (en) * | 1997-12-22 | 2000-02-22 | Texas Instruments Incorporated | Mobile communication system with cross compiler and cross linker |
CA2343437A1 (en) * | 2001-04-06 | 2002-10-06 | Ibm Canada Limited-Ibm Canada Limitee | Method and system for cross platform, parallel processing |
US7143419B2 (en) * | 2001-06-06 | 2006-11-28 | Sap Ag | Device for running offline applications and synchronizing with a central computer system |
US7444632B2 (en) * | 2003-09-25 | 2008-10-28 | International Business Machines Corporation | Balancing computational load across a plurality of processors |
US7415703B2 (en) * | 2003-09-25 | 2008-08-19 | International Business Machines Corporation | Loading software on a plurality of processors |
US20060031821A1 (en) * | 2004-08-04 | 2006-02-09 | Rutter Budd J Ii | Divided compiling program application functionality for software development |
-
2004
- 2004-10-28 US US10/976,264 patent/US20060095898A1/en not_active Abandoned
-
2005
- 2005-09-23 CN CNA2005800370347A patent/CN101048734A/zh active Pending
- 2005-09-23 WO PCT/US2005/034460 patent/WO2006049740A2/en active Application Filing
- 2005-09-23 JP JP2007538925A patent/JP5072599B2/ja not_active Expired - Fee Related
- 2005-09-23 KR KR1020077009699A patent/KR100892191B1/ko not_active IP Right Cessation
- 2005-09-23 EP EP05800060A patent/EP1815329A2/en not_active Ceased
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03208187A (ja) * | 1989-10-12 | 1991-09-11 | Texas Instr Inc <Ti> | 拡張グラフィック機能を与える方法 |
US5247678A (en) * | 1989-10-12 | 1993-09-21 | Texas Instruments Incorporated | Load time linker for software used with a multiprocessor system |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010029812A1 (ja) * | 2008-09-09 | 2010-03-18 | 日本電気株式会社 | マルチコアにおけるプログラミングシステム、その方法及びそのプログラム |
JP5360506B2 (ja) * | 2008-09-09 | 2013-12-04 | 日本電気株式会社 | マルチコアにおけるプログラミングシステム、その方法及びそのプログラム |
US8694975B2 (en) | 2008-09-09 | 2014-04-08 | Nec Corporation | Programming system in multi-core environment, and method and program of the same |
Also Published As
Publication number | Publication date |
---|---|
JP5072599B2 (ja) | 2012-11-14 |
WO2006049740A3 (en) | 2006-08-10 |
EP1815329A2 (en) | 2007-08-08 |
CN101048734A (zh) | 2007-10-03 |
US20060095898A1 (en) | 2006-05-04 |
KR20070088624A (ko) | 2007-08-29 |
KR100892191B1 (ko) | 2009-04-07 |
WO2006049740A2 (en) | 2006-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5072599B2 (ja) | 異種混合アーキテクチャからの複数のオブジェクトファイルを一組のファイルに統合する方法 | |
US7877741B2 (en) | Method and corresponding apparatus for compiling high-level languages into specific processor architectures | |
US20010042069A1 (en) | Method and apparatus for building a memory image | |
US9043768B2 (en) | System and method for efficient compilation and invocation of function type calls | |
AU774467B2 (en) | Automatic stub/adapter generator | |
US7856618B2 (en) | Adaptively generating code for a computer program | |
TWI453671B (zh) | 用於程式碼轉換期間之本機碼和目標碼的組合執行之方法與裝置 | |
JP2000112772A (ja) | 命令セット内の命令に応答してプロセスを実行するデ―タ処理システムおよびその命令処理方法 | |
JP5384551B2 (ja) | 非abi準拠機能を初見のインタフェースにわたって実現するための方法及びシステム | |
WO2007109921A1 (en) | Methods and apparatus to implement annotation based thunking | |
TWI291098B (en) | Method and system for data optimization and protection in DSP firmware | |
US8214815B2 (en) | Reducing the run-time cost of invoking a server page | |
CA2082068A1 (en) | System and method for automatically interfacing call conventions between two dissimilar program units | |
US6550000B1 (en) | Processor to execute in parallel plurality of instructions using plurality of functional units, and instruction allocation controller | |
JP2012516483A (ja) | クラスファイル内にネイティブコードを埋め込むことによる仮想メカニズム内でのプラットフォーム依存ルーチンの適用 | |
US6314564B1 (en) | Method for resolving arbitrarily complex expressions at link-time | |
JPH03229352A (ja) | プログラム変更方法 | |
US8468511B2 (en) | Use of name mangling techniques to encode cross procedure register assignment | |
US20040064301A1 (en) | Software development system, simulator, and recording medium | |
JP2000122876A (ja) | 情報処理装置 | |
JP7324027B2 (ja) | プロファイリング方法 | |
WO2006131695A1 (en) | Method and apparatus for combined execution of native code and target code during program code conversion | |
JP2006113935A (ja) | ダイナミックリンクライブラリ呼び出しコード生成方法、プログラム、および、装置 | |
Cooper | Porting the Vector Pascal compiler to the Playstation 2 | |
JPH113225A (ja) | 情報処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080922 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080922 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20101126 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20110128 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111101 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120201 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120529 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120727 |
|
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: 20120821 |
|
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: 20120821 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150831 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |