JP6294886B2 - アプリケーション用の中間言語コードからネイティブコードを生成すること - Google Patents

アプリケーション用の中間言語コードからネイティブコードを生成すること Download PDF

Info

Publication number
JP6294886B2
JP6294886B2 JP2015530146A JP2015530146A JP6294886B2 JP 6294886 B2 JP6294886 B2 JP 6294886B2 JP 2015530146 A JP2015530146 A JP 2015530146A JP 2015530146 A JP2015530146 A JP 2015530146A JP 6294886 B2 JP6294886 B2 JP 6294886B2
Authority
JP
Japan
Prior art keywords
application
code
mdil
computing device
libraries
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.)
Expired - Fee Related
Application number
JP2015530146A
Other languages
English (en)
Japanese (ja)
Other versions
JP2015531502A5 (enExample
JP2015531502A (ja
Inventor
テジャニ,サメール
エム. トルフィネシュ,アディナ
エム. トルフィネシュ,アディナ
シャーバン,ヤッセル
グバデゲシン,アボラーデ
ババール,アシシュ
ツァイ,メイ−チン
ラマスワミー,スブラマニアン
ラクシャン フェルナンド,カシミール
ラクシャン フェルナンド,カシミール
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
Microsoft Technology Licensing LLC
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
Application filed by Microsoft Corp, Microsoft Technology Licensing LLC filed Critical Microsoft Corp
Publication of JP2015531502A publication Critical patent/JP2015531502A/ja
Publication of JP2015531502A5 publication Critical patent/JP2015531502A5/ja
Application granted granted Critical
Publication of JP6294886B2 publication Critical patent/JP6294886B2/ja
Expired - Fee Related 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/41Compilation
    • G06F8/44Encoding
    • G06F8/447Target code generation
    • 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/445Program loading or initiating
    • 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
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/51Source to source
    • 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
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/63Image based installation; Cloning; Build to order
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)
JP2015530146A 2012-09-05 2013-09-03 アプリケーション用の中間言語コードからネイティブコードを生成すること Expired - Fee Related JP6294886B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/604,618 2012-09-05
US13/604,618 US9569184B2 (en) 2012-09-05 2012-09-05 Generating native code from intermediate language code for an application
PCT/US2013/057892 WO2014039458A1 (en) 2012-09-05 2013-09-03 Generating native code from intermediate language code for an application

Publications (3)

Publication Number Publication Date
JP2015531502A JP2015531502A (ja) 2015-11-02
JP2015531502A5 JP2015531502A5 (enExample) 2016-09-15
JP6294886B2 true JP6294886B2 (ja) 2018-03-14

Family

ID=49226515

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015530146A Expired - Fee Related JP6294886B2 (ja) 2012-09-05 2013-09-03 アプリケーション用の中間言語コードからネイティブコードを生成すること

Country Status (18)

Country Link
US (2) US9569184B2 (enExample)
EP (2) EP2893441B1 (enExample)
JP (1) JP6294886B2 (enExample)
KR (1) KR102077360B1 (enExample)
CN (1) CN104781785B (enExample)
AU (1) AU2013312865B2 (enExample)
BR (1) BR112015004684A2 (enExample)
CA (1) CA2883571A1 (enExample)
CL (1) CL2015000524A1 (enExample)
IL (1) IL237547A0 (enExample)
MX (1) MX348681B (enExample)
MY (1) MY181735A (enExample)
NZ (1) NZ705379A (enExample)
PH (1) PH12015500405A1 (enExample)
RU (1) RU2643484C2 (enExample)
SG (1) SG11201501527RA (enExample)
WO (1) WO2014039458A1 (enExample)
ZA (1) ZA201501182B (enExample)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE537794C2 (sv) * 2012-03-20 2015-10-20 Propellerhead Software Aktiebolag Förfaranden för att distribuera en dataprogramprodukt och ett datorsystem
WO2014051608A1 (en) * 2012-09-28 2014-04-03 Hewlett-Packard Development Company, L.P. Application randomization
US9104504B2 (en) * 2013-03-13 2015-08-11 Dell Products Lp Systems and methods for embedded shared libraries in an executable image
US11050820B2 (en) * 2013-04-29 2021-06-29 Sap Se Cloud sharing system
WO2015035289A1 (en) * 2013-09-06 2015-03-12 Unisys Corporation Business suite framework for developing software applications
US9529610B2 (en) * 2013-12-30 2016-12-27 Unisys Corporation Updating compiled native instruction paths
US20160070541A1 (en) * 2014-09-08 2016-03-10 Unisys Corporation Conversion of business suite solutions
RU2635271C2 (ru) * 2015-03-31 2017-11-09 Закрытое акционерное общество "Лаборатория Касперского" Способ категоризации сборок и зависимых образов
RU2628920C2 (ru) * 2015-03-31 2017-08-22 Закрытое акционерное общество "Лаборатория Касперского" Способ обнаружения вредоносных сборок
CN105100191B (zh) * 2015-05-22 2018-09-21 华为技术有限公司 一种云编译实现Java应用安装的方法、装置及系统
CN104834530A (zh) * 2015-05-27 2015-08-12 百富计算机技术(深圳)有限公司 一种pos应用程序的开发方法及云端服务器
US9367686B1 (en) * 2015-07-21 2016-06-14 AO Kaspersky Lab System and method for antivirus checking of native images of software assemblies
GB2542355B (en) 2015-09-15 2019-07-17 Samsung Electronics Co Ltd Methods and apparatus for distributing and installing trusted applications
WO2017047904A1 (ko) * 2015-09-15 2017-03-23 삼성전자 주식회사 신뢰된 어플리케이션을 전자 디바이스에 설치하는 방법 및 장치
RU2625052C1 (ru) * 2016-03-18 2017-07-11 Акционерное общество "Лаборатория Касперского" Способ ограничения доступа образа машинного кода к ресурсам операционной системы
CN108519874B (zh) * 2017-02-27 2022-03-29 腾讯科技(深圳)有限公司 Python项目包的生成方法及装置
CN108897562B (zh) * 2018-06-27 2022-08-09 腾讯科技(深圳)有限公司 安装包更新方法、装置、介质以及设备
KR102663196B1 (ko) * 2018-11-16 2024-05-07 삼성전자주식회사 사용자 단말장치, 서버, 사용자 단말장치의 제어방법 및 서버의 제어방법
KR102257012B1 (ko) * 2019-01-14 2021-05-27 (주) 익투스지노믹스 다양한 클라우드에 적용 가능한 대용량 데이터 처리용 분산 처리 시스템의 설치방법
CN109814866B (zh) * 2019-01-31 2022-02-08 天津字节跳动科技有限公司 页面应用转化为原生应用的处理方法和装置
CN111580821B (zh) * 2019-02-15 2022-10-25 厦门雅基软件有限公司 脚本绑定方法、装置、电子设备及计算机可读存储介质
US11150926B2 (en) 2019-02-22 2021-10-19 International Business Machines Corporation Native code generation for cloud services
KR102720005B1 (ko) * 2019-10-18 2024-10-22 삼성전자주식회사 어플리케이션의 최적화 방법 및 이를 지원하는 전자 장치
WO2021167507A1 (en) * 2020-02-21 2021-08-26 Telefonaktiebolaget Lm Ericsson (Publ) Method for updating applications in cloud environments
GB202012898D0 (en) * 2020-08-18 2020-09-30 Biancco Tech Group Ip Oy Streaming methods and systems for mobile electronic device diagnostics
CN112925526B (zh) * 2021-03-30 2023-09-19 平安科技(深圳)有限公司 基于Leakcanary的编译方法、装置、设备及介质
US11947966B2 (en) 2021-10-11 2024-04-02 International Business Machines Corporation Identifying computer instructions enclosed by macros and conflicting macros at build time
US11481200B1 (en) 2021-10-11 2022-10-25 International Business Machines Corporation Checking source code validity at time of code update
US20250085946A1 (en) * 2023-09-13 2025-03-13 International Business Machines Corporation Actor-critique code-to-code translation

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3602857B2 (ja) * 1991-04-23 2004-12-15 株式会社日立製作所 多機種対応型情報処理システム、および、方法
US5812854A (en) * 1996-03-18 1998-09-22 International Business Machines Corporation Mechanism for integrating user-defined instructions with compiler-generated instructions and for optimizing the integrated instruction stream
US6484313B1 (en) * 1999-06-30 2002-11-19 Microsoft Corporation Compiling and persisting of intermediate language code
US7546607B2 (en) 2002-11-19 2009-06-09 Microsoft Corporation Native code exposing virtual machine managed object
JP2004192038A (ja) * 2002-12-06 2004-07-08 Sharp Corp 情報処理装置、情報処理システム、情報処理プログラム、および該プログラムを記録した記録媒体
US20040221272A1 (en) * 2003-04-30 2004-11-04 Gansha Wu Apparatus and methods for desynchronizing object-oriented software applications in managed runtime environments
US7487498B2 (en) * 2003-11-12 2009-02-03 Microsoft Corporation Strategy for referencing code resources
US20050188203A1 (en) * 2004-02-19 2005-08-25 Jp Mobile Operating L.P. Method for packaging information with digitally signed software without breaking signature
US7409675B2 (en) * 2004-02-27 2008-08-05 Microsoft Corporation Code rewriting
US7900199B2 (en) * 2004-05-21 2011-03-01 Computer Associates Think, Inc. Method and apparatus for reusing a computer software library
US7730472B2 (en) * 2004-09-24 2010-06-01 Hewlett-Packard Development Company, L.P. Dynamic linking of modules in a pre-operating system environment
EP1810135A1 (en) * 2004-10-12 2007-07-25 Picsel (Research) Limited Run tune dynamic linking
US20060080682A1 (en) * 2004-10-12 2006-04-13 Picsel Research Ltd. Run time dynamic linking
US7730465B2 (en) 2004-10-22 2010-06-01 Microsoft Corporation Mixed types
US20060136907A1 (en) * 2004-12-20 2006-06-22 Microsoft Corporation Language-neutral and language-specific installation packages for software setup
US8074231B2 (en) * 2005-10-26 2011-12-06 Microsoft Corporation Configuration of isolated extensions and device drivers
US7987457B2 (en) 2007-06-25 2011-07-26 Microsoft Corporation Targeted patching for native generation images
US20090064196A1 (en) * 2007-08-31 2009-03-05 Microsoft Corporation Model based device driver code generation
CN100478897C (zh) 2007-12-04 2009-04-15 腾讯科技(深圳)有限公司 实现在游戏运行过程中自动验证支付的方法、装置和系统
CN101546311B (zh) * 2008-03-27 2012-05-02 北京铭万互联科技有限公司 回收站的数据处理方法及数据处理装置
KR101092373B1 (ko) * 2010-01-07 2011-12-09 한국과학기술연구원 소프트웨어 패키지의 생성 및 설치를 위한 시스템 및 방법
US8869138B2 (en) * 2011-11-11 2014-10-21 Wyse Technology L.L.C. Robust firmware update with recovery logic
US8365156B2 (en) * 2010-04-17 2013-01-29 Microsoft Corporation Intermediate language support for change resilience
US8924922B2 (en) * 2010-06-14 2014-12-30 Microsoft Corporation Pre-compiling hosted managed code
EP2405352A1 (en) 2010-07-08 2012-01-11 Fujitsu Limited Instrumentation of proprietary software libraries
US8683462B2 (en) 2010-10-22 2014-03-25 Adobe Systems Incorporated Handling calls to native code in a managed code environment

Also Published As

Publication number Publication date
US20140068583A1 (en) 2014-03-06
PH12015500405B1 (en) 2015-04-20
EP3249526B1 (en) 2020-03-25
KR20150052068A (ko) 2015-05-13
BR112015004684A2 (pt) 2017-08-08
SG11201501527RA (en) 2015-03-30
NZ705379A (en) 2018-04-27
RU2643484C2 (ru) 2018-02-01
CN104781785A (zh) 2015-07-15
MX2015002906A (es) 2015-06-03
CA2883571A1 (en) 2014-03-13
IL237547A0 (en) 2015-04-30
HK1212482A1 (en) 2016-06-10
KR102077360B1 (ko) 2020-02-13
CL2015000524A1 (es) 2015-08-28
PH12015500405A1 (en) 2015-04-20
RU2015107557A (ru) 2016-09-27
US9569184B2 (en) 2017-02-14
WO2014039458A1 (en) 2014-03-13
US10795652B2 (en) 2020-10-06
AU2013312865A1 (en) 2015-03-05
ZA201501182B (en) 2016-10-26
MX348681B (es) 2017-06-23
EP2893441A1 (en) 2015-07-15
JP2015531502A (ja) 2015-11-02
AU2013312865B2 (en) 2018-11-08
US20170109148A1 (en) 2017-04-20
MY181735A (en) 2021-01-05
CN104781785B (zh) 2018-05-15
EP3249526A1 (en) 2017-11-29
EP2893441B1 (en) 2017-08-30

Similar Documents

Publication Publication Date Title
JP6294886B2 (ja) アプリケーション用の中間言語コードからネイティブコードを生成すること
JP6122493B2 (ja) 適応的に移植性を有したライブラリ
CN111740948B (zh) 数据包发布方法、动态更新方法、装置、设备及介质
KR102163501B1 (ko) 애플리케이션 내의 대역외 프레임워크 라이브러리
US10296323B2 (en) System and method for fast initial and incremental deployment of apps
US8607203B1 (en) Test automation framework using dependency injection
CN105159732B (zh) 在移动终端安装或更新应用程序的方法和移动终端
CN110770698A (zh) 用于动态代码优化的差异静态分析
CN111506904B (zh) 漏洞在线修复的方法和装置
CN113900704A (zh) 应用程序安装包的发布方法、装置、可读介质及电子设备
CN108089870B (zh) 用于修复应用的方法和装置
CN116685946A (zh) 在不停止应用的执行的情况下的更新的共享库的重新加载
US9672020B2 (en) Selectively loading precompiled header(s) and/or portion(s) thereof
CN112882698A (zh) 开发环境的生成方法及装置、计算机存储介质及电子设备
US20170083298A1 (en) Resilient format for distribution of ahead-of-time compiled code components
CN107092472A (zh) 一种动态发布方法及设备
CN112148318A (zh) 应用包发布方法、应用方法、装置、介质、服务器及设备
CN107784204B (zh) 应用脱壳方法和装置
HK1212482B (en) Generating native code from intermediate language code for an application
CN119597627A (zh) 代码调试方法、装置、电子设备、存储介质和程序产品
CN115934123A (zh) 一种客户端逻辑更新方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150610

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160727

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160727

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170414

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170523

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170822

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: 20180126

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180216

R150 Certificate of patent or registration of utility model

Ref document number: 6294886

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

LAPS Cancellation because of no payment of annual fees