US 6,601,190 B1Grant
Automatic capture and reporting of computer configuration data
Issue Date:2003-07-29
•8 Claims
•6 Drawing Sheets
Abstract
A method for servicing computers using diagnostics programs to capture and report comprehensive configuration information to customer service via email.
Metadata
Assignee
- Hewlett-Packard Development Company, L.P.
Inventors
- John E. Meyer
- John S. Harsany
- Tim J. Lyons
- David E. Gorman
- Hung K. Dinh
Application Information
Application Number:US 09/429,681
Filing Date:1999-10-28
Priority Date:1999-10-28
Art Unit:7
Classifications
IPC:
G06F 1100
Field of Search:
714 26714 32714 37714 46714 27714 57702188702186702183
Patent Drawings (6 sheets)
Description
[0002] The present application relates to diagnosis and service of computer faults.
BACKGROUND AND SUMMARY OF THE INVENTION
[0003] In recent decades, computers have become integral tools for information processing. Businesses and individuals rely on commercially available PCs for many purposes. To be competitive, companies provide extensive customer support for the machines they sell, and considerable resources are expended on diagnosis and repair of computers.
[0004] Service personnel can gather the information they need by going to the actual site of the computer. This is expensive and usually not cost effective. More often, service personnel speak directly with customers over the telephone to get information about the problem. However, problems with the operation of computers may often be complex, and users do not always know what information service personnel need in order to resolve the service call.
[0005] This problem can be partially addressed by a diagnostics program that resides on the customer's computer (e.g., Compaq Diagnostics for Windows) and locally collects hardware and operating system information from the computer. The customer verbally provides this information to customer service during a service call.
[0006] Problems with the operation of a computer can often be complex, or require technical changes in files found on the customer's computer. The information offered by diagnostics programs is usually extensive, detailed information relating to hardware and software configurations, minor changes in which are usually the cause of computer faults. When a customer tries to get help from customer service, the customer must still participate to relay the results from the diagnostics program to the service technician over the telephone. This can result in a trial-and-error method of problem solving, with the technician asking questions, the customer providing information, then following the technicians instructions to make the needed changes. This process repeats until the problem is solved, which sometimes requires many iterations, or until frustration and time consumption lead the customer, the technician, or both, to give up. This process would be greatly simplified were the technician to have direct access to the information provided by the diagnostics program.
Automatic Capture and Reporting of Computer Configuration Data
[0007] The information provided by diagnostics programs does not identify recent configuration changes in the hardware and software. Recent configuration changes are often the source of a computer problem, so there is need for a way to generate comprehensive configuration snapshots for service personnel to use during a service call.
[0008] The present application teaches, among many things, an improved method of servicing and diagnosing computer faults. The primary requirements for computer service tools include on-line functionality to identify and resolve problems without taking the computer off-line, and a simple collection process for gathering the computer information required to effectively resolve service cases. This application provides a simplified process of capturing comprehensive information about the computer hardware and operating system and sending that and other information to customer service using existing hardware.
[0009] A diagnostics program records hardware and operating system configurations when the program is installed on the computer. Later, when a computer owner calls customer service with a problem, the computer owner runs the diagnostic program, which prompts the customer for email account information, telephone number, and information on the computer problem. The diagnostics program then captures the current computer hardware and operating system configuration. The program performs this capture without the need to restart the computer or take it off-line. The program next uses the email account information to activate the email system and send the information about the problem provided by the customer along with the hardware and operating system configuration information to customer service. The program then logs out of the email system. Customer service uses this data to help service the computer.
[0010] This innovation streamlines the computer service process by enabling quick and easy access to detailed information about a computer's hardware and software configuration. It allows faster problem resolution time, since essential and reliable data is gathered and made directly available to customer service. This reduces administration costs and resource expenditure in customer service and diagnostics, while maintaining or improving quality of service to the customer. Computer downtime for the customer is also reduced since service calls are resolved more quickly.
BRIEF DESCRIPTION OF THE DRAWINGS
[0011] The disclosed inventions will be described with reference to the accompanying drawings, which show important sample embodiments of the invention and which are incorporated in the specification hereof by reference, wherein:
[0012] FIG. 1 shows a flowchart of the process of the presently preferred embodiment.
[0013] FIG. 2 shows a sample dialog box encountered by the user which prompts the user for information about the computer problem.
[0014] FIG. 3 shows a completed dialog box with the user's hypothetical problem, ready to send to customer service.
[0015] FIG. 4 shows a dialog box prompting the user for telephone number, name, and email account information.
[0016] FIG. 5 shows a sample of the information emailed to customer service, including the customer's problem and the configuration files base.log and now.log generated by Compaq Diagnostics for Windows.
[0017] FIG. 6 shows a computer according to the presently preferred embodiment.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0018] The numerous innovative teachings of the present application will be described with particular reference to the presently preferred embodiment. However, it should be understood that this class of embodiments provides only a few examples of the many advantageous uses of the innovative teachings herein. In general, statements made in the specification of the present application do not necessarily delimit any of the various claimed inventions. Moreover, some statements may apply to some inventive features but not to others.
[0019] In the preferred embodiment, the application operates on a computer with Windows 95/98/NT/2000 operating system, and relies on the MAIL API (Application Programming Interface), also known as MAPI, which provides the communications layer for sending the information to customer service. An API allows an application to use the operating system to do something (in this case, activate the email system on the computer) without requiring the application to interact directly with the lower primitives of the operating system.
[0020] The design of the application builds on the service tool known as Compaq Diagnostics for Windows, which captures comprehensive hardware configuration information.
[0021] Referring to FIG. 1, an innovation for servicing computers begins in the preferred embodiment in step 102, when Compaq Diagnostics for Windows application (cpqdiag.exe) runs in a silent mode during installation to gather the initial computer hardware and operating system information in an ASCII text file called base.log in the \Windows\cpqdiag\ directory. Later, the customer has a problem on the computer that requires customer service assistance (step 104), and runs Compaq Diagnostics Service Assistant tool (cpqdiaga.exe) (step 106). This program asks the customer to provide name, telephone number, and email account information in a Compaq Diagnostics Service Assistant tool dialog box (step 108), shown also in FIG. 4. The customer also provides information about the computer problem itself in another dialog box shown in FIGS. 2 and 3. The customer then clicks the “send” button (step 110). The Compaq Diagnostics Service Assistant tool automatically runs Compaq Diagnostics for Windows in silent mode to gather the current computer hardware and operating system information in an ASCII text file called now.log (step 112). Compaq Diagnostics Service Assistant tool then uses the email account information to login to the email system using the Windows MAPI and sends the problem information along with the hardware and operating system configuration files (base.log and now.log) to customer service (step 114), who uses the information to aid in resolving the service call. Compaq Diagnostics Service Assistant tool logs out of the email system (step 116).
[0022] FIG. 4 shows a sample dialog box in the Compaq Diagnostics Service Assistant tool, prompting the user to enter their name, telephone number, and email account information. The application uses this information to access the user's email account through the MAPI.
[0023] FIG. 2 shows a sample dialog box in the Compaq Diagnostics Service Assistant tool which asks the user for information about the particular computer problem. The user types in a description of the problem, shown in FIG. 3, and clicks the “send” button. At this time, the user has entered all the necessary information, and the Compaq Diagnostics Service Assistant tool does the rest. It automatically runs Compaq Diagnostics for Windows, which reads the present configuration information for the computer's hardware and operating system and stores it in an ASCII text file now.log. This file, along with the earlier generated base.log and the user provided information regarding the problem, are automatically emailed to customer service.
[0024] FIG. 5 shows a sample of what information is sent to customer service via email, including the message from the user describing the problem, and the two sets of configuration data collected by Compaq Diagnostics for Windows, now.log and base.log.
[0025] FIG. 6 shows a block diagram of a computer system 600 according to the presently preferred embodiment. In this example, the computer system, includes:
[0026] user input devices (e.g. keyboard 635 and mouse 640);
[0027] at least one microprocessor 625 which is operatively connected to receive inputs from said input device, through an interface manager chip 630 (which also provides an interface to the various ports);
[0028] a power supply 605 which is connected to draw power from AC mains and provide DC voltage to the computer system 600 components; the innovative power supply control circuit 610, located within the power supply 605, connects to a fan 615 and also interfaces to the microprocessor 625;
[0029] a memory (e.g. flash or non-volatile memory 655 and RAM 660), which is accessible by the microprocessor;
[0030] a data output device (e.g. display 650 and video display adapter card 645) which is connected to output data generated by microprocessor; and
[0031] a magnetic disk drive 670 which is read-write accessible, through an interface unit 665, by the processor.
[0032] Optionally, of course, many other components can be included, and this configuration is not definitive by any means. For example, the computer may also include a CD-ROM drive 680 and floppy disk drive (“FDD”) 675 which may interface to the disk interface controller 665. Additionally, L2 cache 685 may be added to speed data access from the disk drives to the microprocessor, and a PCMCIA 690 slot accommodates peripheral enhancements.
[0033] The attached output offers a sample file format for the base.log and now.log output files. The information gathered in these files relates to the system itself, asset control, input devices, communication, storage, video, memory, multimedia, the operating system, architecture, computer health, and various miscellaneous data.
[0034] The system data displayed includes the date and time, the name of the computer product, a machine ID, processor statistics, and system ROM information.
[0035] Asset control output includes the product name, which processor is used, and an asset tag.
[0036] Input devices output includes information on the keyboard and the mouse.
[0037] Communication output displays data for the various ports.
[0038] Storage data includes logical drive information and physical drive information.
[0039] Video output includes the current graphics resolution, the primary monitor attached, video display driver, and the video controller ROM.
[0040] Memory output includes the system board, total memory, and windows memory information.
[0041] Multimedia output includes data about the CDROM, the mixer device driver capabilities, the waveform output device driver capabilities, waveform input device driver capabilities, MIDI input and output device driver capabilities, and auxiliary audio device driver capabilities.
[0042] Windows output includes which version of Windows is in use,the locations of directories, and Windows memory information.
[0043] Architecture output includes PCI device information, and whether the system has PCMCIA capabilities.
[0044] Health output includes the temperature, and whether the ROM has embedded diagnostics.
[0045] Some of the miscellaneous output information deals with when the system was last modified, BIOS data, system configuration memory, interrupt vector table, a power conversion record, system standby timeout record, screen saver record, hard drive timeout record, security features record, processor/memory/cache record, general system peripheral and input device information record, memory module information record, timeout default value record, extended disk support record, and a product name header record.
[0046] Sample Now.log/Base.log file format
| Compaq Diagnostics for Windows 2.11 |
|---|
[0047] Further features which are contemplated as advantageous with the presently disclosed innovations are described in copending U.S. application Ser. No. 09/429,226, which is owned in common with the present application and has the same filing date as the present application, and which is hereby incorporated by reference.
[0048] Definitions
[0049] Following are short definitions of the usual meanings of some of the technical terms which are used in the present application. (However, those of ordinary skill will recognize whether the context requires a different meaning.) Additional definitions can be found in the standard technical dictionaries and journals.
[0050] Hardware: the physical, tangible components of a computer system.
[0051] Operating system: a set of programs controlling the operations of a computer system, such as assemblers or input and output facilities.
[0052] API: Application Programming Interface, which allows an application to request that the operating system perform an action or a set of actions. Here, the MAPI (Mail API) launches the user's email system, given the required information.
[0053] Primitives: basic operations performed by the operating system, such as writing to the hard disk, putting graphics on the screen, or reading data from the CDROM port.
[0054] Modifications and Variations
[0055] As will be recognized by those skilled in the art, the innovative concepts described in the present application can be modified and varied over a tremendous range of applications, and accordingly the scope of patented subject matter is not limited by any of the specific exemplary teachings given.
[0056] In a preferred embodiment, the presently disclosed innovation is used on a computer running any of the Windows 95/98/NT/2000 operating systems. Any other operating system may be used with the present innovations.
[0057] The base and current computer hardware and operating system information is captured in ASCII text files using Compaq Diagnostics for Windows. Storage of the data in any format is within the contemplation of the invention.
[0058] The design builds on Compaq Diagnostics for Windows. However, any diagnostics program could be the foundation for the presently disclosed innovations.
[0059] The diagnostics program can be an operating system level program, or embedded diagnostics can be used.
[0060] The information captured by the diagnostics applications need not be limited to hardware and operating system configurations, but can include any data retrievable from the computer that is relevant to servicing the computer or diagnosing the faults on the computer.
[0061] The Compaq Diagnostics for Windows application (or its equivalent) can record the configuration data more frequently than only at program installation and program execution. For instance, each time the hardware or operating system undergoes any configuration change, the new configuration is captured and recorded as an ASCII text file. Or, the system may record the configuration data at each startup, preserving the record of configuration changes. In embodiments where there are many sets of configurations stored, each configuration is time stamped so as to preserve a complete chronological record of configuration settings for the computer. Additionally, in embodiments that record configuration more frequently, each time current configurations are recorded, the configurations could automatically be compared with the previous configurations, and only the changes captured in ASCII text files.
[0062] The amount of processing of the configuration data done by the diagnostics application can vary. The diagnostics application can merely gather and relay the configuration information, or it could perform some comparison. It could also filter the data, sending only the changes in configuration, or only send data about certain hardware or software.
[0063] Comparison and other processing of configuration data could occur at the user's computer locally, or it could be done remotely by a computer at the customer service site.
[0064] The program can prompt the user for input regarding the problem, or the data could automatically be sent without user input. Additionally, only the user input information might be sent, with or without the configuration data. These options can be made available as user selected options, or they may be made automatic so that the user need not initiate them. The initial reading of the configurations might be taken not only at installation of the diagnostics program, but could also be taken any time a major change occurs in the computer's system (for example, if the computer had a new operating system installed).
[0065] Information other than just hardware and operating system configurations can be captured by the program. Any readable information accessible to the program, be it an operating system level diagnostics program or an embedded diagnostics program, may be captured and used as a service tool. Software and DLL (Dynamic Link Library) versions could be checked. Anything stored in the Windows Registry or in any directory may also be accessed and used in servicing computers.
[0066] It should also be noted that the disclosed innovative ideas are not limited only to systems based on an x86-compatible microprocessor, but can also be implemented in systems using 680x0, RISC, or other processor architectures.
[0067] It should also be noted that the disclosed innovative ideas are not by any means limited to systems using a single-processor CPU, but can also be implemented in computers using multiprocessor architectures.
[0068] Additional general background, which helps to show the knowledge of those skilled in the art regarding the system context, and of variations and options for implementations, may be found in the following publications, all of which are hereby incorporated by reference. In particular, many details may be found in the books from MindShare, Inc., including Protected Mode Software Architecture, Cardbus System Architecture, EISA System Architecture, ISA System Architecture, 80486 System Architecture, Pentium Processor System Architecture, PCMCIA System Architecture, Plug and Play System Architecture, PCI System Architecture, USB System Architecture, and Pentium Pro Processor System Architecture, all of which are hereby incorporated by reference, and in the Pentium Processor Family Developer's Manual 1997, the Multiprocessor Specification (1997), the Intel Architecture Optimizations Manual, the Intel Architecture Software Developer's Manual, the Peripheral Components 1996 databook, the Pentium Pro Processor BIOS Writer's Guide (version 2.0, 1996), and the Pentium Pro Family Developer's Manuals from Intel, all of which are hereby incorporated by reference.
Claims
What is claimed is:
1. A method of servicing a computer, the computer including hardware and an operating system, comprising the steps of:
automatically capturing the current configuration data for the hardware and operating system;
requesting a user of the computer to provide information regarding the computer; and
when computer service procedures are initiated, sending said current configuration data, user provided data, and previously captured configuration data to a remote location, wherein said previously captured data comprises the computer's initial configuration.
2. The method of claim 1, wherein the remote location is another computer.
3. The method of claim 1, wherein the data is sent by email.
4. The method of claim 1, wherein sending the configuration data to a remote location occurs automatically.
5. A computer system, comprising:
a diagnostics application residing in the computer designed to capture data about the computer, collect information from a user of the computer, and operatively connected to activate the user's email;
wherein the application retains previously captured base configuration data about the computer; and
wherein when computer service procedures are initiated, the application requests information from the user, captures current data about the computer, and sends the previously captured base configuration data and the current data to a remote location for use in servicing the computer.
6. The system of claim 5, wherein the data relates to hardware and operating system configuration settings on the computer.
7. The system of claim 5, wherein at least some of the information collected from the computer user is also sent to a remote computer.
8. The system of claim 5, wherein the data is sent by email.
Patent Citations (26)
| Patent | Date | Inventor | Cited By |
|---|---|---|---|
| US5367667(A) | 1994-11-01 | Wahlquist et al. | Examiner |
| US5455933(A) | 1995-10-01 | Schieve et al. | Applicant |
| US5668944(A) | 1997-09-01 | Berry | Examiner |
| US5678002(A) | 1997-10-01 | Fawcett et al. | Examiner |
| US5699505(A) | 1997-12-01 | Srinivasan | Examiner |
| US5748877(A) | 1998-05-01 | Dollahite et al. | Applicant |
| US5758071(A) | 1998-05-01 | Burgess et al. | Examiner |
| US5854828(A) | 1998-12-01 | Kocis et al. | Applicant |
| US5862322(A) | 1999-01-01 | Anglin et al. | Examiner |
| US5884073(A) | 1999-03-01 | Dent | Examiner |
| US6003081(A) | 1999-12-01 | Cromer et al. | Examiner |
| US6016466(A) | 2000-01-01 | Guinther et al. | Examiner |
| US6023507(A) | 2000-02-01 | Wookey | Examiner |
| US6065136(A) | 2000-05-01 | Kuwabara | Examiner |
| US6163856(A) | 2000-12-01 | Dion et al. | Examiner |
| US6167537(A) | 2000-12-01 | Silva et al. | Examiner |
| US6170065(B1) | 2001-01-01 | Kobata et al. | Examiner |
| US6182249(B1) | 2001-01-01 | Wookey et al. | Examiner |
| US6247149(B1) | 2001-06-01 | Falls et al. | Examiner |
| US6263457(B1) | 2001-07-01 | Anderson et al. | Examiner |
| US6298457(B1) | 2001-10-01 | Rachlin et al. | Examiner |
| US6321348(B1) | 2001-11-01 | Kobata | Examiner |
| US6338149(B1) | 2002-01-01 | Ciccone et al. | Examiner |
| US6360331(B2) | 2002-03-01 | Vert et al. | Examiner |
| US6367035(B1) | 2002-04-01 | White | Examiner |
| US2001/0018691(A1) | 2001-08-01 | Sakakibara et al. | Examiner |