Patents by Inventor Stephen A. Jay
Stephen A. Jay 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: 8201179Abstract: A method for controlling sharing of resources in a multi-threaded environment includes entering a finite state machine state sequence; controlling resource-sharing threads using the finite state machine state sequence; and exiting the finite state machine state sequence when shared resource control is complete. A multi-threaded shared resource control system includes a finite state machine configured to control multi-threaded access to shared resources; a plurality of producer threads regulated by the finite state machine; and a plurality of consumer threads regulated by the finite state machine.Type: GrantFiled: May 4, 2006Date of Patent: June 12, 2012Assignee: Oracle America, Inc.Inventors: Glenn A. Dearth, Stephen A. Jay
-
Patent number: 7480735Abstract: A system and method for routing between nodes in a network or subnet. An end node is associated with multiple identifiers for routing purposes, and therefore multiple paths may exist between two end nodes. Network nodes and components (e.g., switches) are grouped into fault zones. Each physical enclosure of network entities may comprise a separate fault zone. For each zone through which a path between two nodes passes, a weight is calculated equal to the number of paths between the nodes that traverse that zone. Path weights are calculated for each path between the nodes, equal to the sum of the weights of each zone in the path. To improve network fault tolerance, new paths may be designed to avoid fault zones and existing paths with high weights. Instead of fault zones, other criteria may be used to assign weights, such as mean time between failures (MTBF), cost, speed, etc.Type: GrantFiled: September 11, 2003Date of Patent: January 20, 2009Assignee: Sun Microsystems, Inc.Inventors: Jeremy N. Shapiro, Stephen A. Jay
-
Patent number: 7448044Abstract: Systems and methods are described for providing queue pair numbers for a queue pair to more effectively track and manage the frequency of use and re-use of queue pair numbers on a queue pair context basis in an InfiniBand™ device. The present invention uses a counter for each queue pair context to set the changeable portion of the queue pair number. A reference count for each queue pair context is also used to track the quantity of queue pair numbers currently allocated to a queue pair context. The present invention sets, tracks and manages the values of the counter and the reference count for each queue pair context in conjunction with queue pair operations to provide a systematic queue pair numbering scheme. By tracking and/or setting values of the counter and reference count for a queue pair context, the present invention re-uses queue pair numbers efficiently and in a predictable and repeatable manner.Type: GrantFiled: February 2, 2005Date of Patent: November 4, 2008Assignee: Sun Microsystems, Inc.Inventors: Stephen T. Rust, Stephen A. Jay
-
Publication number: 20070271404Abstract: A method for controlling hot-plug behavior includes identifying a hot-plug event caused by a hot-plug device; generating hot-plug threads that execute a hot-plug operation; executing a finite state machine state sequence to regulate hot-plug threads involved in the hot-plug operation; and completing the hot-plug operation at the end of the finite state machine state sequence. A computer usable medium has computer readable program code embodied therein for causing a computer system to execute the method for controlling hot-plug behavior. A hot-plug control system for a computer system includes a hot-plug device; a set of hot-plug threads that regulate operations in the hot-plug device; and a finite state machine that controls execution of instructions using the set of threads.Type: ApplicationFiled: May 16, 2006Publication date: November 22, 2007Applicant: Sun Microsystems, Inc.Inventors: Glenn A. Dearth, Stephen A. Jay, Joseph J. Ervin, Gyorgy Rubin, Michael V. Lopresti
-
Patent number: 7295525Abstract: A system and method for efficiently managing membership in a multicast communication group. The system may comprise any number of end nodes (e.g., channel adapters, network interface adapters) and routing nodes (e.g., switches), and the method may be implemented by a processor coupled to any node. Each node in a network may be a member of the multicast group and/or the multicast tree (MCT) that routes the group's multicast communications. A node need not be a member of the group to be a member of the tree. Network links included in the multicast tree (MCT) are a subset of a network minimum spanning tree (MST). When a node is added to the group, the minimum spanning tree (MST) is searched from that node until a node within the multicast tree (MCT) is found. Each time a member is removed from the group, the multicast tree (MCT) is pruned to reduce unneeded communications.Type: GrantFiled: September 11, 2003Date of Patent: November 13, 2007Assignee: Sun Microsystems, Inc.Inventors: Jeremy N. Shapiro, Stephen A. Jay
-
Patent number: 6917970Abstract: After a reset on a bus, the topologies of nodes on the bus before and after the reset are accessed to identify nodes that are new to the bus. A host identifies itself in both the new topology data and the old topology data. Referring to the connectedness between ports of a node and other ports in the new topology, similarly connected nodes in the old topology are identified as matching. Identifying data present in the old data can be assigned to the corresponding node in the new data. Any nodes in the new tree lacking a matching node will require requests over the bus to obtain its identification data.Type: GrantFiled: March 9, 2001Date of Patent: July 12, 2005Assignee: Sun Microsystems, Inc.Inventors: Stephen A. Jay, Srinivas Madhur, Mark R. Johnson, Diana C. Klashman
-
Patent number: 6901463Abstract: A method for linking work requests in a work queue with entries on a queue of completed requests. For each work queue, a tracking list is created. Each tracking list is linked to one queue of completed requests. When a work request is added to a given work queue, an entry is added to the associated tracking list. The entry in the tracking list contains all of the information needed to uniquely associate a completion queue entry to the work request that caused the completion queue entry. When a completion queue entry is retrieved from the completion queue, the tracking list for the work queue is searched for an entry corresponding to the completion queue entry. The work request that caused the completion queue entry is then identified from the information in the tracking list entry.Type: GrantFiled: March 5, 2003Date of Patent: May 31, 2005Assignee: Sun Microsystems, Inc.Inventors: Stephen A. Jay, Mark R. Johnson
-
Publication number: 20040250000Abstract: A method for linking work requests in a work queue with entries on a queue of completed requests. For each work queue, a tracking list is created. Each tracking list is linked to one queue of completed requests. When a work request is added to a given work queue, an entry is added to the associated tracking list. The entry in the tracking list contains all of the information needed to uniquely associate a completion queue entry to the work request that caused the completion queue entry. When a completion queue entry is retrieved from the completion queue, the tracking list for the work queue is searched for an entry corresponding to the completion queue entry. The work request that caused the completion queue entry is then identified from the information in the tracking list entry.Type: ApplicationFiled: March 5, 2003Publication date: December 9, 2004Inventors: Stephen A. Jay, Mark R. Johnson
-
Patent number: 6823449Abstract: A method of reading configuration ROM in a serial bus device reads only portions of the ROM that are organized in a directory structure. Typically, the configuration ROM follows the IEEE 1212 and/or 1394 standards and uses an IEEE 1394 bus. Based on the information read from the configuration ROM, a connecting computer can determine the appropriate device driver to use for communications with the device.Type: GrantFiled: March 9, 2001Date of Patent: November 23, 2004Assignee: Sun Microsystems, Inc.Inventors: Srinivas Madhur, Mark R. Johnson, Stephen A. Jay, Diana C. Klashman
-
Publication number: 20020174275Abstract: After a reset on a bus, the topologies of nodes on the bus before and after the reset are accessed to identify nodes that are new to the bus. A host identifies itself in both the new topology data and the old topology data. Referring to the connectedness between ports of a node and other ports in the new topology, similarly connected nodes in the old topology are identified as matching. Identifying data present in the old data can be assigned to the corresponding node in the new data. Any nodes in the new tree lacking a matching node will require requests over the bus to obtain its identification data.Type: ApplicationFiled: March 9, 2001Publication date: November 21, 2002Inventors: Stephen A. Jay, Srinivas Madhur, Mark R. Johnson, Diana C. Klashman
-
Publication number: 20020129231Abstract: A method of reading configuration ROM in a serial bus device reads only portions of the ROM that are organized in a directory structure. Typically, the configuration ROM follows the IEEE 1212 and/or 1394 standards and uses an IEEE 1394 bus. Based on the information read from the configuration ROM, a connecting computer can determine the appropriate device driver to use for communications with the device.Type: ApplicationFiled: March 9, 2001Publication date: September 12, 2002Inventors: Srinivas Madhur, Mark R. Johnson, Stephen A. Jay, Diana C. Klashman