throbber
Ulllted States Patent
`[19]
`[11] Patent Number:
`5,867,714
`
`Todd et al.
`[45] Date of Patent:
`Feb. 2, 1999
`
`U8005867714A
`
`[54] SYSTEM AND METHOD FOR
`DISTRIBUTING CONFIGURATION-
`DEPENDENT SOFTWARE REVISIONS TO A
`COMPUTER SYSTEM
`
`[75]
`
`Inventors: David K. Todd, Atlanta, Ga.; Michael
`R. Terrell, Spencerport, NY.
`
`[73] Assignee: NCR Corporation, Dayton, Ohio
`
`21] Appl. No.: 740,584
`22]
`Filed:
`Oct. 31, 1996
`
`l
`
`Int. Cl.0 ...................................................... G06F 9/445
`
`52] U-S- Cl-
`395/712; 395/500; 395/651;
`395/653; 707/10; 707/104; 707/201; 707/203
`[58l Field Of Search ------------------------------------- 395/712) 500:
`395/651, 653, 2005, 20051—20054, 20047—20049:
`182~01> 18201 183~01> 18303, 18307!
`183‘13’ 183‘14’ 1832’ 184‘01’ 828’ 830;
`707/1’ 10’ 104’ 200’ 201’ 203; 364/550’
`5153110I’33413681’ 19:76iki4973é/ITD’ fig’
`’
`’
`’
`’
`’
`’
`’ 123’ 1837186, 188’
`’
`’
`
`I56I
`
`References Cited
`U.S. PATENT DOCUMENTS
`
`5,155,847 10/1992 Kirouac et a1.
`5,247,683
`9/1993 Holmes et al.
`5,287,505
`2/1994 Calvert et al.
`5,579,529
`11/1996 Terrell et al.
`5,619,716
`4/1997 Nonaka et al.
`5,664,093
`9/1997 Barnett et a].
`
`.................... 395/200.51
`395/200.51
`
`............................ 707/10
`........................... 395/828
`..... 395/712
`
`395/183.07
`
`Primary Examiner—Hal Dodge Wachsman
`Attorney, Agent, or FirmiWilliam A. Munck
`[57]
`ABSTRACT
`
`.
`.
`.
`.
`.
`There is disclosed a system for detectmg and avording faults
`stemming from conflicts in hardware and/or software con—
`figurations in a computer system. The system comprises
`communications circuitry that, from time to time, automati-
`cally transmits at least part of the current hardware and
`software configuration data of the computer system to a
`remote data source capable of identifying inherent conflicts
`in the hardware and software configuration. The remote data
`source then transmits t0 the computer system software
`revisions that are capable of resolving the inherent conflicts.
`After the communications circuitry receives the software
`revisions, processing circuitry in the computer system modi-
`
`fies the current software configuration according to the
`received software revisions.
`
`5,019,963
`
`5/1991 Alderson et al.
`
`....................... 707/201
`
`20 Claims, 3 Drawing Sheets
`
`100
`
`f
`
`130 ( REMOTE DATA SOURCE )
`
`[
`
`REGISTRATION
`DATABASE
`
`\132
`
`
`
`
`
`
`
`
`
`
`
`”REVISIONS
`
`COMMUNICATION LINK
`
`Y
`
`112
`
`MEMORY
`DEVICE
`
`
`
`
`[114
`
`PROCESSING
`CIRCUITRY
`
`116
`__[___
`NONVOLATILE
`MEMORY
`
`CONFIGURATION DATA
`
`140
`
`‘I‘IB
`COMMUNICATIONS
`
`CIRCUITRY
`
`120
`CONFIGURATION
`DETECTION CIRCUITRY
`
`IIIMCOMPUTER SYSTEM)
`
`EXHIBIT 1006
`
`MICROSOFT CORP
` !"
`#$%& '(()
`
`Page 1 of 13
`  
`APPLE EXHIBIT 1006 - PAGE 0001
`
`
`
  
` 

`
`

`

`US. Patent
`
`Feb. 2, 1999
`
`Sheet 1 0f3
`
`5,867,714
`
`FIG. 1
`
`100
`
`,/
`
`[130 ( REMOTE DATA SOURCE)
`
`
`
`
`REGISTRATION
`DATABASE
`
`132
`
`REVISIONS
`
`CONFIGURATION DATA
`
`
`COMMUNICATION LINK
`
`
`
`
`
`
`
`
`
`
`112
`
`MEMORY
`DEVICE
`
`PROCESSING
`CIRCUITRY
`
`NONVOLATILE
`MEMORY
`
`COMMUNICATIONS
`CIRCUITRY
`
`CONFIGURATION
`DETECTION CIRCUITRY
`
`110 (COMPUTER SYSTEM)
`
`Page 2 of 13
`  *
`APPLE EXHIBIT 1006 - PAGE 0002
`
`
`
  
` 
+
`
`

`

`US. Patent
`
`Feb. 2, 1999
`
`Sheet 2 0f3
`
`5,867,714
`
`205
`
`DETECT CHANGES
`IN CONFIGURATION
`
`ALTER CURRENT
`CONFIGURATION DATA
`
` 210
`
`
`
`
`215
`
`220
`
`240
`
`
`
`ESTABLISH
`COMMUNICATIONS LINK
`
`IDENTIFY CONFLICTS
`
`245
`
`
`
`FIG. 2A
`
`FIG. 2B
`
`
`
`
`
`
`
`SELECT
`SOFTWARE REVISIONS
`
`TRANSMIT
`SOFTWARE REVISIONS
`
`250
`
`255
`
`
`
`
`MODIFY SOFTWARE
`CONFIGURATION
`
`
`
`260
`
`
`
`265
`
`Page 3 of 13
`  
`APPLE EXHIBIT 1006 - PAGE 0003
`
`
`
  
` 
,
`
`

`

`US. Patent
`
`Feb. 2, 1999
`
`Sheet 3 0f3
`
`5,867,714
`
`FIG. 3
`
`330
`
`DATA SOURCE
`
`CENTRAL
`
`340
`
`320
`
`310A
`
`3108
`
`3100
`
`Page 4 of 13
`  -
`APPLE EXHIBIT 1006 - PAGE 0004
`
`
`
  
` 
.
`
`

`

`5,867,714
`
`1
`SYSTEM AND METHOD FOR
`DISTRIBUTING CONFIGURATION-
`DEPENDENT SOFTWARE REVISIONS TO A
`COMPUTER SYSTEM
`
`TECHNICAL FIELD OF THE INVENTION
`
`The present invention is directed, in general, to a com-
`puting apparatus and, more specifically,
`to a computer
`system capable of distributing or receiving software revi-
`sions that are a function of a specific system hardware and
`software configuration.
`BACKGROUND OF THE INVENTION
`
`Immeasurable gains in technology offered in personal
`computers (“PCs”) have allowed PCs to assume roles per-
`formed only by mainframe or minicomputers in the past.
`Many companies and individual users rely solely on
`commercially-available PCs, such as those provided by
`NCR, to meet their information processing needs. Thus, it is
`vital that
`their PCs perform reliably.
`If, however, a PC
`experiences a fault, it is equally vital that the PC commu-
`nicate existence of the fault to inform the user of a need to
`repair the fault so the PC can return to active service. For
`computer systems in general,
`it
`is most helpful for the
`computer system itself to provide an indication of the
`specific location and nature of the fault to help the user more
`quickly isolate and more economically repair the fault. To
`that end, today’s PCs are typically equipped with some form
`of internal diagnostics, the purpose of which is to detect and
`subsequently isolate specific hardware and software com-
`ponent failures and faults brought about by interactions
`among the PC’s hardware and software components (so-
`called “conflicts” leading to so-called “configuration
`faults”).
`For years, PCs have been provided with diagnostic rou-
`tines that test and report on the operational status or func-
`tionality of hardware and software components within the
`computer, allowing a user to repair or replace hardware or
`software components that are not functioning to the desired
`degree or to resolve certain conflicts manually.
`As PC systems become more and more complex and as
`users come more and more to rely on the services of remote,
`skilled technicians to maintain and repair their PCs, it is
`growing less desirable to force the user to diagnose PC faults
`alone. The general direction in the development of diagnos-
`tic software systems to this point has been to isolate the user
`somewhat from the intricate and technically complex opera-
`tions of diagnostic routines by: (1) providing more user-
`friendly diagnostic programs to the user, with interfaces
`written in clear text and presented in an aesthetically pleas-
`ing manner and (2) providing remote diagnostic capability
`so the remote technician may query the PC directly and
`determine faults without the user’s substantial participation.
`However,
`the user is still forced to undergo a fault and
`contact a remote technician for help.
`Unlike outright hardware or software failures, conflicts
`arise quite frequently and are entirely predictable. Quite
`often, technicians see the same conflicts over and over again.
`Users having similar hardware and software configurations
`tend to experience the same conflicts, some earlier than the
`rest. Therefore, the user may not have had to experience the
`conflict in the first place.
`The solution to such configuration problems usually
`involves manually correcting the computer’s configuration
`by revising (usually updating) portions (such as libraries and
`hardware drivers) of the computer’s operating system. The
`
`10
`
`15
`
`30
`
`u.)‘1‘
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`remote technician or the user may effect these revisions.
`Unfortunately, the above-described solutions to the diagnos-
`tic problem still require the user to suffer a fault and contact
`a technician, even if it is an avoidable fault due to a conflict.
`In the past,
`the answer has seemed to lie merely in
`automating the diagnostic process. For example, US. Pat.
`No, 5,287,505, issued on Feb. 15, 1994, to Calvert, et al.,
`and entitled “On—line Problem Management of Remote Data
`Processing Systems, Using Local Problem Determination
`Procedures and a Centralized Database” is directed to auto-
`mated problem analysis and resolution of a customer data-
`processing system in which a central service data-processor
`system communicates with the customer system. Included is
`a database for converting machine, software and symptom
`data into instructions, hardware and software module lists,
`and service call schedules. The customer system detects data
`concerning its own configuration and problem symptoms for
`communication to the service system. The service system
`itself orders repair modules, and electronically communi-
`cates software fixes to the customer system.
`Unfortunately, Calvert, et al.,
`is expressly directed to
`repair of a fault once it has occurred and does not provide a
`means by which to anticipate and avoid faults, particularly
`configuration faults arising out of hardware/software con-
`flicts.
`
`In the past, some effort has been given to automating the
`process of software revision to avoid prospective, purely
`software-based faults. For example, US. Pat. No. 5,155,847,
`issued on Oct. 13, 1992,
`to Kirouac, et al., and entitled
`“Method and Apparatus for Updating Software at Remote
`Locations” is directed to a method and system for updating
`the software used in remote computer systems from a central
`computer system. The method includes storing, in the cen-
`tral computer system, copies of the software executable used
`in each remote computer system. When the copies of the
`software in the central computer system are upgaded, for
`example, to correct the software, to add new facilities, to
`change user interfaces,
`to make cosmetic changes,
`to
`improve performance, etc., each change made to the soft-
`ware is monitored and stored. The remote computer systems
`are permitted access to the central computer system via
`communications links and the software in the remote com-
`
`puter systems and the corresponding software in the central
`computer system are compared. All of the changes that have
`been made to the software in the central computer system
`which have not been made to the corresponding software at
`the remote computer system accessing the central computer
`are detected. The detected changes are then transmitted to
`the remote computer system and applied to the software
`therein in order to upgrade the software in the remote
`computer system. The upgraded software in the remote
`computer system is examined to ensure that the software has
`been changed correctly. The method allows the software at
`the remote computer systems to be upgraded even while the
`software at the remote site is being used. The system and
`method also allow the software used in the remote computer
`systems to be upgraded when the remote computer systems
`use different versions of the software and allow the software
`
`to be upgraded in a variety of hardware environments and
`operating systems.
`Unfortunately, Kirouac, et al., is directed only at revising
`application-level software. Kirouac, et al. is not directed to
`analyzing the complete hardware and software configuration
`of a computer system in an effort to identify hardware/
`software conflicts and potential configuration faults. Further,
`Kirouac, et al., is not directed to revising components of the
`computer’s operating system.
`
`Page 5 of 13
`  /
`APPLE EXHIBIT 1006 - PAGE 0005
`
`
`
  
` 
0
`
`

`

`5,867,714
`
`3
`Given that potential faults due to conflicts are diagnosable
`and readily repairable, what is needed in the art is a system
`and method for automatically correcting hardware/software
`conflicts that have potential for causing a fault, preferably
`well before they actually become faults. The system and
`method should be capable of distributing or receiving soft-
`ware revisions that are a function of a specific system
`hardware and software configuration to address the conflict.
`SUMMARY OF THE INVENTION
`
`
`
`To address the above-discussed deficiencies of the prior
`art, the present invention provides, for use with a computer
`system having a hardware and software configuration sub-
`ject to change over time, a system for, and method of,
`receiving software revisions as a function of the hardware
`and software configuration. The system includes: (1) current
`configuration data, stored in a memory device associated
`with the computer system, containing a current description
`of at
`least a portion of the hardware and software
`configuration, (2) communications circuitry, associated with
`the computer system, that automatically establishes a com-
`munications link between the computer system and a remote
`data source to transmit the current configuration data to the
`remote data source, the remote data source able to identify
`conflicts inherent
`in the hardware and software
`configuration, select configuration-dependent software revi-
`sions (revisions that are a function of the hardware and
`software configuration) and transmit the software revisions
`o the computer system to address at least some of the
`conflicts and (3) processing circuitry, associated with the
`computer system, that modifies a software configuration of
`he computer system in accordance with the software revi-
`sions thereby to avoid a configuration fault.
`The above-described system therefore allows at least a
`aortion of a computer’s hardware and software configuration
`0 be stored and remotely monitored. If the hardware and
`software configuration indicates a conflict and therefore a
`aotential configuration fault ahead for the user, the remote
`data source can distribute the necessary configuration revi-
`sions to address the conflict and thereby avoid the configu-
`ration fault entirely. In this way, valuable user and technician
`ime can be saved.
`
`The remote data source should preferably be able to
`'dentify conflicts inherent
`in the hardware and software
`configuration. Most preferably, the power of identification is
`lad by experience. In other words, when a user or other
`aarty (such as a manufacturer) identifies or experiences a
`ault brought about by a conflict, the knowledge required to
`identify the conflict and the necessary configuration revi-
`sions are added to the remote data source. Thus, the remote
`data source acts as a conflict and revision database.
`However, this need not be the case. The remote data source
`may alternatively take the form of an expert system that is
`able to identify conflicts before anyone experiences them.
`In one embodiment of the present invention, the remote
`data source comprises a registration database containing
`other data pertaining to the computer system,
`the remote
`data source able to identify the conflicts by analyzing the
`current configuration data and the other data.
`Often, proper diagnosis of a conflict is enhanced when
`information about the computer system, other than configu-
`ration data,
`is known. The other data may comprise, for
`instance, the make, model and serial number of the computer
`system and data indicating the personal working habits of
`the computer system’s user. Of course, still other data may
`be desired; the present invention is not limited by the type
`of data used for diagnosis and revision.
`
`4
`In one embodiment of the present invention, the commu-
`nications circuitry periodically automatically establishes the
`communications link between the computer system and the
`remote data source. This may, most advantageously, result in
`nightly or weekend contacts for the purpose of receiving
`configuration revisions. Of course, the present invention is
`not limited to automatic, periodic contact;
`the user may
`contact the remote data source at will or aperiodically.
`In one embodiment of the present invention, the system
`further comprises configuration detection circuitry that
`detects changes in the hardware and software configuration
`and automatically alters the current configuration data as a
`function thereof. Preferably,
`the user does not need to
`intervene in altering the current configuration data. The
`computer system can be programmed to perform the func-
`tion automatically. However, the broad scope of the present
`invention certainly encompasses manual alteration of the
`current configuration data by the user.
`In one embodiment of the present invention, the software
`revisions include revisions to operating system software
`stored in nonvolatile memory associated with the computer
`system. As previously described, conflicts are often resolved
`by revising portions of the computer’s operating system,
`some of which may reside in nonvolatile memory (such as
`Electrically-Erasable Programmable Read-Only Memory
`(“EEPROM”)) within the computer system. However, the
`broad scope of the present
`invention is not so limited.
`Revisions may be made to other operating system software
`or to application programs.
`In one embodiment of the present invention, the current
`configuration data includes usage pattern tracking data. The
`usage pattern tracking data may be employed to monitor the
`manner in which the user employs the computer system.
`Thus, the present invention may be regarded as not only a
`solver of potential problems, but also as a finder of oppor-
`tunity. As will be explained in greater detail below, the
`present invention may be employed to allow a manufacturer
`to track how its customers are using their computers, giving
`the manufacturer specific access and insight to its custom-
`ers’ needs and allowing the manufacturer to target
`its
`customer base with appropriate advertising.
`In one embodiment of the present invention, the commu-
`nications circuitry establishes the communications link via a
`selected one of a telecommunications system and a com-
`puter network. Thus, the present invention, in its broadest
`form, contemplates any mode of contact to effect the com-
`munications link.
`
`Another aspect of the present invention provides a system
`for automatically distributing configuration-dependent soft-
`ware revisions, comprising: (1) a central data source, (2) a
`plurality of remote computer systems, each of the plurality
`of remote computer systems having an associated system for
`receiving software revisions from the central data source, the
`associated system including: (2a) current configuration data
`containing a current description of at least a portion of a
`hardware and software configuration of the associated
`remote computer system, (2b) communications circuitry that
`automatically establishes a communications link between
`the remote computer system and the central data source to
`transmit the current configuration data to the central data
`source and receive software revisions from the central data
`
`source in response thereto and (2c) processing circuitry,
`associated with the remote computer system, that modifies a
`software configuration of the computer system in accor-
`dance with software revisions and (3) revision selection
`circuitry, associated with the central data source that
`
`10
`
`15
`
`30
`
`u.)‘1‘
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`Page 6 of 13
`  1
`APPLE EXHIBIT 1006 - PAGE 0006
`
`
`
  
` 

`
`

`

`5,867,714
`
`5
`receives current configuration data from the plurality of
`remote computer systems, identifies conflicts inherent in the
`hardware and software configurations of the plurality of
`remote computer systems, selects software revisions as a
`function of the hardware and software configurations and
`transmits the software revisions to respective ones of the
`remote computer system to address at least some of the
`conflicts. In alternate embodiments, the revision selection
`circuitry may identify conflicts inherent in the hardware and
`software configuration of a single computer system, select
`software revisions as a function of that hardware and soft-
`ware configuration and transmit the software revisions to the
`computer system to address at least some of the conflicts.
`An advantageous embodiment for employing or distrib-
`uting the present invention is as software. The software
`embodiment
`includes a plurality of processing system
`instructions that may suitably be stored to a conventional
`storage medium. Preferred storage media include without
`limitation magnetic, optic and electric, as well as suitably
`arranged combinations of the same. The processing system
`instructions are readable and executable by one or more
`computer or processing systems to distributing
`configuration-dependent software revisions to a computer
`system in accordance with the pr'nciples of the present
`invention.
`
`The foregoing has outlined, rathe broadly, preferred and
`alternative features of the present 'nvention so that those
`skilled in the art may better understand the detailed descrip-
`tion of the invention that follows. Additional features of the
`
`invention will be described hereinaf er that form the subject
`of the claims of the invention. Those skilled in the art should
`
`
`
`appreciate that they can readily use tie disclosed conception
`and specific embodiment as a basis for designing or modi-
`fying other structures for carrying out the same purposes of
`the present invention. Those skilled in the art should also
`realize that such equivalent construe ions do not depart from
`the spirit and scope of the invention in its broadest form.
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`For a more complete understanding of the present
`invention, reference is now made to the following descrip-
`tions taken in conjunction with the accompanying drawings,
`in which like numbers designate like parts and in which:
`FIG. 1 illustrates a block diagram of a system constructed
`according to the principles of the present invention; and
`FIG. 2A illustrates a flow diagram of a method of ensuring
`that configuration data are current;
`FIG. 2B illustrates a flow diagram of a method of estab-
`lishing a communications link and receiving software revi-
`sions; and
`FIG. 3 illustrates a block diagram of a centralized system
`for automatically distributing configuration-dependent soft-
`ware revisions.
`
`DETAILED DESCRIPTION
`
`Referring initially to FIG. 1, illustrated is a block diagram
`of a system constructed according to the principles of the
`present invention. The system, generally designated 100, is
`illustrated as residing locally on a computer system 110
`(which may advantageously be a PC or any other conven-
`tional suitably arranged processing system), using existing
`circuitry within the computer system 110 to perform novel
`functions according to the present invention. “Or,” as the
`term is used herein, is inclusive, meaning and/or.
`The computer system 110 is illustrated as including a
`memory device 112 (which may be random access memory
`
`6
`read-only memory (“ROM”), a conventional
`(“RAM”),
`mass storage device, such as a floppy or hard disk drive, or
`the like). “Include,” as the term is used herein, means
`inclusion without limitation. The memory device 112 is
`conventionally capable of storing data of many types.
`However, the present invention advantageously employs the
`memory device 112 to store current configuration data
`pertaining to the hardware and software configuration of the
`computer system 110. The kind of data contained in the
`current configuration data will be set forth in greater detail
`below.
`
`The computer system 110 is further illustrated as includ-
`ing processing circuitry 114. The processing circuitry 114
`generally governs the flow of software instructions and
`substantive data within the computer system 110. In FIG. 1,
`the processing circuitry 114 is used to provide, among other
`things, read/write access to the memory device 112.
`The computer system further includes nonvolatile
`memory 116. The nonvolatile memory 116 may be ROM,
`EEPROM or a conventional mass storage device and may be
`used to store, among other things, operating system software
`components, such as hardware drivers (not shown).
`In
`conventional PC systems, the nonvolatile memory employed
`for this purpose is ROM or EEPROM. Because the revisions
`distributed according to the present invention may suitably
`include revisions to operating system components stored in
`the nonvolatile memory 116,
`it is advantageous that the
`nonvolatile memory 116 be EEPROM, such that the revi-
`sions may be written to the nonvolatile memory 116.
`The computer system 110 is further illustrated as includ-
`ing communications circuitry 118. The communications
`circuitry 118 may be, for example, a modem (allowing the
`computer system 110 to communicate via a telecommuni-
`cations system (not shown)) or a network interface card
`(“NIC”) (allowing the computer system 110 to communicate
`via a computer network (not shown)).
`It should be
`understood, however, that the present invention in its broad-
`est form is indifferent to the type of system or mode of
`communication in which the communications circuitry 118
`is designed to operate.
`The computer system 110 further includes configuration
`detection circuitry 120. The configuration detection circuitry
`120 is responsible for obtaining data pertaining to at least a
`portion of the current hardware and software configuration
`of the computer system 110. The configuration detection
`circuitry 120 may be as simple as a software program,
`executable within the computer system 110, for querying the
`user as to the current hardware and software configuration.
`More preferably, however, the configuration detection cir-
`cuitry 120 determines the hardware and software configu—
`ration automatically, by polling hardware components and
`cataloging software components to create a list of current
`configuration data setting forth the components that com-
`prise the computer system 110. Such a list might read as
`follows:
`
`COMPUTER
`
`Manufacturer Name:
`Manufacturer No.
`Serial No.
`Computer Name
`ID Bytes
`Bus
`Processor
`CPU State
`
`Dell Computer Corp.
`99999
`99999
`Generic Al' Compatible
`FC, 01 (IBM AT 339)
`ISA (16 bit)
`Cyrix 486DLC, 50 Mhz
`V8086 Mode, A20 On
`
`10
`
`15
`
`30
`
`u.)‘1‘
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`Page 7 of 13
`  2
`APPLE EXHIBIT 1006 - PAGE 0007
`
`
`
  
` 
3
`
`

`

`7
`-continued
`
`Cyrix 80387, 50 Mhz
`CMOS RAM
`CMOS
`BIOS/DOS
`
`Coprocessor
`Setup Type
`Clock
`
`BIOS Mfr
`BIOS Size
`DOS Version
`BIOS Date
`
`5,867,714
`
`Mfr S/N
`
`8
`-c0ntinued
`
`N/A
`FLOPPY DRIVE 0
`
`5
`
`Size
`DOS Name
`Geometry
`Media Support
`
`Disk Size
`
`15
`
`Disk Size
`
`Port 0
`Name
`
`1.2M(5.25")
`A:
`80 Tracks, 2 Heads, 15 Sectors
`AMI
`1.2M High Density
`64K
`360K Double Density
`7.00
`(no disk in drive)
`06/06/92
`FLOPPY DRIVE 1
`10
`PRIMARY VIDEO
`Copyright 1988—1991 TRIDENT MICROSYSTEMS INC —
`— Size
`1.44M(3.5”)
`Adapter
`VESA
`DOS Name
`B:
`RAM Size
`1,024K
`Geometry
`80 Tracks, 2 Heads, 18 Sectors
`Video BIOS
`Trident
`Media Support
`1.44M High Density
`Chip Set
`Unknown
`20K Double Density
`VESA Installed
`Yes (Version 1.02)
`(no disk in drive)
`Max Resolution
`1280X1024, 16 colors (106h)
`SERIAL PORTS
`Max Colors
`640X480, 16777216 colors (11211)
`—
`Max 'l'ext Mode
`1322460, 16 colors (10ch)
`DOS
`Monitor
`VGA Color
`COMl:
`
`7
`SECONDARY VIDEO
`— ~0
`No Adapter
`PHYSICAL MEMORY
`640K
`619K
`156K
`OK
`Port 0
`7,168K
`Name
`None
`I/O Address
`MANAGED MEMORY
`— Bidirectional
`14,044K
`30
`Port 1
`6,876K (taken from Extended Memory)
`Port 2
`64K (in-use)
`3.00
`3.5
`No Driver Installed
`HARD DRIVE 0
`169M
`11M
`Big DOS (C:)
`169M
`No Defined
`Not Defined
`Not Defined
`902 Cyls, 8 Heads, 46 Sectors
`Uri:nown
`(undetermined)
`Urignown
`47
`47
`IDE/ESDI (BIOS driver)
`Advanced
`Un:n0wn
`Un:n0wn
`N/A
`N/A
`HARD DRIVE 1
`
`25
`
`2;
`__
`
`40
`
`45
`
`50
`
`
`
`Base... Total
`Available
`Upper Memory... Total
`Largest Block
`Extended... Total
`Available
`
`XMS... Total
`Available
`HMA
`Version
`Driver Rev.
`EMS...
`
`Total Size
`DOS Free
`Partition 1
`Size
`Partition 2
`Partition 3
`Partition 4
`BIOS Geometry
`Real Geometry
`Interleave
`Sectors \Vastcd
`CMOS Type
`Best Match
`Interface
`Encoding
`Translated
`Model
`Rev.
`Manufacturer No.
`
`Total Size
`DOS Free
`Partition 1
`$126.
`_
`Partition 2
`Partition 3
`.
`.
`Partition 4
`
`BIOS Geometry
`Real Geometry
`Interleave
`Sectors \Vasted
`CMOS Type
`Interface
`Encoding
`Translated
`Model
`Rev
`
`169M
`11l\/I
`Big DOS (D:)
`169M
`Not Defined
`Not Defined
`Not Defined
`
`902 Cyls, 8 Heads, 46 Sectors
`Uri:nown
`(undetermined)
`U11:110W]1
`47
`Best Match: 47
`IDE/ESDI (BIOS driver)
`Advanced
`Un:n0wn
`Un:n0wn
`N/A
`
`
`
`55
`
`60
`
`‘35
`
`I/O Address
`Chip Type
`FIFO
`Settings
`Port 1
`Port 2
`Port 3
`
`Adapter
`Monitor
`Max Colors
`Max Resolution
`
`Sound Device
`Compatibility:
`Features
`
`Interface
`I/O Address
`Version
`
`Interface
`Driver
`Version
`DOS Name(s)
`
`Type
`Num Lock
`Caps Lock
`Scroll Lock
`
`Tvpe
`(1
`'
`.
`.
`Spee
`Driver ReViSion
`
`3F8h
`16550A
`No
`2400 Baud, None. 8, 1
`No Port
`No Port
`No Port
`PARALLEL PORTS
`—
`DOS
`LPT1:
`378h
`No
`No Port
`No Port
`VIDEO
`—
`VESA
`VGA Color
`640X480, 16777216 colors (112h)
`1280X1024, 16 colors (106h)
`SOUND
`
`Sound Blaster Compatible
`Sound Blaster, Adlib
`FM Synthesis
`Digital Playback
`Microphone Input
`Internal Card
`220h
`3.0
`CD-ROM
`—
`Microsoft CD-ROM Extensions
`MSCDEX.EXE
`2.23
`E:
`KEYBOARD
`
`101-key Enhanced
`On
`Off
`Off
`MOUSE
`—
`Serial (2 button)
`Medium
`8.48
`
`w
`_
`NOt Determined Yet
`MODEM 2
`
`Net Determined Yet
`
`FAX
`
`No FAX Found
`
`Page 8 of 13
`  4
`APPLE EXHIBIT 1006 - PAGE 0008
`
`
`
  
` 
5
`
`

`

`9
`-continued
`
`10
`-c0ntinued
`
`5,867,714
`
`4Eh Unused
`Interrupt Vectors Usage
`— 4Fh
`Unused
`00h
`Divide Error
`0520:0139
`Available
`50h
`DESQvieWRelocated IRQO
`01h
`Debug Exceptions
`0070:0465
`DOS Kernel
`51h
`DESQvieWRelocated IRQ1
`02h
`Non-Maskable Interrupt
`0520:025E
`Available
`52h
`DESQvieWRelocated IRQZ
`03h
`Breakpoint
`0070:0465
`DOS Kernel
`53h
`DESQvieWRelocated IRQ3
`04h
`Overflow
`0070:0465
`DOS Kernel
`54h
`DESQvieWRelocated IRO4
`05h
`Print Screen Handler
`F000:FF54
`System ROM
`55h
`DESQvieWReleeated IRQS
`06h
`Invalid Opcode
`F000:EB43
`System ROM
`56h
`DESQviewRelocated IRQ6
`07h
`No Coprocessor
`F000:EAEB
`System ROM
`10 57h
`DESQviewRelocated IRQ7
`08h
`IRQO-Time1'
`0498:0000
`vmm32
`58h
`{eservec
`09h
`IRQ1-Keyboard
`CE69:0028
`UMB
`59h
`GSS Graphics Interface
`0A1
`IRQ27EGA Vert. Retrace
`CE69:003A
`UMB
`5A
`Cluster Adapter BIOS
`0B1
`IRQ3-COM2
`CE69:0052
`UMB
`5B 1 Used by Cluster Adapter
`0C1
`IRQ4—COM1
`CE69:006A
`UMB
`5C 1 NETBIOS & TOPS API
`0D 1
`IRQ5
`CE69:0082
`UMB
`15 5Dh
`{eservec
`0E1
`IRQ6-Diskette
`CE69:009A
`UMB
`5E1
`{eservec
`0F1
`IRQ7—Printer
`0070:0465
`DOS Kernel
`5F1
`{eservec
`0
`Video
`DC17:000A
`UMB
`601
`Nets, PCiIPC, SYsiPROF
`1
`Equipment Determination
`F000:F84D
`System ROM
`61 1
`{eservec ‘or User Intr
`2
`Mem. Size Determination
`F000:F841
`System ROM
`621
`{eservec or User Intr
`3
`Diskette & Fixed Disk
`FD5B:2532
`System ROM
`631
`{eservec or User Intr
`7
`4
`Serial
`F000:E739
`System ROM
`“0 641
`Novell Low-Level API
`5
`System Services
`0251:053A
`EMM386
`651
`{eservec or User Intr
`6
`Keyboard
`0070:042D
`DOS Kernel
`66 1
`{eservec or User Intr
`7
`Printer
`CC9D:0A28
`UMB
`671
`LIM, EMS, VCPI
`8
`Transfer to ROM BASIC
`F000:E000
`System ROM
`681
`APPC/PC
`9
`Bootstrap Loader
`691
`{eservec or User Intr
`A1
`Timer & Real-Time Clock
`25 6Ah OPTHELP
`B1
`Ctrl-Break
`6Bh Ungermann-Bass NETCI
`C1
`Clock Tick
`6Ch DOS 3.2 {eal-Time Clock
`D1 Video Init Tables
`6Dh
`{eservec or VGA
`E1
`Diskette Parameters
`6Eh Unused
`F1
`Graphics Set 2
`6Fh
`Novell PCOX API, 10-.\IET
`20 1
`DOS Prog. Termination
`30 7011
`IRQ8-Rea -Time Clock
`21
`DOS System Services
`71h
`IRQ9
`22
`DOS Terminate Address
`72h
`IRQ10
`23
`DOS Ctrl-C Address
`73h
`IRQ11
`24
`Critical Error Handler
`74h
`IRQ12
`25
`DOS Absolute Disk Read
`75h
`IRQ13-Coprocessor Error
`26
`DOS Absolute Disk Write
`35 76h
`IRQ14—Fixed Disk
`27
`Terminate Stay Resident
`77h
`IRQ15
`28
`DOS Keyboard Busy Loop
`29
`DOS Fast Putchar
`2A1 NETBIOS, Other Networks
`2B1
`Reserved for DOS
`2C1
`Reserved for DOS
`2D1
`Reserved for DOS
`2E1
`DOS Internal EXECUTE
`2F1 Multiplex
`30
`CP/M JMP Command
`31
`DPMI
`32
`Reserved for DOS
`331 MOUSE
`34 1
`Floating Pt. Emulation
`35
`Floating Pt. Emulation
`36
`Floating Pt. Emulation
`37
`Floating Pt. Emulation
`38
`Floating Pt. Emulation
`39
`Floating Pt. Emulation
`3A1
`Floating Pt. Emulation
`3B1
`Floating Pt. Emulation
`3C1
`Floating Pt. Emulation
`3D1
`Floating Pt. Emulation
`3E1
`Floating Pt. Emulation
`3F1
`Overlay & DLL Managers
`40
`Orig Diskette Handler
`41
`1st Fixed Disk Params
`42
`Orig Video Handler
`43
`EGA/VGA UserFontTable
`44
`EGA/VGA Fonts
`45
`Unused
`46
`2nd Fixed Disk Params
`471
`SQL Base API
`48
`Unused
`49
`Unused
`4Ah User Alarm
`4Bh Unused
`4Ch Unused
`4Dh Unused
`
`
`
`
`
`
`
`
`F000:FE6E
`CC9D:0604
`0498:001D
`F000:FOA4
`
`C000:4E16
`00C9:0FA8
`CC9D:04A0
`FDA9:2052
`FD45:2692
`03B6:080B
`00C9:0FBC
`00C9:0FC6
`00C9:0FDO
`00C9:106F
`0070:0466
`CC9D:05B4
`00C9:106F
`00C9:106F
`00C9:106F
`03A8:0000
`03B6:03CC
`C90F:E4EA
`F000:EA00
`00C9:106F
`0492:0001
`152E:0306
`152E:0306
`152E:0306
`152E:0306
`152E:0306
`152E:0306
`152E:0306
`152E:0306
`152E:0306
`152E:0306
`152E:03C6
`00C9:106F
`F000:EC59
`F000:E13D
`F000:F065
`C000:5216
`F000:EA97
`F000:EA97
`F000:E14D
`F000:EA97
`F000:EA97
`F000:EA97
`F000:EA97
`FD49:2652
`F000:EA97
`F000:EA97
`
`System ROM
`UMB
`vmm32
`System ROM
`
`Video ROM
`DOS Kernel
`UMB
`System ROM
`System ROM
`WIN
`DOS Kernel
`DOS Kernel
`DOS Kernel
`DOS Kernel
`DOS Kernel
`UMB
`DOS Kernel
`DOS Kernel
`DOS Kernel
`WIN Data
`WIN
`UMB
`System ROM
`DOS Kernel
`v11111132
`Available
`Available
`Available
`Available
`Available
`Available
`Available
`Available
`Available
`Available
`Available
`DOS Kernel
`System ROM
`System ROM
`System ROM
`Video ROM
`System ROM
`System ROM
`System ROM
`System ROM
`System ROM
`System ROM
`System ROM
`System ROM
`System ROM
`System ROM
`
`5
`
`
`
`

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket