diff options
Diffstat (limited to 'man/man7/queue.7')
| -rw-r--r-- | man/man7/queue.7 | 133 |
1 files changed, 0 insertions, 133 deletions
diff --git a/man/man7/queue.7 b/man/man7/queue.7 deleted file mode 100644 index 87efb9e0d5..0000000000 --- a/man/man7/queue.7 +++ /dev/null @@ -1,133 +0,0 @@ -.\" Copyright (c) 1993 -.\" The Regents of the University of California. All rights reserved. -.\" and Copyright (c) 2020 by Alejandro Colomar <colomar.6.4.3@gmail.com> -.\" -.\" SPDX-License-Identifier: BSD-3-Clause -.\" -.\" -.TH QUEUE 7 2021-03-22 "Linux man-pages (unreleased)" -.SH NAME -queue \- implementations of linked lists and queues -.SH DESCRIPTION -The -.I <sys/queue.h> -header file provides a set of macros that -define and operate on the following data structures: -.IP * 3 -singly linked lists (SLIST) -.IP * -doubly linked lists (LIST) -.IP * -singly linked tail queues (STAILQ) -.IP * -doubly linked tail queues (TAILQ) -.IP * -doubly linked circular queues (CIRCLEQ) -.PP -All structures support the following functionality: -.IP * 3 -Insertion of a new entry at the head of the list. -.IP * -Insertion of a new entry after any element in the list. -.IP * -O(1) removal of an entry from the head of the list. -.IP * -Forward traversal through the list. -.\".IP * -.\" Swapping the contents of two lists. -.PP -Code size and execution time -depend on the complexity of the data structure being used, -so programmers should take care to choose the appropriate one. -.SS Singly linked lists (SLIST) -Singly linked lists are the simplest -and support only the above functionality. -Singly linked lists are ideal for applications with -large datasets and few or no removals, -or for implementing a LIFO queue. -Singly linked lists add the following functionality: -.IP * 3 -O(n) removal of any entry in the list. -.SS Singly linked tail queues (STAILQ) -Singly linked tail queues add the following functionality: -.IP * 3 -Entries can be added at the end of a list. -.IP * -O(n) removal of any entry in the list. -.IP * -They may be concatenated. -.PP -However: -.IP * 3 -All list insertions must specify the head of the list. -.IP * -Each head entry requires two pointers rather than one. -.PP -Singly linked tail queues are ideal for applications with -large datasets and few or no removals, -or for implementing a FIFO queue. -.SS Doubly linked data structures -All doubly linked types of data structures (lists and tail queues) -additionally allow: -.IP * 3 -Insertion of a new entry before any element in the list. -.IP * -O(1) removal of any entry in the list. -.PP -However: -.IP * 3 -Each element requires two pointers rather than one. -.SS Doubly linked lists (LIST) -Linked lists are the simplest of the doubly linked data structures. -They add the following functionality over the above: -.IP * 3 -They may be traversed backwards. -.PP -However: -.IP * 3 -To traverse backwards, an entry to begin the traversal and the list in -which it is contained must be specified. -.SS Doubly linked tail queues (TAILQ) -Tail queues add the following functionality: -.IP * 3 -Entries can be added at the end of a list. -.IP * -They may be traversed backwards, from tail to head. -.IP * -They may be concatenated. -.PP -However: -.IP * 3 -All list insertions and removals must specify the head of the list. -.IP * -Each head entry requires two pointers rather than one. -.SS Doubly linked circular queues (CIRCLEQ) -Circular queues add the following functionality over the above: -.IP * 3 -The first and last entries are connected. -.PP -However: -.IP * 3 -The termination condition for traversal is more complex. -.SH STANDARDS -Not in POSIX.1, POSIX.1-2001, or POSIX.1-2008. -Present on the BSDs. -.I <sys/queue.h> -macros first appeared in 4.4BSD. -.SH NOTES -Some BSDs provide SIMPLEQ instead of STAILQ. -They are identical, but for historical reasons -they were named differently on different BSDs. -STAILQ originated on FreeBSD, and SIMPLEQ originated on NetBSD. -For compatibility reasons, some systems provide both sets of macros. -Glibc provides both STAILQ and SIMPLEQ, -which are identical except for a missing SIMPLEQ equivalent to -.BR STAILQ_CONCAT (). -.SH SEE ALSO -.BR circleq (3), -.BR insque (3), -.BR list (3), -.BR slist (3), -.BR stailq (3), -.BR tailq (3) -.\" .BR tree (3) |
