CA2074027C - Method of setting up system configuration in data processing system, data processing system, and expansion unit for data processing system - Google Patents
Method of setting up system configuration in data processing system, data processing system, and expansion unit for data processing systemInfo
- Publication number
- CA2074027C CA2074027C CA002074027A CA2074027A CA2074027C CA 2074027 C CA2074027 C CA 2074027C CA 002074027 A CA002074027 A CA 002074027A CA 2074027 A CA2074027 A CA 2074027A CA 2074027 C CA2074027 C CA 2074027C
- Authority
- CA
- Canada
- Prior art keywords
- configuration
- system configuration
- information
- backedup
- current
- 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.)
- Expired - Lifetime
Links
- 238000012545 processing Methods 0.000 title claims abstract description 11
- 238000000034 method Methods 0.000 title description 36
- 230000003993 interaction Effects 0.000 abstract description 6
- 238000002405 diagnostic procedure Methods 0.000 abstract description 2
- 239000004576 sand Substances 0.000 abstract 1
- 230000008569 process Effects 0.000 description 20
- 230000009471 action Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000012360 testing method Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 101100119347 Plasmodium falciparum EXP-1 gene Proteins 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000003750 conditioning effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000763 evoking effect Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1417—Boot up procedures
-
- 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/4411—Configuring for operating with peripheral devices; Loading of device drivers
Abstract
If a system configuration turns back to the system configuration which was once set up previously, it is not required to set up the system configuration through user interaction. In a data processing system having a non-volatile memory for staring information on system configuration also after the system is turned off, if information on new system configuration is set up, the newly set up information is stored not only unto a predetermined area of said non-volatile memory, but also into a second non-volatile memory such as a disk storage apparatus, etc.
different from said non-volatile memory or an area other than said predetermined area of sand non-volatile memory and if changes to the system configuration axe detected, for example, at a self-diagnostic test at the time of the supply of power to the system, a check of whether or not information that accords with the information on the current system configuration exists in said second non-volatile memory or the area other than said predetermined area of said non-volatile memory, i.s made and if accordance is obtained, the appropriate information is transferred to said predetermined area of said non-volatile memory.
different from said non-volatile memory or an area other than said predetermined area of sand non-volatile memory and if changes to the system configuration axe detected, for example, at a self-diagnostic test at the time of the supply of power to the system, a check of whether or not information that accords with the information on the current system configuration exists in said second non-volatile memory or the area other than said predetermined area of said non-volatile memory, i.s made and if accordance is obtained, the appropriate information is transferred to said predetermined area of said non-volatile memory.
Description
20~402~
METHOD OF SETTING UP SYSTEM CONFIGURATION IN DATA
PROCESSING SYSTEM, DATA PROCESSING SYSTEM, AND EXPANSION
UNIT FOR DATA PROCESSING SYSTEM
BACKGROUND OF THE INVENTION
This invention relates to computer systems which automatically configure their input/output (I/O) attachments or I/O adapters when power is turned on.
In existing computer systems, I/O adapters have stored io identifier (ID) functions which are detected by the system during its initialization process, and enable the system to determine if its I/O has changed since power was last turned off. If the configuration has not changed, the initialization process automatically conditions the adapters to operating status suited i5 to the existing configuration. Thus, it is not necessary for the system to repeat any setup procedures associated with establishing the operating status of this configuration.
When an I/O adapter card is first installed into an attachment slot of the system, which previously was vacant or 2o connected to a different I/0 adapter, a setup process is initiated by the system which requires interaction of an user. In this process, configuration state information relating to the newly installed adapter card is created by the system and stored in a non-volatile system memory (NVRAM) along with a copy of the 25 adapter's ID function. Each time that the power is turned on, the system executes a power on self test (POST) procedure in which it determines (among other things) if ID's associated with the slots are same as they were when power was last turned off. If ID's have not changed, the system causes associated configuration 3o information to be transferred from NVRAM to volatile registers in respective adapter cards, thereby conditioning the adapter cards to operating states suited to the current configuration of the system. If the IDs have changed, another setup process is initiated. For details of the foregoing, refer to US patent s 5,038,320 to Heath et al, assigned to the assignee of the present application.
The setup procedure can be time consuming, inasmuch as it may require the system user to deactivate and reboot the system several times, but it generally does not overly delay productive io use of the system since adapter install action changes usually are made infrequently. However, in some systems, frequent changes of adapter configurations may be necessary for practical operation of the system. For example, a notebook computer system may be used at some times as a stand-alone portable computer and is at other times as part of a desktop system. In desktop configuration, the computer may be connected to an expansion unit which provides additional functions such as communication, printing, extra memory/storage, etc. In such frequently changing environments it is desirable to be able to avoid having to repeat 2o setup processes to recreate configuration state information that the system has previously created. the present invention provides such capability.
SUMMARY OF THE INVENTION
2s An object of this invention is to provide a mechanism and associated method for enabling a computer system to avoid having to repeat previously executed setup procedures when its configuration of attachments id changed to a configuration that had existed earlier.
3o Another object is to provide a mechanism and method for enabling a computer system to automatically and efficiently initialize devices, that have just been attached to the system in a connection configuration which existed at some previous time, without user interaction and in a time which is much shorter than s the time that would be required to accomplish the initialization via s setup process involving user interaction.
These objects are realized by storing a backup copy of configuration state information, relative to each configuration initially established by execution of an otherwise conventional io setup procedure (conventional except for storage of the backup copy) . the backup copy is stored in a secondary storage device, in association with adapter identifier's (ID's) which identify the devices currently connected to the system, in a form in which the information is always accessible to be automatically 15 retrieved and re-used by the system without user action. V~hen a device adapter is first attached to the system, an user/installer is guided interactively through a conventional setup procedure by which system configuration state information associated with the configuration formed by attachment of that adapter is created and 2o stored in a system NVRAM. However, in accordance with the present invention and as ad extension of the setup procedure, a backup copy of the same information is stored in an automatically retrieved form, in a secondary non-volatile memory in the system;
e.g. a hard disk drive (HDD) storage device. The backup copy is as stored in associated with identifiers (IDs) corresponding to the currently attached adapters, and is thereby automatically retrievable in association with the current attachment configuration, whenever that configuration is re-established. At each start-up, the system POST process detects IDs of adapters 3o which are currently attached to the system, and determines if 20 ~ 40 2 ~
they correspond to ID's currently stored in the system NVRAM
(i.e. it determines if the current I/O configuration is the same as that which existed when system power was last turned off). If the ID's correspond, POST transfers configuration state s information from its NVRAM to the adapters as before, establishing the adapters in operating states suited to the current configuration. However, if any ID does not correspond, the system does not immediately call for setup action. Instead, POST attempts to locate a backup copy of configuration Zo information associated with the currently detected configuration of adapter ID's. If a backup copy is not located, setup actions evoked. But if a corresponding backup copy is found, POST
retrieves it automatically (without user interaction), transfers a copy of it to NVRAM and uses the transferred information to set 15 the currently attached adapters into states suited to their aggregate configuration. The portion of the secondary storage device used for storing backup configuration information is either exclusively reserved for that function (i.e. for exclusive use only by the POST process) or otherwise protected against zo being overwritten during normal operation of the system. It should be understood that when the HDD or other secondary storage device is first installed in the system, the system may be operated to create configuration information relative to a variety of different devices, which may or may not be eventually 25 attached, and to store backup copies of that information in the secondary storage device; provided of course that the storage device has sufficient capacity it may be used to store both the principal copies and backup copies of the configuration information.
BRIEF DESCRIPTION OF THE DRAWINGS
The present invention will be more clearly illustrated by the following detailed description taken in conjunction with the appended drawings wherein:
s Fig. 1 is a block diagram showing the construction of an embodiment of a data processing system according to the present invention;
Fig. 2 is a block diagram showing the data structure of system configuration information in a disk storage apparatus used to as the second non-volatile memory of the embodiment of Fig. l;
Fig. 3 is a flowchart showing the procedures of a set-up program in the embodiment;
Fig. 4 is a flowchart showing the procedure of a POST
program in the embodiment.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
FIG.1 shows an embodiment of a data processing system containing a computer system unit 1 constructed according to the present invention. Unit 1 contains a system bus 3. Sockets/slots #1, #2, and #3 are connected to the system bus 3, and into which various I/O attachment cards may be inserted. Such cards may be used to control various different types of peripheral device (e. g. disk drive apparatus, printer, extended memory device, etc.) and are interchangeably insertable into any of the sockets.
z5 Also connected to bus 3 are a ROM (read only memory) 5, fcr storing its POST and BIOS (basic input output system) programs, a NVRAM (non-volatile RAM) memory 7 for storing configuration information, a non-volatile secondary storage device HDD (hard disk device) 9, a main memory 11 and a CPU (central processing 3o unit) 13. The foregoing elements may all be commonly housed as x integral parts of unit 1. To create configuration information, a setup program is used. the setup program is concerned in a utility program. The utility program is contained either on a reference diskette supplied to the user with unit 1, which s operates through a not-shown diskette drive included in the unit 1, or it may be contained on HDD 9.
Slots #1, #2, and #3 are connected to the system bus 3. An adapter card #A1 is to be attached to the slots #2. An adapter card #A2 is to be attached to the slot #1. An expansion units #E1 io or #E2 is to be attached to the slots #3. The expansion unit #E1 has slots #4, #5, and #6. An adapter card #X1 is to be attached to the slot #4. An adapter card #X2 is to be attached to the slot #5. An adapter card #X3 is to be attached to the slot #6. The expansion unit #E2 also has slots #4, #5, and #6. An adapter card 15 #Y1 is to be attached to the slot #4 . An adapter card #Y2 is to be attached to the slot #5. An adapter card #Y3 is to be attached to the slot #6.
Each adapter card and expansion unit has an unique identifier (ID) for identifying its respective type of apparatus.
2o Each ID consists of a predetermined number of bits which are permanently stored on the respective card in respective non-volatile storing means 21. Each adapter card also contains a (volatile) register 23 which can store associated configuration state information when system power is on. Such configuration a5 state information can be stored in non-volatile form in NvRA 7, and transferred to the register 23 of attached cards by POST if the configuration of the system has not changed since it was last deactivated. The configuration state information includes, for example, address factors (AD) assigning portions of system 30 (memory and/or I/O) address space of the respective card, interrupt priority level for interrupt requests presented to the system unit by respective card, information allocating different priorities (PR) to cards of the same type, and/or information ENBL for enabling and disabling cards of the same type which are s redundantly configured in the system. Based on this information, data is efficiently transferable between the CPU 13 and the cards, and between the cards.
In addition to means for storing their ID values, the expansion units #E1 and #E2 each have NVRAMs 25 for storing io associated configuration information. Such information is written from the system unit 1 to respective NVRAM's 25 during execution of the setup program after connection of respective expansion units to the system. Each NVRAM 25 contains ID values of all adapter cards currently attached to the I/0 sockets/slots on 15 respective expansion unit. Each NVRAM 25 also contains "name"
information uniquely identifying the respective expansion unit;
for example, EXP-1 for unit #E1 and EXP-2 for unit #E2. Such names are required even if the units and their respective attachments are identical, in order to allow the system unit 1 to 2o be able to distinguish between the expansion units (e.g. to be able to create and write different configuration information to those units).
NVRAM 7 contains system configuration information for the last active configuration of unit connections in the system;i.e.
z5 the configuration established at the last initialization of the system. Such information includes identifier and configuration state information, for each adapter card and expansion unit connected to the system slots in the associated configuration.
Whenever a new configuration of unit attachments is formed, 3o corresponding system configuration information is created by the .. 2074027 JA9-91-025 g setup program and stored in NVRAM 7. NVRAM 7 is continuously powered by system power and/or a not-shown back-up battery. In FIG.1, NVRAM is shown holding a particular set of system configuration information designated "system configuration s information #1". for purpose of the following discussion, it is assumed that the system configuration information #1 us associated with a configuration in which slot #3 is empty, and slots #1 and #2 respectively have adapter cards #A1 and #A2 connected to them.
io FIG.1 also shows that hard disk drive (HDD) 9 contains a special reserved area used for storing ~~backup~~ copies of system configuration information in accordance with the invention. This area is reserved exclusively for storing such information (meaning that it can not be available to the operating system or 15 application programs of system unit 1 for storing any other information). The reserved area of HDD 9 can be used to store plural sets of different system configuration information; one set corresponding to the latest configuration #1, and others corresponding to other system configurations (#2,#3, etc.) 2o previously formed and setup. For example, system configuration information #2 could be associated with connection of adapter cards #A1 and #A2 to slots #1 and #2 respectively, and connection of expansion unit #E1 to slot #3, and system configuration information #3 could be associated with connection of adapter 2s cards #A1 and #A2 to system slot #1 and #2 respectively and connection of expansion unit #E2 to slot #3. Viewing system unit 1 as a contemporary laptop or notebook type system, system configuration information #1 would be associated with standalone operation of the system with only cards #A1 and #A2 internally 3o installed, system configuration information #2 and #3 would be associated with operation of the system unit docked (attached) to expansion unit #E1 via system slot #3, with cards #A1 and #A2 respectively attached to system slots #1 and #2, and cards #X1, #X2 and #X3 attached to respective slots unit #E1, and system configuration information #3 would be associated with operation of the system docked to expansion unit #2, with cards #A1 and #A2 attached to the system slots as before and cards #Y1, #Y2, and #Y3 attached to respective slots in unit #E2.
FIG.2 shows an arrangement in accordance with the invention io for locating backup copies of the system configuration information within the reserved area of HDD 9. Each time the system setup program is run relative to a new system configuration #j (j=1-2,...), the setup program creates associated system configuration information #j which is stored in i5 NVRAM 7. As noted previously, this information includes card and/or expansion unit identifiers, and configuration state information for respective units. This information is also stored in the reserved area of HDD 9, with the unit identifiers located in an index #j and state information located in a space indicated 2o by a pointer value in the respective index # . Index values for all established sets of system configuration information are stored in successive portions within a first part of the reserved area, as shown in FIG.2, and associated sets of configuration state information are stored in another part of the reserved 2s area, the location of each being indicated by the pointer in the respective index. Thus, each set of system configuration information #j is retrievable by reference to the associated index #j which in turn is locatable by association with unit identifiers (card ID and expansion unit names associated with the 3o respective configuration).
20~~02~
Each index value also contains status information which indicates the type of identifying information contained in that index (e . g . card ID' s only, expansion uni t name only, or both) , to facilitate efficient scanning of the indexes by POST when s retrieval of a backup copy of state information is required.
FIG.3 shows a procedure for creating and storing system configuration information in accordance with the invention. The information is created in step 1, with reference to card ID's and expansion unit names detected by interrogating the system unit io slots, and written to NVRAM 7 in step 2. Steps 1 and 2 correspond to the prior are setup procedure used in contemporary computer systems. In step 3 a backup copy of the same system configuration information is written to the reserved area of HDD 9 in a form suitable for retrieval; e.g. in the form shown in FIG.2 with i5 associated index information. If the configuration does not include an expansion unit, the procedure ends after step 3.
However if the configuration includes an expansion unit, configuration identifying information associated with that unit (unit name and ID's of adapter cards attached to the unit's 2o slots) is written to NVRAM on the expansion unit (NVRAM 25 in FIG.1), in step 4 to complete the process.
FIG.4 shows how backup system configuration information of the invention is used by system POST (power on self test)for system initialization. Actions involved in this process are 2s designated steps 11 through 19. Steps 11 through 13 and 16 correspond to POST actions performed in prior art systems.
In step 11 diagnostic tests are performed on all constitute part of the system (the system unit itself and its attachments if applicable). In step 12 configuration identifying information is 3o retrieved relative to the system unit I/O slots (and other system ports or elements if applicable). Relative to I/O slots currently connected to adapter cards, the identifying information consists of the respective cards ID values, and relative to slots which are empty the identifying information consists of an ID value s representing an empty state. In step 13 the identifying information for each system slots is compared to identifying information in system NVRAM 7 associated with the previous state of the respective slot (the state when system unit power was last turned off).
to If all comparisons in step 13 are in accord (all ID's retrieved in step 12 agree with respective ID's previously retained in system NVRAM 7), the process advances directly to step 14, but if any compared ID's disagree the process branches to step 17 for attempting retrieval of backup system is configuration information in accordance with the present invention. In step 14, system configuration information is copied from system NVRAM 7 to register 23 on any adapter cards that are directly attached to system slots. If an expansion unit is currently connected to a system unit slot, step 15 is performed 2o to copy the configuration information relative to that expansion unit from system NVRAM 7 to the NVRAM 25 on the expansion unit.
If no expansion unit is attached, the process ends after step 14, but if an expansion unit is attached, step 14 is followed by steps 15 and 16. Step 15 transfers configuration information from 25 NVRAM 7 to the NVRAM 25 on the expansion unit. Step 16 checks that the actual card configuration of the expansion unit matches the information transferred to its NVRAM 25.
If ID's compared in step 13 disagree, an attempt is made in step 17 to retrieve system configuration information from the 3o reserved area of HDD 9. The action next taken depends upon whether or not the attempt is successful. In step 17, POST
compares the configuration identifying information detected in step 12 (IDs of currently attached adapter cards and name of currently attached expansion unit if one is attached) to s identifiers in successive indexes in the HDD reserved area to find a matching set of identifiers if an index containing such a set exists.
If an associated index is found, its pointer is used to retrieve the associated system configuration information (see io FIG.2). If the configuration information is successfully retrieved, the process advances to step 18 where the retrieved information is written to the system unit NVRAM, and relevant portions of that information are transferred to registers 23 on the cards and NVRAM on an expansion unit if one is attached 15 (steps 14 through 16 discussed previously). If any associated index is not found, or associated system configuration information is not otherwise retrievable, the attempt in step 17 is unsuccessful and the process branches to step 19 to evoke a setup process for the current "new" system configuration. As 2o noted earlier this process may be time consuming, in that it may require system user participation and several rebooted and the POST process of FIG.4 is then repeated with a successful retrieval of system configuration information from the HDD, etc.
It should be appreciated that once system configuration is saved 2s to the HDD (or equivalent storage) , it is unnecessary to repeat the setup process by which that information is created.
therefore, in system usage environments which are expected to have frequently alterable configurations -- exemplified by notebook type systems which are operated in standalone and docked 3o configurations -- the invention allows for more efficient operation of the system at each change of configuration.
Further, in such embodiments, certain failures of attachments to the expansion units may be readily detectable since each expansion unit contains a respective NVRAM to store s ID's of adapter cards attached it. Detection of failure or error would result if an ID read from a card attached to the expansion unit did not match the ID associatively held in the NVRA of that unit. But even if the ID read from a faulty card happened to match that in the expansion unit NVRAM, the resulting state of io the expansion unit usually would be erroneous in respect to the active state transferred to that card and the fault would be detectable by other tests.
Still further, in the embodiment, in addition to an identifier value (ID), each expansion unit can have a unique z5 name. Therefore, the embodiment has the advantage that it is suitable to a case where although the same type of adapter cards are inserted in the same type of expansion units, yet system information different from one another for the expansion units must be set up, for the convenience of their use. Such cases are 2o as follows:
Communication adapter cards on each expansion unit are connected to the same communication network and non-duplicated addresses over the network must be specified for the individual communication adapter cards as system information, or different 2s amounts of memory are mounted on the same type of memory extension adapter cards.
Furthermore, the invention allows for automatic retrieval of system configuration information relative to altered configurations of slots that do not connect to expansion units.
3o Thus, if a system is used in a mode in which card connections to r' slots on either the system unit or expansion unit are subject to frequent change, the invention would installations are changed to form a pre-existing card configuration.
It should be understood that although the secondary store s for backup copies of system configuration information is shown as a hard disk drive in the described embodiment, it would be feasible to use other storage devices -- e.g. optical disk drive, floppy disk drive, EPROM, EEPROM, battery backed up NVRAM,etc. -for the same function, so long as the device used is always io accessible at system startup and its stored information is protected against unintentional alteration.
It also should be appreciated that with a large enough system NVRAM, a separate HDD or other storage device would not be needed. With such capability, system configuration information is for all previously set up configurations could be stored in the system NVRAM, in association with slot/device IDs and expansion unit names, and selected directly by the POST program for association with any current configuration. It should be appreciated also that the invention could be useful even in 2o systems not having connectable expansion units, but otherwise subject to dynamic changes of configuration.
According to the present invention, if the system configuration turns back on to the same configuration which was previously set up, it is not required to set up a new system 25 configuration through user interaction.
METHOD OF SETTING UP SYSTEM CONFIGURATION IN DATA
PROCESSING SYSTEM, DATA PROCESSING SYSTEM, AND EXPANSION
UNIT FOR DATA PROCESSING SYSTEM
BACKGROUND OF THE INVENTION
This invention relates to computer systems which automatically configure their input/output (I/O) attachments or I/O adapters when power is turned on.
In existing computer systems, I/O adapters have stored io identifier (ID) functions which are detected by the system during its initialization process, and enable the system to determine if its I/O has changed since power was last turned off. If the configuration has not changed, the initialization process automatically conditions the adapters to operating status suited i5 to the existing configuration. Thus, it is not necessary for the system to repeat any setup procedures associated with establishing the operating status of this configuration.
When an I/O adapter card is first installed into an attachment slot of the system, which previously was vacant or 2o connected to a different I/0 adapter, a setup process is initiated by the system which requires interaction of an user. In this process, configuration state information relating to the newly installed adapter card is created by the system and stored in a non-volatile system memory (NVRAM) along with a copy of the 25 adapter's ID function. Each time that the power is turned on, the system executes a power on self test (POST) procedure in which it determines (among other things) if ID's associated with the slots are same as they were when power was last turned off. If ID's have not changed, the system causes associated configuration 3o information to be transferred from NVRAM to volatile registers in respective adapter cards, thereby conditioning the adapter cards to operating states suited to the current configuration of the system. If the IDs have changed, another setup process is initiated. For details of the foregoing, refer to US patent s 5,038,320 to Heath et al, assigned to the assignee of the present application.
The setup procedure can be time consuming, inasmuch as it may require the system user to deactivate and reboot the system several times, but it generally does not overly delay productive io use of the system since adapter install action changes usually are made infrequently. However, in some systems, frequent changes of adapter configurations may be necessary for practical operation of the system. For example, a notebook computer system may be used at some times as a stand-alone portable computer and is at other times as part of a desktop system. In desktop configuration, the computer may be connected to an expansion unit which provides additional functions such as communication, printing, extra memory/storage, etc. In such frequently changing environments it is desirable to be able to avoid having to repeat 2o setup processes to recreate configuration state information that the system has previously created. the present invention provides such capability.
SUMMARY OF THE INVENTION
2s An object of this invention is to provide a mechanism and associated method for enabling a computer system to avoid having to repeat previously executed setup procedures when its configuration of attachments id changed to a configuration that had existed earlier.
3o Another object is to provide a mechanism and method for enabling a computer system to automatically and efficiently initialize devices, that have just been attached to the system in a connection configuration which existed at some previous time, without user interaction and in a time which is much shorter than s the time that would be required to accomplish the initialization via s setup process involving user interaction.
These objects are realized by storing a backup copy of configuration state information, relative to each configuration initially established by execution of an otherwise conventional io setup procedure (conventional except for storage of the backup copy) . the backup copy is stored in a secondary storage device, in association with adapter identifier's (ID's) which identify the devices currently connected to the system, in a form in which the information is always accessible to be automatically 15 retrieved and re-used by the system without user action. V~hen a device adapter is first attached to the system, an user/installer is guided interactively through a conventional setup procedure by which system configuration state information associated with the configuration formed by attachment of that adapter is created and 2o stored in a system NVRAM. However, in accordance with the present invention and as ad extension of the setup procedure, a backup copy of the same information is stored in an automatically retrieved form, in a secondary non-volatile memory in the system;
e.g. a hard disk drive (HDD) storage device. The backup copy is as stored in associated with identifiers (IDs) corresponding to the currently attached adapters, and is thereby automatically retrievable in association with the current attachment configuration, whenever that configuration is re-established. At each start-up, the system POST process detects IDs of adapters 3o which are currently attached to the system, and determines if 20 ~ 40 2 ~
they correspond to ID's currently stored in the system NVRAM
(i.e. it determines if the current I/O configuration is the same as that which existed when system power was last turned off). If the ID's correspond, POST transfers configuration state s information from its NVRAM to the adapters as before, establishing the adapters in operating states suited to the current configuration. However, if any ID does not correspond, the system does not immediately call for setup action. Instead, POST attempts to locate a backup copy of configuration Zo information associated with the currently detected configuration of adapter ID's. If a backup copy is not located, setup actions evoked. But if a corresponding backup copy is found, POST
retrieves it automatically (without user interaction), transfers a copy of it to NVRAM and uses the transferred information to set 15 the currently attached adapters into states suited to their aggregate configuration. The portion of the secondary storage device used for storing backup configuration information is either exclusively reserved for that function (i.e. for exclusive use only by the POST process) or otherwise protected against zo being overwritten during normal operation of the system. It should be understood that when the HDD or other secondary storage device is first installed in the system, the system may be operated to create configuration information relative to a variety of different devices, which may or may not be eventually 25 attached, and to store backup copies of that information in the secondary storage device; provided of course that the storage device has sufficient capacity it may be used to store both the principal copies and backup copies of the configuration information.
BRIEF DESCRIPTION OF THE DRAWINGS
The present invention will be more clearly illustrated by the following detailed description taken in conjunction with the appended drawings wherein:
s Fig. 1 is a block diagram showing the construction of an embodiment of a data processing system according to the present invention;
Fig. 2 is a block diagram showing the data structure of system configuration information in a disk storage apparatus used to as the second non-volatile memory of the embodiment of Fig. l;
Fig. 3 is a flowchart showing the procedures of a set-up program in the embodiment;
Fig. 4 is a flowchart showing the procedure of a POST
program in the embodiment.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
FIG.1 shows an embodiment of a data processing system containing a computer system unit 1 constructed according to the present invention. Unit 1 contains a system bus 3. Sockets/slots #1, #2, and #3 are connected to the system bus 3, and into which various I/O attachment cards may be inserted. Such cards may be used to control various different types of peripheral device (e. g. disk drive apparatus, printer, extended memory device, etc.) and are interchangeably insertable into any of the sockets.
z5 Also connected to bus 3 are a ROM (read only memory) 5, fcr storing its POST and BIOS (basic input output system) programs, a NVRAM (non-volatile RAM) memory 7 for storing configuration information, a non-volatile secondary storage device HDD (hard disk device) 9, a main memory 11 and a CPU (central processing 3o unit) 13. The foregoing elements may all be commonly housed as x integral parts of unit 1. To create configuration information, a setup program is used. the setup program is concerned in a utility program. The utility program is contained either on a reference diskette supplied to the user with unit 1, which s operates through a not-shown diskette drive included in the unit 1, or it may be contained on HDD 9.
Slots #1, #2, and #3 are connected to the system bus 3. An adapter card #A1 is to be attached to the slots #2. An adapter card #A2 is to be attached to the slot #1. An expansion units #E1 io or #E2 is to be attached to the slots #3. The expansion unit #E1 has slots #4, #5, and #6. An adapter card #X1 is to be attached to the slot #4. An adapter card #X2 is to be attached to the slot #5. An adapter card #X3 is to be attached to the slot #6. The expansion unit #E2 also has slots #4, #5, and #6. An adapter card 15 #Y1 is to be attached to the slot #4 . An adapter card #Y2 is to be attached to the slot #5. An adapter card #Y3 is to be attached to the slot #6.
Each adapter card and expansion unit has an unique identifier (ID) for identifying its respective type of apparatus.
2o Each ID consists of a predetermined number of bits which are permanently stored on the respective card in respective non-volatile storing means 21. Each adapter card also contains a (volatile) register 23 which can store associated configuration state information when system power is on. Such configuration a5 state information can be stored in non-volatile form in NvRA 7, and transferred to the register 23 of attached cards by POST if the configuration of the system has not changed since it was last deactivated. The configuration state information includes, for example, address factors (AD) assigning portions of system 30 (memory and/or I/O) address space of the respective card, interrupt priority level for interrupt requests presented to the system unit by respective card, information allocating different priorities (PR) to cards of the same type, and/or information ENBL for enabling and disabling cards of the same type which are s redundantly configured in the system. Based on this information, data is efficiently transferable between the CPU 13 and the cards, and between the cards.
In addition to means for storing their ID values, the expansion units #E1 and #E2 each have NVRAMs 25 for storing io associated configuration information. Such information is written from the system unit 1 to respective NVRAM's 25 during execution of the setup program after connection of respective expansion units to the system. Each NVRAM 25 contains ID values of all adapter cards currently attached to the I/0 sockets/slots on 15 respective expansion unit. Each NVRAM 25 also contains "name"
information uniquely identifying the respective expansion unit;
for example, EXP-1 for unit #E1 and EXP-2 for unit #E2. Such names are required even if the units and their respective attachments are identical, in order to allow the system unit 1 to 2o be able to distinguish between the expansion units (e.g. to be able to create and write different configuration information to those units).
NVRAM 7 contains system configuration information for the last active configuration of unit connections in the system;i.e.
z5 the configuration established at the last initialization of the system. Such information includes identifier and configuration state information, for each adapter card and expansion unit connected to the system slots in the associated configuration.
Whenever a new configuration of unit attachments is formed, 3o corresponding system configuration information is created by the .. 2074027 JA9-91-025 g setup program and stored in NVRAM 7. NVRAM 7 is continuously powered by system power and/or a not-shown back-up battery. In FIG.1, NVRAM is shown holding a particular set of system configuration information designated "system configuration s information #1". for purpose of the following discussion, it is assumed that the system configuration information #1 us associated with a configuration in which slot #3 is empty, and slots #1 and #2 respectively have adapter cards #A1 and #A2 connected to them.
io FIG.1 also shows that hard disk drive (HDD) 9 contains a special reserved area used for storing ~~backup~~ copies of system configuration information in accordance with the invention. This area is reserved exclusively for storing such information (meaning that it can not be available to the operating system or 15 application programs of system unit 1 for storing any other information). The reserved area of HDD 9 can be used to store plural sets of different system configuration information; one set corresponding to the latest configuration #1, and others corresponding to other system configurations (#2,#3, etc.) 2o previously formed and setup. For example, system configuration information #2 could be associated with connection of adapter cards #A1 and #A2 to slots #1 and #2 respectively, and connection of expansion unit #E1 to slot #3, and system configuration information #3 could be associated with connection of adapter 2s cards #A1 and #A2 to system slot #1 and #2 respectively and connection of expansion unit #E2 to slot #3. Viewing system unit 1 as a contemporary laptop or notebook type system, system configuration information #1 would be associated with standalone operation of the system with only cards #A1 and #A2 internally 3o installed, system configuration information #2 and #3 would be associated with operation of the system unit docked (attached) to expansion unit #E1 via system slot #3, with cards #A1 and #A2 respectively attached to system slots #1 and #2, and cards #X1, #X2 and #X3 attached to respective slots unit #E1, and system configuration information #3 would be associated with operation of the system docked to expansion unit #2, with cards #A1 and #A2 attached to the system slots as before and cards #Y1, #Y2, and #Y3 attached to respective slots in unit #E2.
FIG.2 shows an arrangement in accordance with the invention io for locating backup copies of the system configuration information within the reserved area of HDD 9. Each time the system setup program is run relative to a new system configuration #j (j=1-2,...), the setup program creates associated system configuration information #j which is stored in i5 NVRAM 7. As noted previously, this information includes card and/or expansion unit identifiers, and configuration state information for respective units. This information is also stored in the reserved area of HDD 9, with the unit identifiers located in an index #j and state information located in a space indicated 2o by a pointer value in the respective index # . Index values for all established sets of system configuration information are stored in successive portions within a first part of the reserved area, as shown in FIG.2, and associated sets of configuration state information are stored in another part of the reserved 2s area, the location of each being indicated by the pointer in the respective index. Thus, each set of system configuration information #j is retrievable by reference to the associated index #j which in turn is locatable by association with unit identifiers (card ID and expansion unit names associated with the 3o respective configuration).
20~~02~
Each index value also contains status information which indicates the type of identifying information contained in that index (e . g . card ID' s only, expansion uni t name only, or both) , to facilitate efficient scanning of the indexes by POST when s retrieval of a backup copy of state information is required.
FIG.3 shows a procedure for creating and storing system configuration information in accordance with the invention. The information is created in step 1, with reference to card ID's and expansion unit names detected by interrogating the system unit io slots, and written to NVRAM 7 in step 2. Steps 1 and 2 correspond to the prior are setup procedure used in contemporary computer systems. In step 3 a backup copy of the same system configuration information is written to the reserved area of HDD 9 in a form suitable for retrieval; e.g. in the form shown in FIG.2 with i5 associated index information. If the configuration does not include an expansion unit, the procedure ends after step 3.
However if the configuration includes an expansion unit, configuration identifying information associated with that unit (unit name and ID's of adapter cards attached to the unit's 2o slots) is written to NVRAM on the expansion unit (NVRAM 25 in FIG.1), in step 4 to complete the process.
FIG.4 shows how backup system configuration information of the invention is used by system POST (power on self test)for system initialization. Actions involved in this process are 2s designated steps 11 through 19. Steps 11 through 13 and 16 correspond to POST actions performed in prior art systems.
In step 11 diagnostic tests are performed on all constitute part of the system (the system unit itself and its attachments if applicable). In step 12 configuration identifying information is 3o retrieved relative to the system unit I/O slots (and other system ports or elements if applicable). Relative to I/O slots currently connected to adapter cards, the identifying information consists of the respective cards ID values, and relative to slots which are empty the identifying information consists of an ID value s representing an empty state. In step 13 the identifying information for each system slots is compared to identifying information in system NVRAM 7 associated with the previous state of the respective slot (the state when system unit power was last turned off).
to If all comparisons in step 13 are in accord (all ID's retrieved in step 12 agree with respective ID's previously retained in system NVRAM 7), the process advances directly to step 14, but if any compared ID's disagree the process branches to step 17 for attempting retrieval of backup system is configuration information in accordance with the present invention. In step 14, system configuration information is copied from system NVRAM 7 to register 23 on any adapter cards that are directly attached to system slots. If an expansion unit is currently connected to a system unit slot, step 15 is performed 2o to copy the configuration information relative to that expansion unit from system NVRAM 7 to the NVRAM 25 on the expansion unit.
If no expansion unit is attached, the process ends after step 14, but if an expansion unit is attached, step 14 is followed by steps 15 and 16. Step 15 transfers configuration information from 25 NVRAM 7 to the NVRAM 25 on the expansion unit. Step 16 checks that the actual card configuration of the expansion unit matches the information transferred to its NVRAM 25.
If ID's compared in step 13 disagree, an attempt is made in step 17 to retrieve system configuration information from the 3o reserved area of HDD 9. The action next taken depends upon whether or not the attempt is successful. In step 17, POST
compares the configuration identifying information detected in step 12 (IDs of currently attached adapter cards and name of currently attached expansion unit if one is attached) to s identifiers in successive indexes in the HDD reserved area to find a matching set of identifiers if an index containing such a set exists.
If an associated index is found, its pointer is used to retrieve the associated system configuration information (see io FIG.2). If the configuration information is successfully retrieved, the process advances to step 18 where the retrieved information is written to the system unit NVRAM, and relevant portions of that information are transferred to registers 23 on the cards and NVRAM on an expansion unit if one is attached 15 (steps 14 through 16 discussed previously). If any associated index is not found, or associated system configuration information is not otherwise retrievable, the attempt in step 17 is unsuccessful and the process branches to step 19 to evoke a setup process for the current "new" system configuration. As 2o noted earlier this process may be time consuming, in that it may require system user participation and several rebooted and the POST process of FIG.4 is then repeated with a successful retrieval of system configuration information from the HDD, etc.
It should be appreciated that once system configuration is saved 2s to the HDD (or equivalent storage) , it is unnecessary to repeat the setup process by which that information is created.
therefore, in system usage environments which are expected to have frequently alterable configurations -- exemplified by notebook type systems which are operated in standalone and docked 3o configurations -- the invention allows for more efficient operation of the system at each change of configuration.
Further, in such embodiments, certain failures of attachments to the expansion units may be readily detectable since each expansion unit contains a respective NVRAM to store s ID's of adapter cards attached it. Detection of failure or error would result if an ID read from a card attached to the expansion unit did not match the ID associatively held in the NVRA of that unit. But even if the ID read from a faulty card happened to match that in the expansion unit NVRAM, the resulting state of io the expansion unit usually would be erroneous in respect to the active state transferred to that card and the fault would be detectable by other tests.
Still further, in the embodiment, in addition to an identifier value (ID), each expansion unit can have a unique z5 name. Therefore, the embodiment has the advantage that it is suitable to a case where although the same type of adapter cards are inserted in the same type of expansion units, yet system information different from one another for the expansion units must be set up, for the convenience of their use. Such cases are 2o as follows:
Communication adapter cards on each expansion unit are connected to the same communication network and non-duplicated addresses over the network must be specified for the individual communication adapter cards as system information, or different 2s amounts of memory are mounted on the same type of memory extension adapter cards.
Furthermore, the invention allows for automatic retrieval of system configuration information relative to altered configurations of slots that do not connect to expansion units.
3o Thus, if a system is used in a mode in which card connections to r' slots on either the system unit or expansion unit are subject to frequent change, the invention would installations are changed to form a pre-existing card configuration.
It should be understood that although the secondary store s for backup copies of system configuration information is shown as a hard disk drive in the described embodiment, it would be feasible to use other storage devices -- e.g. optical disk drive, floppy disk drive, EPROM, EEPROM, battery backed up NVRAM,etc. -for the same function, so long as the device used is always io accessible at system startup and its stored information is protected against unintentional alteration.
It also should be appreciated that with a large enough system NVRAM, a separate HDD or other storage device would not be needed. With such capability, system configuration information is for all previously set up configurations could be stored in the system NVRAM, in association with slot/device IDs and expansion unit names, and selected directly by the POST program for association with any current configuration. It should be appreciated also that the invention could be useful even in 2o systems not having connectable expansion units, but otherwise subject to dynamic changes of configuration.
According to the present invention, if the system configuration turns back on to the same configuration which was previously set up, it is not required to set up a new system 25 configuration through user interaction.
Claims (6)
1. Non-volatile storage means retentively storing system configuration information; said system configuration information comprising IDs of the interconnected I/O adapters forming one of said system configurations;
a backup storage means for storing a plurality of sets of backedup system configuration information corresponding to various different ones of said system configurations; each of said backedup configuration information comprising IDs of the I/O
adapters for a corresponding system configuration;
means operative during each initialization of said system for detecting the current configuration of connections between said system unit and said adapter units by determining the IDs of the I/O adapters currently connected to the system unit;
first determination means for determining whether the current configuration matches the configuration stored in the non-volatile storage means;
interrogation means responsive to a determination of a mismatch by said first determination means for interrogating the backedup configuration information by comparing the IDs stored in each set of the backedup system configuration to the IDs of current system configuration;
second determination means for determining whether a backedup system configuration matches the current system configuration;
retrieving means responsive to the second determination means for retrieving a backedup system configuration matching the current system configuration; and means for adding the current system configuration to the backup storage means if no match is found between the current system and the backedup system configurations.
a backup storage means for storing a plurality of sets of backedup system configuration information corresponding to various different ones of said system configurations; each of said backedup configuration information comprising IDs of the I/O
adapters for a corresponding system configuration;
means operative during each initialization of said system for detecting the current configuration of connections between said system unit and said adapter units by determining the IDs of the I/O adapters currently connected to the system unit;
first determination means for determining whether the current configuration matches the configuration stored in the non-volatile storage means;
interrogation means responsive to a determination of a mismatch by said first determination means for interrogating the backedup configuration information by comparing the IDs stored in each set of the backedup system configuration to the IDs of current system configuration;
second determination means for determining whether a backedup system configuration matches the current system configuration;
retrieving means responsive to the second determination means for retrieving a backedup system configuration matching the current system configuration; and means for adding the current system configuration to the backup storage means if no match is found between the current system and the backedup system configurations.
2. The arrangement of claim 1, further comprising:
means for writing the current system configuration into the non-volatile memory.
means for writing the current system configuration into the non-volatile memory.
3. The arrangement of claim 1 wherein said I/O adapter units include I/O adapter storage means for storing configuration information, said arrangement further comprising:
means for writing the current system configuration into the I/O adapter storage means.
means for writing the current system configuration into the I/O adapter storage means.
4. A data processing system comprising:
a system unit capable of operating with a variety of I/O
adapter units;
one or more I/O adapter unit each having an I/O storage means for storing adapter configuration information; said one or more adapter units being interconnectable to said system unit in a variety of different connection configurations; each connection configuration comprising a distinct system configuration;
non-volatile storage means retentively storing a system configuration information;
means operative during each intialization of said system for detecting the current configuration of connections between said system unit and said one or more adapter units;
first determination means for determining whether the current configuration matches the configuration stored in the non-volative storage means; and means responsive to said first determination means for writing the current system configuration information to I/O
storage means only if the current system configuration does not match the configuration stored in the non-volatile storage means.
a system unit capable of operating with a variety of I/O
adapter units;
one or more I/O adapter unit each having an I/O storage means for storing adapter configuration information; said one or more adapter units being interconnectable to said system unit in a variety of different connection configurations; each connection configuration comprising a distinct system configuration;
non-volatile storage means retentively storing a system configuration information;
means operative during each intialization of said system for detecting the current configuration of connections between said system unit and said one or more adapter units;
first determination means for determining whether the current configuration matches the configuration stored in the non-volative storage means; and means responsive to said first determination means for writing the current system configuration information to I/O
storage means only if the current system configuration does not match the configuration stored in the non-volatile storage means.
5. The system of claim 4 further comprising:
a backup storage means for storing a plurality of sets of backedup system configuration information corresponding to various different ones of said system configurations;
interrogation means responsive to said first determination means for interrogating the backedup system configuration information if the current system configuration does not match the configuration stored in the non-volatile storage means;
second determination for determining whether a backedup system configuration matches the current system configuration;
retrieving means responsive to the second determination means for retrieving a backedup system configuration matching the current system configuration; and means for storing a backedup configuration into the I/O
adapter unit storage means.
a backup storage means for storing a plurality of sets of backedup system configuration information corresponding to various different ones of said system configurations;
interrogation means responsive to said first determination means for interrogating the backedup system configuration information if the current system configuration does not match the configuration stored in the non-volatile storage means;
second determination for determining whether a backedup system configuration matches the current system configuration;
retrieving means responsive to the second determination means for retrieving a backedup system configuration matching the current system configuration; and means for storing a backedup configuration into the I/O
adapter unit storage means.
6. The system of claim 5 further comprising;
means for adding the current system configuration to the backup storage means if no match is found between the current system and the backedup system configurations.
means for adding the current system configuration to the backup storage means if no match is found between the current system and the backedup system configurations.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3290405A JPH0736175B2 (en) | 1991-10-11 | 1991-10-11 | System configuration setting method of data processing system, data processing system, and expansion unit for data processing system |
JP290405/91 | 1991-10-11 |
Publications (2)
Publication Number | Publication Date |
---|---|
CA2074027A1 CA2074027A1 (en) | 1993-04-12 |
CA2074027C true CA2074027C (en) | 1999-11-09 |
Family
ID=17755592
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA002074027A Expired - Lifetime CA2074027C (en) | 1991-10-11 | 1992-07-16 | Method of setting up system configuration in data processing system, data processing system, and expansion unit for data processing system |
Country Status (13)
Country | Link |
---|---|
US (1) | US5497490A (en) |
EP (1) | EP0608253B1 (en) |
JP (1) | JPH0736175B2 (en) |
KR (1) | KR970008528B1 (en) |
CN (1) | CN1026630C (en) |
CA (1) | CA2074027C (en) |
CZ (1) | CZ290949B6 (en) |
DE (1) | DE69223799T2 (en) |
HU (1) | HU217158B (en) |
PL (1) | PL170363B1 (en) |
RU (1) | RU2155376C2 (en) |
SK (1) | SK41094A3 (en) |
WO (1) | WO1993007568A1 (en) |
Families Citing this family (114)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06332744A (en) * | 1993-05-19 | 1994-12-02 | Nec Corp | Testing method for information processor |
US5745669A (en) * | 1993-10-21 | 1998-04-28 | Ast Research, Inc. | System and method for recovering PC configurations |
US5446869A (en) * | 1993-12-30 | 1995-08-29 | International Business Machines Corporation | Configuration and RAM/ROM control of PCI extension card residing on MCA adapter card |
US5805834A (en) * | 1994-03-30 | 1998-09-08 | Zilog, Inc. | Hot reconfigurable parallel bus bridging circuit |
US5732280A (en) * | 1994-07-15 | 1998-03-24 | International Business Machines Corp. | Method and apparatus for dynamically assigning programmable option select identifiers |
US5864698A (en) * | 1994-08-24 | 1999-01-26 | Packard Bell Nec | Disk based bios |
DE69516634T2 (en) * | 1994-11-04 | 2000-09-21 | Canon Information Syst Inc | Intelligent reprogramming of a flash memory |
US5642481A (en) * | 1995-03-29 | 1997-06-24 | Microsoft Corporation | Method and system for validating a memory window in system address space |
WO1996038784A1 (en) * | 1995-06-02 | 1996-12-05 | Systemsoft Corporation | Digital data processing method and apparatus for peripheral device control |
WO1996041274A1 (en) * | 1995-06-07 | 1996-12-19 | Advanced Micro Devices, Inc. | Dynamically reconfigurable data bus |
US5638299A (en) * | 1995-06-22 | 1997-06-10 | Miller; Keith | Light weight, self-contained programmable data-acquisition system |
US5710930A (en) * | 1995-08-04 | 1998-01-20 | Intel Corporation | Apparatus and a method for allowing an operating system of a computer system to persist across a power off and on cycle |
US6336161B1 (en) * | 1995-12-15 | 2002-01-01 | Texas Instruments Incorporated | Computer configuration system and method with state and restoration from non-volatile semiconductor memory |
WO1997024668A1 (en) * | 1995-12-28 | 1997-07-10 | Ipl Systems, Inc. | Dasd storage back up including back up synchronization across multiple dasd |
US5848231A (en) * | 1996-02-12 | 1998-12-08 | Teitelbaum; Neil | System configuration contingent upon secure input |
JPH09237141A (en) * | 1996-02-29 | 1997-09-09 | Toshiba Corp | Computer system and extension unit to be applied to the same |
US5875094A (en) * | 1996-08-02 | 1999-02-23 | Compaq Computer Corporation | Portable computer docking station with adjustable insertion angle |
US5826042A (en) * | 1996-08-02 | 1998-10-20 | Compaq Computer Corporation | Portable computer docking station with module connection replicator |
US6247040B1 (en) | 1996-09-30 | 2001-06-12 | Lsi Logic Corporation | Method and structure for automated switching between multiple contexts in a storage subsystem target device |
US6148326A (en) * | 1996-09-30 | 2000-11-14 | Lsi Logic Corporation | Method and structure for independent disk and host transfer in a storage subsystem target device |
US6081849A (en) * | 1996-10-01 | 2000-06-27 | Lsi Logic Corporation | Method and structure for switching multiple contexts in storage subsystem target device |
US5761322A (en) * | 1996-12-31 | 1998-06-02 | Compaq Computer Corporation | Portable computer speaker enclosure |
US6052781A (en) * | 1997-02-21 | 2000-04-18 | Savvy Frontiers Property Trust | Multiple user computer including anti-concurrent user-class based disjunctive separation of plural hard drive operation |
US6449686B1 (en) * | 1997-03-06 | 2002-09-10 | Micron Technology, Inc. | Method and apparatus for determining removable magnetic media types in a computer after detection of a read error condition |
US6748524B1 (en) * | 1997-04-30 | 2004-06-08 | Gateway, Inc. | Display and recordation of non-volatile memory changes |
US6014714A (en) * | 1997-06-16 | 2000-01-11 | International Business Machines Corporation | Adapter card system including for supporting multiple configurations using mapping bit |
US5832418A (en) * | 1997-06-23 | 1998-11-03 | Micron Electronics | Apparatus for testing a controller with random contraints |
US6076180A (en) | 1997-06-23 | 2000-06-13 | Micron Electronics, Inc. | Method for testing a controller with random constraints |
US5973734A (en) | 1997-07-09 | 1999-10-26 | Flashpoint Technology, Inc. | Method and apparatus for correcting aspect ratio in a camera graphical user interface |
US5935252A (en) * | 1997-08-18 | 1999-08-10 | International Business Machines Corporation | Apparatus and method for determining and setting system device configuration relating to power and cooling using VPD circuits associated with system devices |
US5898843A (en) * | 1997-10-08 | 1999-04-27 | International Business Machines Corporation | System and method for controlling device which is present in media console and system unit of a split computer system |
US6059842A (en) * | 1998-04-14 | 2000-05-09 | International Business Machines Corp. | System and method for optimizing computer software and hardware |
JP4085478B2 (en) * | 1998-07-28 | 2008-05-14 | ソニー株式会社 | Storage medium and electronic device system |
GB9822129D0 (en) * | 1998-10-09 | 1998-12-02 | Sun Microsystems Inc | Process monitoring in a computer system |
US6317141B1 (en) | 1998-12-31 | 2001-11-13 | Flashpoint Technology, Inc. | Method and apparatus for editing heterogeneous media objects in a digital imaging device |
US6408397B1 (en) | 1999-05-24 | 2002-06-18 | Dell Usa, L.P. | Using RTC wake-up to enable recovery from power failures |
US6467088B1 (en) * | 1999-06-30 | 2002-10-15 | Koninklijke Philips Electronics N.V. | Reconfiguration manager for controlling upgrades of electronic devices |
KR100319870B1 (en) * | 1999-08-23 | 2002-01-10 | 윤종용 | Method for processing the data in the non volatilization RAM safely |
JP2001086118A (en) * | 1999-09-16 | 2001-03-30 | Nec Corp | Method for remotely managing computer system |
EP1085396A1 (en) * | 1999-09-17 | 2001-03-21 | Hewlett-Packard Company | Operation of trusted state in computing platform |
US6866581B2 (en) * | 1999-09-24 | 2005-03-15 | Igt | Video gaming apparatus for wagering with universal computerized controller and I/O interface for unique architecture |
US6935946B2 (en) * | 1999-09-24 | 2005-08-30 | Igt | Video gaming apparatus for wagering with universal computerized controller and I/O interface for unique architecture |
US6449715B1 (en) * | 1999-10-04 | 2002-09-10 | Fisher-Rosemount Systems, Inc. | Process control configuration system for use with a profibus device network |
US6611912B1 (en) * | 2000-02-04 | 2003-08-26 | Advanced Micro Devices, Inc. | Method and apparatus having a system BIOS write configuration data of a riser card to a controller configuration space when connecting the riser card to a motherboard |
US6370646B1 (en) | 2000-02-16 | 2002-04-09 | Miramar Systems | Method and apparatus for multiplatform migration |
US7988559B2 (en) * | 2001-03-08 | 2011-08-02 | Igt | Computerized gaming system, method and apparatus |
US7043641B1 (en) * | 2000-03-08 | 2006-05-09 | Igt | Encryption in a secure computerized gaming system |
CA2402389A1 (en) * | 2000-03-08 | 2002-09-19 | Shuffle Master, Inc. | Computerized gaming system, method and apparatus |
WO2002006965A1 (en) * | 2000-07-18 | 2002-01-24 | Fujitsu Limited | Data management method, electronic device and storage medium |
DE10043841A1 (en) * | 2000-09-06 | 2002-03-14 | Moeller Gmbh | Method for connecting an expansion module to a programmable electrical switching device |
KR100385184B1 (en) | 2000-10-19 | 2003-05-27 | 삼성전자주식회사 | Computer system and method for setting up an operating system information thereof |
DE10052624A1 (en) * | 2000-10-24 | 2002-05-08 | Abb Patent Gmbh | Process to monitor presence of a printed circuit board prior to start-up of a modular electronic system |
GB2376763B (en) * | 2001-06-19 | 2004-12-15 | Hewlett Packard Co | Demonstrating integrity of a compartment of a compartmented operating system |
EP1215576A3 (en) * | 2000-12-15 | 2006-03-15 | International Business Machines Corporation | Automatic application restart in an embedded environment |
GB0102516D0 (en) * | 2001-01-31 | 2001-03-21 | Hewlett Packard Co | Trusted gateway system |
GB0102518D0 (en) * | 2001-01-31 | 2001-03-21 | Hewlett Packard Co | Trusted operating system |
US7356816B2 (en) | 2001-02-13 | 2008-04-08 | Computer Associates Think, Inc. | Method and apparatus for multiplatform migration |
GB2372595A (en) * | 2001-02-23 | 2002-08-28 | Hewlett Packard Co | Method of and apparatus for ascertaining the status of a data processing environment. |
GB2372592B (en) | 2001-02-23 | 2005-03-30 | Hewlett Packard Co | Information system |
US7203841B2 (en) * | 2001-03-08 | 2007-04-10 | Igt | Encryption in a secure computerized gaming system |
US6854052B2 (en) * | 2001-04-18 | 2005-02-08 | International Business Machines Corporation | Method to validate system configuration |
TW578043B (en) * | 2001-06-18 | 2004-03-01 | Oqo Inc | Modular computing system |
GB0114898D0 (en) * | 2001-06-19 | 2001-08-08 | Hewlett Packard Co | Interaction with electronic services and markets |
GB2376762A (en) * | 2001-06-19 | 2002-12-24 | Hewlett Packard Co | Renting a computing environment on a trusted computing platform |
GB2376764B (en) * | 2001-06-19 | 2004-12-29 | Hewlett Packard Co | Multiple trusted computing environments |
GB2378013A (en) * | 2001-07-27 | 2003-01-29 | Hewlett Packard Co | Trusted computer platform audit system |
US20030028628A1 (en) * | 2001-08-03 | 2003-02-06 | Ncr Corporation | Method for storing, retrieving and managing configuration settings of computer systems |
WO2003023647A1 (en) * | 2001-09-10 | 2003-03-20 | Igt | Method for developing gaming programs compatible with a computerized gaming operating system and apparatus |
US8708828B2 (en) * | 2001-09-28 | 2014-04-29 | Igt | Pluggable modular gaming modifiers and configuration templates for gaming environments |
US7931533B2 (en) * | 2001-09-28 | 2011-04-26 | Igt | Game development architecture that decouples the game logic from the graphics logics |
US6902481B2 (en) * | 2001-09-28 | 2005-06-07 | Igt | Decoupling of the graphical presentation of a game from the presentation logic |
US7610366B2 (en) * | 2001-11-06 | 2009-10-27 | Canon Kabushiki Kaisha | Dynamic network device reconfiguration |
GB2382419B (en) * | 2001-11-22 | 2005-12-14 | Hewlett Packard Co | Apparatus and method for creating a trusted environment |
US7179170B2 (en) * | 2001-11-26 | 2007-02-20 | Igt | Pass-through live validation device and method |
US7024547B2 (en) * | 2001-12-10 | 2006-04-04 | Intel Corporation | Method and system for initializing a hardware device |
US20030203755A1 (en) * | 2002-04-25 | 2003-10-30 | Shuffle Master, Inc. | Encryption in a secure computerized gaming system |
US20060129721A1 (en) * | 2002-06-18 | 2006-06-15 | Betts-Lacroix Jonathan | Modular computing system |
US20030231168A1 (en) * | 2002-06-18 | 2003-12-18 | Jory Bell | Component for use as a portable computing device and pointing device in a modular computing system |
US6993615B2 (en) * | 2002-11-15 | 2006-01-31 | Microsoft Corporation | Portable computing device-integrated appliance |
US7054965B2 (en) * | 2003-03-18 | 2006-05-30 | Oqo Incorporated | Component for use as a portable computing device and pointing device |
EP1473630A3 (en) * | 2003-04-11 | 2007-10-10 | Samsung Electronics Co., Ltd. | Computer system and method of setting an interface card therein |
TWI227852B (en) * | 2003-10-03 | 2005-02-11 | Via Tech Inc | Computer-aided setup of system configure of DVD player |
US7272420B2 (en) * | 2004-01-14 | 2007-09-18 | Microsoft Corporation | Mobile device interface and adaptation system |
US8140475B1 (en) * | 2004-02-26 | 2012-03-20 | Netapp, Inc. | Dynamic configuration archival and retrieval |
US20060031425A1 (en) * | 2004-06-07 | 2006-02-09 | Northrop Grumman Corporation | Method for imaging computer systems |
US20060026587A1 (en) * | 2004-07-28 | 2006-02-02 | Lemarroy Luis A | Systems and methods for operating system migration |
WO2006100522A1 (en) | 2005-03-22 | 2006-09-28 | Hewlett-Packard Development Company, L.P. | Methods, devices and data structures for trusted data |
US7412629B2 (en) * | 2005-06-09 | 2008-08-12 | International Business Machines Corporation | Method to override daughterboard slots marked with power fault |
WO2007031948A2 (en) * | 2005-09-14 | 2007-03-22 | Utstarcom, Inc. | Method and system for loading programmable memory devices in an electronic system using volatile memories |
US7447899B2 (en) * | 2006-03-30 | 2008-11-04 | Inventec Corporation | Method for conserving system resources |
US9224145B1 (en) | 2006-08-30 | 2015-12-29 | Qurio Holdings, Inc. | Venue based digital rights using capture device with digital watermarking capability |
US7757060B2 (en) * | 2006-09-11 | 2010-07-13 | Dell Products L.P. | Reducing wake latency time for power conserving state transition |
US7660912B2 (en) * | 2006-10-18 | 2010-02-09 | International Business Machines Corporation | I/O adapter LPAR isolation in a hypertransport environment |
JP5030538B2 (en) * | 2006-11-07 | 2012-09-19 | 株式会社リコー | Data communication system, unit and data communication method |
CN100451993C (en) * | 2006-12-21 | 2009-01-14 | 威盛电子股份有限公司 | Method for processing multi-source data |
US8259613B2 (en) * | 2006-12-29 | 2012-09-04 | Lenovo (Singapore) Pte. Ltd. | Autonomic network connections |
US7617340B2 (en) * | 2007-01-09 | 2009-11-10 | International Business Machines Corporation | I/O adapter LPAR isolation with assigned memory space |
US20080168208A1 (en) * | 2007-01-09 | 2008-07-10 | International Business Machines Corporation | I/O Adapter LPAR Isolation In A Hypertransport Environment With Assigned Memory Space Indexing a TVT Via Unit IDs |
US20080168207A1 (en) * | 2007-01-09 | 2008-07-10 | International Business Machines Corporation | I/O Adapter LPAR Isolation In A Hypertransport Envikronment Employing A Content Addressable Memory |
US7840740B2 (en) * | 2007-06-05 | 2010-11-23 | Apple Inc. | Personal media device docking station having an accessory device detector |
TW200912689A (en) * | 2007-09-14 | 2009-03-16 | Icp Das Co Ltd | Distributed automated system, I/O module expansion unit for distributed automatic system, method for fast confirming, setting and replacing I/O module, method for fast detecting I/O module hot swapping |
CN101408765B (en) * | 2007-10-08 | 2012-07-25 | 泓格科技股份有限公司 | Distributed automatic system and I/O extending unit |
JP2009211170A (en) * | 2008-02-29 | 2009-09-17 | Toshiba Corp | Information processor and start control method |
US20100138581A1 (en) * | 2008-12-02 | 2010-06-03 | Randall Bird | Universal Docking System |
CN102467423A (en) * | 2010-11-18 | 2012-05-23 | 英业达股份有限公司 | Method for backing up memory data |
CN102200937A (en) * | 2011-05-31 | 2011-09-28 | 深圳创维-Rgb电子有限公司 | Method, device and television system for reading data in not-and (NAND) flash memory |
IN2013CH00469A (en) | 2013-01-21 | 2015-07-31 | Keypoint Technologies India Pvt Ltd | |
EP2946272A4 (en) | 2013-01-21 | 2016-11-02 | Keypoint Technologies India Pvt Ltd | Text input system and method |
US20150026076A1 (en) * | 2013-07-18 | 2015-01-22 | Netapp, Inc. | System and Method for Providing Customer Guidance in Deploying a Computing System |
US20150026077A1 (en) * | 2013-07-18 | 2015-01-22 | Netapp, Inc. | Centralized Method for Customer Assistance and System Verification |
CN104731744B (en) * | 2015-03-13 | 2017-07-04 | 中国航天科技集团公司第九研究院第七七一研究所 | A kind of restructural Embedded Computer On Modules based on SiP |
JP6694145B2 (en) | 2017-01-17 | 2020-05-13 | 富士通クライアントコンピューティング株式会社 | Information processing device and management program |
KR20220019944A (en) | 2020-08-11 | 2022-02-18 | 삼성전자주식회사 | Storage devices and methods of operating storage devices |
US11334447B2 (en) | 2020-08-27 | 2022-05-17 | Nuvoton Technology Corporation | Integrated circuit facilitating subsequent failure analysis and methods useful in conjunction therewith |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4403303A (en) * | 1981-05-15 | 1983-09-06 | Beehive International | Terminal configuration manager |
US5038320A (en) * | 1987-03-13 | 1991-08-06 | International Business Machines Corp. | Computer system with automatic initialization of pluggable option cards |
GB8725111D0 (en) * | 1987-03-13 | 1987-12-02 | Ibm | Data processing system |
JPH01269578A (en) * | 1988-04-20 | 1989-10-27 | Brother Ind Ltd | Option detector for electronic equipment |
US5014193A (en) * | 1988-10-14 | 1991-05-07 | Compaq Computer Corporation | Dynamically configurable portable computer system |
JP3275261B2 (en) * | 1990-03-09 | 2002-04-15 | セイコーエプソン株式会社 | Information processing device |
US5265238A (en) * | 1991-01-25 | 1993-11-23 | International Business Machines Corporation | Automatic device configuration for dockable portable computers |
-
1991
- 1991-10-11 JP JP3290405A patent/JPH0736175B2/en not_active Expired - Lifetime
-
1992
- 1992-07-08 US US07/911,564 patent/US5497490A/en not_active Expired - Lifetime
- 1992-07-16 CA CA002074027A patent/CA2074027C/en not_active Expired - Lifetime
- 1992-09-08 EP EP92919059A patent/EP0608253B1/en not_active Expired - Lifetime
- 1992-09-08 SK SK410-94A patent/SK41094A3/en unknown
- 1992-09-08 HU HU9401023A patent/HU217158B/en unknown
- 1992-09-08 WO PCT/EP1992/002075 patent/WO1993007568A1/en active IP Right Grant
- 1992-09-08 RU RU94020730/09A patent/RU2155376C2/en not_active IP Right Cessation
- 1992-09-08 PL PL92303103A patent/PL170363B1/en unknown
- 1992-09-08 DE DE69223799T patent/DE69223799T2/en not_active Expired - Lifetime
- 1992-09-08 CZ CZ1994791A patent/CZ290949B6/en not_active IP Right Cessation
- 1992-09-09 KR KR1019920016539A patent/KR970008528B1/en not_active IP Right Cessation
- 1992-09-11 CN CN92110511A patent/CN1026630C/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
HUT66904A (en) | 1995-01-30 |
EP0608253A1 (en) | 1994-08-03 |
CN1071772A (en) | 1993-05-05 |
PL170363B1 (en) | 1996-12-31 |
KR970008528B1 (en) | 1997-05-24 |
DE69223799T2 (en) | 1998-06-25 |
CA2074027A1 (en) | 1993-04-12 |
CZ290949B6 (en) | 2002-11-13 |
JPH0736175B2 (en) | 1995-04-19 |
EP0608253B1 (en) | 1997-12-29 |
WO1993007568A1 (en) | 1993-04-15 |
DE69223799D1 (en) | 1998-02-05 |
RU2155376C2 (en) | 2000-08-27 |
HU9401023D0 (en) | 1994-07-28 |
JPH05108534A (en) | 1993-04-30 |
KR930008655A (en) | 1993-05-21 |
CZ9400791A3 (en) | 2002-06-12 |
CN1026630C (en) | 1994-11-16 |
HU217158B (en) | 1999-11-29 |
US5497490A (en) | 1996-03-05 |
SK41094A3 (en) | 1994-09-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2074027C (en) | Method of setting up system configuration in data processing system, data processing system, and expansion unit for data processing system | |
CA2046356C (en) | Method and apparatus for improved initialization of computer system features | |
US5768568A (en) | System and method for initializing an information processing system | |
US6463550B1 (en) | Computer system implementing fault detection and isolation using unique identification codes stored in non-volatile memory | |
US5410699A (en) | Apparatus and method for loading BIOS from a diskette in a personal computer system | |
US6539461B2 (en) | Data saving method and external storage device | |
US6496945B2 (en) | Computer system implementing fault detection and isolation using unique identification codes stored in non-volatile memory | |
US6658599B1 (en) | Method for recovering from a machine check interrupt during runtime | |
US5632027A (en) | Method and system for mass storage device configuration management | |
EP0978037B1 (en) | Methods and apparatus for diagnosing and correcting faults in computers | |
CN101373433A (en) | Method for updating BIOS and computer and system using the same | |
US6081892A (en) | Initial program load | |
US6862645B2 (en) | Computer system | |
KR0182632B1 (en) | Client server system performing automatic reconnection and control method thereof | |
US6363493B1 (en) | Method and apparatus for automatically reintegrating a module into a computer system | |
JP3230743B2 (en) | Memory card data mismatch detection method and method | |
JPH06103220A (en) | Data processing system | |
EP1208441A2 (en) | Method and arrangement for memory management | |
CN111831474A (en) | Computer startup detection system and method | |
JPS62280945A (en) | Memory system | |
JPS6292063A (en) | Microcomputer device | |
JPS62196728A (en) | Control method for input/output device of system console |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EEER | Examination request | ||
MKLA | Lapsed | ||
MKEC | Expiry (correction) | ||
MKEC | Expiry (correction) |
Effective date: 20121202 |