Patents by Inventor Sanjay R. Radia

Sanjay R. Radia 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: 7818721
    Abstract: A method for dynamic application tracing in virtual machine environments comprises receiving an instrumentation request that includes an identification of a probe point at which instrumentation code is to be inserted within an application. The method may further comprise making a determination whether the instrumentation code meets one or more acceptance criteria. If the instrumentation code is found to be acceptable, the method may further comprise inserting the instrumentation code at the probe point within the application while the application is executing within a virtual machine, and obtaining information indicative of application state from an execution of the instrumentation code when the probe point is reached during application execution.
    Type: Grant
    Filed: February 1, 2006
    Date of Patent: October 19, 2010
    Assignee: Oracle America, Inc.
    Inventors: Athijegannathan Sundararajan, Sanjay R. Radia, Sanjeev Krishnan
  • Patent number: 7269608
    Abstract: An object cache stores objects in a cyclic buffer to provide highly efficient creation of cache entries. The cache efficiently manages storage of a large number of small objects because the cache does not write objects into a file system as individual files, rather the cache utilizes cyclical buffers in which to store objects as they are added to the cache. Because of the use of a cyclic buffer, the high-overhead process of purging cache entries never needs to be performed. Cache entries are automatically purged as they are overwritten when the cyclic buffer becomes full and the input pointer wraps around from the end of a cyclic buffer to the beginning of a cyclic buffer. Additionally, in the event of a system crash or disk subsystem malfunction, inspect and repair time is independent of the size of the cache, as opposed to conventional file systems in which the time is proportional to the size of the file system.
    Type: Grant
    Filed: May 3, 2002
    Date of Patent: September 11, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Thomas K. Wong, Panagiotis Tsirigotis, Sanjay R. Radia, Rajeev Chawla, Omid Ahmadian
  • Patent number: 7123613
    Abstract: A transparent proxy server is implemented by directing particular client packets to a proxy server that handles communications between the client and an origin server. When a client sends a packet to an origin server, a router transparently redirects the packet to the proxy server by storing the proxy server address in the destination field and the origin server address in the record route options field. The proxy server sends connection setup requests to the origin server and forwards acknowledgement packets to the client. For other requests, the proxy server determines whether the requested information is stored in the proxy server cache. If so, the information is retrieved from the cache; if not, the information is retrieved from the origin server. All acknowledgement and information packets are sent to the client with the origin server address in the source field, making it appear that the origin server sent the packets.
    Type: Grant
    Filed: April 7, 2000
    Date of Patent: October 17, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Rajeev Chawla, Thomas K. Wong, Panagiotis Tsirigotis, Omid Ahmadian, Sanjay R. Radia, Ashvin Kamaraju
  • Patent number: 6883068
    Abstract: Methods and systems are provided for processing a cache. A candidate object is identified for updating. A fresh object corresponding to the candidate object is obtained if it is determined that a newer version of the candidate object is available. A destination buffer is selected from a group of primary and non-primary buffers based on an amount of available space in a primary buffer. The fresh object is stored in the destination buffer.
    Type: Grant
    Filed: December 17, 2001
    Date of Patent: April 19, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: Panagiotis Tsirigotis, Rajeev Chawla, Sanjay R. Radia
  • Patent number: 6807615
    Abstract: An apparatus and method for creating and maintaining a cyclic or circular buffer are implemented using logical blocks corresponding to the physical blocks of the buffer. The logical blocks are mapped to the physical blocks of the cyclic buffer, and are used to create an index table for the buffer. Each entry in the index table corresponds to one or more blocks in the buffer, and has a logical block number respectively associated with a buffer block. When information from the buffer is accessed, the index table is consulted to determine if the requested information is stored in the buffer. If the information is stored in the buffer, the logical block number corresponding to the information is retrieved from the entry and translated into a corresponding physical block number. Using logical block numbers allows simple determination of whether the buffer block is valid, and how new or fresh the buffer block is without requiring a generation or cycle number.
    Type: Grant
    Filed: April 8, 1999
    Date of Patent: October 19, 2004
    Assignee: Sun Microsystems, Inc.
    Inventors: Thomas K. Wong, Panagiotis Tsirigotis, Rajeev Chawla, Omid Ahmadian, Sanjay R. Radia
  • Patent number: 6754800
    Abstract: Systems and methods are disclosed in which a computer system having main memory and persistent memory is caused to perform a method for caching related objects. The computer system receives a plurality of objects from an origin server and computes a hash value based on source information about an object. Then the computer system stores the object based on the hash value with other related objects. Additionally, a computer system consistent with the present invention may retrieve related objects from the cache by performing a batch read of related objects.
    Type: Grant
    Filed: November 14, 2001
    Date of Patent: June 22, 2004
    Assignee: Sun Microsystems, Inc.
    Inventors: Thomas K. Wong, Panagiotis Tsirigotis, Sanjay R. Radia, Rajeev Chawla
  • Publication number: 20040111443
    Abstract: An object cache stores objects in a cyclic buffer to provide highly efficient creation of cache entries. The cache efficiently manages storage of a large number of small objects because the cache does not write objects into a file system as individual files, rather the cache utilizes cyclical buffers in which to store objects as they are added to the cache. Because of the use of a cyclic buffer, the high-overhead process of purging cache entries never needs to be performed. Cache entries are automatically purged as they are overwritten when the cyclic buffer becomes full and the input pointer wraps around from the end of a cyclic buffer to the beginning of a cyclic buffer. Additionally, in the event of a system crash or disk subsystem malfunction, inspect and repair time is independent of the size of the cache, as opposed to conventional file systems in which the time is proportional to the size of the file system.
    Type: Application
    Filed: May 3, 2002
    Publication date: June 10, 2004
    Inventors: Thomas K. Wong, Panagiotis Tsirigotis, Sanjay R. Radia, Rajeev Chawla, Omid Ahmadian
  • Patent number: 6718550
    Abstract: Data structures, methods and devices for reducing computing overhead by utilizing different invocation paths for same process and different process invocations in a distributed client/server based computing system are disclosed. In one aspect of the invention, calls to a servant that do not share the same process as the requesting client are routed through a transport layer, and calls to servants that do share the same process as the requesting client are passed directly to the servant, thereby bypassing the transport layer. In another aspect of the invention, distinct remote and local method tables are provided to facilitate intelligent routing of requests. In still another aspect of the invention, the appropriate method table for an object reference is intelligently selected based upon the location of the identified object.
    Type: Grant
    Filed: June 26, 1996
    Date of Patent: April 6, 2004
    Assignee: Sun Microsystems, Inc.
    Inventors: Swee Boon Lim, Peter B. Kessler, Sanjay R. Radia, Graham Hamilton
  • Publication number: 20030115420
    Abstract: Methods and systems are provided for processing a cache. A candidate object is identified for updating. A fresh object corresponding to the candidate object is obtained if it is determined that a newer version of the candidate object is available. A destination buffer is selected from a group of primary and non-primary buffers based on an amount of available space in a primary buffer. The fresh object is stored in the destination buffer.
    Type: Application
    Filed: December 17, 2001
    Publication date: June 19, 2003
    Inventors: Panagiotis Tsirigotis, Rajeev Chawla, Sanjay R. Radia
  • Publication number: 20030093645
    Abstract: Systems and methods are disclosed in which a computer system having main memory and persistent memory is caused to perform a method for caching related objects. The computer system receives a plurality of objects from an origin server and computes a hash value based on source information about an object. Then the computer system stores the object based on the hash value with other related objects. Additionally, a computer system consistent with the present invention may retrieve related objects from the cache by performing a batch read of related objects.
    Type: Application
    Filed: November 14, 2001
    Publication date: May 15, 2003
    Inventors: Thomas K. Wong, Panagiotis Tsirigotis, Sanjay R. Radia, Rajeev Chawla
  • Publication number: 20020184441
    Abstract: An object cache stores objects in a cyclic buffer to provide highly efficient creation of cache entries. The cache efficiently manages storage of a large number of small objects because the cache does not write objects into a file system as individual files, rather the cache utilizes cyclical buffers in which to store objects as they are added to the cache. Because of the use of a cyclic buffer, the high-overhead process of purging cache entries never needs to be performed. Cache entries are automatically purged as they are overwritten when the cyclic buffer becomes full and the input pointer wraps around from the end of a cyclic buffer to the beginning of a cyclic buffer. Additionally, in the event of a system crash or disk subsystem malfunction, inspect and repair time is independent of the size of the cache, as opposed to conventional file systems in which the time is proportional to the size of the file system.
    Type: Application
    Filed: June 19, 2001
    Publication date: December 5, 2002
    Inventors: Thomas K. Wong, Panagiotis Tsirigotis, Sanjay R. Radia, Rajeev Chawla, Omid Ahmadian
  • Patent number: 6418484
    Abstract: A method of remotely executing a computer process between a parent computer initiating the process and a child computer executing the process. In one embodiment the process includes a step of associating objects with representations having specific object bindings dependent on the site of process of execution. The same representation has a first object binding if the process is executed on the parent computer, and a second object binding if the process is executed on the child computer. The set of objects associated with these location dependent representations may include objects resident at both the parent and child computers. Additional objects may be associated with a second set of representations having object bindings dependent upon the network site of process execution to accommodate remote process executions across two or more computer networks. In an alternative embodiment, objects are associated with multiple representations in an ordered merge directory.
    Type: Grant
    Filed: June 17, 1994
    Date of Patent: July 9, 2002
    Assignee: Sun Microsystems, Inc.
    Inventor: Sanjay R. Radia
  • Patent number: 6412019
    Abstract: Methods and apparatus in an object oriented programming environment for invocation of objects with interface inheritance. An object reference using mtables contains two parts, more specifically, a pointer to the data for an object and a pointer to the methods on the object. The methods on the object are represented by a collection of mtables. An mtable for a given interface consists of pointers to mtables for inherited interfaces and pointers to functions implementing the operations declared in the interface. An mtable pointer in an object reference points to an mtable for an apparent interface of the object reference. Mtables for any inherited interfaces are reached by indirection from the mtables for the apparent interface.
    Type: Grant
    Filed: January 15, 1997
    Date of Patent: June 25, 2002
    Assignee: Sun Microsystems, Inc.
    Inventors: Jonathan J. Gibbons, Graham Hamilton, Peter B. Kessler, Michael L. Powell, Sanjay R. Radia
  • Patent number: 6260074
    Abstract: A method and apparatus for passing generic objects in a distributed system is disclosed. At the receiving process, the generic object is unmarshaled. However, the object of type T is maintained in its marshaled form. If the generic object is subsequently passed to another process, a copy of the marshaled form of the object of type T is passed. The object of type T is not unmarshaled until the generic object is received by a process that narrows the generic object into the object of type T.
    Type: Grant
    Filed: March 30, 1996
    Date of Patent: July 10, 2001
    Assignee: Sun Microsystems, Inc.
    Inventors: Sanjay R. Radia, Peter Kessler
  • Patent number: 6189048
    Abstract: Data structures, methods and devices for reducing computing overhead associated with dispatching a distributed object invocation and improving the flexibility of the dispatch framework in a distributed client/server based computing system are disclosed. In one aspect of the invention, a request received on an end point in a transport layer is dispatched from the transport layer to a subcontract in a subcontract layer where the request is partially unmarshaled and dispatched from the subcontract to a skeleton function in a skeleton layer where a servant is invoked.
    Type: Grant
    Filed: June 26, 1996
    Date of Patent: February 13, 2001
    Assignee: Sun Microsystems, Inc.
    Inventors: Swee Boon Lim, Sanjay R. Radia, Ken M. Cavanaugh, III, Christian J. Callsen
  • Patent number: 6182158
    Abstract: An embodiment of the present invention provides an efficient and robust way to facilitate interoperability between two or more processes which were initially written to execute on top of two different operating systems but instead execute on top of a third operating system. Typically, the preferred embodiment begins by launching a parent process which was initially written to execute on top of a first operating system. The preferred embodiment then obtains a context object that implements a naming graph for the parent process. The context object includes bindings between a given set of names and an associated set of objects that are specific to the first operating system. At some point during execution of the parent process, the parent process spawns a child process which was initially written to execute on top of a second operating system. Next, the parent process instantiates a copy of its context object.
    Type: Grant
    Filed: August 19, 1997
    Date of Patent: January 30, 2001
    Assignee: Sun Microsystems, Inc.
    Inventors: Panagiotis Kougiouris, Peter W. Madany, Sanjay R. Radia, Anil S. Shivanlingiah
  • Patent number: 6098096
    Abstract: A caching server that provides faster access times for independently operating network elements. The caching server initiates information transfer and holds the requested information in its memory, instead of caching information transfer in response to user requests. The caching server preloads information from another server into its memory based on a set of predetermined criteria. Such preloading preferably occurs during low usage time, such as nighttime. The information source determines which information is described in the catalog in accordance with one of a second set of predetermined criteria. For example, the catalog may be organized according to size and the information source will organize the catalog by file size.
    Type: Grant
    Filed: December 9, 1996
    Date of Patent: August 1, 2000
    Assignee: Sun Microsystems, Inc.
    Inventors: Panagiotis Tsirigotis, Sanjay R. Radia
  • Patent number: 6073178
    Abstract: A preferred embodiment of the present invention includes a method and apparatus for allocating and using IP addresses in a network of client systems. More specifically, the present invention includes a router which monitors the assignments of IP addresses by a DHCP server. As each IP address is assigned, the router associates the assigned IP address with an trusted identifier which identifies the client system. Subsequently, if the router received a packet directed at the assigned IP address, the router forwards the packet to the client system having an trusted identifier associated with the destination address of the IP packet. Additionally, if the router receives a packet from a client system, it uses the trusted identifier of the client system to find IP addresses associated with the client system. If the source address of the IP packet is not included in the IP addresses associated with the client system, the packet is discarded.
    Type: Grant
    Filed: December 9, 1996
    Date of Patent: June 6, 2000
    Assignees: Sun Microsystems, Inc., Motorola, Inc.
    Inventors: Thomas K. Wong, Swee B. Lim, Sanjay R. Radia, Panagiotis Tsirigotis, Robert J. Goedman, Michael W. Patrick
  • Patent number: 6070242
    Abstract: The present invention includes a method and apparatus for registering devices in a computer network. Initially, for an unregistered device, the network establishes a unregistered enabled packet filter. The unregistered enabled packet filter discards all IP packets that originate at the unregistered device, except IP packets addressed to a registration server. IP packets sent to the registration server allow a user to authenticate the unregistered device. Subsequently, the network replaces the unregistered enabled packet filter with a registered enable packet filter. The registered enabled packet filter allows the device to send packets to a login server within the computer network. Subsequently, if the user fails to pay subscription fees (of for other applicable reason) the registered enabled packet filter may be replaced with a registered disabled packet filter to prevent the device from sending packets to the network.
    Type: Grant
    Filed: December 9, 1996
    Date of Patent: May 30, 2000
    Assignee: Sun Microsystems, Inc.
    Inventors: Thomas K. Wong, Sanjay R. Radia
  • Patent number: 6044224
    Abstract: A data structure for dynamically associating a service dependent representation with a servant object at run time is used in a distributed object computing system that incorporates subcontracts. Subcontracts supply different functionalities to objects. The data structure exists before run time, and is used at run time to perform the dynamic association. An arrangement also exists at run time. The structure comprises a service representation class representing a single subcontract, a servant base class associated with servant objects created at run time, and a linking mechanism to form a run time link between the server rep class and a servant object at run time. The server rep class provides functionality unique to a subcontract. At run time, servant objects are instantiated from the servant base class or a more derived class. The servant object uses the functionality provided by a subcontract by way of the linking mechanism.
    Type: Grant
    Filed: June 26, 1996
    Date of Patent: March 28, 2000
    Assignee: Sun Microsystems, Inc.
    Inventors: Sanjay R. Radia, Swee Boon Lim, Peter B. Kessler