Rev 87 | Rev 98 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 87 | Rev 95 | ||
---|---|---|---|
Line 33... | Line 33... | ||
33 | <para>Lists are frequently used to implement FIFO behaviour (e.g. |
33 | <para>Lists are frequently used to implement FIFO behaviour (e.g. |
34 | scheduler run queues or synchronization wait queues). Contrary to the FIFO |
34 | scheduler run queues or synchronization wait queues). Contrary to the FIFO |
35 | type, which is also supported by HelenOS, they don't take up any unused |
35 | type, which is also supported by HelenOS, they don't take up any unused |
36 | space and are more general. On the other hand, they are slower than |
36 | space and are more general. On the other hand, they are slower than |
37 | in-array FIFOs and can be hardly used to implement buffers.</para> |
37 | in-array FIFOs and can be hardly used to implement buffers.</para> |
- | 38 | ||
- | 39 | <figure> |
|
- | 40 | <mediaobject id="list" xreflabel=""> |
|
- | 41 | <imageobject role="pdf"> |
|
- | 42 | <imagedata fileref="images.vector/list.pdf" format="PDF" /> |
|
- | 43 | </imageobject> |
|
- | 44 | ||
- | 45 | <imageobject role="html"> |
|
- | 46 | <imagedata fileref="images/list.png" format="PNG" /> |
|
- | 47 | </imageobject> |
|
- | 48 | ||
- | 49 | <imageobject role="fop"> |
|
- | 50 | <imagedata fileref="images.vector/list.svg" format="SVG" /> |
|
- | 51 | </imageobject> |
|
- | 52 | </mediaobject> |
|
- | 53 | ||
- | 54 | <title>Doubly-circularly-linked list</title> |
|
- | 55 | </figure> |
|
38 | </section> |
56 | </section> |
39 | 57 | ||
40 | <section> |
58 | <section> |
41 | <title>FIFO queues</title> |
59 | <title>FIFO queues</title> |
42 | 60 | ||
Line 89... | Line 107... | ||
89 | it forces the user to supply methods for computing the hash index, |
107 | it forces the user to supply methods for computing the hash index, |
90 | comparing items against a set of keys and the item removal callback |
108 | comparing items against a set of keys and the item removal callback |
91 | function. Besides these virtual operations, the hash table is composed of |
109 | function. Besides these virtual operations, the hash table is composed of |
92 | a dynamically allocated array of list heads that represent each chain, |
110 | a dynamically allocated array of list heads that represent each chain, |
93 | number of chains and the maximal number of keys.</para> |
111 | number of chains and the maximal number of keys.</para> |
- | 112 | ||
- | 113 | <figure> |
|
- | 114 | <mediaobject id="hash" xreflabel=""> |
|
- | 115 | <imageobject role="pdf"> |
|
- | 116 | <imagedata fileref="images.vector/hash.pdf" format="PDF" /> |
|
- | 117 | </imageobject> |
|
- | 118 | ||
- | 119 | <imageobject role="html"> |
|
- | 120 | <imagedata fileref="images/hash.png" format="PNG" /> |
|
- | 121 | </imageobject> |
|
- | 122 | ||
- | 123 | <imageobject role="fop"> |
|
- | 124 | <imagedata fileref="images.vector/hash.svg" format="SVG" /> |
|
- | 125 | </imageobject> |
|
- | 126 | </mediaobject> |
|
- | 127 | ||
- | 128 | <title>Generic hash table.</title> |
|
- | 129 | </figure> |
|
- | 130 | ||
94 | </section> |
131 | </section> |
95 | 132 | ||
96 | <section> |
133 | <section> |
97 | <title>Bitmaps</title> |
134 | <title>Bitmaps</title> |
98 | 135 |