Browse Prior Art Database

System Independent Method for Updating System Code

IP.com Disclosure Number: IPCOM000112170D
Original Publication Date: 1994-Apr-01
Included in the Prior Art Database: 2005-Mar-26
Document File: 4 page(s) / 110K

Publishing Venue

IBM

Related People

Grimes, BR: AUTHOR [+3]

Abstract

Disclosed is a set of system services for updating system code in Shadow RAM, a portion of RAM (random-access memory) which is write locked to appear like Read-Only Memory (ROM) from which the Initial Microcode Load (IML) image is loaded during the initialization of a system. Means are provided for performing such updates in all types of systems implementing these services without requiring a new release of external software to perform the update on each type of system.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 47% of the total text.

System Independent Method for Updating System Code

      Disclosed is a set of system services for updating system code
in Shadow RAM, a portion of RAM (random-access memory) which is write
locked to appear like Read-Only Memory (ROM) from which the Initial
Microcode Load (IML) image is loaded during the initialization of a
system.  Means are provided for performing such updates in all types
of systems implementing these services without requiring a new
release of external software to perform the update on each type of
system.

      In a system having local media, such as a hardfile, an updated
IML image is stored on the media.  However, various systems are built
without local media, to receive data from another system, such as a
server, through a network connection.

      While the initial IML image, which is stored in ROM, cannot be
updated, the Shadow RAM area is controlled by the memory controller
of the system, which may be reprogrammed to allow the updating of
system code in Shadow RAM.  Such an update is not permanent, as it is
not stored on any permanent media.  However, since different types of
systems use different memory controllers, the process of
reprogramming the memory controller is system dependent.  The process
of updating Shadow RAM is further complicated by the fact that memory
caches must be flushed during update operations.

      With the new system services, the RETURN UPDATE PARAMETERS
call, which is the first call issued, is used to determine the
parameters needed for updating the system.  The new system services
provide various  functions according to register values as indicated
below:

   (AH) = D7h - Media-less IML Update Support

   For PCjr and PC:
        On Return:
          (AH) = 80h
          CF = 1

   For all others:
        (AL) = 00h - RETURN UPDATE PARAMETERS
        On Return:
        CF = 0 - Operation successfully completed.
                       (AH) = 00h - No previous update has been
applied.
                    = 01h - Update not needed (an update was
previously
                     applied).
          (DX) = Number of bytes needed for the APPLY UPDATE function
              (Maximum size returned in 512 bytes).
          (CX) = Number of KB's in the system code image file.
          (BX) = Number of bytes which need to be read from the image
                 file on the RETURN UPDATE STATUS function call.
          (AL) = 00h - Indicates system supports only temporary
                         updates.
               = 01h - Indicates system supports permanent updates.
          (ES:SI) = Pointer to ASCIIZ IML file name.
            CF = 1 - Operation unsuccessful.
          (AH) = 02h - System is unable to be updated.
      ...