AU2001227533A1 - Double-ended queue in a contiguous array with concurrent non-blocking insert andremove operations - Google Patents
Double-ended queue in a contiguous array with concurrent non-blocking insert andremove operationsInfo
- Publication number
- AU2001227533A1 AU2001227533A1 AU2001227533A AU2753301A AU2001227533A1 AU 2001227533 A1 AU2001227533 A1 AU 2001227533A1 AU 2001227533 A AU2001227533 A AU 2001227533A AU 2753301 A AU2753301 A AU 2753301A AU 2001227533 A1 AU2001227533 A1 AU 2001227533A1
- Authority
- AU
- Australia
- Prior art keywords
- andremove
- operations
- double
- contiguous array
- blocking insert
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/06—Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
- G06F5/10—Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor having a sequence of storage locations each being individually accessible for both enqueue and dequeue operations, e.g. using random access memory
- G06F5/12—Means for monitoring the fill level; Means for resolving contention, i.e. conflicts between simultaneous enqueue and dequeue operations
- G06F5/14—Means for monitoring the fill level; Means for resolving contention, i.e. conflicts between simultaneous enqueue and dequeue operations for overflow or underflow handling, e.g. full or empty flags
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/76—Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data
- G06F7/78—Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data for changing the order of data flow, e.g. matrix transposition or LIFO buffers; Overflow or underflow handling therefor
- G06F7/785—Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data for changing the order of data flow, e.g. matrix transposition or LIFO buffers; Overflow or underflow handling therefor having a sequence of storage locations each being individually accessible for both enqueue and dequeue operations, e.g. using a RAM
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/544—Buffers; Shared memory; Pipes
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17708900P | 2000-01-20 | 2000-01-20 | |
US60177089 | 2000-01-20 | ||
US09/547,288 US7539849B1 (en) | 2000-01-20 | 2000-04-11 | Maintaining a double-ended queue in a contiguous array with concurrent non-blocking insert and remove operations using a double compare-and-swap primitive |
US09547288 | 2000-04-11 | ||
PCT/US2001/000042 WO2001053942A2 (en) | 2000-01-20 | 2001-01-02 | Double-ended queue with concurrent non-blocking insert and remove operations |
Publications (1)
Publication Number | Publication Date |
---|---|
AU2001227533A1 true AU2001227533A1 (en) | 2001-07-31 |
Family
ID=26872912
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
AU2001227533A Abandoned AU2001227533A1 (en) | 2000-01-20 | 2001-01-02 | Double-ended queue in a contiguous array with concurrent non-blocking insert andremove operations |
Country Status (2)
Country | Link |
---|---|
AU (1) | AU2001227533A1 (en) |
WO (1) | WO2001053942A2 (en) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7299242B2 (en) | 2001-01-12 | 2007-11-20 | Sun Microsystems, Inc. | Single-word lock-free reference counting |
US7769791B2 (en) | 2001-01-12 | 2010-08-03 | Oracle America, Inc. | Lightweight reference counting using single-target synchronization |
US7836228B1 (en) | 2004-06-18 | 2010-11-16 | Oracle America, Inc. | Scalable and lock-free first-in-first-out queue implementation |
AU2003205092A1 (en) | 2002-01-11 | 2003-07-30 | Sun Microsystems, Inc. | Value recycling facility for multithreaded computations |
US7685583B2 (en) | 2002-07-16 | 2010-03-23 | Sun Microsystems, Inc. | Obstruction-free mechanism for atomic update of multiple non-contiguous locations in shared memory |
US9052944B2 (en) | 2002-07-16 | 2015-06-09 | Oracle America, Inc. | Obstruction-free data structures and mechanisms with separable and/or substitutable contention management mechanisms |
US7293143B1 (en) | 2002-09-24 | 2007-11-06 | Sun Microsystems, Inc. | Efficient non-blocking k-compare-single-swap operation |
US7814488B1 (en) | 2002-09-24 | 2010-10-12 | Oracle America, Inc. | Quickly reacquirable locks |
US7424477B1 (en) | 2003-09-03 | 2008-09-09 | Sun Microsystems, Inc. | Shared synchronized skip-list data structure and technique employing linearizable operations |
US10049127B1 (en) | 2003-12-19 | 2018-08-14 | Oracle America, Inc. | Meta-transactional synchronization |
US7703098B1 (en) | 2004-07-20 | 2010-04-20 | Sun Microsystems, Inc. | Technique to allow a first transaction to wait on condition that affects its working set |
US8074030B1 (en) | 2004-07-20 | 2011-12-06 | Oracle America, Inc. | Using transactional memory with early release to implement non-blocking dynamic-sized data structure |
US7395382B1 (en) | 2004-08-10 | 2008-07-01 | Sun Microsystems, Inc. | Hybrid software/hardware transactional memory |
US7711909B1 (en) | 2004-12-09 | 2010-05-04 | Oracle America, Inc. | Read sharing using global conflict indication and semi-transparent reading in a transactional memory space |
US7680986B1 (en) | 2004-12-30 | 2010-03-16 | Sun Microsystems, Inc. | Practical implementation of arbitrary-sized LL/SC variables |
US7533221B1 (en) | 2004-12-30 | 2009-05-12 | Sun Microsystems, Inc. | Space-adaptive lock-free free-list using pointer-sized single-target synchronization |
US7577798B1 (en) | 2004-12-30 | 2009-08-18 | Sun Microsystems, Inc. | Space-adaptive lock-free queue using pointer-sized single-target synchronization |
CN101290589B (en) * | 2007-12-27 | 2010-06-16 | 华为技术有限公司 | Parallel instruction operation method and device |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4584640A (en) * | 1984-06-27 | 1986-04-22 | Motorola, Inc. | Method and apparatus for a compare and swap instruction |
US5081572A (en) * | 1988-10-28 | 1992-01-14 | Arnold Michael E | Manipulation of time-ordered lists and instructions therefor |
US5224215A (en) * | 1990-07-13 | 1993-06-29 | International Business Machines Corporation | Message queue processing among cooperative processors having significant speed differences |
-
2001
- 2001-01-02 AU AU2001227533A patent/AU2001227533A1/en not_active Abandoned
- 2001-01-02 WO PCT/US2001/000042 patent/WO2001053942A2/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2001053942A2 (en) | 2001-07-26 |
WO2001053942A3 (en) | 2002-05-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU2001227533A1 (en) | Double-ended queue in a contiguous array with concurrent non-blocking insert andremove operations | |
AU2001227534A1 (en) | Double-ended queue with concurrent non-blocking insert and remove operations | |
AU2001289140A1 (en) | Buffer to multiple memory interface | |
AU2001246799A1 (en) | Storage virtualization in a storage area network | |
AU2001233165A1 (en) | Uterine sampler | |
AU2001236302A1 (en) | Packet scheduling in umts using several calculated transfer rates | |
AU2001273532A1 (en) | Injection molded pliers with insert molded dual purpose reinforcing and implement structure | |
GB2377065B (en) | Port packet queuing | |
AU4899301A (en) | A method and an arrangement for managing packet queues in switches | |
AU2002215741A1 (en) | Semen storage | |
AU2001250456A1 (en) | Pipette with tip ejector | |
AU2002211788A1 (en) | Rapid configuration verification in a multi-component system | |
EP1188729A3 (en) | Composite with platelet-reinforced alumina matrix | |
AU2001276053A1 (en) | Model-view-controller-client architecture for use in a distributed data softwareapplication | |
TW441437U (en) | Improved structure for fast wrench with dual purposes in forward/backward directions | |
GB0009014D0 (en) | Content store management | |
GB0005295D0 (en) | Cut with ease | |
GB2365585B (en) | Unified buffer for tracking disparate long-latency operations in a microprocessr | |
TW435314U (en) | Parallel pincer with dual claws | |
TW435621U (en) | Fastener with wedge shape | |
AU2001238658A1 (en) | Crossconnect switch with large array size and high bitrate using wideband switchtechnology | |
GB9914872D0 (en) | Pliers with parallel jaws | |
PL110373U1 (en) | Throttle blade holding shape | |
TW388317U (en) | Clamp pliers with double head structure | |
TW395313U (en) | Improvement in wrench structure |