IP Library Granted Patent US 6,920,635
Granted Patent B1
US 6,920,635 · App. 09/513,706 · Granted Jul 19, 2005

Method and apparatus for concurrent propagation of data between software modules

Assignee: Sun Microsystems, Inc.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 6,920,635
App. No.
09/513,706
Granted
Jul 19, 2005
Kind
B1
Abstract

Improved techniques for managing propagation of data through software modules used by computer systems are disclosed. The improved techniques allow a plurality of threads running on different processors to propagate data between software modules by providing concurrent access to queued data by multiple threads. The techniques are particularly well suited for use with the STREAMS model that uses software models arranged in a stack to provide data communications.

Claims (11)

1. A computer system for managing flow of messages comprising:

a plurality of processors;

first and second layer software modules, the second software module having a main queue suitable for storing messages and a segmented auxiliary queue suitable for storing messages that are not stored in the main queue;

wherein the segmented auxiliary queue is configured for storing and processing operational messages separately from data messages, said operational messages relating to operational events associated with managing flow of data between the first layer software module and the second layer software module; and

a propagation controller for propagating messages between the first and the second layer software modules, the propagation controller operating to enable at least two processors of said plurality of processors to concurrently propagate messages to or from the segmented auxiliary queue of the second software module wherein the propagation controller comprises:

a thread-count for one of the plurality of processors; and

a queue count for the segmented auxiliary queue;

wherein the segmented auxiliary queue is a segmented synchronization queue and the queue count is a segmented synchronization queue count.

2. A computer system as recited in claim 1 , wherein the at least two processors of said plurality of processors concurrently propagate a message from the first software module to the segmented auxiliary queue of the second software module.

3. A computer system as recited in claim 1 , wherein the at least two processors of said plurality of processors concurrently propagate a message from the first software module to the main queue of the second software module.

4. A computer system as recited in claim 1 , wherein the first and second software modules are implemented in a stack as STREAMS modules.

Assignments (2)
MERGER AND CHANGE OF NAME Recorded Aug 31, 2016
From: ORACLE USA, INC.; SUN MICROSYSTEMS, INC.; ORACLE AMERICA, INC.
To: ORACLE AMERICA, INC.
Reel/Frame 039604/0471 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 9, 2000
From: LODDRIGE, PAUL F.; FISHEL, RANDY S.
To: SUN MICROSYSEMS, INC.
Reel/Frame 010799/0780 →