Patents by Inventor David P. Nesbitt

David P. Nesbitt has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 6971100
    Abstract: Temporary states are used transitionally in run-time situations and are unknown to the object database. A temporary state is created if, when an object is performing a requested event, interim work needs to be performed before the object reaches a permanent destination state. Use of a temporary state is transparent to the caller of the requested event.
    Type: Grant
    Filed: April 5, 2002
    Date of Patent: November 29, 2005
    Assignee: Xerox Corporation
    Inventors: Sang W. Kim, David P. Nesbitt, Steve A. Okamoto, Jennifer D. Thomas
  • Patent number: 6687018
    Abstract: A printing system for distributing print requests submitted by one or more clients includes a server that receives the print requests, generates a print job from one or more print requests, and extracts attributes of the print job. A database contains attributes of the logical printers and physical printers associated with the logical printers, the queues of a network and the attributes of the print job received from the clients. A database query is used to filter the attributes extracted from a print job against the attributes of the physical printers associated with the logical printer to which the print job was sent to determine whether the print job is printable by at least one of the associated physical printers. A queue stores print jobs that are determined to be acceptable. Each printer is capable of notifying the server when it is idle.
    Type: Grant
    Filed: November 7, 1997
    Date of Patent: February 3, 2004
    Assignee: Xerox Corporation
    Inventors: Gilbert Kwock Keong Leong, Larry Dean Bonham, David P. Nesbitt, Leslie B. Nesbitt
  • Patent number: 6631009
    Abstract: A document printing system involves multi-threaded processing of a document object. A deadlock situation between a preprocessing thread and a cancellation thread can be averted with a time-out locking mechanism. After the cancellation thread has locked the document object, its sets a cancel flag, then waits for preprocessing to complete. Meanwhile, the preprocessing thread may request a lock of the document object. If so, it will specify a maximum time-out period. After expiration of the time-out period, a timed-out status response will be sent from the document object to the preprocessing thread. The preprocessing thread will then poll the document object for a cancel flag. A cancel flag will be set on the document object only if the cancellation thread has requested the document object perform a cancellation operation. If there is no cancel flag, the preprocessing thread will again request a lock of the document object with a maximum time-out period.
    Type: Grant
    Filed: September 24, 1999
    Date of Patent: October 7, 2003
    Assignee: Xerox Corporation
    Inventors: Jennifer D. Thomas, David P. Nesbitt
  • Patent number: 6546412
    Abstract: Temporary states are used transitionally in run-time situations and are unknown to the object database. A temporary state is created if, when an object is performing a requested event, interim work needs to be performed before the object reaches a permanent destination state. Use of a temporary state is transparent to the caller of the requested event. Within a single flow of control, an unlimited number of nested locks may be acquired. A request to unlock an object will only truly unlock the object if the unlock requester is at the highest level of locking. For recursive or embedded functions, no knowledge of the previous locking condition is necessary. Attribute-based locking provides a mechanism for allowing only certain members of the system to lock an object for writing while the object is in a predetermined state. However, any thread may obtain a read lock on an object in order to examine its attributes.
    Type: Grant
    Filed: November 7, 1997
    Date of Patent: April 8, 2003
    Assignee: Xerox Corporation
    Inventors: Sang W. Kim, David P. Nesbitt, Steve A. Okamoto, Jennifer D. Thomas
  • Publication number: 20020107998
    Abstract: Temporary states are used transitionally in run-time situations and are unknown to the object database. A temporary state is created if, when an object is performing a requested event, interim work needs to be performed before the object reaches a permanent destination state. Use of a temporary state is transparent to the caller of the requested event.
    Type: Application
    Filed: April 5, 2002
    Publication date: August 8, 2002
    Applicant: Xerox Corporation
    Inventors: Sang W. Kim, David P. Nesbitt, Steve A. Okamoto, Jennifer D. Thomas
  • Patent number: 6330565
    Abstract: A method and apparatus are provided for storing non-persistent attributes separately from persistent attributes in a print management system. The system server may register callback functions with the object database which allow an attribute to be stored non-persistently, yet be obtained from the object database as if they were stored as one of the persistent attributes. The server attempts to retrieve the attribute from an object database. The object database may then determine whether the requested attribute has been registered as non-persistent in a separate virtual memory. If the requested attribute is registered as non-persistent, the object database invokes the callback function. Otherwise, if the requested attribute is not registered as non-persistent, the object database retrieves the information from disk using a database application program.
    Type: Grant
    Filed: April 28, 1998
    Date of Patent: December 11, 2001
    Assignee: Xerox Corporation
    Inventor: David P. Nesbitt
  • Patent number: 6321249
    Abstract: A method and apparatus are provided to enable other system elements to obtain configuration attribute modifications from a print management system. An attribute broker provides two methods, register and advertise, to facilitate necessary configuration changes. The register method is called by other system elements to indicate an interest in a particular attribute. In registering interest in an attribute, the system element provides a callback function. The attribute broker maintains a list of all attributes that have been registered and keeps the set of callback functions for each registered attribute. Whenever a server configuration attribute is modified, the server object uses the advertise method to provide the attribute information to any system element that has registered interest in that attribute. Upon receiving the advertisement of an attribute, the attribute broker checks to see if any callback functions have been registered for that attribute.
    Type: Grant
    Filed: April 28, 1998
    Date of Patent: November 20, 2001
    Assignee: Xerox Corporation
    Inventor: David P. Nesbitt
  • Patent number: 6081906
    Abstract: A method and apparatus for parallel processing of remote procedure call (RPC) requests from clients includes placing the remote procedure call requests in a queue and storing them in a memory. A response is immediately returned to the client indicating receipt of the processing request. The RPC requests are retrieved from the queue and processed in parallel. Notification of the completed processing is provided to a notification client. In the event of a server fault or system failure, the processing requests are retrieved from the memory upon system restoration, and replaced into the queue in the order they were received by the server.
    Type: Grant
    Filed: November 21, 1997
    Date of Patent: June 27, 2000
    Assignees: Fuji Xerox Co., Ltd., Xerox Corporation
    Inventors: Takeshi Nishizawa, David P. Nesbitt, Ton H. Truong
  • Patent number: 6055063
    Abstract: A utility that defines additional attributes that would cater to a user's needs provides dynamically extended printing capabilities. The system architecture allows the information to be pushed down transparently to the receiving end, which understands the semantics of the given information. One possible function of the system administrators can be to define information to monitor for accounting purposes. The utility allows additional printer features to be incorporated without disrupting the existing system.
    Type: Grant
    Filed: November 7, 1997
    Date of Patent: April 25, 2000
    Assignee: Xerox Corporation
    Inventors: Jennifer Y. Yang, David P. Nesbitt, Ton H. Truong
  • Patent number: 5931919
    Abstract: Temporary states are used transitionally in run-time situations and are unknown to the object database. A temporary state is created if, when an object is performing a requested event, interim work needs to be performed before the object reaches a permanent destination state. Use of a temporary state is transparent to the caller of the requested event. Within a single flow of control, an unlimited number of nested locks may be acquired. A request to unlock an object will only truly unlock the object if the unlock requester is at the highest level of locking. For recursive or embedded functions, no knowledge of the previous locking condition is necessary. Attribute-based locking provides a mechanism for allowing only certain members of the system to lock an object for writing while the object is in a predetermined state. However, any thread may obtain a read lock on an object in order to examine its attributes.
    Type: Grant
    Filed: November 7, 1997
    Date of Patent: August 3, 1999
    Assignee: Xerox Corporation
    Inventors: Jennifer D. Thomas, Sang W. Kim, David P. Nesbitt, Steve A. Okamoto