WO2004023289A3 - Firmware architecture supporting safe updates and multiple processor types - Google Patents

Firmware architecture supporting safe updates and multiple processor types Download PDF

Info

Publication number
WO2004023289A3
WO2004023289A3 PCT/US2003/027791 US0327791W WO2004023289A3 WO 2004023289 A3 WO2004023289 A3 WO 2004023289A3 US 0327791 W US0327791 W US 0327791W WO 2004023289 A3 WO2004023289 A3 WO 2004023289A3
Authority
WO
WIPO (PCT)
Prior art keywords
firmware
updates
multiple processor
processor types
architecture supporting
Prior art date
Application number
PCT/US2003/027791
Other languages
French (fr)
Other versions
WO2004023289A2 (en
Inventor
Todd Schelling
Amy Santoni
Craig Valine
William Greene
Bassam Elkhoury
John Lovelace
David O'shea
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Priority to AU2003273286A priority Critical patent/AU2003273286A1/en
Priority to DE10393235T priority patent/DE10393235T5/en
Priority to GB0504086A priority patent/GB2408821B/en
Publication of WO2004023289A2 publication Critical patent/WO2004023289A2/en
Publication of WO2004023289A3 publication Critical patent/WO2004023289A3/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06F9/44536Selecting among different versions
    • G06F9/44542Retargetable
    • G06F9/44547Fat binaries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation

Abstract

One embodiment of the invention provides a firmware architecture which splits firmware modules to support safe updates of specific modules as well as supporting multiple different processors. A firmware image is partitioned into several different binaries based on their update requirements and processor/platform dependence. A firmware interface table enables safe updates by enabling the option of redundant copies of specific modules as well as supporting systems with different and/or multiple processor types, mixed processors from the same family, and/or fault resilient firmware updates.
PCT/US2003/027791 2002-09-09 2003-09-05 Firmware architecture supporting safe updates and multiple processor types WO2004023289A2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
AU2003273286A AU2003273286A1 (en) 2002-09-09 2003-09-05 Firmware architecture supporting safe updates and multiple processor types
DE10393235T DE10393235T5 (en) 2002-09-09 2003-09-05 Firmware architecture that supports secure updates and multiple processor types
GB0504086A GB2408821B (en) 2002-09-09 2003-09-05 Firmware architecture supporting safe updates and multiple processor types

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/237,349 US7036007B2 (en) 2002-09-09 2002-09-09 Firmware architecture supporting safe updates and multiple processor types
US10/237,349 2002-09-09

Publications (2)

Publication Number Publication Date
WO2004023289A2 WO2004023289A2 (en) 2004-03-18
WO2004023289A3 true WO2004023289A3 (en) 2005-03-03

Family

ID=31977706

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2003/027791 WO2004023289A2 (en) 2002-09-09 2003-09-05 Firmware architecture supporting safe updates and multiple processor types

Country Status (7)

Country Link
US (1) US7036007B2 (en)
CN (1) CN100388196C (en)
AU (1) AU2003273286A1 (en)
DE (1) DE10393235T5 (en)
GB (1) GB2408821B (en)
TW (1) TWI269229B (en)
WO (1) WO2004023289A2 (en)

Families Citing this family (68)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7003656B2 (en) * 2002-06-13 2006-02-21 Hewlett-Packard Development Company, L.P. Automatic selection of firmware for a computer that allows a plurality of process types
US7653808B2 (en) * 2002-11-27 2010-01-26 Intel Corporation Providing selectable processor abstraction layer components within one BIOS program
US7134007B2 (en) * 2003-06-30 2006-11-07 Intel Corporation Method for sharing firmware across heterogeneous processor architectures
US7363484B2 (en) * 2003-09-15 2008-04-22 Hewlett-Packard Development Company, L.P. Apparatus and method for selectively mapping proper boot image to processors of heterogeneous computer systems
US8555273B1 (en) * 2003-09-17 2013-10-08 Palm. Inc. Network for updating electronic devices
US7376078B1 (en) * 2004-03-24 2008-05-20 Juniper Networks, Inc. Selective replay of a state information within a computing device
US8914606B2 (en) * 2004-07-08 2014-12-16 Hewlett-Packard Development Company, L.P. System and method for soft partitioning a computer system
CA2576508A1 (en) * 2004-08-04 2006-02-16 Osa Technologies, Inc. Software and firmware adaptation for unanticipated/changing hardware environments
US20060047939A1 (en) * 2004-09-01 2006-03-02 International Business Machines Corporation Method and apparatus for initializing multiple processors residing in an integrated circuit
US20060149954A1 (en) * 2004-12-03 2006-07-06 Matt Hageman Apparatus and method for accommodating different central processing units in a computer
TW200620299A (en) * 2004-12-08 2006-06-16 Benq Corp Electronic device and method for updating related programs
US8214830B2 (en) * 2005-01-19 2012-07-03 Intel Corporation Performance in a virtualization architecture with a processor abstraction layer
US8181020B2 (en) 2005-02-02 2012-05-15 Insyde Software Corp. System and method for securely storing firmware
CN100405297C (en) * 2005-05-18 2008-07-23 鸿富锦精密工业(深圳)有限公司 Updating method for preset value initial setting program of embedded system
CN100412796C (en) * 2005-05-29 2008-08-20 鸿富锦精密工业(深圳)有限公司 Built-in system and safety opening terminal method
US20070061813A1 (en) * 2005-08-30 2007-03-15 Mcdata Corporation Distributed embedded software for a switch
US7814479B2 (en) * 2005-12-14 2010-10-12 International Business Machines Corporation Simultaneous download to multiple targets
US7958436B2 (en) 2005-12-23 2011-06-07 Intel Corporation Performing a cyclic redundancy checksum operation responsive to a user-level instruction
US8429418B2 (en) * 2006-02-15 2013-04-23 Intel Corporation Technique for providing secure firmware
US7925957B2 (en) 2006-03-20 2011-04-12 Intel Corporation Validating data using processor instructions
JP4874859B2 (en) * 2006-05-31 2012-02-15 株式会社リコー Information processing apparatus, information processing system, program, and recording medium thereof
US8103363B2 (en) * 2007-01-31 2012-01-24 Hewlett-Packard Development Company, L.P. Device control system
US7761734B2 (en) * 2007-04-13 2010-07-20 International Business Machines Corporation Automated firmware restoration to a peer programmable hardware device
US7761735B2 (en) * 2007-04-13 2010-07-20 International Business Machines Corporation Automated firmware restoration to a peer programmable hardware device
US8578332B2 (en) 2007-04-30 2013-11-05 Mark Murray Universal microcode image
US7949850B2 (en) * 2007-12-28 2011-05-24 Intel Corporation Methods and appratus for demand-based memory mirroring
US8136108B2 (en) * 2008-09-03 2012-03-13 Computime, Ltd Updating firmware with multiple processors
US9565207B1 (en) 2009-09-04 2017-02-07 Amazon Technologies, Inc. Firmware updates from an external channel
US10177934B1 (en) 2009-09-04 2019-01-08 Amazon Technologies, Inc. Firmware updates inaccessible to guests
US8887144B1 (en) 2009-09-04 2014-11-11 Amazon Technologies, Inc. Firmware updates during limited time period
US8214653B1 (en) 2009-09-04 2012-07-03 Amazon Technologies, Inc. Secured firmware updates
US8971538B1 (en) 2009-09-08 2015-03-03 Amazon Technologies, Inc. Firmware validation from an external channel
US8601170B1 (en) 2009-09-08 2013-12-03 Amazon Technologies, Inc. Managing firmware update attempts
US8102881B1 (en) 2009-09-08 2012-01-24 Amazon Technologies, Inc. Streamlined guest networking in a virtualized environment
US8300641B1 (en) 2009-09-09 2012-10-30 Amazon Technologies, Inc. Leveraging physical network interface functionality for packet processing
US8640220B1 (en) 2009-09-09 2014-01-28 Amazon Technologies, Inc. Co-operative secure packet management
US8959611B1 (en) 2009-09-09 2015-02-17 Amazon Technologies, Inc. Secure packet management for bare metal access
US8381264B1 (en) 2009-09-10 2013-02-19 Amazon Technologies, Inc. Managing hardware reboot and reset in shared environments
CN101655789B (en) * 2009-09-22 2012-10-24 用友软件股份有限公司 Method and device for realizing hot plugging of application components
US8090977B2 (en) 2009-12-21 2012-01-03 Intel Corporation Performing redundant memory hopping
US8566613B2 (en) 2010-06-11 2013-10-22 Intel Corporation Multi-owner deployment of firmware images
US8522066B2 (en) 2010-06-25 2013-08-27 Intel Corporation Providing silicon integrated code for a system
CN102541571A (en) * 2010-12-08 2012-07-04 国基电子(上海)有限公司 Multiprocessor device and firmware updating method thereof
WO2013089739A1 (en) * 2011-12-15 2013-06-20 Intel Corporation Secure debug trace messages for production authenticated code modules
US9110761B2 (en) 2012-06-27 2015-08-18 Microsoft Technology Licensing, Llc Resource data structures for firmware updates
US8972973B2 (en) 2012-06-27 2015-03-03 Microsoft Technology Licensing, Llc Firmware update discovery and distribution
US9235404B2 (en) 2012-06-27 2016-01-12 Microsoft Technology Licensing, Llc Firmware update system
US20140058532A1 (en) * 2012-08-23 2014-02-27 GM Global Technology Operations LLC Method for partial flashing of ecus
US8930936B2 (en) 2012-11-06 2015-01-06 International Business Machines Corporation Loading remote binaries onto a write-protected device
US11372536B2 (en) 2012-11-20 2022-06-28 Samsung Electronics Company, Ltd. Transition and interaction model for wearable electronic device
US9477313B2 (en) 2012-11-20 2016-10-25 Samsung Electronics Co., Ltd. User gesture input to wearable electronic device involving outward-facing sensor of device
US11237719B2 (en) 2012-11-20 2022-02-01 Samsung Electronics Company, Ltd. Controlling remote electronic device with wearable electronic device
US10423214B2 (en) 2012-11-20 2019-09-24 Samsung Electronics Company, Ltd Delegating processing from wearable electronic device
US8994827B2 (en) 2012-11-20 2015-03-31 Samsung Electronics Co., Ltd Wearable electronic device
US9030446B2 (en) 2012-11-20 2015-05-12 Samsung Electronics Co., Ltd. Placement of optical sensor on wearable electronic device
US10551928B2 (en) 2012-11-20 2020-02-04 Samsung Electronics Company, Ltd. GUI transitions on wearable electronic device
US11157436B2 (en) 2012-11-20 2021-10-26 Samsung Electronics Company, Ltd. Services associated with wearable electronic device
US10185416B2 (en) 2012-11-20 2019-01-22 Samsung Electronics Co., Ltd. User gesture input to wearable electronic device involving movement of device
US9032423B2 (en) 2013-06-21 2015-05-12 Microsoft Technology Licensing, Llc Dependency based configuration package activation
CN105408858B (en) 2013-07-31 2019-11-12 惠普发展公司,有限责任合伙企业 Method and system for computing system
US10691332B2 (en) 2014-02-28 2020-06-23 Samsung Electronics Company, Ltd. Text input on an interactive display
US9639434B2 (en) * 2015-02-26 2017-05-02 Dell Products, L.P. Auto-didacted hierarchical failure recovery for remote access controllers
CN107194242B (en) * 2017-03-30 2019-11-08 百富计算机技术(深圳)有限公司 Firmware upgrade method and device
US10740084B2 (en) * 2018-08-16 2020-08-11 Intel Corporation Soc-assisted resilient boot
CN109388418A (en) * 2018-10-09 2019-02-26 郑州云海信息技术有限公司 Method and system with the outer firmware for refreshing BOX node server and FRU
CN112732308A (en) * 2020-12-31 2021-04-30 广州万协通信息技术有限公司 Firmware upgrading method, equipment and storage medium for module fine-grained
US20230083300A1 (en) * 2021-09-10 2023-03-16 Cirrus Logic International Semiconductor Ltd. Multi-processor system with dynamically selectable multi-stage firmware image sequencing and distributed processing system thereof
US11899567B2 (en) * 2021-09-10 2024-02-13 Cirrus Logic, Inc. System with hardware register and controller external to processor that facilitates transitions between firmware images using hardware register written with firmware image entry points

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0723226A1 (en) * 1995-01-18 1996-07-24 Hewlett-Packard Company Powerfail durable flash EEPROM upgrade
US5933652A (en) * 1996-08-30 1999-08-03 Advanced System Products, Inc. Host independent peripheral controller with on-board firmware
EP0939367A2 (en) * 1998-02-28 1999-09-01 Hewlett-Packard Company Methods and apparatus for dual-boot memory selection, update, and recovery in a programmable device
US20010042243A1 (en) * 1998-12-31 2001-11-15 Andrew J. Fish Arrangements having firmware support for different processor types

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5210854A (en) * 1989-06-14 1993-05-11 Digital Equipment Corporation System for updating program stored in eeprom by storing new version into new location and updating second transfer vector to contain starting address of new version
US5835775A (en) * 1996-12-12 1998-11-10 Ncr Corporation Method and apparatus for executing a family generic processor specific application
US6834384B2 (en) * 2001-03-14 2004-12-21 General Instrument Corporation Methods and apparatus for upgrading firmware in an embedded system
US20020178352A1 (en) * 2001-05-22 2002-11-28 Lambino John P. Firmware upgrade using address conversion

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0723226A1 (en) * 1995-01-18 1996-07-24 Hewlett-Packard Company Powerfail durable flash EEPROM upgrade
US5933652A (en) * 1996-08-30 1999-08-03 Advanced System Products, Inc. Host independent peripheral controller with on-board firmware
EP0939367A2 (en) * 1998-02-28 1999-09-01 Hewlett-Packard Company Methods and apparatus for dual-boot memory selection, update, and recovery in a programmable device
US20010042243A1 (en) * 1998-12-31 2001-11-15 Andrew J. Fish Arrangements having firmware support for different processor types

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
IEEE COMPUTER SOCIETY BUS ARCHITECTURE STANDARDS COMMITTEE: "IEEE STANDARD FOR BOOT (INITIALIZATION CONFIGURATION) FIRMWARE: CORE REQUIREMENTS AND PRACTICES", IEEE STD 1275-1994, 1994, pages I,1-2,22,33-37,44-46,83-87,171,229 - 231, XP002299867 *

Also Published As

Publication number Publication date
DE10393235T5 (en) 2005-07-28
CN100388196C (en) 2008-05-14
US20040049669A1 (en) 2004-03-11
TW200414042A (en) 2004-08-01
CN1695118A (en) 2005-11-09
GB0504086D0 (en) 2005-04-06
AU2003273286A1 (en) 2004-03-29
TWI269229B (en) 2006-12-21
US7036007B2 (en) 2006-04-25
WO2004023289A2 (en) 2004-03-18
AU2003273286A8 (en) 2004-03-29
GB2408821B (en) 2006-04-12
GB2408821A (en) 2005-06-08

Similar Documents

Publication Publication Date Title
WO2004023289A3 (en) Firmware architecture supporting safe updates and multiple processor types
TW200606722A (en) Apparatus and method for updating I/O capability of a logically-partitioned computer system
BRPI0505187A (en) process and system for synchronizing multiple user reviews on a shared object
BRPI0515940A (en) linear member
WO2005089209A3 (en) Application programming interface for administering the distribution of software updates in an update distribution system
WO2006065661A3 (en) Systems and methods providing high availability for distributed systems
BR122013013162A2 (en) Use of rivastigmine to prepare a transdermal therapeutic system (tts)
NO20070983L (en) Stable injectable mixture of alpha-tocopheryl succinate, analogs and salts thereof
BRPI0512624A (en) substituted heteroaryl and phenylsulfamoyl compounds
BRPI0406382A (en) System and method for a directed user interface for discovering and publishing network presence information
WO2006055758A3 (en) Systems and methods for managing digital assets
WO2005055061A3 (en) Configuration synchronization for redundant processors executing different versions of software
WO2001061485A3 (en) Modular bios update mechanism
BR0105174A (en) Technical support program
CR8402A (en) INDAZOL-O-GLUCOSIDS SUBSTITUTES
WO2008049102A3 (en) System and methods for zero-configuration data backup
ATE413217T1 (en) FLIGHT FACILITY
PA8537201A1 (en) PPAR AGONISTS
BRPI0517973B8 (en) methods to purify recombinant fsh
EP0679994A3 (en) High availability computer system.
BRPI0519751A2 (en) system and method for selecting a signal input
SV2003000887A (en) PPAR COMPOUNDS REF.PC11022AADO / BB
WO2002031656A3 (en) Handling errors in an error-tolerant distributed computer system
WO2007020551A3 (en) User interface system for a personal healthcare environment
AR042039A1 (en) POSITIONAL ISOMERS OF IFN PEG ALFA 2 A

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
ENP Entry into the national phase

Ref document number: 0504086

Country of ref document: GB

Kind code of ref document: A

Free format text: PCT FILING DATE = 20030905

WWE Wipo information: entry into national phase

Ref document number: 1079/DELNP/2005

Country of ref document: IN

WWE Wipo information: entry into national phase

Ref document number: 2003824960X

Country of ref document: CN

RET De translation (de og part 6b)

Ref document number: 10393235

Country of ref document: DE

Date of ref document: 20050728

Kind code of ref document: P

WWE Wipo information: entry into national phase

Ref document number: 10393235

Country of ref document: DE

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP

WWW Wipo information: withdrawn in national office

Ref document number: JP

REG Reference to national code

Ref country code: DE

Ref legal event code: 8607

REG Reference to national code

Ref country code: DE

Ref legal event code: 8607