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 | ||