US20180039500A1 - Firmware updating system and method - Google Patents
Firmware updating system and method Download PDFInfo
- Publication number
- US20180039500A1 US20180039500A1 US15/246,564 US201615246564A US2018039500A1 US 20180039500 A1 US20180039500 A1 US 20180039500A1 US 201615246564 A US201615246564 A US 201615246564A US 2018039500 A1 US2018039500 A1 US 2018039500A1
- Authority
- US
- United States
- Prior art keywords
- firmware
- client
- image
- interface
- pxe
- 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
Images
Classifications
-
- 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
-
- 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
- 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/4406—Loading of operating system
- G06F9/441—Multiboot arrangements, i.e. selecting an operating system to be loaded
Definitions
- the subject matter herein generally relates to firmware updating system and method.
- Firmwares are updated to improve stability of electronic devices.
- Firmware is updated through operating system of the electronic device. When the operating system has not been installed in the operating system, the firmware can be updated.
- FIG. 1 is a schematic view of a firmware updating system.
- FIG. 2 is a block diagram of the firmware updating system in FIG. 1 .
- FIG. 3 is a flowchart of a firmware updating method.
- FIG. 1 illustrates the firmware updating system 100 as including a number of clients 20 and a server 80 .
- the server 80 communicates with the clients 20 and with each client 20 .
- the server 80 is configured to update firmware of the client 20 .
- FIG. 2 illustrates the client 20 including a network card 22 .
- the client 20 boots PXE (Preboot Execute Environment) through the network card 22 and requests an IP address from the server 80 .
- the server 80 assigns an IP address to the client 20 corresponding to MAC (Media Access Control) address of the client 20 according to through DHCP (Dynamic Host Configuration Protocol).
- the server 80 includes a remote login module 82 , an image scanning module 84 , a comparing module 86 , a determining module 88 , and a firmware updating module 90 .
- the remote login module 82 is configured to remotely log the client 20 in through SOL (Serial Over Lan).
- the image scanning module 84 is configured to scan a running interface of the client 20 at a preset speed in a preset period to obtain a number of running images.
- the preset speed can be three seconds per image.
- the preset period can be five minutes.
- the comparing module 86 is configured to compare each running image to a preset PXE interface to determine whether it is consistent or is not consistent with the preset PXE interface. According to comparison, the determining module 88 is configured to determine whether the client 20 should access a PXE interface. In detail, when there is a running image which is consistent with the preset PXE interface, the determining module 88 determines that the client 20 should access a PXE interface. When a running image which is not consistent with the preset PXE interface, the determining module 88 determines that the client 20 should not access a PXE interface.
- the firmware updating module 90 loads an operating system image and a firmware program image to RAM (random access memory) of the client 20 and controls the client 20 to run the operating system image and the firmware program image to update the firmware of the client 20 .
- the server 80 provides an interface of selections providing a number of operating systems and a number of firmwares. A user can select an operating system to be run and a firmware to be updated through the selection interface.
- the firmware updating module 90 loads the operating system image corresponding to the selected operating system and the firmware program image corresponding to the selected firmware to the RAM of the client 20 .
- the operating system on the interface of selections includes a 32-bit operating system and a 64-bit operating system.
- the user can select the 32-bit operating system or the 64-bit operating system to be run through the interface.
- the firmware on the interface includes a firmware of BIOS (Basic Input/Output System) and a firmware of BMC (Baseboard management controller). The user can select the firmware of BIOS or/and the firmware of BMC to be updated through the interface.
- BIOS Basic Input/Output System
- BMC Baseboard management controller
- FIG. 3 illustrates a firmware updating method according to an embodiment.
- the order of blocks in FIG. 3 illustrative only and the order of the blocks can change. Additional blocks can be added or fewer blocks may be utilized without departing from this disclosure.
- the exemplary method begins at block 302 .
- the client 20 boots PXE through the network card 22 .
- the remote login module 82 remotely logs the client 20 in through SOL.
- the image scanning module 84 scans a running interface of the client 20 at a preset speed in a preset period to obtain a number of running images.
- the comparing module 86 compares each running image to a preset PXE interface to determine whether there is a running image consistent with the preset PXE interface. If there is a running image consistent with the preset PXE interface, the procedure goes to block 310 . Otherwise the procedure ends.
- the determining module 88 determines that the client 20 should access a PXE interface and the firmware updating module 90 loads an operating system image and a firmware program image to RAM of the client 20 .
- the client 20 is controlled to run the operating system image and the firmware program image to update the firmware of the client.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
- This application claims priority to Chinese Patent Application No. 201610627605.2, filed on Aug. 3, 2016, the contents of which are incorporated by reference herein.
- The subject matter herein generally relates to firmware updating system and method.
- Firmwares are updated to improve stability of electronic devices. Firmware is updated through operating system of the electronic device. When the operating system has not been installed in the operating system, the firmware can be updated.
- Implementations of the present technology will now be described, by way of example only, with reference to the attached figures.
-
FIG. 1 is a schematic view of a firmware updating system. -
FIG. 2 is a block diagram of the firmware updating system inFIG. 1 . -
FIG. 3 is a flowchart of a firmware updating method. - It will be appreciated that for simplicity and clarity of illustration, where appropriate, reference numerals have been repeated among the different figures to indicate corresponding or analogous elements. In addition, numerous specific details are set forth in order to provide a thorough understanding of the embodiments described herein. However, it will be understood by those of ordinary skill in the art that the embodiments described herein can be practiced without these specific details. In other instances, methods, procedures, and components have not been described in detail so as not to obscure the related relevant feature being described. The drawings are not necessarily to scale and the proportions of certain parts may be exaggerated to better illustrate details and features. The description is not to be considered as limiting the scope of the embodiments described herein.
- A definition that applies throughout this disclosure will now be presented.
- The term “comprising” means “including, but not necessarily limited to”; it specifically indicates open-ended inclusion or membership in a so-described combination, group, series, and the like.
- The instant disclosure provides a
firmware updating system 100.FIG. 1 illustrates the firmware updatingsystem 100 as including a number ofclients 20 and aserver 80. Theserver 80 communicates with theclients 20 and with eachclient 20. Theserver 80 is configured to update firmware of theclient 20. -
FIG. 2 illustrates theclient 20 including anetwork card 22. Theclient 20 boots PXE (Preboot Execute Environment) through thenetwork card 22 and requests an IP address from theserver 80. Theserver 80 assigns an IP address to theclient 20 corresponding to MAC (Media Access Control) address of theclient 20 according to through DHCP (Dynamic Host Configuration Protocol). Theserver 80 includes aremote login module 82, animage scanning module 84, acomparing module 86, a determiningmodule 88, and afirmware updating module 90. According to the IP address of theclient 20, theremote login module 82 is configured to remotely log theclient 20 in through SOL (Serial Over Lan). Theimage scanning module 84 is configured to scan a running interface of theclient 20 at a preset speed in a preset period to obtain a number of running images. The preset speed can be three seconds per image. The preset period can be five minutes. - The
comparing module 86 is configured to compare each running image to a preset PXE interface to determine whether it is consistent or is not consistent with the preset PXE interface. According to comparison, the determiningmodule 88 is configured to determine whether theclient 20 should access a PXE interface. In detail, when there is a running image which is consistent with the preset PXE interface, the determiningmodule 88 determines that theclient 20 should access a PXE interface. When a running image which is not consistent with the preset PXE interface, the determiningmodule 88 determines that theclient 20 should not access a PXE interface. - When the
client 20 accesses the PXE interface, the firmware updatingmodule 90 loads an operating system image and a firmware program image to RAM (random access memory) of theclient 20 and controls theclient 20 to run the operating system image and the firmware program image to update the firmware of theclient 20. In the embodiment, theserver 80 provides an interface of selections providing a number of operating systems and a number of firmwares. A user can select an operating system to be run and a firmware to be updated through the selection interface. Thefirmware updating module 90 loads the operating system image corresponding to the selected operating system and the firmware program image corresponding to the selected firmware to the RAM of theclient 20. The operating system on the interface of selections includes a 32-bit operating system and a 64-bit operating system. The user can select the 32-bit operating system or the 64-bit operating system to be run through the interface. The firmware on the interface includes a firmware of BIOS (Basic Input/Output System) and a firmware of BMC (Baseboard management controller). The user can select the firmware of BIOS or/and the firmware of BMC to be updated through the interface. -
FIG. 3 illustrates a firmware updating method according to an embodiment. The order of blocks inFIG. 3 illustrative only and the order of the blocks can change. Additional blocks can be added or fewer blocks may be utilized without departing from this disclosure. The exemplary method begins atblock 302. - At
block 302, theclient 20 boots PXE through thenetwork card 22. - At
block 304, according to the IP address of theclient 20, theremote login module 82 remotely logs theclient 20 in through SOL. - At
block 306, theimage scanning module 84 scans a running interface of theclient 20 at a preset speed in a preset period to obtain a number of running images. - At
block 308, thecomparing module 86 compares each running image to a preset PXE interface to determine whether there is a running image consistent with the preset PXE interface. If there is a running image consistent with the preset PXE interface, the procedure goes to block 310. Otherwise the procedure ends. - At
block 310, the determiningmodule 88 determines that theclient 20 should access a PXE interface and the firmware updatingmodule 90 loads an operating system image and a firmware program image to RAM of theclient 20. Theclient 20 is controlled to run the operating system image and the firmware program image to update the firmware of the client. - The embodiments shown and described above are only examples. Even though numerous characteristics and advantages of the present technology have been set forth in the foregoing description, together with details of the structure and function of the present disclosure, the disclosure is illustrative only, and changes may be made in the detail, comprising in matters of shape, size, and arrangement of the parts within the principles of the present disclosure, up to the full extent established by the broad general meaning of the terms used in the claims.
Claims (20)
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610627605.2 | 2016-08-03 | ||
CN201610627605.2A CN107688461B (en) | 2016-08-03 | 2016-08-03 | Firmware updating system and firmware updating method |
CN201610627605 | 2016-08-03 |
Publications (2)
Publication Number | Publication Date |
---|---|
US20180039500A1 true US20180039500A1 (en) | 2018-02-08 |
US9904558B1 US9904558B1 (en) | 2018-02-27 |
Family
ID=61069147
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/246,564 Active 2036-11-11 US9904558B1 (en) | 2016-08-03 | 2016-08-25 | Firmware updating system and method |
Country Status (2)
Country | Link |
---|---|
US (1) | US9904558B1 (en) |
CN (1) | CN107688461B (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109510742A (en) * | 2019-01-25 | 2019-03-22 | 郑州云海信息技术有限公司 | A kind of server network interface card remote test method, device, terminal and storage medium |
WO2021139321A1 (en) * | 2020-07-20 | 2021-07-15 | 平安科技(深圳)有限公司 | Intelligent network card initialization method and apparatus, and computer device and storage medium |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008225845A (en) * | 2007-03-13 | 2008-09-25 | Nec Corp | Data updating method and data processing system |
US20100281474A1 (en) * | 2009-04-30 | 2010-11-04 | Eason Patrick C | Firmware updating |
CN101958999B (en) * | 2009-07-17 | 2015-03-11 | 三星电子株式会社 | Host apparatus, image forming apparatus and diagnosis method for image forming apparatus |
JP4894912B2 (en) * | 2009-12-29 | 2012-03-14 | コニカミノルタビジネステクノロジーズ株式会社 | Image processing apparatus, function button display control method of the same, and display control program |
CN102455920A (en) * | 2010-10-25 | 2012-05-16 | 英业达股份有限公司 | Remote firmware updating method |
CN102632730B (en) * | 2011-02-09 | 2014-09-17 | 江门市得实计算机外部设备有限公司 | Remote intelligent monitoring and optimizing and upgrading method, system and device for printer |
KR101251212B1 (en) * | 2011-07-07 | 2013-04-08 | 알서포트 주식회사 | Method for performing remote control for usb device and system for performing the same |
CN103136012B (en) * | 2011-11-30 | 2015-03-04 | 英业达科技有限公司 | Computer system and update method of basic input-output system thereof |
CN103677766A (en) * | 2012-08-31 | 2014-03-26 | 英业达科技有限公司 | Automatic server configuring system and method based on preloading of configuration script |
CN104519079A (en) * | 2013-09-27 | 2015-04-15 | 鸿富锦精密工业(深圳)有限公司 | Software updating system and method |
US10146556B2 (en) * | 2013-11-21 | 2018-12-04 | Dell Products L.P. | System and method to perform an OS boot using service location protocol and launching OS using a dynamic update of network boot order without a reboot |
US9182998B2 (en) * | 2013-12-19 | 2015-11-10 | American Megatrends, Inc. | Remote bios update in system having multiple computers |
CN105404522A (en) * | 2014-07-15 | 2016-03-16 | 阿里巴巴集团控股有限公司 | Method for building intelligent terminal application program, device for building intelligent terminal application program and intelligent terminal |
-
2016
- 2016-08-03 CN CN201610627605.2A patent/CN107688461B/en active Active
- 2016-08-25 US US15/246,564 patent/US9904558B1/en active Active
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109510742A (en) * | 2019-01-25 | 2019-03-22 | 郑州云海信息技术有限公司 | A kind of server network interface card remote test method, device, terminal and storage medium |
WO2021139321A1 (en) * | 2020-07-20 | 2021-07-15 | 平安科技(深圳)有限公司 | Intelligent network card initialization method and apparatus, and computer device and storage medium |
Also Published As
Publication number | Publication date |
---|---|
CN107688461B (en) | 2021-02-26 |
CN107688461A (en) | 2018-02-13 |
US9904558B1 (en) | 2018-02-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10318321B2 (en) | Virtual desktop system and method of control | |
RU2759011C2 (en) | AUTOMATIC INITIALIZATION OF IoT DEVICES | |
EP3526987B1 (en) | Iot provisioning service | |
US20150095505A1 (en) | Resolving network address conflicts | |
US9979798B2 (en) | Thin/zero client provisioning and management using centralized management software | |
US8332490B2 (en) | Method, apparatus and program product for provisioning a computer system | |
US20170244712A1 (en) | Dynamic passcodes in association with a wireless access point | |
US20160373459A1 (en) | Virtual desktopaccess control | |
US9529995B2 (en) | Auto discovery of virtual machines | |
JP6167736B2 (en) | Information processing apparatus, server apparatus, information processing method, and program | |
WO2017128180A1 (en) | Wireless mesh network formation | |
US11075915B2 (en) | System and method for securing communication between devices on a network | |
KR20160140917A (en) | Relay proxy providing secure connectivity in a controlled network environment | |
US6928538B2 (en) | Method and system for delayed booting of a target device in a network environment | |
US6898701B2 (en) | Method and system for organized booting of a target device in a network environment by a reservation server based on available boot resources | |
US10193886B2 (en) | Hostless mDNS-SD responder with authenticated host wake service | |
US9904558B1 (en) | Firmware updating system and method | |
US20130131885A1 (en) | System and method for obtaining and managing temperature data | |
US10129203B2 (en) | Network client ID from external managment host via management network | |
US9059919B1 (en) | Systems and methods for preserving network settings for use in a pre-boot environment | |
US10187222B2 (en) | Methods and devices for communicating over a building management system network | |
US10248363B2 (en) | Accessory modules | |
US20200007394A1 (en) | System for provisioning racks autonomously in data centers | |
US10488901B1 (en) | Dynamic thermal responses for computing components | |
US20230071552A1 (en) | Certificate authorization policy for security protocol and data model capable devices |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: HON HAI PRECISION INDUSTRY CO., LTD., TAIWAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:PAN, SHENG-CHUNG;CHEN, YEN-HSUAN;CHIANG, CHIA-LUNG;REEL/FRAME:039532/0359 Effective date: 20160822 |
|
AS | Assignment |
Owner name: CLOUD NETWORK TECHNOLOGY SINGAPORE PTE. LTD., SINGAPORE Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HON HAI PRECISION INDUSTRY CO., LTD.;REEL/FRAME:045281/0269 Effective date: 20180112 Owner name: CLOUD NETWORK TECHNOLOGY SINGAPORE PTE. LTD., SING Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HON HAI PRECISION INDUSTRY CO., LTD.;REEL/FRAME:045281/0269 Effective date: 20180112 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |