97 Hewlett-Packard Patents Assigned to Google

At Hewlett-Packard’s global partner summit in Las Vegas yesterday, President and CEO Meg Whitman gave a keynote presentation on the state of the company and made a prediction about Google’s Android operating system:

We decided to contribute WebOS to the open source community and this will take three to four years to play out,” said Whitman. “I think there is room for another operating system. iOS is great but it is a closed system. I think that Android may end up as a closed system because of [Google’s] relationship with Motorola.

Interesting timing on a statement like that, as I noticed the appearance yesterday afternoon of the assignment of 97 patents from HP to Google in the USPTO’s patent assignment database. Then again, the assignment is listed at having been executed on 10/25/2011, and not recorded until 02/06/2012. The patents cover a wide range of technologies, including at least one search related patent on Dynamic query expansion, that Hewlett-Packard acquired at some point from Digital Equipment Corporation’s search engine AltaVista, with search pioneer Louis Monier listed as a co-inventor.

There are also a couple of patents involving Java, as well as a number involving computer architecture and distributed networking, multi-thread processing and operating systems, telecommunications and video, software and hardware monitoring, amongst others. There’s also one on auxiliary propane fuel tanks for vehicles (driver less cars?), and another on paper making.

While many of these patents involve technology originally developed at Hewlett-Packard, not all of them did. Here’s the breakdown on where they were recorded as being originally assigned at the USTPO:

Originally Assigned to Total
Hewlett-Packard Company 32
Hewlett-Packard Development Company 17
Digital Equipment Corporation 12
Electronic Data Systems Corporation 12
Compaq Computer Corporation 9
Hewlett-Packard Limited 6
Tandem Computers Incorporated 2
Compaq Computer Corporation 1
Beloit Technologies, Inc. 1
Compaq Information Technologies Group, L.P. 1
Hewlett-Packard France S.A. 1
Spare Tank Co., Inc. 1
The Toro Company 1
Transoft Technology Corporation 1

I’ve organized the patents involved into categories as follows:

Like Google’s acquisitions of patents from IBM last year, and from other companies, they haven’t limited themselves to search or mobile technologies, and many of these focus upon technologies that might help them with their data centers and network systems as well.

Here are the patents:

Business Management

Automated Activity-Based Management System (US Patent 5799286)
Granted 8/25/1998Filed 6/7/1995
Invented by James J. Morgan, Terry L. Johnson, Leah E. Keefer, Patricia A. Smith Et Al
Originally Assigned to: Electronic Data Systems Corporation


An automated activity-based management system and method (10) for making thereof are provided. A business organization has costs associated with its employees, facilities, equipment, and overhead to produce products or provide services. Such a business organization typically generates traditional general ledger accounting information (152) and human resources information (150). This traditional accounting information (150, 152, 154) is used along with information directed to activities, equipment usage and facilities utilization to generate costs associated with activities performed by the organization. A computer workstation (40) with a graphical user interface (42) is used to accept entries of activity information (74). The activity information and traditional accounting information are fed to a relational database (12). The information is processed and costs associated with the employee, facilities, equipment, and overhead components (20, 22, 24, 26) of activities are computed. User-definable ad-hoc reports as well as preformated reports for trending, forecasting, comparison, benchmarking, and budgeting purposes are generated.

Communication Management System

Messaging Software Offline Agent (US Patent 6745225)
Granted 6/01/2004Filed 4/10/2001
Invented by Thiam Wah Loh, Yih Yeong Chong
Originally Assigned to: Hewlett-Packard Company


A method for user processes, each having a unique user identification code, to intercommunicate within a communication management system even if one of the user processes is unavailable, comprises the following steps: associating an agent process with a particular user identification code in order to correspond to a user process having the particular user identification code; determining whether the user process is available in the communication management system; causing the agent process to log into the communication management system with the particular user identification code when the user process is unavailable; and enabling the agent process to intercommunicate with user processes within the communication management system instead of the unavailable user process by using the particular user identification code of the unavailable user process.

Computer Architecture

Peripheral Identification Using Bypassable Impedances Connected In Series (US Patent 6138182)
Granted 10/24/2000Filed 6/30/1998
Invented by Rick Hennessy, Scott L. Pirdy
Originally Assigned to: Digital Equipment Corporation


A computer includes a multi-bit analog-to-digital converter, which is mounted within the computer’s housing and has a digital output operatively connected to a bus port of the computer’s processor. The computer also includes a local passive identification network that has a first node operatively connected to an analog input of the converter and further nodes respectively electrically connected to pins of a multi-contact local interface connector. A passive peripheral device identification network including a plurality of nodes each electrically connected to a multi-contact peripheral identification connector can mate with the multi-contact local connector.

A Method For Triggering An Asynchronous Event By Creating A Lowest Common Denominator Clock (US Patent 6715093)
Granted 3/30/2004Filed 4/28/2000
Invented by James C. Farmer, Kent A. Dickey
Originally Assigned to: Hewlett-Packard Company


A method and apparatus are disclosed for allowing a system having multiple clock domains to be put into a known state to ensure repeatability during debugging tests. A global framing clock is created having a frequency equal to the lowest common denominator of all clocks in the system or to some divisor of thereof. At this frequency, the global framing clock ensures that it will have a rising edge at the same time that other clocks in the system have rising edges. The system clock and the global framing clock may be run throughout the system to integrated circuits. The global framing clock is used to control a system function, such as a reset or an interrupt function. When the system receives an asynchronous event, the global framing clock ensures that the event is not distributed to the system until the occurrence of a rising edge of the global framing clock. This ensures that the event will also be seen on a rising edge of every other system clock, which makes the event appear at the same time throughout the system. By ensuring that an asynchronous function, such as a reset function, appears at the same time throughout the system, the system becomes repeatable. That is, the clock states will be the same every time an asynchronous event is released to the system.

Method And Apparatus For Causing Computer System Interconnection To Be In The Same State Each Time Test Code Is Executed (US Patent 6725387)
Granted 4/20/2004Filed 4/28/2000
Invented by Dean T. Lindsay, Robert D. Snyder, Kent A. Dickey
Originally Assigned to: Hewlett-Packard Company


A method and apparatus are disclosed for improving the repeatability of a system during testing by ensuring that the machine state remains the same on every test. In particular, the system ensures that the polling block of a cross-bar chip is reset to the same point in the polling sequence and to the same port upon the start of every test. The system uses a global framing clock (“GFC”) as a common timing reference. Before executing test code, the system becomes idle and waits for a rising edge of the GFC. The system then sends a message across existing links from the monarch processor performing the test to a cache controller chip. The cache controller chip waits for a GFC edge and then sends a reset message to the cross-bar chip to reset the CSR polling block. The cross-bar chip receives the signal and resets the CSR polling block.

Optimized Testing Of Bit Fields (US Patent 7085989)
Granted 8/01/2006Filed 4/15/2003
Invented by Sverre Jarp, Dale Morris
Originally Assigned to: Hewlett-Packard Development Company, L.P.


A method for comparing bit field contents for bit fields comprising less than a full complement of the source is provided. The method includes creating a mask covering the bit field in the source, setting bit positions within the mask that are outside the bit field in the source to predetermined values, combining the source against the mask to form an intermediate result, and comparing bits in the intermediate result to provide a final result. Alternately, the method may form a mask, combining the bit field with a comparison value to form an intermediate value, and perform a combined function using the mask to select bits from the intermediate value, or fixed zero or one values, and comparing this result with zero

Computer Instruction Dispatch Utilizing Instruction Bundle Index Value To Retrieve Issue Template Specifying Execution Unit Types For Instructions In Bundle (US Patent 7139897)
Granted 11/21/2006Filed 4/1/2002
Invented by Paul Keltcher, Gary Vondran
Originally Assigned to: Hewlett-Packard Company


Circuit arrangement and method for dispatching computer instructions. In a processor having a plurality of types of execution units, the computer instructions are grouped in bundles, and each bundle includes a plurality of instructions and an associated index code. Template values are stored in a plurality of template registers, and each template value specifies types of execution units for a bundle of instructions and those instructions in a bundle that are executable in parallel. A dispatch logic circuit is coupled to the template registers and is responsive to an input bundle of instructions and associated index value. The dispatch logic circuit reads a code from a selected one of the plurality of template registers referenced by the index value and issues one or more selected instructions in the bundle to at least one execution unit of a selected type responsive to the code read from the selected one of the plurality of template registers.

Immediate Virtual Memory (US Patent 7313668)
Granted 12/25/2007Filed 1/29/2004
Invented by John S. Worley
Originally Assigned to: Hewlett-Packard Development Company, L.P.


Various embodiments of the present invention provide for immediate allocation of virtual memory on behalf of processes running within a computer system. One or more bit flags within each translation indicate whether or not a corresponding virtual memory page is immediate. READ access to immediate virtual memory is satisfied by hardware-supplied or software-supplied values. WRITE access to immediate virtual memory raises an exception to allow an operating system to allocate physical memory for storing values written to the immediate virtual memory by the WRITE access.

Computer Boot Management

Detector And Operational Method For A Firmware Interface (US Patent 7100031)
Granted 8/29/2006Filed 3/27/2002
Invented by Jason W. Reasor, Kenneth J. Geer
Originally Assigned to: Hewlett-Packard Company


A detector detects information about a firmware system. The detector includes an interface that receives a generic instruction. The generic instruction may be a function call made through an EFI shell. The detector has a controller communicatively connected to the interface. The controller receives the generic instruction and gathers information about the firmware system. Gathering information about the firmware system permits platform-specific firmware system functions to be written to the firmware system. The controller gathers information about the firmware system by accessing a data-gathering function based on the generic instruction. The controller retrieves the information through the data-gathering function and transfers the information to the interface.

System For Selecting Another Processor To Be The Boot Strap Processor When The Default Boot Strap Processor Does Not Have Local Memory (US Patent 7100034)
Granted 8/29/2006Filed 05/23/2003
Invented by David L. Collins, Steven R. Dupree
Originally Assigned to: Hewlett-Packard Development Company, L.P.


A plurality of processors are coupled together. One of the processors may comprise a default boot strap processor (“BSP”). Further, the default BSP may determine whether the BSP has local memory and becomes the BSP for the system if the default BSP has local memory, or selects another processor to be the BSP for the system if the default BSP does not have local memory.

Boot Techniques Involving Tape Media (US Patent 7117302)
Granted 10/03/2006Filed 2/28/2005
Invented by Bruce A. Lundeby, Lin Zhang, Raymond Henry
Originally Assigned to: Hewlett-Packard Development Company, L.P.


In at least some embodiments, a system comprises a computer configured to boot using at least one of a plurality of boot techniques involving tape media. The system further comprises a tape drive coupled to the computer and a tape that is readable by the tape drive, wherein the tape is formatted to support a plurality of different boot techniques and wherein at least one of the supported boot techniques is compatible with the computer.

Computer Graphics

Method And Apparatus For Determining An Integer Power Of A Floating Point Number (US Patent 5623527)
Granted 4/22/1997Filed 01/30/1996
Invented by Noel D. Scott
Originally Assigned to: The Toro Company


Apparatus for determining an integer power of a floating point number includes a shift register, a register file having a partial product register and a binary power register, a multiplier coupled to the register file for performing floating point multiply operations and a state machine for controlling the shift register, the register file and the multiplier. The state machine controls loading of initial values into the shift register and into the partial product register and the binary power register. The state machine controls execution of an integer power routine in which a new partial product value is determined by multiplying the contents of the partial product register by the contents of the binary power register if the LSB of the shift register is a 1. The partial product value is left unchanged if the LSB of the shift register is a 0. A new binary power value is determined by multiplying the contents of the binary power register by itself. Then the contents of the shift register are shifted one bit to the right, and the integer power routine is repeated until all bits in the shift register are 0′s.

Method And Apparatus For Performing High Speed Data Transfers Between A Host Memory And A Geomery Accelerator Of A Graphics Machine (US Patent 6058438)
Granted 5/02/2000Filed 2/6/1998
Invented by Michael R. Diehl, Maynard D. Hammond, David L. Mcallister
Originally Assigned to: Hewlett-Packard Company


A system is provided for achieving high speed data transfers from a host memory to an ancillary processor, where the ancillary processor is preferably a geometry accelerator of a graphics machine. In accordance with a preferred embodiment, the system includes at least one memory segment having at least one enable bit and a starting address. The system further includes a data transfer queue defined in a portion of the host memory beginning at the starting location, where the data transfer queue has at least one header portion and at least one data portion, the header portion including at least one data ready bit that is indicative of whether the associated block of data is ready to be transferred to the ancillary processor. Finally, the system includes a controller, responsive to the enable bit, configured to transfer data directly from the data transfer queue to the ancillary processor, the controller being operative to evaluate the at least one data ready bit and transfer the associated block of data from the queue to the ancillary processor if the at least one data ready bit indicates that the data is ready for transfer.

Graphics Memory System That Utilizes Look-Ahead Paging For Reducing Paging Overhead (US Patent 6078336)
Granted 6/20/2000Filed 5/12/1998
Invented by Gerald W. Reynolds
Originally Assigned to: Hewlett-Packard Company


The present invention provides a graphics memory system comprising at least one memory controller that utilizes a first-in-first-out (FIFO) memory architecture in combination with a look-head paging technique for paging a frame buffer memory having a multi-bank architecture. The memory controller controls accessing of a frame buffer memory of the graphics memory system. The frame buffer memory comprises a multi-bank architecture, which preferably is a two-bank architecture. The FIFO architecture comprises a plurality of FIFO memory devices (FIFOs). The memory controller is capable of determining whether a particular FIFO contains no more transactions for a particular bank and, if not, of causing that bank to be re-paged for a different FIFO. In this respect, the memory controller performs what is referred to herein as “inter-FIFO” look-ahead paging. Each of the FIFOs preferably comprises intelligence to enable it to perform look-ahead paging within that particular FIFO, or “intra-FIFO” look-ahead paging. In this respect, each FIFO comprises intelligence that enables it to analyze the entries stored in it to determine whether one bank can be re-paged by the memory controller while the other bank is being accessed by the memory controller.

System For Reducing Noise In Bus Having Plurality Of First And Second Set Of Signals And A Delay Device For Delaying Propagation Of Second Signals (US Patent 6138193)
Granted 10/24/2000Filed 6/23/1998
Invented by Scott W. Dalton, Stephen D. Burleigh, Michael W. Edwards, Kenneth J. Haugen
Originally Assigned to: Compaq Computer Corporation


An apparatus supports both (1) a cost-effective graphics device (such as an AGP device) integrated onto the motherboard, and (2) an upgradable computer system with an add-in card slot for receiving a second graphics device (such as a second AGP device) on a card. The apparatus is connected to a bus that has a first set of signals which is sensitive to noise. The apparatus also has a first switch connected to a first device, the first switch being connected to the first set of signals on the bus. The apparatus has a second switch which is adapted to be connected to a second device. The second switch is also connected to the first set of signals on the bus. The apparatus also has a detector connected to the first and second switches to enable the first switch if the first device is selected and otherwise enable the second switch.

Fifo Architecture With Built-In Intelligence For Use In A Graphics Memory System For Reducing Paging Overhead (US Patent 6150679)
Granted 11/21/2000Filed 3/13/1998
Invented by Gerald W. Reynolds
Originally Assigned to: Hewlett-Packard Company


The present invention provides a first-in-first-out (FIFO) memory device comprising a first latch array, a second latch array, a write pointer device, a first read pointer device, and a second read pointer device. Preferably, the FIFO memory device of the present invention is implemented in a graphics memory system having a two-bank architecture for reducing paging overhead. The second latch array is used for storing row addresses for bank0 and bank1 of the frame buffer memory of the graphics memory system. The first latch array is used for storing column addresses and any other related data for bank0 and bank1 of the frame buffer memory. When the row addresses are loaded into the second latch array, the row addresses are tagged with a bank bit that indicates which bank the row address will access. Additionally, row addresses that require re-paging of either bank0 or bank1 are tagged with a paging bit. The second read pointer device determines which of the row addresses has been tagged with a paging bit to determine which row addresses are candidates for bank0 and bank1 transactions. The second read pointer device then prioritizes the bank0 candidates and the bank1 candidates to determine which of the bank0 candidates is a dump candidate and which of the bank1 candidates is a dump candidate. The second read pointer device then prioritizes the dump candidates and selects the row address corresponding to the dump candidate that was loaded first and that will be required first. This row address is then sent to a row port output register. Once this row address has been unloaded from the row port output register, the row address corresponding to the next dump candidate can then be sent to the row port output register. This aspect of the present invention allows a row address for one bank to be loaded into the row port output register while transactions for the other bank are being processed, thus allowing re-paging to be “hidden”.

Graphics Memeory System That Utilizes A Variable Width, Stall-Free Object Builder For Coalescing And Aligning Read Data (US Patent 6771270)
Granted 8/03/2004Filed 10/26/2000
Invented by Jason Kassoff
Originally Assigned to: Hewlett-Packard Company


The present invention provides a variable-width object builder for use in a graphics memory system of a computer graphics display system. The ratio of tile size to object size is variable. The tile size to object size ratio for the object builder can be 1:1 or greater. The frame buffer controller of the graphics memory system preferably comprises three memory controllers. The object builder preferably outputs either two 32-bit words or two 24-bit words. The object builder preferably utilizes a general purpose object building algorithm that eliminates stalls in the incoming stage of the object builder, thereby eliminating the potential for wasted states at the output of the object builder. A side effect of reducing the complexity of the object building algorithm is that a variety of tile and object sizes can be accommodated. The ratio of tile size to object size can range from 1 to 2 without any significant change in architecture, and higher ratios can be accommodated by adding additional backup registers

System And Method For Directing The Flow Of Data And Instructions Into At Least One Functional Unit (US Patent 7176914)
Granted 2/13/2007Filed 05/16/2002
Invented by Darel N. Emmot
Originally Assigned to: Hewlett-Packard Company


A system and method are provided for directing the flow of data and instructions into at least one functional unit. In one embodiment of a system of components defining a plurality of nodes, a queue network manager (QNM) forming a part of each node, is provided. In this embodiment, the QNM comprises an interface to a network that supports intercommunication among the plurality of nodes, an interface configured to pass messages with a functional unit within the node, a random access memory (RAM) configured to store at least one of a message and a programmable instruction, and logic configured to control an operational aspect of a functional unit based on contents of the programmable instruction.

Computer Hardware Monitoring

Process And Apparatus For Collecting A Data Structure Of A Memory Dump Into A Logical Table (US Patent 5999933)
Granted 12/07/1999Filed 12/14/1995
Invented by Abhay Mehta
Originally Assigned to: Tandem Computers Incorporated


A hardware/software system for analyzing memory dumps. The system collects data structures in a memory dump into logical tables, one logical table per selected type of data structure. The logical tables are generated by use of extraction logic for extracting data in data structures in the memory dump. The extraction logic is used in conjunction with a template library that contains data structure definitions for various types of data structures. The extraction logic, together with the template library, make possible populating logical tables with the contents of data structures found in the memory dump. Each row in a logical table is dedicated to one data structure of the selected type. Collecting data structures into logical tables makes available the power of a standard database management system for operating on the logical tables to determine the cause of a crash of a hardware/software system for which the memory dump was taken.

Data Processing System And Method (US Patent 7278041)
Granted 10/02/2007Filed 4/3/2003
Invented by Vincent Piel, Alain Vandenberghe
Originally Assigned to: Hewlett-Packard Development Company, L.P.


The present invention relates to a data processing system and method in which an indicator is used to provide an indication of whether or not it is safe to maintain the data processing system. Often, the first action taken by maintenance personnel, when maintaining a data processing system, is to remove the power to that system. This renders ineffective any means for providing an indication of the state of the data processing system that is dependent upon power such as, for example, the conventional motherboard power LED. Suitably, the present invention provides an indication of whether or not it is safe to maintain the system, even in the absence of power being connected to the system, using, in preferred embodiments, a bi-stable LCD, which retains its state in the absence of power.

Computer Hardware Security

Computer System Having Peripheral Device Lock (US Patent 6745330)
Granted 6/01/2004Filed 10/18/1999
Invented by Patrick Maillot
Originally Assigned to: Hewlett-Packard France S.A.


To provide a more manageable security system for protecting cable-connected peripheral devices, a computer system is described having a removable peripheral device that is connectable to the computer system via a flying lead and a plug and socket combination, characterized by a lock member that is movable under the control of software running on the computer system to release or secure the plug to the socket.

Computer Security

Method And System For Certificate Based Alias Detection (US Patent 5534855)
Granted 7/09/1996Filed 12/15/1994
Invented by William R. Shockley, George E. Gajnak
Originally Assigned to: Digital Equipment Corporation


A distributed computer system employs certificate based alias detection to ensure a policy of separation of duties. Biometric information is collected during computer user account creation that is converted to canonical form and digitized. This digitized canonical form, along with account data and authentication data, is included in the user’s account information. Authorization to execute any task is validated at the time a request is made by comparison of the digitized canonical forms of biometric data of the user completing the request with those of the user initiating the request.

Method And System For Securing A Computer System (US Patent 7398390)
Granted 7/08/2008Filed 8/8/2003
Invented by Chris D. Hyser
Originally Assigned to: Hewlett-Packard Development Company, L.P.


Security-state-reporting and data-control functionality introduced into a computer system to monitor and report the security state of the computer system and to store and make selectively available, for processes executing within a computer system, security-state-associated data. The hardware element includes two control registers, a current-security-state control register (“CSS”) and a current-data-bank control register (“CDB”). When the CSS is read, the CSS reports the current security state of the computer system, with security states represented as unsigned integers starting from a highest security level of 0 and decreasing with unsigned integers of increasing magnitudes. The CDB controls access to one or more data-register banks, positioning a data-register window to allow access only to those data-register-bank registers associated with the currently reported security state.

System And Method For Establishing A Secure Execution Environment For A Software Process (US Patent 7398532)
Granted 7/08/2008Filed 3/2/2000
Invented by Jeffrey S Barber, Joseph K Vossen
Originally Assigned to: Hewlett-Packard Company


A system and method for establishing a secure execution environment for a software process analyzes system application program interface (API) calls to determine whether the system API call executes a new program. If the system API call executes a new program, the system and method of the invention analyze the call to determine whether an execution environment, in the form of a plurality of attributes, is attached to an executable program file associated with the new program. An execution environment contains security attributes that are to be associated with the resulting process invoked by execution of the new program. If an execution environment is attached, the invention assigns the attributes of the execution environment to the new process, thereby ensuring that the new process includes the security features and capabilities specified in the execution environment.

Secure Direct Memory Access Through System Controllers And Similar Hardware Devices (US Patent 7454787)
Granted 11/18/2008Filed 1/13/2004
Invented by Chris D. Hyser
Originally Assigned to: Hewlett-Packard Development Company, L.P.


A method and system for providing secure, direct access to computer system resources, such as system memory, by a non-trusted processing entity running in an unprivileged state that request access to the resource through a device that directly accesses the resource. The device includes access-right-checking logic and is configured to verify access rights of non-trusted processing entities that attempt to access the resource through the device. By checking access rights, the device ensures that non-trusted processing entities access only those particular portions of the resource authorized for access by the secure kernel.


Data Collection, Processing, And Reporting System (US Patent 5778350)
Granted 7/07/1998Filed 11/30/1995
Invented by Raymond J. Adams, Harriet E. Brichta, Roger J. Henn, Drew A. Hollander, Robert W. Adas Et Al
Originally Assigned to: Electronic Data Systems Corporation, A Texas Corporation


A system and method (10) for collecting and processing input data (16) and generating output data (24). The system (10) uses a plurality of dictionary tables (22) to control the reading, processing, and outputting of data. The system (10) includes at least one input processing table (32) having format and content information of the input data (16), and at least one output processing table (34) having format and content information of said output data (24). A multi-tasking process (60) is used to spawn a plurality of subtasks (90), each subtask processing one type of data, said subtasks accessing said input processing table (32) for determining how said input data (16) are to be read, and further accessing said output processing table (34) for determining how to create and format said output data (24). Other data dictionary tables (22) are used to track system activity and statistics, define the system that generated the data, and avoid duplicate processing of data.

Temporally And Spatially Organized Database (US Patent 5794242)
Granted 8/11/1998Filed 4/8/1997
Invented by Russell J. Green, J. Christopher Davies, Alan J. Paxton, Christopher Whitaker
Originally Assigned to: Digital Equipment Corporation


During operation of a computer system, index records and data records of a data structure are organized in a hierarchical manner, with index records being at a higher level of the hierarchy than the data records referenced by the index records. While the data structure is manipulated, the data records are stored in a random access memory. Modifications made to the data structure are chronologically written to a disk storage in a bottom-first/top-last order of the hierarchy for persistent storage as a database. A back-up copy of the database is made by storing the data and index records of the database in a top-first/bottom-last order on a sequentially readable media. A temporal and spatial view of a portion of the database can be obtained by accessing the index records and the data records of the database or the back-up media in the top-first/bottom last order.

Database Generator (US Patent 5819282)
Granted 10/06/1998Filed 7/17/1996
Invented by Donald F. Hooper, Jay S. Newcomb
Originally Assigned to: Digital Equipment Corporation


A data base is created by storing a plurality of data objects in a memory. Each data object has attributes including a key value and a data value. The data objects are partitioned into a plurality of classes, each class having one or more members, each member including the same attributes of the data objects. An access method is defined for at least one member of a specific class to access the data objects of the specific class by key values. For another member of the specific class, an access method to access the data objects of a related class is defined. A specific data value of a specific data object is compared with the key values of the data objects of the related class, and if the specific data value is equal to the key value of a related data object a memory address of the related data object is associated with the specific data value.

Simultaneous Use Of Database And Durable Store In Work Flow And Process Flow Systems (US Patent 6014673)
Granted 1/11/2000Filed 5/13/1997
Invented by James W. Davis, Weimin Du, Ming Chien Shan, Nicholas Sheard
Originally Assigned to: Hewlett-Packard Company


A method and apparatus for reliable high-speed access to a database system that stores system data in a non-volatile database, stores current data in an online database object cache, the current data reflecting at least a portion of the system data in the non-volatile database and the online database object cache providing the database system with the capability of querying and updating the current data in the online database object cache, logging each message in the database system as an entry in a durable log file, and periodically committing the current data in the online database object cache to the non-volatile database.

System And Method For Computing Running And Moving Sequence Functions In A Database System (US Patent 6317738)
Granted 11/13/2001Filed 3/26/1999
Invented by Peter N. Lohman, Robert M. Wehrmeister, Mark E. Melton
Originally Assigned to: Compaq Computer Corporation


A database query compiler and compilation method has special facilities for compiling a query that includes one or more of a predefined set of running and moving sequence functions. The compiler converts the query into a predefined normalized form suitable for compilation using a running and moving function normalizer. The running and moving function normalizer converts each running and moving sequence function in the set into a corresponding ordered set of one or more executable statements, which include at least one Offset sequence function that accesses data in an auxiliary field of a row of a table. An offset sequence function compiler, compiles each Offset sequence function, Offset(argument, index), in the normalized database query into a compiled set of instructions, including instructions for storing and reading the auxiliary fields to and from a buffer that is separate from the table. The buffer is preferably stored in volatile, main memory. As a result, when the Offset sequence function is executed, information from a previous is accessed without having to change the cursor position for the table.

Message-Efficient Client Transparency System And Method Therefor (US Patent 6389431)
Granted 5/14/2002Filed 8/25/1999
Invented by Svend Frolund, Rachid Guerraoui
Originally Assigned to: Hewlett-Packard Company


A three-tier system is built up as: a single client application, a single server application, and a single database system. The server application provides a service that can be shared among multiple client applications. Server applications store their data in a database system. A client transparency mechanism and a server transparency mechanism are added. A database system on a clustered node is used for the database management. Server applications implement transactional behavior and the server side of the protocol so that the client applications may recover from server application and database system failures. The cluster application programming interface is used to determine when to retry. Information is stored in the database system so that the outcome of the transaction can be determined.

Method For Transaction Recovery In Three-Tier Applications (US Patent 6434555)
Granted 8/13/2002Filed 1/24/2000
Invented by Svend Frolund
Originally Assigned to: Hewlett-Packard Company


A three-tiered transaction processing system is provided in which state information maintained in the database tier is used to facilitate recovery of transaction coordinators without the transaction coordinators having to maintain their own recovery information and a method of accessing such state information while controlling the lifetime of this recovery information; i.e., keeping it around long enough so that client tier will have a consistent view of the world before the information is forgotten. This solves the problem of outcome determination.

Database Model System And Method (US Patent 6687704)
Granted 2/03/2004Filed 9/6/2000
Invented by Norman Robert Russell
Originally Assigned to: Hewlett-Packard Company


A database model system and method are provided that permit changes to the data model, such as the addition, deletion, or modification of attributes, through changes to the data rather than to the fundamental data model schema. A method of structuring a database comprises providing a category table, a content table containing content corresponding to categories in the category table, and a category contents table containing a mapping scheme that maps content contained in the content table to categories in the category table. An attributes table containing attributes for an application utilizing the database and an attributes values table containing values corresponding to attributes in the attributes table are also provided.

System And Method For Purging Database Update Image Files After Completion Of Associated Transactions For A Database Replication System With Multiple Audit Logs (US Patent 6691115)
Granted 2/10/2004Filed 6/15/2001
Invented by Malcolm Mosher Jr., Peter Simon Whitworth
Originally Assigned to: Compaq Computer Corporation


A method and system for purging database update image files after completion of associated transactions for a database replication system with multiple audit logs. Audit update records and audit backout records are generated by the primary system, and are transmitted to the backup system in multiple streams in parallel. The backup system stores the received audit records as audit image trails, and applies the audit updates and audit backouts to the backup database without regard to whether the associated transactions committed or aborted. Because audit updates and audit backouts are applied without regard to whether the associated transactions committed or aborted, image files containing audit records associated with transactions that have not yet committed or aborted must not be purged. The present invention provides for a method for determining whether an image trail file contains audit records that can be purged such that image trail files can be safely deleted.

Method Of Executing Conflicting Triggers In An Active Database (US Patent 6711560)
Granted 3/23/2004Filed 3/29/2001
Invented by Eliezer Levy, Nitzan Peleg, Yuval Sherman
Originally Assigned to: Compaq Computer Corporation


A method for executing triggers in an active database. An operator tree is formed for the activating trigger and the activated triggers are identified. Each trigger has a creation time stamp. Conflicting triggers are determined based on the tables accessed by the activated triggers. Two or more parallel groups are formed such that conflicting triggers are placed into a different parallel groups and non-conflicting triggers are contained within a parallel group. The parallel groups are interconnected for sequential execution, the order of execution of the parallel groups being based on the creation time stamps of conflicting triggers. The parallel groups are then connected to the operator tree and, if possible, a parallel group containing row triggers is connected to execute in a pipelined fashion with the operator tree of the activating statement.

Method Of Parallel Trigger Execution In An Active Database (US Patent 6721725)
Granted 4/13/2004Filed 3/29/2001
Invented by Eliezer Levy, Yuval Sherman, Nitzan Peleg, Boaz Ben-Zvi
Originally Assigned to: Compaq Computer Corporation


A method for executing after-triggers in an active database. A tree is constructed for each after-trigger and an operator tree is constructed for the statement that activates the trigger. The method joins each of the trees for the activated row-after triggers to the operator tree for pipelined execution with the operator tree. The trees for the activated row-after triggers form a group and each of the trees within the group execute in parallel with each other. The method joins trees for activated statement-after triggers to the operator tree for execution subsequent to the execution of the operator tree, the statement after trigger trees receiving rows from a temporary table that accumulates affected rows from the operator tree. Trees for activated statement after triggers form a group and each of the trees within the group execute in parallel with each other.

Database Server Testing

Application And Method For Benchmarking A Database Server (US Patent 5819066)
Granted 10/06/1998Filed 02/28/1996
Invented by Richard N. Bromberg, Richard W. Kupcunas
Originally Assigned to: Electronic Data Systems Corporation


A benchmarking application for testing the performance of a database server (14) includes a plurality of execution parameters (82) and a program (78) operable to read the execution parameters (82). Processes (56, 58, 60) are generated by the program (78) in accordance with the execution parameters (82). Each process (56, 58, 60) represents a user (16, 18, 20) of the database server (14) and generates benchmark transactions (108) for submission to the database server (14).

System Testing And Methods Therefor (US Patent 7516036)
Granted 4/07/2009Filed 9/7/2004
Invented by William N. Pohl, Daniel Defolo, Robert Kentwortz
Originally Assigned to: Hewlett-Packard Development Company, L.P.


A computer-implemented method of testing a target system using a stimulus-response test. The method includes obtaining the responses of the target system at predefined monitoring times. Each time the response changes state, a clock is reset, and the elapsed duration is kept from the latest response state change. If the elapsed duration from the last response state change exceeds an expected duration before the next state change, a possible fault is deemed to exist.

Distributed Networking

Access Control Subsystem And Method For Distributed Computer System Using Locally Cached Authentication Credentials (US Patent 5235642)
Granted 8/10/1993Filed 07/21/1992
Invented by Edward Wobber, Martin Abadi, Andrew Birrell, Butler Lampson
Originally Assigned to: Digital Equipment Corporation


A distributed computer system has a number of computers coupled thereto at distinct nodes. The computer at each node of the distributed system has a trusted computing base that includes an authentication agent for authenticating requests received from principals at other nodes in the system. Requests are transmitted to servers as messages that include a first identifier provided by the requester and a second identifier provided by the authentication agent of the requester node. Each server process is provided with a local cache of authentication data that identifies requesters whose previous request messages have been authenticated. When a request is received, the server checks the request’s first and second identifiers against the entries in its local cache. If there is a match, then the request is known to be authentic. Otherwise, the server node’s authentication agent is called to obtain authentication credentials from the requester’s node to authenticate the request message. The principal identifier of the requester and the received credentials are stored in a local cache by the server node’s authentication agent. The server process also stores a record in its local cache indicating that request messages from the specified requester are known to be authentic, thereby expediting the process of authenticating received requests.

Network System With Resilient Virtual Fault Tolerant Sessions (US Patent 5881239)
Granted 3/09/1999Filed 8/21/1997
Invented by Marc Desgrousilliers
Originally Assigned to: Tandem Computers Incorporated


In a distributed network system, resilient virtual fault tolerant service sessions are conducted between a host application program and a telnet client user over an end-to-end link including a telnet server, a messaging protocol process, a network driver, and a communication link. The telnet server establishes a tty type structure in response to a service request from a telnet user/client. This invention includes a service control block which controls the establishment of a tty and associated request control blocks and buffers for processing I/O requests. The session is functionally partitioned into an upper half session involving the host application program and the telnet server, and a lower half session involving the remainder of the network components leading to the telnet client. When an interruption in a session occurs due to a fault originating in those portions of the network devoted to the lower half session, the telnet server continues to operate the upper half session by accepting I/O requests from the host application program and queueing these requests in the request control buffers, up to a maximum number of permitted queued requests. The host file system determines the handling of requests that exceed the maximum.

Method And Apparatus For Distrubuted Control Of A Database (US Patent 6009427)
Granted 12/28/1999Filed 8/1/1997
Invented by James J. Wolff
Originally Assigned to: Transoft Technology Corporation


A distributed database-management system is disclosed in which multiple clients on a network share control over and responsibility for the coherency of a shared database with multiple records. The clients arbitrate between each other for exclusive editing access to each of the fields within each record. The database-management system includes lock fields associated with each field in the multiple records. Each client executes a resident coherency process which is responsive to a request to edit a field. The process grants the request if there is not a field lock on the field. When the request is granted the coherency process asserts exclusive ownership of the field by placing a lock on the field. The coherency process is also responsive to a request to exit editing the field and in response thereto de-asserts exclusive ownership of the field.

Employing Multiple Channels For Deadlock Avoidance In A Cache Coherency Protocol (US Patent 6014690)
Granted 1/11/2000Filed 10/24/1997
Invented by Stephen R. Vandoren, Madhumitra Sharma, Simon C. Steely
Originally Assigned to: Digital Equipment Corporation


An architecture and coherency protocol for use in a large SMP computer system includes a hierarchical switch structure which allows for a number of multi-processor nodes to be coupled to the switch to operate at an optimum performance. Within each multi-processor node, a simultaneous buffering system is provided that allows all of the processors of the multi-processor node to operate at peak performance. A memory is shared among the nodes, with a portion of the memory resident at each of the multi-processor nodes. Each of the multi-processor nodes includes a number of elements for maintaining memory coherency, including a victim cache, a directory and a transaction tracking table. The victim cache allows for selective updates of victim data destined for memory stored at a remote multi-processing node, thereby improving the overall performance of memory. Memory performance is additionally improved by including, at each memory, a delayed write buffer which is used in conjunction with the directory to identify victims that are to be written to memory. An arb bus coupled to the output of the directory of each node provides a central ordering point for all messages that are transferred through the SMP. The messages comprise a number of transactions, and each transaction is assigned to a number of different virtual channels, depending upon the processing stage of the message. The use of virtual channels thus helps to maintain data coherency by providing a straightforward method for maintaining system order. Using the virtual channels and the directory structure, cache coherency problems that would previously result in deadlock may be avoided.

System And Method For Performing Flexible Workflow Process Execution In A Distributed Workflow Management System (US Patent 6041306)
Granted 3/21/2000Filed 3/21/1997
Invented by Weimin Du, James W. Davis, Clemens Pfeifer, Ming-Chien Shan, Nicolas Sheard
Originally Assigned to: Hewlett-Packard Company


A system and method for performing flexible workflow process execution in a distributed workflow management system is described. The distributed workflow management system is formed by a computer network comprising a plurality of computers. Each computer has a processor, memory and input/output facilities. A workflow process management system operates on one or more of the computers to control the computer network in executing the workflow process. The workflow process includes at least one sequence of multiple actions. A plurality of resources is coupled to respective ones of the computers to carry out the multiple actions. A plurality of state machines are stored as computer-operable code in at least one memory and include a plurality of states interconnected by arcs logically forming a directed graph. The workflow management system further includes logic for instantiating each action with one state and logic for executing the logical sequence of the action as state transitions in each state machine.

System And Method For Transmitting Data (US Patent 6119263)
Granted 9/12/2000Filed 4/28/1998
Invented by Miranda Jane Felicity Mowbray, James Andrew Davis, Kenneth Graham Paterson Et Al
Originally Assigned to: Hewlett-Packard Limited


A data packet is transmitted by dividing it into sub-packets, for example by distributing successive bytes of the data packet to different sub-packets each containing at most p.sup.n -1 symbols, where p is a prime number, and transmitting the sub-packets along two or more respective paths. CRC checksums are added to the sub-packets, the checksum for each path being generated using a different and respective generator polynomial of degree b. These generator polynomials are selected so that, for arithmetic carried out modulo p, each polynomial has a respective factor of degree at least b-n+1, and the collection of polynomials which are each exactly divisible by all such factors constitutes a BCH code. As a result the system has advantageous properties in respect of error detection and implementation.

System For Implementing Network Protocol For Supports The Transmission Of A Variable Number Of Application-Usable Object Over Network As Single Network Transmittable Container Object And Re-Creation Of Application-Usable Object Therefrom (US Patent 6412010)
Granted 6/25/2002Filed 6/18/1999
Invented by Lance Kind
Originally Assigned to: Hewlett-Packard Company


A method and apparatus for implementing a network protocol to support the transmission of a variable number of application-usable objects as a single network transmittable container object and the re-creation of the application-usable objects therefrom, which includes marshalling application-usable objects into marshalled objects, where each application-usable objects corresponds to a different marshalled object, and each marshalled object comprises frames of data; creating a two-dimensional array to transmit the application-usable objects, where a first dimension represents a given marshalled object by referencing a second dimension array, and a second dimension array comprises frames of data of a given marshalled object; and storing each marshalled object in the two-dimensional array.

System And Method For Emulating A Distributed Network (US Patent 6483811)
Granted 11/19/2002Filed 8/4/1998
Invented by Javid Jabbarnezhad
Originally Assigned to: Electronic Data Systems Corporation


A system for emulating a distributed network includes a localized network operable to emulate a distributed network. A network device is coupled to the localized network and operable to be accessed over the localized network. A test site is operable to couple a test device to the localized network and to test the ability of the test device to access the network device over the localized network.

Method And System For Distributed Remote Resources (US Patent 7305375)
Granted 12/04/2007Filed 04/23/2003
Invented by Dominic Cioccarelli
Originally Assigned to: Hewlett-Packard Development Company, L.P.


A method for locating and retrieving distributed remote resources. A request (2) for a resource is received by a server (3). The request may be received from another server or from a user device (1). The request may include an identifier for the resource in the form of a Uniform Resource Name. The server (3) searches for the resource in a local storage device (4). If the resource is found the server may send access information for the resource or the resource itself to the original requester. If the server (3) cannot locate the resource on the local storage device (4) it will send the request to a plurality of servers (5, 8, 13). These servers may be those on a list (24) of neighbouring servers or those accessible by sending (35) the request via a multicast method. A server and system for implementing the method are also disclosed.

Method Of Selecting Heuristic Class For Data Placement (US Patent 7315930)
Granted 1/01/2008Filed 10/30/2003
Invented by Magnus Karlsson, Christos Karamanolis
Originally Assigned to: Hewlett-Packard Development Company


An embodiment of a method of selecting a heuristic class for data placement in a distributed storage system begins by forming a general integer program which models the data placement and forming a specific integer program which models a heuristic class for the data placement. The general and specific integer programs each comprising an objective of minimizing a replication cost. The method continues with solving the general integer program which provides a general lower bound for the replication cost and solving the specific integer program which provides a specific lower bound for the replication cost. The method concludes with selecting the heuristic class if a difference between the general lower bound and the specific lower bound is within an allowable amount.

System And Method For Refreshing A Table Using Epochs (US Patent 7818297)
Granted 10/19/2010Filed 03/31/2003
Invented by Nitzan Peleg, Yuval Sherman, Hansjorg Zeller
Originally Assigned to: Hewlett-Packard Development Company, L.P.


The disclosed embodiments relate to a system for refreshing a table to produce a refreshed table. The system may include a refresh log that may contain a plurality of entries that each comprise an epoch identifier. The system may also include a refresh manager that may be adapted to perform a refresh operation on the table using entries that have corresponding epoch identifiers.

Electronic Watermarks

Digital Watermarks (US Patent 6961853)
Granted 11/01/2005Filed 2/12/2001
Invented by Alan D. Marshall
Originally Assigned to: Hewlett-Packard Company


A method of and an apparatus for implementing real-time transaction specific watermarking to generate a transaction specific digitally watermarked data file is described. The method comprises two stages. Prior to receiving (52; 102) a transaction request for the data file: the data file is divided (34; 84) into a plurality of sections; and a set of pre-calculated elementary watermarks is created (86). On receiving (52; 102) a transaction request for the supply of the data file: the method comprises calculating (56; 106) a transaction specific watermark; selecting (64; 114) pre-calculated elementary watermarks equivalent to constituent portions of the transaction specific watermark by comparing the constituent portions of the transaction specific watermark with the pre-calculated units of data; and constructing (66; 116, 118) a transaction specific watermarked data file by assembling the selected pre-calculated elementary watermarks together with corresponding ones of the plurality of sections.


Method And System For Managing And Retrieving Data (US Patent 7346660)
Granted 3/18/2008Filed 2/21/2003
Invented by Suhas Sudhakar Kulkarni
Originally Assigned to: Hewlett-Packard Development Company, L.P.


A method and a system for managing and retrieving data within an electronic mail editor and/or an application external of the electronic mail editor are provided. In conventional systems, a user needs to sieve through their e-mail messages to locate messages of a same subject and thereafter to identify a most current or his required information. In the present invention, a reference data tag is inserted in an e-mail message and is linked to tag values stored in an appropriate database. The data tag may have one or more instances inserted in other messages at different times and assigned a different data tag value at the time of insertion. The data tag may be represented by similar indicia. To retrieve a most current value among the different values, a user merely accesses any of the indicia in any of the messages.


Computer Network With Modified Host-To-Host Encryption Keys (US Patent 5268962)
Granted 12/07/1993Filed 7/21/1992
Invented by Martin Abadi, Michael Burrows, Butler Lampson
Originally Assigned to: Digital Equipment Corporation


In a computer network, each pair of host computers that need to exchange data packets establish a single host-to-host encryption/decryption key. Then, whenever one host computer sends a data packet to the other host computer, it first forms a predefined logical combination of the established host-to-host key and the destination buffer index to which the data packet is being sent, and then uses the resulting value to encrypt the secure portions of the data packet. The destination buffer index is included in the data packet’s header, which is not encrypted. When the receiving host computer receives the encrypted data packet, it reads the destination buffer index from the packet header, forms the same predefined logical combination of the established host-to-host key and the destination buffer index to generate a decryption key, and uses the computed decryption key to decrypt the secure portions of the received data packet. If the destination buffer index in the received data packet has been modified either by noise or by an interloper, the decryption key computed by the receiving host computer will be different from the encryption key used by the sending host computer, and therefore the portions of the received data packet decrypted using the computed decryption key will be unintelligible. Thus, interlopers are prevented from breaching the confidentiality of encrypted data.

Document Transfer Systems (US Patent 6446051)
Granted 9/03/2002Filed 2/11/1999
Invented by Dipankar Gupta
Originally Assigned to: Hewlett-Packard Company


A document transfer system enabling a consumer to obtain a document from an owner upon payment using a cryptographic protocol involving the consumer, the owner, a document source, such as printer, and a mediator, according to which protocol the consumer requests a document, the owner provides the source with first and third portions of the key and provides the mediator with a fourth portion of the key, which fourth portion can combine with said first portion to generate the complete key, the consumer provides the owner with the payment and the owner provides the source with a second portion of the key which can combine with said first portion to generate the complete key. A printer for use in the above system, the printer comprising a document memory for storing a received encrypted document, a key memory for storing a first cryptographic key portion, a processor for receiving a second cryptographic key portion and combining it with the first key portion to form a complete cryptographic key which is supplied to a decrypting module. The encrypted document is supplied to the decrypting module whereupon the document is decrypted and supplied to the consumer.

Verification Of The Private Components Of A Public-Key Cryptographic System (US Patent 6952476)
Granted 10/04/2005Filed 8/8/2001
Invented by Wenbo Mao
Originally Assigned to: Hewlett-Packard Company


A method of exchanging digital public-key verification data whereby a first computing entity (102) enables a second computing entity (104) to obtain probabilistic evidence that a given public-key number n is the product of exactly two odd primes p and q, not known to the second party, whose bit lengths (l(p), l(q)) differ by not more than d bits. The method provides an efficient proof of knowledge protocol for demonstrating Monte-Carlo evidence that a number n is the product of two odd primes of roughly equal size. The evidence is shown “in the dark”, which means that the structure is verified without the prime factors of n disclosed. The cost of a proof amounts to 12klog.sub.2 n multiplications of integers of size of n where k is the number of the iterations in the proof and relates to an error probability bounded by max(1/2.sup.k, 24/n.sup.1/4).

Document Transfer Systems (US Patent 7058605)
Granted 6/06/2006Filed 1/18/2002
Invented by Dipankar Gupta
Originally Assigned to: Hewlett-Packard Company


A document transfer system enabling a consumer to obtain a document from an owner upon payment uses a cryptographic protocol involving the consumer, the owner, a document source, such as a printer, and a mediator.

Method And Apparatus For Encrypting Data (US Patent 7263191)
Granted 8/28/2007Filed 10/11/2002
Invented by Liqun Chen, Keith Alexander Harrison
Originally Assigned to: Hewlett-Packard Limited


A method for encrypting data comprising dividing a first data set into a second data set and a third data set; deriving a first value using the second data set as an input into a polynomial equation; deriving a second value using the third data set as an input into the polynomial equation; deriving a first encryption key associated with a first party; deriving a second encryption key associated with a second party; encrypting the first value with the first encryption key; encrypting the second value with the second encryption key.

Method And Apparatus For Data Validation (US Patent 7330969)
Granted 2/12/2008Filed 10/11/2002
Invented by Keith Alexander Harrison, Martin Sadler, Marco Casassa Mont
Originally Assigned to: Hewlett-Packard Company


A method for encrypting data comprising deriving a public key using a first data set provided by a second party; encrypting a second data set with the public key; providing the encrypted third data set to the second party; providing the public key to a third party to allow validation of the first data set such that on validation of the first data set the third party provides an associated private key to the second party to allow decryption of the encrypted second data set.

Fiber Network Security

Apparatus And Method For Implementing Spoofing-And Replay-Attack-Resistant Virtual Zones On Storage Area Networks (US Patent 6973568)
Granted 12/06/2005Filed 09/21/2004
Invented by Douglas L. Hagerman
Originally Assigned to: Compaq Computer Corporation


A storage area network resistant to spoofing attack has several nodes each having a port, and storage area network interconnect interconnecting the ports. Each port is provided with a hash function generator for providing and verifying an authentication code for frames transmitted over the storage area network, and a key table for providing a key to the hash function generator. The authentication code is generated by applying a hash function to the key and to at least an address portion of each frame. In each node, the key is selected from that node’s key table according to address information of the frame.

Fuel Tanks

Auxiliary Propane Fuel Tank System For Vehicles (US Patent 5975574)
Granted 11/02/1999Filed 6/24/1998
Invented by Mitchell W Warth
Originally Assigned to: Spare Tank Co., Inc.


An auxiliary fuel tank system includes a permanent pressure tank for natural gas or propane is mounted on a vehicle such as a fork lift truck. The auxiliary tank is connected through fuel lines to a replaceable portable tank which supplies fuel to the auxiliary tank through check valves and a valve mechanism which may be turned on and off. The auxiliary tank is filled upon initial attachment of the portable tank to the fuel line for the truck. After filling the auxiliary tank, the valve mechanism is closed only to be reopened upon exhaustion of fuel from the portable tank. Fuel lines connect the respective tanks to the engine thereby permitting operation of the engine, even upon exhaustion of fuel from the portable, replaceable tank.

Handheld devices

Page Turning Facility (US Patent 5870092)
Granted 2/09/1999Filed 1/9/1997
Invented by James Bedford-Roberts
Originally Assigned to: Hewlett-Packard Limited


A device for storing information electronically and which has a pen-sensitive screen enabling a user to make freehand input has the screen divided into two areas–a main area and a subsidiary area adjacent the main area. The user can tag items of freehand input causing a tag item to be displayed alongside the freehand input and can subsequently manipulate (eg delete, move, copy) the freehand input by selecting and manipulating the associated tag item. Tag items provide a permanent way of structuring data and are an elegant way of uniting several data manipulations.

Method Of Transmitting Identification Data From An Option Pack To A Main Unit Before The Option Pack Is Fully Powered (US Patent 7269746)
Granted 9/11/2007Filed 11/27/2000
Invented by Henry F. Lada, Joseph A. Lightfoot
Originally Assigned to: Compaq Computer Corporation


A Personal Digital Assistant (PDA) or handheld device comprising a main unit and an option pack, wherein the option pack stores all of the application software and drivers. Upon insertion, the hardware interface invokes a device manager on the main unit that interrogates a memory device on the option pack. The interrogation includes data on drivers, applications, configuration and miscellaneous requirements of the option pack. This identification process allows the option pack to store information, drivers and applications on the option pack, so the main unit does not have to use its memory to store information on a large number of option packs. Once the option pack and its applications are identified, the device manager on the main unit retrieves the applications and drivers from a separate memory device on the option pack and downloads the applications and drivers onto the main unit. Upon de-installation of the option pack from the main unit, the applications and drivers are removed from the main unit.

Hardware Monitoring

Method And Apparatus For Displaying Module Diagnostic Results (US Patent 5519832)
Granted 5/21/1996Filed 2/9/1995
Invented by Nicholas A. Warchol
Originally Assigned to: Digital Equipment Corporation


A reliable diagnostic system for running power-up diagnostics, displaying power-up diagnostic results, and retaining a power system status history. First, a method of testing a processor module in a computer system is provided. A processor including a serial port reads processor module diagnostic test instructions from a PROM in a serial line controller through the serial port by way of a serial bus in response to power-up reset instructions. Next, a reliable connection of a serial control bus to the modules is provided. Accordingly, backplane connectors are provided including wide signal conducting elements having multiple solder connection points to the modules and backplane. The serial control bus is electrically connected to each module through the multiple connection points of these signal conducting elements. Also, an apparatus and method for indicating module failures in a computer system is provided. A console panel is provided in the computer system comprising LED’s visible to the user, each LED corresponding to a particular module. Any LED which remains lit indicates the failure of the corresponding module. Finally, a method and apparatus is provided for maintaining a power system status history. Status indicators corresponding to various environmental conditions in the system are supplied. When any status indicator changes value, the status indicators are stored in a non-volatile memory. In the event of a system shutdown, the nonvolatile memory then retains a status history representing the environmental changes prior to shutdown.

Generic Fault Management Of A Computer System (US Patent 5740357)
Granted 4/14/1998Filed 10/26/1994
Invented by Jeffrey Gardiner, Gerhard Heider, Larry Emlich, Bruce Luhrs, Michael Li, Michael Masters Et Al
Originally Assigned to: Digital Equipment Corporation


A method of managing faults in a computer system including the steps of detecting an error, handling the error along a functional hierarchy and, further, handling a fault that caused the error in a management hierarchy which can be operated separately from the functional hierarchy.

Method And System For Managing Computer Systems (US Patent 6026500)
Granted 2/15/2000Filed 5/13/1997
Invented by Guido E. J. Topff, Frederik P. J. Kouwenberg
Originally Assigned to: Electronic Data Systems Corporation


According to one aspect of the invention, a method of managing a computer system includes receiving event information at a Tivoli Enterprise Console (130), the event information associated with the computer system. The method also includes receiving a command to provide a portion of the event information to a help desk application program and automatically providing the event information in a format readable by a ServiceCenter help desk application program (230) in response to receiving a command to provide a portion of the event information to a help desk application program.

Hardware Monitoring Process Having On Screen Display Capability (US Patent 6845277)
Granted 1/18/2005Filed 3/20/2000
Invented by Jacques Michelet, Claus Hirzmann, Francois Loison, Vincent Nguyen-Quang Do
Originally Assigned to: Hewlett-Packard Company


Process and apparatus for communication between an Information Handling System (HIS) and a display having On “Screen Display” (OSD) capability. The HIS system includes a processor under control of an operating system, a graphics system and an electronic circuit which operates independently on the processor and the graphics system. The display receives a graphics channel with the graphics signals. An additional service channel is used for the interaction between the host and the display, and also for allowing the independent electronic circuit to have a direct access to the On Screen Display capability of the display. The service channel may be advantageously a DDC/CI communication link, and the electronic circuit may be a hardware monitoring circuit which is operational even before the booting process of the processor. No additional Liquid Crystal Display is thus required.


Method Of Filtering Images Using Image Compressibility To Determine Threshold Parameter (US Patent 5787209)
Granted 7/28/1998Filed 2/5/1996
Invented by Kontantinos Konstantinides, Balas K. Natarajan, Gregory S. Yovanof
Originally Assigned to: Hewlett-Packard Company


A method of filtering an image to reduce noise. The image is divided into subimages or “blocks”. An optimum value of a threshold parameter is determined by repeatedly applying a Singular Value Decomposition (“SVD”) transform to one of the blocks for various values of the threshold parameter and then using a lossless compression algorithm to determine the compressed size of the various transforms. The optimum threshold parameter is determined by finding the maximum of the second derivative of the compressed size with respect to the log of the threshold parameter. The SVD transform is then applied to all the blocks using the optimum value of the threshold parameter, and the transformed blocks are then recombined to provide the filtered image.

Apparatus and Method for Determining the Apporpriate Amunt of Sharpening for an Image (US Patent 5867606)
Granted 2/02/1999Filed 35654
Invented by Daniel R. Tretter
Originally Assigned to: Hewlett-Packard Limited


An image enhancing apparatus is described that includes a filter. The filter enhances the sharpness of an original image in accordance with a sharpening parameter. A sharpening parameter selection system is coupled to the filter. The sharpening parameter selection system determines the sharpening parameter for the filter such that the frequency distribution of a sharpened image of the original image by the filter is similar to that of a low resolution image of the original image. In addition, a method of sharpening an original image is also described.

Means And Apparatus For Maintaining Condition Codes In An Unevaluated State (US Patent 6000028)
Granted 12/07/1999Filed 1/29/1996
Invented by Anton Chernoff, John S. Yates
Originally Assigned to: Digital Equipment Corporation


A computer system for executing a binary image conversion system which converts instructions from a instruction set of a first, non native computer system to a second, different, native computer system, includes an run-time system which in response to a non-native image of an application program written for a non-native instruction set provides an native instruction or a native instruction routine. The run-time system collects profile data in response to execution of the native instructions to determine execution characteristics of the non-native instruction. Thereafter, the non-native instructions and the profile statistics are fed to a binary translator operating in a background mode and which is responsive to the profile data generated by the run-time system to form a translated native image. The run-time system and the binary translator are under the control of a server process. The non-native image is executed in two different enviroments with first portion executed as an interpreted image and remaining portions as a translated image. The run-time system includes an interpreter which is capable of handling condition codes corresponding to the non-native architecute.

Information Retrieval

Dynamic Query Expansion (US Patent 6411950)
Granted 6/25/2002Filed 11/30/1998
Invented by Michael Z. Moricz, Louis M. Monier, Jean-Claude Michelou
Originally Assigned to: Digital Equipment Corporation


A dynamic search result refinement for refining a general search query into a more specific search query. For a general search query, a user is presented with a list of more specific queries. The entries in the list selected from a log-file of queries according to the index frequency of each query. The user can choose a new query from the list of more specific queries and run a database search. The user also has the option to be presented with a list of even more specific queries based on the chosen query and to have a database search run with one of these queries.

Document Clustering Method And System (US Patent 6728932)
Granted 4/27/2004Filed 3/22/2000
Invented by Parvathi Chundi, Umeshwar Dayal, Mehmet Oguz Sayal, Meichun Hsu
Originally Assigned to: Hewlett-Packard Company


Document clustering method and system utilizing both the log-based clustering method and the content-based clustering method are disclosed. The method includes the steps of generating log-based document clusters and combining vectors from the log-based document clusters with individual document clusters for content-based clustering analysis. The log-based document clusters are generated by accessing the retrieval session log, clustering the retrieval sessions, and combining the documents opened during each of the sessions of session clusters.

Internet Communications

System And Method For Communicating Information Using The Internet That Receives And Maintains Information Concerning The Client And Generates And Conveys The Session Data To The Client (US Patent 5835724)
Granted 11/10/1998Filed 07/03/1996
Invented by John D. Smith
Originally Assigned to: Electronic Data Systems Corporation


In a system (10) for communicating information using the Internet, a client (12) establishes a first connection with a session server (24) using the Internet (18) to initiate a communications session. The session server (24) receives information from a data source (26) in response to the first connection, generates session data (32) using the received information, and conveys the session data (32) to the client (12). The session server (24) maintains the session data (32) after termination of the first connection to convey the session data (32) to the client (12) in response to the client (12) establishing a second connection with the session server (24) during the communications session.


System And Method For Generating A Set Of Robot Commands Based On User Entry Events In A User Interface (US Patent 7437715)
Granted 10/14/2008Filed 4/9/2002
Invented by Kit Chatsinchai, Bino George, Kishan Thomas, Kui Gong, Brian M. Buesker
Originally Assigned to: Hewlett-Packard Company


A system for generating a set of robot commands uses user entry events in a user interface. Such a system may include an event queue to which the events are sent from the user interface and a RobotCreator tool for receiving the events as those events are submitted to the event queue. The event queue is configured to allow receipt of the events by the RobotCreator. The RobotCreator tool converts the events into robot commands.

Methods And Systems For Transforming Java Applications On Behalf Of Another Device (US Patent 7562353)
Granted 7/14/2009Filed 5/16/2003
Invented by Ilja Bedner, Venkatesh Krishnan
Originally Assigned to: Hewlett-Packard Development Company, L.P.


Methods and systems for delivering a Java application to a requestor device are described. A request for the Java application is received at a node between the requestor device and a source of the Java application. A request for the Java application is sent to the source. The Java application is received from the source at the Intermediate node, which transforms the Java application according to attributes of the requester device. The transformed Java application is then sent to the requestor device.


Pseudo Random Address Generator For 0.75M Cache (US Patent 6691142)
Granted 2/10/2004Filed 1/9/2001
Invented by Warren Kurt Howlett
Originally Assigned to: Hewlett-Packard Company


The most significant N bits of each number in a pseudo random sequence are generated by unidirectionally shifting the previous bits from a first memory cell toward the Nth memory cell of a sequential register and generating a new bit in the first memory cell in response to a predetermined combination of the previous N bits through feedback logic, for example by NORing the previous N most significant bits, such that always at least one of the N bits is a zero. N most significant bits are matched with a least significant bits portion that cycles exactly once for each most significant bit value. This results in a pseudo random sequence excluding an upper fraction of one-fourth, one-eighth, . . . , (one-half).sup.N of an otherwise power of two range. Embodiments include right or left shifting, generating reversed sequences, or coupled right- and left-shifting, in hardware or software implementations.


System And Method For Designing Multimedia Applications (US Patent 5864338)
Granted 1/26/1999Filed 9/20/1996
Invented by Alex J. Nestor, Michael W. Schwartz, Christopher M. Dittman, Robert K. Wilcox Et Al
Originally Assigned to: Electronic Data Systems Corporation, A Texas Corp.


A system for designing a multimedia application (27) is provided. The system includes an assembly template (14, 16, 18) having predetermined processor operating commands and related data. The assembly template (14, 16, 18) is adapted to allow a user to add to and modify and the processor operating commands and related data, and to generate multimedia application navigator system controls (22). A processor (10, 56) receives the modified processor commands of the assembly template (14, 16, 18) and generates the multimedia application navigator system controls (22).

Network System (US Patent 6014712)
Granted 1/11/2000Filed 5/14/1997
Invented by Farhad Fuad Islam, Junichi Yamazaki
Originally Assigned to: Hewlett-Packard Company


A system information management unit obtains system information from end systems or media data conversion units and sets end system media data compatibility conditions. The media data conversion units obtain this system information from the system information management unit. When media data are transmitted between the end systems, the media data are first converted in accordance with the system information and then sent to receiving end systems.

Multi-Threaded Processing

System And Method For Reducing Synchronization Overhead In Multithreaded Code (US Patent 6662364)
Granted 12/09/2003Filed 11/5/1999
Invented by Michael Burrows, Mark Thierry Vandervoorde, Sanjay Ghemawat
Originally Assigned to: Digital Equipment Corporation


A system and method for implementing mutual exclusion locks (mutexes) is provided. Mutexes of the present invention designate whether they are to be synchronized using fast nonatomic load/store sequences or, alternatively, expensive atomic hardware instructions. When a requesting thread requests a target mutex, the target mutex is synchronized using the method designated by the target mutex. In some embodiments, the designated synchronization method may be changed to the atomic method when the requesting thread is not the thread associated with the target mutex. In other embodiments, the designated synchronization method may be determined by a heuristic function. For example, the synchronization method may be changed to the atomic method when a mutex request counter, which penalizes thread changes, underflows. Other possible heuristic functions may consider factors such as whether the recursion overflow bit of the target mutex has been set, the percentage of mutexes, created by a predetermined call state, that have been converted to the atomic method, and/or the overall percentage of mutexes in the system that have been converted to the atomic method.

Temporary Halting Of Thread Execution Until Monitoring Of Armed Events To Memory Location Identified In Working Registers (US Patent 6675192)
Granted 1/06/2004Filed 11/11/2002
Invented by Joel S. Emer, Rebecca L. Stamm, Bruce E. Edwards, Matthew H. Reilly, Craig B. Zilles Et Al
Originally Assigned to: Compaq Information Technologies Group, L.P.


Execution of a program’s instructions in a simultaneous multithreaded processor is halted while the program is waiting for one or more events to occur by first arming an event monitor upon an arm instruction, that is, identifying to the event monitor one or more events to be monitored, such as a modification to a value or state of an identified memory location or group of locations, and setting a watch flag to indicate enable the event monitor. Upon execution of a quiesce request instruction, the program quiesces if the watch flag is set, and a timer is started. Upon observation by the event monitor of an identified event, or upon expiration of the timer, the watch flag is cleared and execution of the program resumes.

Operating System

Multi-Layered Software Application Interface Architecture (US Patent 6405366)
Granted 6/11/2002Filed 5/28/1999
Invented by Lee A. Lorenz Sr., David A. Faller, James C. Aldrich
Originally Assigned to: Electronic Data Systems Corporation, A Delaware Corporation


A multi-layered software architecture (90) comprises a software application layer (10), a predefined file filter interface layer (106) operable to perform basic file functions, and a data standard interface layer (94, 104, 114) having a plurality of standard methods for accessing data of a data type. Further, a first plug-in (91, 92) is provided that is operable to access a first data format (34, 31) of the data type according to the data standard interface layer (94, 104, 114), and a second plug-in (96, 98, 100, 102) is provided that is operable to access a second data format (41, 40, 38, 42) of the data type according to the data standard interface layer (94,104,114).

Method Of Cleanup After Termination Of A Process Under A Simulated Operating System (US Patent 6725188)
Granted 4/20/2004Filed 4/3/2000
Invented by Randall Ko Shingai, Jeffrey D. Merrick, James R. Smullen
Originally Assigned to: Compaq Computer Corporation


An operating system is simulated to run in conjunction with a native operating system, allowing processes originally developed for the operating system being simulated to be ported to the environment of the native operating system with a minimum of effort. Ported processes will consume resources of both operating systems, the native operating system and the simulated operating system, that are cleaned or otherwise removed when the ported process ends by setting up a monitoring facility to detect when the ported process ends. When that occurs, the simulated operating system resources are cleaned by a cleanup process that impersonates the ported process that ended. The cleanup process is also monitored, so that when it ends, additional cleanup processes are called into action to cleanup the system resources of the remaining simulated operating system used by the ported process that ended, and the system resources used by the cleanup process.

Access Control System And Method (US Patent 7330976)
Granted 2/12/2008Filed 4/9/2004
Invented by Katsuyuki Yumoto
Originally Assigned to: Hewlett-Packard Development Company, L.P.


Device files are disposed on respective routes through which a process accesses the same device, and access rules for those device files are unified. Foe example, where there exist two routes by which a certain process accesses a device, two device files are disposed on each of the routes. Access rules that are set for all directories that access the two device files are unified so as to permit only reading so that the device file can be accessed according to the same access rule by the two routes.

Kernel Module Interface Dependencies (US Patent 7634770)
Granted 12/15/2009Filed 5/19/2003
Invented by Steven Roth
Originally Assigned to: Hewlett-Packard Development Company, L.P.


A method, and a corresponding mechanism, are used for resolving interface dependencies in kernel modules during an operating system (O/S) update. The method includes determining the O/S version for which each module is designed, determining a version of the updated O/S, comparing the O/S version for which each module is designed to the version of the updated O/S, and removing from the system those modules that are not compatible with the updated O/S.


Refiner Disc With Curved Refiner Bars (US Patent 5823453)
Granted 10/20/1998Filed 11/14/1995
Invented by Gregory A. Garasimowicz
Originally Assigned to: Beloit Technologies, Inc.


A disc refiner for thermo-mechanical pulping of wood chips or other fiber source for papermaking has annular refiner discs with a plurality of axially protruding radially extending curved refiner bars. Curved bars in the refiner zone should resist erosion and corrosion. Each disc has a region of bars which curve in the direction of rotation, and a region which curves away from the direction of rotation. Two identical refiner discs are mounted to rotate with respect to one another. Because of the bar curvature, processed stock experiences different angles of bar intersection as the pulp progresses from the inside of the refiner plate to the outside of the refiner plate, yielding a reduced hit on the pulp where opposed refiner bars curve in opposite directions. Where refiner bars on opposed plates curve in a like direction as they pass over one another there is a hold back action on the stock in that region.

Product/Service Monitoring

Monitoring Of Service Delivery Or Product Manufacturing (US Patent 5864483)
Granted 1/26/1999Filed 8/1/1996
Invented by Harriet E. Brichta
Originally Assigned to: Electronic Data Systems Corporation, A Corp. Of Delaware


A system (10) is provided for monitoring services or products. The system (10) includes an interface (12, 18) which can receive criteria information (14) specifying an unacceptable level for services or products. The interface (12, 18) can also receive services or products information (20) relating to the services or products. A database (16), which is coupled to the interface (12, 18), stores the criteria information (14). A processor (22, 27) is coupled to the database (16) and the interface (12, 18). The processor (22, 27) can identify non-random patterns in a predefined danger zone in order to determine when the services or products are approaching the unacceptable level specified in the criteria information (14), thereby monitoring the services or products.

Remote Maintenance

System And Method For Remotely Executing A Command (US Patent 5898835)
Granted 4/27/1999Filed 8/16/1996
Invented by Timothy M. Truong
Originally Assigned to: Electronic Data Systems Corporation


A remote command execution system (26) is provided for remotely executing commands at a computer. The remote command execution system (26) includes a client (12) using a web browser (32) and a remote Internet server (15) having a mass storage device (44), for storing computer files, and a processor (42). The processor (42) is responsive to one or more of the computer files of the mass storage device (44). The processor (42) is responsive to communicate a command input form to the web browser (32) of the client (12) and to receive an input from the client (12) that includes a command to be executed by the remote Internet server (15). The processor (42) is further responsive to process the input, execute the command, and generate an output including the results of executing the command. The remote Internet server (15) then provides the output to the web browser (32) of the client (12) for displaying.

Remote Meeting

Frame For Communicating Expressive Information For Meetings (US Patent 6966035)
Granted 11/15/2005Filed 9/19/2001
Invented by Carol Sue Hidy Suess, Nick Valison, Kathleen Vivian Bertagnolli
Originally Assigned to: Hewlett-Packard Company


A murmur frame for a participant to communicate expressive information with other participants in a meeting includes a personal information section that contains a name of the participant, one or more icons indicating inputs and reactions of the participant related to a subject matter or other aspects of the meeting, and one or more annotation banners containing comments or questions of the participant. The input may include pictorial, textual, and audible inputs. The murmur frame is subdivided into sub-areas each dedicated to a specific aspect of the meeting. The choice of a sub-area in which an icon is displayed is significant. The murmur frame containing the expressive information may be transmitted to the other participants through a computer network system to advance communication for the meeting.

Removable Storage

Visual Meter For Providing A Long-Term Indication Of Dynamic Parameters (US Patent 6476725)
Granted 11/05/2002Filed 11/30/2000
Invented by Jerry G. Aguren, Edward M. Flynn
Originally Assigned to: Compaq Computer Corporation


A media meter mounts to a surface of a removable storage media or other product, and provides a visual indication of one or more parameters of the storage media or other product. The media meter includes circuitry that detects status signals transmitted by rf transmissions or directly connected by wires between an auxiliary memory device mounted on the storage media or product, or receives status signals via rf transmissions directly from the auxiliary memory. As another alternative, the media meter may be integrated with the auxiliary memory to receive status signals directly from the auxiliary memory. The status signals indicate the capacity of the storage media, the number of read and/or write errors that have occurred during back-up and retrieval, the number of times the storage media has been loaded with data or other information, and other dynamically-varying parameters. The media meter selects appropriate parameters to display, or may perform other analysis to determine other parameters of the storage media, such as the viability of the storage media. The media meter includes a parasitic power source that uses the rf communications to power the circuitry. The media meter includes a display device capable of maintaining a display of the selected parameter for extended periods.

Secure Digital Communications

Method And Apparatus For A Secure Communications Session With A Remote System Via An Access-Controlling Intermediate System (US Patent 7036010)
Granted 4/25/2006Filed 12/7/2000
Invented by Michael Wray
Originally Assigned to: Hewlett-Packard Limited


A security protocol entity (20) is provided that includes a mechanism for enabling a first party (11) to communicate securely with a second party (60) through an access-controlling intermediate party (13) by nesting within a first security session (64) established with the intermediate party (13) a second security session (65) with the second party (60). The protocol data units, PDUs, associated with the second security session (65) are encapsulated in PDUs associated with the first security session (64) when sent out by the first party, the intermediate party extracting the encapsulated PDUs for sending on to the second party (possibly with a change to the destination address included in the PDU to be sent on). Each PDU includes a message type field explicitly indicating to the intermediate party (13) if a received PDU encapsulates another PDU intended to be sent on. The establishment of a security session between two parties is made dependent on each party proving by attribute certificates that it has certain attributes required of it by the other party. Where the intermediate party (13) fronts for the second party (60) and the first party (11) initially contacts the intermediate party in the belief that it is the second party, then the latter will indicate its relay status to the first party which can then request the intermediate party (13) to permit a tunnel to be established through it to the second party (60). The first party may place different attribute requirements on the intermediate party in its tunnel role to those initially expected of it when the first party thought it was the second party.

Software Testing

System And Method For Selectively Executing Computer Code (US Patent 6654877)
Granted 11/25/2003Filed 8/23/2000
Invented by Jerome Huck, Carol L. Thompson
Originally Assigned to: Hewlett-Packard Company


A system of the present invention utilizes memory for storing a computer program and processing circuitry for processing and executing instructions of the computer program. In particular, the computer program includes a set of code and an unconditional branch instruction. The processing circuitry, in executing the computer program, receives run time data indicative of whether the set of code is enabled or disabled, and based on the run time data, the processing circuitry sets a value of a mode indicator. While the program is running, the processing circuitry receives and processes the unconditional branch instruction. When the set of code is disabled, the processing circuitry executes the unconditional branch instruction based on the mode indicator, thereby preventing execution of the set of code. However, when the set of code is enabled, the processing circuitry refrains from executing the unconditional branch instruction based on the mode indicator and executes the set of code. Thus, execution of the set of code is selectively enabled based on the status of the mode indicator.

Scoring Assertions (US Patent 7322026)
Granted 1/22/2008Filed 03/02/2004
Invented by Manish K. Ahluwalia, Eric W. Hamilton
Originally Assigned to: Hewlett-Packard Development Company, L.P.


Systems, methods, and devices are provided for scoring assertions in software testing. One method embodiment includes registering assertions which fail during testing of software code. The method includes analyzing failed assertions against a set of questions. The failed assertions are scored based on analyzing the failed assertions against a set of questions.

Automatic Software Testing (US Patent 7392149)
Granted 6/24/2008Filed 10/14/2003
Invented by Carlos A. Bonilla
Originally Assigned to: Hewlett-Packard Development Company, L.P.


A computer implemented method of automatic software testing. Status information of a software test running on a test system is stored to a common information point. The common information point is typically on a computer system independent from a computer system running the software test. An operating system on the test system is reinitialized. The operating system may be changed. The common information point is queried to determine the status information and the software test is resumed. The testing may be resumed at a point immediately after a last completed test operation.


Base Station For A Telecommunications System (US Patent 5898931)
Granted 4/27/1999Filed 8/8/1996
Invented by Coln I’Anson, Stuart Johnston
Originally Assigned to: Hewlett-Packard Limited


In a mobile communications system each radio unit (14, 16) is associated with a respective base station (12) as its `home` base station; any radio unit can communicate with any base station in whose service area it is located. Each base station has a radio interface (20) for communication with radio units, a telephone interface (24) for connection to a telephone line, for example via a PABX (44), and a LAN interface (28) for connection to a local area network (40) to which all the base stations are coupled. Voice communications for a handset are always routed through the home base station for that handset, e.g. to another handset or to the PABX, irrespective of the identity of the base station in whose service area the handset is currently located.

Three Dimensional Graphics Modeling

System And Method For Constructing A Three Dimensional Model From Two Dimensional Images Using Poissan Probability (US Patent 5825364)
Granted 10/20/1998Filed 4/18/1996
Invented by Ronald D. Redmer
Originally Assigned to: Electronic Data Systems Corporation


A system that obtains thin slices of an object for which a three dimensional model is to be constructed. Each slice is photographed and the photographic image data input to a computer system and placed in a three dimensional array, wherein the X-Y pixel data is placed into two dimensions of the array, with each slice occupying one position of the third dimension. The data stored for each slice is called a reference plane. The array data is then processed to create at least one estimated plane between each pair of reference planes. Each estimated plane is created by determining the poisson distribution of data over a range of planes on either side of the estimated plane. Once the estimated places have been created, a z-axis plane can be created using a columnar slice at each X position within the array.


Method And System For Detecting Cuts In A Video Signal (US Patent 5767923)
Granted 6/16/1998Filed 6/7/1996
Invented by E. North Coleman Jr.
Originally Assigned to: Electronic Data Systems Corporation, A Tx Corp.


A method and apparatus for detecting cuts in a digital video signal made up of a series of video images is disclosed. The method comprises segmenting a plurality of the video images into a number of cells, each comprised of a number of pixels having a pixel intensity value. Then, a plurality of cell contrast vectors each associated with one of the segmented video images is generated. An element of the cell contrast vector comprises the standard deviation of the pixel intensity values for the pixels in a particular cell. A cut detect signal is generated for a video image in response to the cell contrast vector associated with that image.

Bit Map Stretching Using Operand Routing And Operation Selective Multimedia Extension Unit (US Patent 5850227)
Granted 12/15/1998Filed 12/20/1996
Invented by Brian E. Longhenry, John S. Thayer
Originally Assigned to: Compaq Computer Corporation


A routable operand and selectable operation processor multimedia extension unit is employed to stretch pixel bit images in a video system using an efficient, parallel technique. For a series of pixels in a row, a series of interpolation values are established, based on multiples of a reciprocal of a stretch factor. For each interpolation value, the integral portion is used to establish the appropriate two source pixels, and the fractional portion then provides weighting of those pixel values. The various source pixels and interpolation values are routed using the operand routing and operated upon using the vector selectable operations, yielding two destination pixels calculated in parallel.

Video Raster Display With Foreground Windows That Are Partially Transparent Or Translucent (US Patent 5896131)
Granted 4/20/1999Filed 4/30/1997
Invented by Jay A. Alexander
Originally Assigned to: Hewlett-Packard Company


A graphical display system in which a background graphical image is at least partially visible within a foreground window. Examples of foreground windows include pull-down menus or pop-up dialog boxes. In a specific example embodiment, the background image is digitized waveform data for a digital oscilloscope, and the foreground window is an interactive dialog box for control. Digitized waveforms are at least partially visible in parts of the dialog box. The system has separate memories for the dialog box and the waveform data. A dual-path video controller chip can switch between the two memories for any pixel. The video chip is programmed to switch when the data from the dialog box memory is a particular programmed color. For translucent areas, a checkerboard pattern is defined in the dialog box memory in which alternate pixels in the dialog box memory are the programmed color. As a result, in the translucent areas, digitized waveforms are displayed in half the pixels in a checkerboard pattern. For transparent areas, the pixels in the dialog box memory are the programmed color so that only the waveform data is displayed.


12 thoughts on “97 Hewlett-Packard Patents Assigned to Google”

  1. Nice-one completely agreed with Yousaf comment

    but this is too lengthy post, I think it will be better and readable If you post it part1, part 2 like.

  2. Hi Yousaf,

    Google still has a long way to go if they want to catch up with Microsoft and Apple…

    Here are the numbers of “assigned” pending and granted patents for some other companies:

    Yahoo!: 3,282
    Google: 5,715
    Oracle: 5,769
    Apple: 12,129
    Xerox: 17,431
    Microsoft: 28,600

  3. Hi Rajesh,

    Thank you.

    I had thought about 2 parts, but it seemed to make sense to try to keep everything together on one page. The majority of the post consists of the list of patents acquired, some information about them, and the abstracts for the patents. It’s as much reading on one post as it is in two. I did add named anchors to the different categories of patent types after reading your comment though, to make it easier for visitors to look at the specific patent types that they might be most interested in.

  4. Hi Bill,

    Thanks for your reply.

    In all honesty, I did not know those numbers and wouldn’t have guessed it in that order either. I am surprised that Xerox has less assigned patents compared to Microsoft. Looking at the figures you have provided I can now see why Google is doing everything it can to get more patents.

  5. It’s hard to decide if Google is joining in the patent wars or just playing defense, or if there’s any difference between those two options. Apple has clearly opted to be aggressive, so you can only expect Google to reciprocate, I suppose.

  6. My version of Meg’s quote: I think that Android may end up as a closed system because of [Google’s] relationship with Google itself.

  7. Took me about 10 minutes to scroll to the comments section on this post, haha, that’s a long list of new patents, I’m personally applying for my first patent at the moment, I obviously can’t go into any details about the design or product itself, but has anyone got any helpful insight into doing this, seems a little daunting.


  8. Hi Yousaf,

    You’re welcome. I was a little surprised that Google has moved as far ahead of Yahoo as they have in the past couple of years. I also expected Xerox to have more as well. Google is substantially behind Microsoft when it comes to the amount of patents that they have.

  9. Hi Ira,

    My perception of Apple and patents these days, just from reading about the patent litigation they’ve been involved in, is that they are being pretty aggressive. I imagine that they wouldn’t be if they could help it, but part of the purpose of applying for a patent in the first place is to keep your competitors from copying too closely what you’ve developed. I do think Google is starting to respond in kind, and it makes sense that they are. I just hope we all don’t suffer from either getting a little too aggressive.

  10. Hi Andre,

    We’ve been seeing some quotes in the media about Google being its own biggest enemy, and in some cases I think there’s some truth to that. I truly do believe that Google would really like Android to be open source, and that providing an operating system like it that could be used freely means that more people will use Google’s other services. But, by becoming part of the market providing a mobile operating system, they also are increasingly becoming a potential competitor to the partners they have within that market.

  11. Hi Luke,

    It is a long list of patents. I was tempted to not include as much information, and make the post shorter, but decided that instead if I could organize them by category and include links to the different sections, that the length of the post wouldn’t be as much of a problem, and I could include details like the abstracts for the patents. Often titles for patents don’t tell you enough about the patents themselves.

    Good luck on the patent that you’re applying for. I suspect it might help if you can find someone who has been through the process themselves before to give you some pointers and ideas. A good patent attorney probably wouldn’t hurt either. I’d suggest maybe soliciting some tips from places like Hacker News on the process generally, and seeing if anyone can offer you some good suggestions there. I was surprised recently by someone from my community who started telling me about some of the patents that he was granted starting about 40 years ago, so maybe even soliciting some advice from people at an organization like SCORE might not be a bad idea.

Comments are closed.