Patents by Inventor Wilson Chan

Wilson Chan 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: 9128895
    Abstract: Described herein are techniques for dynamically monitoring and managing resource usages of processes running on a node in a multi-node database system. High resource usages of processes can be proactively detected and alleviated, thereby making such a node to perform significantly better than otherwise.
    Type: Grant
    Filed: February 19, 2009
    Date of Patent: September 8, 2015
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Wilson Chan, Angelo Pruscino, Tak Fung Wang, Cheng-Lu Hsu
  • Patent number: 9075650
    Abstract: Systems, methods, and other embodiments associated with avoiding resource blockages and hang states are described. One example computer-implemented method for a computing system includes determining that a first process is waiting for a resource and is in a blocked state. The resource that the first process is waiting for is identified. A blocking process that is holding the resource is then identified. A priority of the blocking process is compared with a priority the first process. If the priority of the blocking process is lower than the priority of the first process, the priority of the blocking process is increased. In this manner the blocking process can be scheduled for execution sooner and thus release the resource.
    Type: Grant
    Filed: April 22, 2013
    Date of Patent: July 7, 2015
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Michael Zoll, Angelo Pruscino, Wilson Chan
  • Patent number: 8990179
    Abstract: Described herein are techniques for time limited lock ownership. In one embodiment, in response to receiving a request for a lock on a shared resource, the lock is granted and a lock lease period associated with the lock is established. Then, in response to determining that the lock lease period has expired, one or more lock lease expiration procedures are performed. In many cases, the time limited lock ownership may prevent system hanging, timely detect system deadlocks, and/or improve overall performance of the database.
    Type: Grant
    Filed: December 20, 2012
    Date of Patent: March 24, 2015
    Assignee: Oracle International Corporation
    Inventors: Wilson Chan, Angelo Pruscino, Michael Zoll
  • Patent number: 8793702
    Abstract: A request to share visual data from a requester is received. The request is stored on a device configured to share visual data. It is determined whether a communication event indicating that the device is about to communicate with the requester has occurred. The communication event includes an indication that contact information associated with the requester is displayed on the device. In the event that it is determined that a communication event has occurred, a reminder to share visual data associated with the request is indicated.
    Type: Grant
    Filed: October 23, 2007
    Date of Patent: July 29, 2014
    Assignee: Adobe Systems Incorporated
    Inventors: Grace Kim, Wilson Chan
  • Publication number: 20140082633
    Abstract: A request to share visual data from a requester is received. The request is stored on a device configured to share visual data. It is determined whether a communication event indicating that the device is about to communicate with the requester has occurred. The communication event includes an indication that contact information associated with the requester is displayed on the device. In the event that it is determined that a communication event has occurred, a reminder to share visual data associated with the request is indicated.
    Type: Application
    Filed: October 23, 2007
    Publication date: March 20, 2014
    Inventors: Grace Kim, Wilson Chan
  • Publication number: 20130232496
    Abstract: Systems, methods, and other embodiments associated with avoiding resource blockages and hang states are described. One example computer-implemented method for a computing system includes determining that a first process is waiting for a resource and is in a blocked state. The resource that the first process is waiting for is identified. A blocking process that is holding the resource is then identified. A priority of the blocking process is compared with a priority the first process. If the priority of the blocking process is lower than the priority of the first process, the priority of the blocking process is increased. In this manner the blocking process can be scheduled for execution sooner and thus release the resource.
    Type: Application
    Filed: April 22, 2013
    Publication date: September 5, 2013
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Michael ZOLL, Angelo PRUSCINO, Wilson CHAN
  • Publication number: 20130185270
    Abstract: A method for locking resources, including: receiving, by an accelerator, a first request from a first client to lock a first resource; evaluating, by a computer processor of a server, a hash function using an identifier of the first resource as an input to the hash function; identifying, by the computer processor and based on evaluating the hash function, a first hash bucket in a shared memory residing in a physical memory of the server; detecting that the first hash bucket is occupied; and sending the first request to a master lock monitor residing in a user space of the server based at least on detecting that the first hash bucket is occupied.
    Type: Application
    Filed: January 13, 2012
    Publication date: July 18, 2013
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: David Brower, Angelo Pruscino, Wilson Chan, Tak Fung Wang
  • Patent number: 8429657
    Abstract: Systems, methods, and other embodiments associated with avoiding resource blockages and hang states are described. One example computer-implemented method for a clustered computing system includes determining that a first process is waiting for a resource and is in a blocked state. The resource that the first process is waiting for is identified. A blocking process that is holding the resource is then identified. A priority of the blocking process is compared with a priority the first process. If the priority of the blocking process is lower than the priority of the first process, the priority of the blocking process is increase. In this manner the blocking process can be scheduled for execution sooner and thus release the resource.
    Type: Grant
    Filed: April 28, 2008
    Date of Patent: April 23, 2013
    Assignee: Oracle International Corporation
    Inventors: Michael Zoll, Angelo Pruscino, Wilson Chan
  • Patent number: 8370318
    Abstract: Described herein are techniques for time limited lock ownership. In one embodiment, in response to receiving a request for a lock on a shared resource, the lock is granted and a lock lease period associated with the lock is established. Then, in response to determining that the lock lease period has expired, one or more lock lease expiration procedures are performed. In many cases, the time limited lock ownership may prevent system hanging, timely detect system deadlocks, and/or improve overall performance of the database.
    Type: Grant
    Filed: December 19, 2008
    Date of Patent: February 5, 2013
    Assignee: Oracle International Corporation
    Inventors: Wilson Chan, Angelo Pruscino, Michael Zoll
  • Patent number: 8365177
    Abstract: Measuring processes are started at a plurality of priority levels. A different one of the measuring processes is started for each of the priority levels. Subsequently, for each of the measuring processes, it is determined whether each measuring process is scheduled for executing at a respective target rate. In response to determining that a particular measuring process of the measuring processes is not scheduled for executing at a particular target rate, resource allocation to at least one monitored process running at a particular level of the priority levels is adjusted. The at least one monitored process is not any of the measuring processes.
    Type: Grant
    Filed: January 20, 2009
    Date of Patent: January 29, 2013
    Assignee: Oracle International Corporation
    Inventors: Wilson Chan, Angelo Pruscino, Ahmed S. Abbas, Tak Fung Wang
  • Patent number: 8286182
    Abstract: A method of deadlock detection is disclosed which adjusts the detection technique based on statistics maintained for tracking the number of actual deadlocks that are detected in a distributed system, and for which types of locks are most frequently involved in deadlocks. When deadlocks occur rarely, the deadlock detection may be tuned down, for example, by reducing a threshold value which determines timeouts for waiting lock requests. When it is determined that actual deadlocks are detected frequently, the processing time for deadlock detection may be reduced, for example, by using parallel forward or backward search operations and/or by according higher priority in deadlock detection processing to locks which are more likely to involve deadlocks.
    Type: Grant
    Filed: June 2, 2010
    Date of Patent: October 9, 2012
    Assignee: Oracle International Corporation
    Inventor: Wilson Chan
  • Patent number: 8266479
    Abstract: Described herein are techniques for dynamically monitoring process activeness of processes running on a computing node. Problems affecting processes to serve their designated functions on the computing node can be relatively quickly detected and dealt with, thereby making restoring process activeness on the computing node much more quickly than otherwise.
    Type: Grant
    Filed: April 6, 2009
    Date of Patent: September 11, 2012
    Assignee: Oracle International Corporation
    Inventors: Wilson Chan, Cheng-Lu Hsu, Angelo Pruscino
  • Patent number: 8220001
    Abstract: Described herein are techniques for adaptively managing timers that are used in various layers of a node. In many cases, the number of timers that occur in the system is reduced by proactively and reactively adjusting values of the timers based on conditions affecting the system, thereby making such a system to perform significantly better and more resiliently than otherwise.
    Type: Grant
    Filed: February 13, 2009
    Date of Patent: July 10, 2012
    Assignee: Oracle International Corporation
    Inventors: Wilson Chan, Deepti Srivastava, Tolga Yurek, Yu Kin Ho, John Hsu, Tak Fung Wang, Angelo Pruscino
  • Patent number: 8117488
    Abstract: Database server instances in a database server cluster broadcast, to other instances in the cluster, information concerning certain problem events. Because each server instance is aware of problems that other server instances are experiencing, each server instance is enabled to make more intelligent decisions regarding the actions that it should perform in response to the problems that the server instance is experiencing. Instead of terminating itself, a server instance might opt to wait for a longer amount of time for an operation to complete. The server instance may do so due to the server instance having received information that indicates that other server instances are experiencing similar problems. Whenever the information received from other server instances makes it appear that a problem is unlikely to be solved in the cluster as a whole by terminating a server instance, that server instance may continue to wait instead of terminating itself.
    Type: Grant
    Filed: October 23, 2009
    Date of Patent: February 14, 2012
    Assignee: Oracle International Corporation
    Inventors: Wilson Chan, Angelo Pruscino, Tak Fung Wang
  • Patent number: 8081227
    Abstract: An image for which a quality indicator is to be displayed is obtained. The image is processed to obtain a quality value associated with the quality of the image. The quality indicator based at least in part on the quality value is displayed, wherein the quality indicator is displayed with a displayed version of the image.
    Type: Grant
    Filed: November 30, 2006
    Date of Patent: December 20, 2011
    Assignee: Adobe Systems Incorporated
    Inventors: Grace Kim, Wilson Chan, Sheryl Ehrlich
  • Publication number: 20110099412
    Abstract: Database server instances in a database server cluster broadcast, to other instances in the cluster, information concerning certain problem events. Because each server instance is aware of problems that other server instances are experiencing, each server instance is enabled to make more intelligent decisions regarding the actions that it should perform in response to the problems that the server instance is experiencing. Instead of terminating itself, a server instance might opt to wait for a longer amount of time for an operation to complete. The server instance may do so due to the server instance having received information that indicates that other server instances are experiencing similar problems. Whenever the information received from other server instances makes it appear that a problem is unlikely to be solved in the cluster as a whole by terminating a server instance, that server instance may continue to wait instead of terminating itself.
    Type: Application
    Filed: October 23, 2009
    Publication date: April 28, 2011
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Wilson Chan, Angelo Pruscino, Tak Fung Wang
  • Patent number: 7930675
    Abstract: Operations are performed in EDA tools that operate upon partitions or discrete portions of an electronic design, in which the partitions or discrete portions of the design are expanded to account for effects to/from other areas in the design. Identification is made of the portions of the design that are external to the partitions, and depending upon the type of expected effects, would then be considered during optimization and analysis of the partitions. This is implemented by logically expanding the partition to include consideration of the external portions during timing optimization and analysis. By considering an expanded partition for timing optimization and analysis, it is possible to identify unintended problems caused by the timing optimization at an earlier stage of the design process.
    Type: Grant
    Filed: December 26, 2007
    Date of Patent: April 19, 2011
    Assignee: Cadence Design Systems, Inc.
    Inventors: Oleg Levitsky, Kit Lam Cheong, Wilson Chan, Dongzi Liu
  • Patent number: 7917596
    Abstract: Described herein are techniques for using super masters to coordinate accesses by nodes in a database server cluster to data stored in a database. In many cases, the number of inter-nodal messages is reduced, thereby saving the overheads attendant to coordinating accesses in such a system.
    Type: Grant
    Filed: January 7, 2009
    Date of Patent: March 29, 2011
    Assignee: Oracle International Corporation
    Inventors: Wilson Chan, Angelo Pruscino, Michael Zoll
  • Publication number: 20110067008
    Abstract: Techniques for adaptive trace logging include, in one embodiment, obtaining input data on trace logging behavior and computing resources used by trace logging. Based on the obtained input data, an adaptive trace logging module automatically takes action at runtime to reduce the amount of computing resources consumed by tracing logging. For example, the action taken may include decreasing a trace logging level of an executing software program to reduce the number of trace logging messages added to a trace log. In another embodiment, the techniques include detecting a condition of an executing software program that warrants a change to a trace logging level of the executing program. The adaptive trace logging module automatically changes the trace logging level of the executing program as-needed for the detected condition. For example, the adaptive trace logging module may increase the trace logging level of an executing program upon detecting a deadlock or other abnormal condition of the executing program.
    Type: Application
    Filed: September 14, 2009
    Publication date: March 17, 2011
    Inventors: Deepti Srivastava, Wilson Chan, John Hsu, Eugene Ho, Tolga Yurek, Beverly Zane, Angelo Pruscino
  • Patent number: 7890950
    Abstract: A method, an apparatus and a system perform software uninstallation that integrates transfer activation. In some embodiments, a method includes uninstalling software from a machine that is activated on the machine. The software has a limited number of activations. The uninstalling operation comprises deactivating the software on the machine.
    Type: Grant
    Filed: May 31, 2005
    Date of Patent: February 15, 2011
    Assignee: Adobe Systems Incorporated
    Inventors: Mihir Nanavati, Xuejun Xu, Wilson Chan, Nobuo Griffin