JP7335591B2 - コンピューティングシステムおよび情報処理方法 - Google Patents
コンピューティングシステムおよび情報処理方法 Download PDFInfo
- Publication number
- JP7335591B2 JP7335591B2 JP2019134554A JP2019134554A JP7335591B2 JP 7335591 B2 JP7335591 B2 JP 7335591B2 JP 2019134554 A JP2019134554 A JP 2019134554A JP 2019134554 A JP2019134554 A JP 2019134554A JP 7335591 B2 JP7335591 B2 JP 7335591B2
- Authority
- JP
- Japan
- Prior art keywords
- code
- intermediate code
- computing device
- machine code
- software development
- 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
Links
- 230000010365 information processing Effects 0.000 title claims description 9
- 238000003672 processing method Methods 0.000 title claims description 8
- 238000012545 processing Methods 0.000 claims description 43
- 238000000034 method Methods 0.000 claims description 21
- 230000008569 process Effects 0.000 claims description 7
- 238000007726 management method Methods 0.000 description 22
- 238000004891 communication Methods 0.000 description 21
- 238000010586 diagram Methods 0.000 description 20
- 230000006870 function Effects 0.000 description 15
- 238000011161 development Methods 0.000 description 3
- 238000007906 compression Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000005401 electroluminescence Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000008676 import Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
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/44—Encoding
- G06F8/443—Optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/572—Secure firmware programming, e.g. of basic input output system [BIOS]
-
- 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/44—Encoding
-
- 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/44—Encoding
- G06F8/447—Target code generation
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16Y—INFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
- G16Y30/00—IoT infrastructure
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Computing Systems (AREA)
- Stored Programmes (AREA)
- Devices For Executing Special Programs (AREA)
Description
まず、本実施の形態に従うソフトウェア開発装置100およびエッジデバイス2を含むIoTシステム1の全体構成について説明する。
次に、本実施の形態に従うIoTシステム1に含まれるデバイスのハードウェア構成例について説明する。
ソフトウェア開発装置100は、典型的には汎用コンピュータで実現される。
コントローラ200は、汎用コンピュータを用いて実現してもよいし、処理を実現するために必要なコンポーネントを含む半導体基板を用いて実現してもよい。
<C.コントローラ200でのアプリケーションプログラムの実行>
本実施の形態に従うIoTシステム1においては、コントローラ200に対して中間コード116が提供され、コントローラ200が中間コード116からマシンコード230を生成して実行する。
次に、本実施の形態に従うIoTシステム1において実行される処理の処理手順について説明する。
コントローラ200へ提供される中間コード116に対するセキュリティを高めるために、中間コード116に対する認証処理を付加してもよい。
コントローラ200へ提供される中間コード116に含まれるデジタルコンテンツに対する著作権管理を実現するための機能を付加してもよい。
コントローラ200において中間コード116からマシンコード230を生成するために必要なAPI/ABI群224やライブラリなどをコントローラ200が更新あるいは追加するようにしてもよい。
一般的に中間コード116は、マシンコード230に比較して冗長化されているため、コントローラ200への配布を容易化する目的などのために、中間コード116をデータ圧縮してもよい。
上述したように、中間コード116は、配布先のコンピュータアーキテクチャおよび実行環境などに依存せず、予め定められた所定の実行環境に適合するように生成される。但し、最終的には、配布先のプロセッサで実行されるマシンコード230を生成する必要があるので、当該配布先でのマシンコード230の生成を補助する補助情報(事前情報)を中間コード116に含めるようにしてもよい。
上述の実施の形態においては、ソフトウェア開発装置100からコントローラ200へ中間コード116を直接送信する例を示したが、このような一対一の構成に限らず、例えば、ソフトウェア開発装置100で生成した中間コード116をサーバへアップロードするとともに、任意のコントローラ200がサーバから任意の中間コード116をダウンロードすることで、中間コード116を配布するようにしてもよい。
本実施の形態に従うIoTシステム1によれば、コントローラ200のハードウェア構成を意識することなくアプリケーションプログラムを作成できるとともに、各コントローラ200のハードウェア構成に応じた処理の実行を可能にする。
Claims (6)
- コンピューティングシステムであって、
プロセッサを含むコンピューティングデバイスと、
前記コンピューティングデバイスで実行されるアプリケーションプログラムを作成するためのソフトウェア開発装置とを備え、
前記ソフトウェア開発装置は、1または複数の命令と処理対象のデータとを含むソースをコンパイルして中間コードを生成する第1のコンパイラを備え、
前記コンピューティングデバイスは、前記中間コードに含まれる前記1または複数の命令を前記コンピューティングデバイスのハードウェア構成を反映してマシンコードを生成する第2のコンパイラを備え、
前記コンピューティングデバイスの前記プロセッサは、前記マシンコードの生成後に、当該生成されたマシンコードを実行し、
前記中間コードは、当該中間コードに対する電子証明書、および、当該電子証明書に基づく認証処理を実行するための認証命令を含んでおり、
前記マシンコードが実行されることで、前記認証命令により前記電子証明書に基づく認証処理が実現される、コンピューティングシステム。 - コンピューティングシステムであって、
プロセッサを含むコンピューティングデバイスと、
前記コンピューティングデバイスで実行されるアプリケーションプログラムを作成するためのソフトウェア開発装置とを備え、
前記ソフトウェア開発装置は、1または複数の命令と処理対象のデータとを含むソースをコンパイルして中間コードを生成する第1のコンパイラを備え、
前記コンピューティングデバイスは、前記中間コードに含まれる前記1または複数の命令を前記コンピューティングデバイスのハードウェア構成を反映してマシンコードを生成する第2のコンパイラを備え、
前記コンピューティングデバイスの前記プロセッサは、前記マシンコードの生成後に、当該生成されたマシンコードを実行し、
前記中間コードは、コンテンツ、当該コンテンツの著作権管理するための著作権管理情報、および、当該著作権管理情報に基づく著作権管理を実行するための管理命令を含んでおり、
前記マシンコードが実行されることで、前記管理命令により前記著作権管理情報に基づいて前記コンテンツの利用可否が判断される、コンピューティングシステム。 - 前記第2のコンパイラは、前記第2のコンパイラが参照するデータを更新するための管理モジュールを含む、請求項1または2に記載のコンピューティングシステム。
- 前記中間コードは、前記第2のコンパイラでの前記マシンコードの生成を支援するための補助情報を含む、請求項1~3のいずれか1項に記載のコンピューティングシステム。
- プロセッサを含むコンピューティングデバイス、および、前記コンピューティングデバイスで実行されるアプリケーションプログラムを作成するためのソフトウェア開発装置とを含むコンピューティングシステムにおいて実行される情報処理方法であって、
前記ソフトウェア開発装置が、1または複数の命令と処理対象のデータとを含むソースをコンパイルして中間コードを生成するステップと、
前記コンピューティングデバイスが、前記中間コードに含まれる前記1または複数の命令を前記コンピューティングデバイスのハードウェア構成を反映してマシンコードを生成するステップと、
前記コンピューティングデバイスの前記プロセッサが、前記マシンコードの生成後に、当該生成されたマシンコードを実行するステップとを備え、
前記中間コードは、当該中間コードに対する電子証明書、および、当該電子証明書に基づく認証処理を実行するための認証命令を含んでおり、
前記マシンコードが実行されることで、前記認証命令により前記電子証明書に基づく認証処理が実現される、情報処理方法。 - プロセッサを含むコンピューティングデバイス、および、前記コンピューティングデバイスで実行されるアプリケーションプログラムを作成するためのソフトウェア開発装置とを含むコンピューティングシステムにおいて実行される情報処理方法であって、
前記ソフトウェア開発装置が、1または複数の命令と処理対象のデータとを含むソースをコンパイルして中間コードを生成するステップと、
前記コンピューティングデバイスが、前記中間コードに含まれる前記1または複数の命令を前記コンピューティングデバイスのハードウェア構成を反映してマシンコードを生成するステップと、
前記コンピューティングデバイスの前記プロセッサが、前記マシンコードの生成後に、当該生成されたマシンコードを実行するステップとを備え、
前記中間コードは、コンテンツ、当該コンテンツの著作権管理するための著作権管理情報、および、当該著作権管理情報に基づく著作権管理を実行するための管理命令を含んでおり、
前記マシンコードが実行されることで、前記管理命令により前記著作権管理情報に基づいて前記コンテンツの利用可否が判断される、情報処理方法。
Priority Applications (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019134554A JP7335591B2 (ja) | 2019-07-22 | 2019-07-22 | コンピューティングシステムおよび情報処理方法 |
PCT/JP2020/028185 WO2021015182A1 (ja) | 2019-07-22 | 2020-07-21 | コンピューティングシステムおよび情報処理方法 |
TW109124608A TW202105171A (zh) | 2019-07-22 | 2020-07-21 | 計算系統以及資訊處理方法 |
US17/613,452 US20220214867A1 (en) | 2019-07-22 | 2020-07-21 | Computing system and information processing method |
EP20844769.8A EP4006716A4 (en) | 2019-07-22 | 2020-07-21 | COMPUTING SYSTEM AND INFORMATION PROCESSING PROCEDURES |
JP2023130821A JP7592334B2 (ja) | 2019-07-22 | 2023-08-10 | コンピューティングシステムおよび情報処理方法 |
JP2024198004A JP2025020384A (ja) | 2019-07-22 | 2024-11-13 | コンピューティングシステムおよび情報処理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019134554A JP7335591B2 (ja) | 2019-07-22 | 2019-07-22 | コンピューティングシステムおよび情報処理方法 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023130821A Division JP7592334B2 (ja) | 2019-07-22 | 2023-08-10 | コンピューティングシステムおよび情報処理方法 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2021018650A JP2021018650A (ja) | 2021-02-15 |
JP2021018650A5 JP2021018650A5 (ja) | 2023-06-07 |
JP7335591B2 true JP7335591B2 (ja) | 2023-08-30 |
Family
ID=74193000
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019134554A Active JP7335591B2 (ja) | 2019-07-22 | 2019-07-22 | コンピューティングシステムおよび情報処理方法 |
JP2023130821A Active JP7592334B2 (ja) | 2019-07-22 | 2023-08-10 | コンピューティングシステムおよび情報処理方法 |
JP2024198004A Pending JP2025020384A (ja) | 2019-07-22 | 2024-11-13 | コンピューティングシステムおよび情報処理方法 |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023130821A Active JP7592334B2 (ja) | 2019-07-22 | 2023-08-10 | コンピューティングシステムおよび情報処理方法 |
JP2024198004A Pending JP2025020384A (ja) | 2019-07-22 | 2024-11-13 | コンピューティングシステムおよび情報処理方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20220214867A1 (ja) |
EP (1) | EP4006716A4 (ja) |
JP (3) | JP7335591B2 (ja) |
TW (1) | TW202105171A (ja) |
WO (1) | WO2021015182A1 (ja) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5339419A (en) | 1990-06-25 | 1994-08-16 | Hewlett-Packard Company | ANDF compiler using the HPcode-plus compiler intermediate language |
JP2005216177A (ja) | 2004-01-30 | 2005-08-11 | Toshiba Corp | コンフィグラブル・プロセッサの設計装置、設計方法、ライブラリの最適化方法、プロセッサ、及びプロセッサを備えた半導体装置の製造方法 |
JP2009512096A (ja) | 2005-10-18 | 2009-03-19 | インタートラスト テクノロジーズ コーポレイション | デジタル著作権管理エンジンのシステムおよび方法 |
US20150294114A1 (en) | 2012-09-28 | 2015-10-15 | Hewlett-Packard Development Company, L.P. | Application randomization |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10301772A (ja) * | 1997-04-30 | 1998-11-13 | Sony Corp | 情報処理装置および情報処理方法、並びに記録媒体 |
GB9920676D0 (en) | 1999-09-01 | 1999-11-03 | Tao Group Ltd | Translating and executing object-oriented computer programs |
US9886309B2 (en) | 2002-06-28 | 2018-02-06 | Microsoft Technology Licensing, Llc | Identity-based distributed computing for device resources |
US7086043B2 (en) * | 2002-10-29 | 2006-08-01 | International Business Machines Corporation | Compiler apparatus and method for unrolling a superblock in a computer program |
JP4934267B2 (ja) * | 2003-10-17 | 2012-05-16 | パナソニック株式会社 | コンパイラ装置 |
JP2006004072A (ja) * | 2004-06-16 | 2006-01-05 | Sony Corp | ライセンス評価装置,ライセンス評価方法およびそのコンピュータプログラム |
US9417931B2 (en) * | 2008-06-24 | 2016-08-16 | Microsoft Technology Licensing, Llc | Unified metadata for external components |
US8869126B2 (en) * | 2009-10-20 | 2014-10-21 | Bull Hn Information Systems Inc. | Method and apparatus enabling multi threaded program execution for a Cobol program including OpenMP directives by utilizing a two-stage compilation process |
WO2011155098A1 (ja) * | 2010-06-10 | 2011-12-15 | パナソニック株式会社 | 再生装置、記録媒体、再生方法、プログラム |
US9740464B2 (en) * | 2014-05-30 | 2017-08-22 | Apple Inc. | Unified intermediate representation |
US20160048376A1 (en) * | 2014-08-12 | 2016-02-18 | Advanced Micro Devices, Inc. | Portable binary image format (pbif) for pre-compiled kernels |
EP3026558A1 (en) * | 2014-11-28 | 2016-06-01 | Thomson Licensing | Method and device for providing verifying application integrity |
US9798559B2 (en) * | 2014-12-27 | 2017-10-24 | Mcafee, Inc. | Trusted binary translation |
RU2635271C2 (ru) * | 2015-03-31 | 2017-11-09 | Закрытое акционерное общество "Лаборатория Касперского" | Способ категоризации сборок и зависимых образов |
US9740463B2 (en) * | 2015-08-10 | 2017-08-22 | Oracle International Corporation | Mechanism for increasing the performance of multiple language programs by inserting called language IR into the calling language |
US10698668B1 (en) * | 2018-05-29 | 2020-06-30 | Amazon Technologies, Inc. | Custom code transformations during compilation process |
CN111831287B (zh) * | 2019-04-22 | 2024-03-22 | 伊姆西Ip控股有限责任公司 | 用于确定执行代码段所需的资源的方法、设备和程序产品 |
-
2019
- 2019-07-22 JP JP2019134554A patent/JP7335591B2/ja active Active
-
2020
- 2020-07-21 US US17/613,452 patent/US20220214867A1/en active Pending
- 2020-07-21 TW TW109124608A patent/TW202105171A/zh unknown
- 2020-07-21 WO PCT/JP2020/028185 patent/WO2021015182A1/ja active IP Right Grant
- 2020-07-21 EP EP20844769.8A patent/EP4006716A4/en active Pending
-
2023
- 2023-08-10 JP JP2023130821A patent/JP7592334B2/ja active Active
-
2024
- 2024-11-13 JP JP2024198004A patent/JP2025020384A/ja active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5339419A (en) | 1990-06-25 | 1994-08-16 | Hewlett-Packard Company | ANDF compiler using the HPcode-plus compiler intermediate language |
JP2005216177A (ja) | 2004-01-30 | 2005-08-11 | Toshiba Corp | コンフィグラブル・プロセッサの設計装置、設計方法、ライブラリの最適化方法、プロセッサ、及びプロセッサを備えた半導体装置の製造方法 |
JP2009512096A (ja) | 2005-10-18 | 2009-03-19 | インタートラスト テクノロジーズ コーポレイション | デジタル著作権管理エンジンのシステムおよび方法 |
US20150294114A1 (en) | 2012-09-28 | 2015-10-15 | Hewlett-Packard Development Company, L.P. | Application randomization |
Also Published As
Publication number | Publication date |
---|---|
JP2025020384A (ja) | 2025-02-12 |
JP7592334B2 (ja) | 2024-12-02 |
EP4006716A4 (en) | 2023-07-26 |
JP2023145792A (ja) | 2023-10-11 |
US20220214867A1 (en) | 2022-07-07 |
TW202105171A (zh) | 2021-02-01 |
EP4006716A1 (en) | 2022-06-01 |
WO2021015182A1 (ja) | 2021-01-28 |
JP2021018650A (ja) | 2021-02-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9471288B2 (en) | Compile based obfuscation | |
JP2024023911A (ja) | 実行コード提供方法およびソフトウェア開発システム | |
JP7335591B2 (ja) | コンピューティングシステムおよび情報処理方法 | |
KR102360646B1 (ko) | 유저 계정의 입력 정보에 기반한 어플리케이션 자동 제작 시스템 | |
CN115860950A (zh) | 合约交易执行方法、装置、电子设备及可读存储介质 | |
JP7473145B2 (ja) | ソフトウェア開発装置およびソフトウェア開発プログラム | |
CN114489698A (zh) | 应用程序安装方法和装置 | |
US20220229642A1 (en) | Software development device and software development program | |
US20240028691A1 (en) | Capability-restricted system control | |
CN114968209B (zh) | 页面管理方法、系统、电子设备和存储介质 | |
CN107145372A (zh) | 信息生成方法和装置 | |
JP2024137981A (ja) | ソフトウェア検証方法およびソフトウェア開発システム | |
CN118467061A (zh) | 安卓系统功能函数调用方法、安卓系统模板、设备及介质 | |
US8782595B1 (en) | Systems and methods for rule based meta-programming of actions for rule based build systems | |
CN119249516A (zh) | 一种镜像文件生成方法、刷新方法、装置、设备及介质 | |
CN114185556A (zh) | 一种智能合约部署方法、装置、设备以及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220722 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230530 |
|
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: 20230711 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230810 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7335591 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |