EP0959405A2

Method and apparatus for upgrading software subsystems on a network system

Abstract

A method and system for updating a software subsystem while services are being provided by the software subsystem is provided. Initially, instructions are processed from a primary software subsystem loaded at a first base address associated with a primary storage unit. A secondary software subsystem is downloaded at a second base address associated with a secondary storage unit while the primary software subsystem is being executed. The secondary software subsystem typically contains an updated version of the primary software subsystem. To install the updated software subsystem, the first base address associated with the primary storage unit is swapped with the second base address associated with the secondary storage unit. Execution continues using the updated software subsystem without a significant interruption in service.

EP0959405A2, drawing sheet 1
Sheet 1 of 9

Term

Term ended

Projected expiry passed 20 May 2019, 7.3 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

15 claims: 8 independent, 7 dependent

  1. 1
    A method for updating a software subsystem used by a network system while services are being provided by the software subsystem, comprising the steps of:processing instructions from a primary software subsystem loaded at a first base address associated with a primary storage unit coupled to the network system;downloading a secondary software subsystem at a second base address associated with a secondary storage unit coupled to the network system;and selectively swapping the first base address associated with the primary storage unit with the second base address associated with the secondary storage unit.
  2. 5
    The method of any preceding claim, further comprising after the swapping step, the step of processing instructions from the secondary software subsystem loaded at a first base address associated with the secondary storage unit.
  3. 6
    A method for loading a software subsystem on a network system which loads instructions from a first base address in a storage unit, comprising the steps of:providing a primary software subsystem loaded at the first base address associated with a primary storage unit coupled to the network system;providing a secondary software subsystem loaded at a second base address associated with a secondary storage unit coupled to the network system;selecting a software subsystem from the primary software subsystem and the secondary software subsystem;and swapping the first base address associated with the primary storage unit and the second base address associated with the secondary storage unit if the secondary software subsystem is selected.
  4. 10
    A computer program product capable of configuring a data processor to update a software subsystem used by a network system coupled to a server computer over a network while services are being provided by the software subsystem. the computer program product comprising program code to cause the data processor to perform the steps of any one of the methods of claims 1 to 5.
  5. 11
    A computer program product capable of configuring a data processor to load a software subsystem on a network system which loads instructions from a first base address in a storage unit, comprising the steps of any one of the methods of claims 6 to 8.
  6. 12
    An apparatus designed to update a software subsystem used by a network system coupled to a server computer over a network while services are being provided by the software subsystem comprising:a processing module configured to process instructions from a primary software subsystem loaded at a first base address associated with a primary storage unit coupled to the network system;a download module configured to download a secondary software subsystem at a second base address associated with a secondary storage unit coupled to the network system;and a swapping module configured to selectively swap the first base address associated with the primary storage unit with the second base address associated with the secondary storage unit.
  7. 14
    An apparatus configured to load a software subsystem on a network system which loads instructions from a first base address in a storage unit, comprising:a primary software subsystem loaded at the first base address associated with a primary storage unit coupled to the network system;a secondary software subsystem loaded at a second base address associated with a secondary storage unit coupled to the network system;a selection module for selecting a software subsystem from the primary software subsystem and the secondary software subsystem;and a swap module for swapping the first base address associated with the primary storage unit and the second base address associated with the secondary storage unit if the secondary software subsystem is selected.
  8. 15
    The apparatus in claim 14, wherein the selection module step further comprises:a determination module capable of detecting whether the primary software subsystem and the secondary software subsystem have been altered since they were generated;and a selection module configured to select the primary software subsystem if the secondary software subsystem is determined to have been altered.