JP7454011B2 - 複数のバイナリイメージのファームウェア公開方法および電子デバイス - Google Patents
複数のバイナリイメージのファームウェア公開方法および電子デバイス Download PDFInfo
- Publication number
- JP7454011B2 JP7454011B2 JP2022082910A JP2022082910A JP7454011B2 JP 7454011 B2 JP7454011 B2 JP 7454011B2 JP 2022082910 A JP2022082910 A JP 2022082910A JP 2022082910 A JP2022082910 A JP 2022082910A JP 7454011 B2 JP7454011 B2 JP 7454011B2
- Authority
- JP
- Japan
- Prior art keywords
- binary image
- operating system
- electronic device
- firmware
- binary
- 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
- 238000000034 method Methods 0.000 title claims description 20
- 239000003795 chemical substances by application Substances 0.000 description 13
- 238000009434 installation Methods 0.000 description 9
- 230000001419 dependent effect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000002688 persistence Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000012795 verification 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/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- 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/575—Secure boot
-
- 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/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- 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/4401—Bootstrapping
- G06F9/4406—Loading of operating system
-
- 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/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/566—Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
-
- 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
-
- 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
- G06F8/443—Optimisation
- G06F8/4441—Reducing the execution time required by the program code
- G06F8/4442—Reducing the number of cache misses; Data prefetching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/654—Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
-
- 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/4401—Bootstrapping
- G06F9/4403—Processor initialisation
-
- 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/4401—Bootstrapping
- G06F9/4416—Network booting; Remote initial program loading [RIPL]
-
- 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/451—Execution arrangements for user interfaces
- G06F9/452—Remote windowing, e.g. X-Window System, desktop virtualisation
-
- 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/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
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 Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Stored Programmes (AREA)
- Image Processing (AREA)
Description
図1を参照すると、本プロセスにおける主なステップがフローチャートの形で示されている。ステップ2では、コンピュータのブート中に、複数のバイナリイメージがACPIテーブルにインストールされる。ここで、バイナリイメージの1つは、マネージャバイナリである。ステップ4では、まだブート中であり、マネージャバイナリがオペレーティングシステムのファイルシステムに保存される。ある時点の、OSのロード処理の早い段階におけるある時点で、OSはマネージャバイナリを実行する。これにより、ステップ6で他のバイナリイメージがOSファイルシステムに保存される。以下、より詳細なフローチャートについて説明する。
本発明は、ABTおよびOEM再生モジュールに関連して説明されているが、同様に機能するのであれば、別の供給元からの他のモジュールが使用されてもよい。
Claims (5)
- 電子デバイスのファームウェアから、該電子デバイスのオペレーティングシステムに複数のバイナリイメージを公開する方法であって、
前記電子デバイスの起動中に実行される、
前記ファームウェアに記録されている第1バイナリイメージを、前記電子デバイスの構成テーブルにインストールするステップと、
前記ファームウェアに記録されている第2バイナリイメージを、前記構成テーブルにインストールするステップと、
前記第1バイナリイメージのコピーを、前記オペレーティングシステムのファイルシステムに保存するステップと、
前記オペレーティングシステムのロードが開始した後に実行される、
前記オペレーティングシステムのブート処理の一部として前記第2バイナリイメージのコピーが実行されるように、前記第2バイナリイメージのコピーを前記ファイルシステムに保存するステップと、
を有する方法。 - 前記第1バイナリイメージのコピーは、実行されると、前記オペレーティングシステムがロードされた後に前記第2バイナリイメージのコピーが自動的に実行されるよう、前記オペレーティングシステム内のレジストリを変更する、
請求項1に記載の方法。 - 複数のバイナリイメージを公開する電子デバイスであって、
プロセッサと、
オペレーティングシステムと、
コンピュータで読み取り可能な指示を記憶するファームウェアと、
を含み、
前記コンピュータで読み取り可能な指示は、前記プロセッサによって実行されると、
前記電子デバイスの起動中に、該電子デバイスに、
前記ファームウェアに記憶された第1バイナリイメージの、前記電子デバイスの構成テーブルへのインストールと、
前記ファームウェアに記憶された第2バイナリイメージの、前記構成テーブルへのインストールと、
前記第1バイナリイメージのコピーの、前記オペレーティングシステムのファイルシステムへの保存と、
を実行させ、
前記オペレーティングシステムのロードが開始した後に、前記オペレーティングシステムのブート処理の一部として前記第2バイナリイメージのコピーが実行されるように、前記第2バイナリイメージのコピーを前記ファイルシステムに保存するステップを実行させる、
電子デバイス。 - 前記第1バイナリイメージのコピーは、実行されると、前記オペレーティングシステムがロードされた後に前記第2バイナリイメージのコピーが自動的に実行されるように、前記オペレーティングシステム内のレジストリを変更する、
請求項3に記載の電子デバイス。 - 前記第2バイナリイメージが、サービス、アプリケーション、または、ドライバである、
請求項3に記載の電子デバイス。
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762598319P | 2017-12-13 | 2017-12-13 | |
US201762598095P | 2017-12-13 | 2017-12-13 | |
US62/598,095 | 2017-12-13 | ||
US62/598,319 | 2017-12-13 | ||
PCT/CA2018/051575 WO2019113686A1 (en) | 2017-12-13 | 2018-12-11 | Firmware publication of multiple binary images |
JP2020531623A JP7102524B2 (ja) | 2017-12-13 | 2018-12-11 | 複数のバイナリイメージのファームウェア公開 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020531623A Division JP7102524B2 (ja) | 2017-12-13 | 2018-12-11 | 複数のバイナリイメージのファームウェア公開 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2022110133A JP2022110133A (ja) | 2022-07-28 |
JP7454011B2 true JP7454011B2 (ja) | 2024-03-21 |
Family
ID=66818857
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020531623A Active JP7102524B2 (ja) | 2017-12-13 | 2018-12-11 | 複数のバイナリイメージのファームウェア公開 |
JP2022082910A Active JP7454011B2 (ja) | 2017-12-13 | 2022-05-20 | 複数のバイナリイメージのファームウェア公開方法および電子デバイス |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020531623A Active JP7102524B2 (ja) | 2017-12-13 | 2018-12-11 | 複数のバイナリイメージのファームウェア公開 |
Country Status (6)
Country | Link |
---|---|
US (1) | US11269606B2 (ja) |
EP (1) | EP3724757B1 (ja) |
JP (2) | JP7102524B2 (ja) |
AU (2) | AU2018384097B2 (ja) |
CA (2) | CA3169129A1 (ja) |
WO (1) | WO2019113686A1 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11237839B2 (en) | 2020-06-19 | 2022-02-01 | Dell Products L.P. | System and method of utilizing platform applications with information handling systems |
US11340937B2 (en) | 2020-06-24 | 2022-05-24 | Dell Products L.P. | System and method of utilizing platform applications with information handling systems |
US11340682B1 (en) | 2021-03-02 | 2022-05-24 | Dell Products L.P. | System and method of configuring power settings of an information handling system |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000276359A (ja) | 1999-03-23 | 2000-10-06 | Sony Corp | 情報処理装置、プログラム初期化方法及びプログラム提供媒体 |
JP2005182790A (ja) | 2003-12-16 | 2005-07-07 | Microsoft Corp | 自己記述型ソフトウェアイメージ更新コンポーネント |
US20100122077A1 (en) | 2008-11-13 | 2010-05-13 | David Durham | SWITCHING BETWEEN MULTIPLE OPERATING SYSTEMS (OSes) USING SLEEP STATE MANAGEMENT AND SEQUESTERED RE-BASEABLE MEMORY |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IL129947A (en) | 1999-05-13 | 2003-06-24 | Tadiran Telecom Business Syste | Method and apparatus for downloading software into an embedded system |
AU6477600A (en) * | 1999-07-19 | 2001-02-05 | Choonyeol Yu | Devices for using multi-oss |
US20090327741A1 (en) | 2008-06-30 | 2009-12-31 | Zimmer Vincent J | System and method to secure boot uefi firmware and uefi-aware operating systems on a mobile internet device (mid) |
US8589302B2 (en) * | 2009-11-30 | 2013-11-19 | Intel Corporation | Automated modular and secure boot firmware update |
US9721101B2 (en) | 2013-06-24 | 2017-08-01 | Red Hat, Inc. | System wide root of trust chaining via signed applications |
US8607040B2 (en) * | 2010-11-16 | 2013-12-10 | Intel Corporation | Method of provisioning firmware in an operating system (OS) absent services environment |
US10514942B2 (en) | 2014-02-24 | 2019-12-24 | Red Hat Israel, Ltd. | Using linker scripts for loading system configuration tables |
US9612846B2 (en) | 2015-06-10 | 2017-04-04 | Dell Products, L.P. | Out-of-band (OOB) real-time inventory and configuration of original equipment manufacturer (OEM) devices using advanced configuration and power interface (ACPI) and unified extensible firmware interface (UEFI) services |
US10740109B2 (en) * | 2017-03-22 | 2020-08-11 | Vmware, Inc. | Configuring a computing device using managed operating system images |
US10402204B1 (en) * | 2017-04-25 | 2019-09-03 | American Megatrends International, Llc | Multi-platform firmware support |
US10599617B2 (en) * | 2017-06-29 | 2020-03-24 | Intel Corporation | Methods and apparatus to modify a binary file for scalable dependency loading on distributed computing systems |
US10664262B2 (en) * | 2017-08-29 | 2020-05-26 | Crowdstrike, Inc. | Binary suppression and modification for software upgrades |
-
2018
- 2018-12-11 EP EP18888903.4A patent/EP3724757B1/en active Active
- 2018-12-11 JP JP2020531623A patent/JP7102524B2/ja active Active
- 2018-12-11 AU AU2018384097A patent/AU2018384097B2/en active Active
- 2018-12-11 US US16/769,185 patent/US11269606B2/en active Active
- 2018-12-11 CA CA3169129A patent/CA3169129A1/en active Pending
- 2018-12-11 WO PCT/CA2018/051575 patent/WO2019113686A1/en unknown
- 2018-12-11 CA CA3084161A patent/CA3084161C/en active Active
-
2022
- 2022-03-30 AU AU2022202175A patent/AU2022202175B2/en active Active
- 2022-05-20 JP JP2022082910A patent/JP7454011B2/ja active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000276359A (ja) | 1999-03-23 | 2000-10-06 | Sony Corp | 情報処理装置、プログラム初期化方法及びプログラム提供媒体 |
JP2005182790A (ja) | 2003-12-16 | 2005-07-07 | Microsoft Corp | 自己記述型ソフトウェアイメージ更新コンポーネント |
US20100122077A1 (en) | 2008-11-13 | 2010-05-13 | David Durham | SWITCHING BETWEEN MULTIPLE OPERATING SYSTEMS (OSes) USING SLEEP STATE MANAGEMENT AND SEQUESTERED RE-BASEABLE MEMORY |
Also Published As
Publication number | Publication date |
---|---|
CA3084161C (en) | 2022-09-27 |
AU2018384097B2 (en) | 2022-03-10 |
AU2018384097A1 (en) | 2020-07-16 |
JP2021507353A (ja) | 2021-02-22 |
AU2022202175A1 (en) | 2022-04-21 |
AU2022202175B2 (en) | 2024-02-08 |
JP7102524B2 (ja) | 2022-07-19 |
US20210216296A1 (en) | 2021-07-15 |
CA3084161A1 (en) | 2019-06-20 |
US11269606B2 (en) | 2022-03-08 |
CA3169129A1 (en) | 2019-06-20 |
JP2022110133A (ja) | 2022-07-28 |
WO2019113686A1 (en) | 2019-06-20 |
EP3724757A1 (en) | 2020-10-21 |
EP3724757A4 (en) | 2021-08-25 |
EP3724757B1 (en) | 2023-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7454011B2 (ja) | 複数のバイナリイメージのファームウェア公開方法および電子デバイス | |
US7134007B2 (en) | Method for sharing firmware across heterogeneous processor architectures | |
US10452404B2 (en) | Optimized UEFI reboot process | |
US8793676B2 (en) | Version-resilient loader for custom code runtimes | |
US6816963B1 (en) | Platform level initialization using an image generated automatically by a remote server based upon description automatically generated and transmitted thereto by a processor-based system | |
US9626181B2 (en) | Systems and methods to securely inject binary images and code into firmware | |
US7814476B2 (en) | Systems and methods for updating software | |
JP2003099268A (ja) | 選択された機能を有するオペレーティングシステムを作成し使用する方法及びシステム | |
JP2009514099A (ja) | 分離されたエクステンションおよびデバイスドライバの構成 | |
CN107766084B (zh) | 启动装载及安装方法及其计算系统 | |
CN113741914B (zh) | 操作系统安装机制 | |
US8539214B1 (en) | Execution of a program module within both a PEI phase and a DXE phase of an EFI firmware | |
CN110908753A (zh) | 一种智能融合的云桌面服务器、客户端及系统 | |
US7840792B2 (en) | Utilizing hand-off blocks in system management mode to allow independent initialization of SMBASE between PEI and DXE phases | |
CN110457073A (zh) | 一种申威服务器的预启动执行环境pxe可信启动方法 | |
CN111433747A (zh) | 用于加载操作系统的虚拟存储器 | |
CN111966470B (zh) | 虚拟机监控器的加载方法、装置和电子设备 | |
US11675601B2 (en) | Systems and methods to control software version when deploying OS application software from the boot firmware | |
US11474807B1 (en) | Firmware update method and computer program product for updating firmware | |
US20220197673A1 (en) | Binary Image Publication by Firmware | |
US10635607B2 (en) | Methods, systems and apparatus to improve boot efficiency | |
CN117873504A (zh) | 操作系统安装方法、系统、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220520 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230522 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20230807 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20231013 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20231122 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20240126 |
|
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: 20240213 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240308 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7454011 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |