A method for updating the firmware of a computing device via a
communications network is provided. A client computer having firmware to
be updated boots into a preboot execution environment ("PXE"). A
broadcast request is transmitted by the PXE that requests the network
location of a server computer operative to provide a firmware update
program. The broadcast request also requests the name of the firmware
update program. Once the response to the broadcast request is received,
the client computer transmits a request to the server computer for the
firmware update program. The server computer transmits the firmware
update program to the client computer. The client computer then executes
the firmware update program in the PXE environment. The firmware update
program transmits a request to the server computer for the firmware image
file to be used to update the operational firmware, receives the firmware
image from the server computer, and updates the operational firmware of
the client computer utilizing the received firmware image.