diff options
| author | Nick Barnes | 2002-04-15 13:41:28 +0100 |
|---|---|---|
| committer | Nick Barnes | 2002-04-15 13:41:28 +0100 |
| commit | e871b9ba934f0e8908d39999fc826e8a15bcdeeb (patch) | |
| tree | 0997e7a7a7c069cbea75bdb5bad5a08e4b651fb0 | |
| parent | 9157950cf2dc7e082a8746f075a231220a113b93 (diff) | |
| download | emacs-e871b9ba934f0e8908d39999fc826e8a15bcdeeb.tar.gz emacs-e871b9ba934f0e8908d39999fc826e8a15bcdeeb.zip | |
Reformatted and adopted.
Copied from Perforce
Change: 28239
ServerID: perforce.ravenbrook.com
| -rw-r--r-- | mps/mmdoc/protocol/mps/arena/index.html | 253 |
1 files changed, 102 insertions, 151 deletions
diff --git a/mps/mmdoc/protocol/mps/arena/index.html b/mps/mmdoc/protocol/mps/arena/index.html index b566778d2fd..609f0a8ac7f 100644 --- a/mps/mmdoc/protocol/mps/arena/index.html +++ b/mps/mmdoc/protocol/mps/arena/index.html | |||
| @@ -1,228 +1,179 @@ | |||
| 1 | <?xml version="1.0" encoding="UTF-8"?> | 1 | <?xml version="1.0" encoding="UTF-8"?> |
| 2 | 2 | ||
| 3 | |||
| 4 | |||
| 5 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd"> | 3 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd"> |
| 6 | 4 | ||
| 5 | <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> | ||
| 7 | 6 | ||
| 7 | <head> | ||
| 8 | 8 | ||
| 9 | <html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en' lang='en'> | 9 | <title>MPS Arena Protocol</title> |
| 10 | |||
| 11 | <head> | ||
| 12 | |||
| 13 | <title>MPS Arena Protocol</title> | ||
| 14 | |||
| 15 | </head> | ||
| 16 | |||
| 17 | <body bgcolor='#FFFFFF' text='#000000' link='#000099' vlink='#660066' alink='#FF0000'> | ||
| 18 | |||
| 19 | <div align='center'> | ||
| 20 | |||
| 21 | <h1>MPS Arena Protocol</h1> | ||
| 22 | |||
| 23 | <p>incomplete</p> | ||
| 24 | |||
| 25 | <address>pekka, 1997-09-29</address> | ||
| 26 | |||
| 27 | </div> | ||
| 28 | |||
| 29 | <h2> | ||
| 30 | |||
| 31 | <a id='section-introduction' name='section-introduction'>Introduction</a> | ||
| 32 | |||
| 33 | </h2> | ||
| 34 | |||
| 35 | <p> | ||
| 36 | |||
| 37 | <strong>.intro:</strong> | ||
| 38 | |||
| 39 | This document describes the arena protocol in MPS. | ||
| 40 | |||
| 41 | </p> | ||
| 42 | |||
| 43 | <h2> | ||
| 44 | |||
| 45 | <a id='section-overview' name='section-overview'>Overview</a> | ||
| 46 | |||
| 47 | </h2> | ||
| 48 | |||
| 49 | <p> | ||
| 50 | |||
| 51 | <strong>.over.arena:</strong> | ||
| 52 | |||
| 53 | The arena is an object that represents the state of the MPS, and tells it where to get the memory it manages. | ||
| 54 | |||
| 55 | </p> | ||
| 56 | |||
| 57 | <p> | ||
| 58 | |||
| 59 | <strong>.over.session:</strong> | ||
| 60 | |||
| 61 | You typically start a session with the MPS by making an arena and end the session by destroying it. The only function you might need to call before making an arena is mps_telemetry_control | ||
| 62 | |||
| 63 | . Indeed, there are very few functions that you even could call without creating an arena. | ||
| 64 | |||
| 65 | <strong>.over.destroy:</strong> | ||
| 66 | |||
| 67 | If you do not destroy an arena before terminating your program, the operating system will probably still reclaim the memory and other resources the arena was managing; but it is better to destroy it, to finish off properly. | ||
| 68 | |||
| 69 | </p> | ||
| 70 | |||
| 71 | <h2> | ||
| 72 | |||
| 73 | <a id='section-b' name='section-b'>B</a> | ||
| 74 | |||
| 75 | </h2> | ||
| 76 | |||
| 77 | <p> | ||
| 78 | |||
| 79 | efore destroying an arena, you must first destroy all objects and data in it, as usual for | ||
| 80 | |||
| 81 | abstract data types in the MPS | ||
| 82 | |||
| 83 | . If you can't destroy the arena properly, you might want to call mps_telemetry_flush | ||
| 84 | |||
| 85 | explicitly. | ||
| 86 | |||
| 87 | </p> | ||
| 88 | 10 | ||
| 89 | <p> | 11 | </head> |
| 90 | 12 | ||
| 91 | <strong>.over.other:</strong> | 13 | <body bgcolor="#FFFFFF" text="#000000" link="#000099" vlink="#660066" alink="#FF0000"> |
| 92 | 14 | ||
| 93 | Other types of objects are created "in the arena". They are part of the world within the arena, and may interact and affect each other. | 15 | <div align="center"> |
| 94 | 16 | ||
| 95 | </p> | 17 | <h1>MPS Arena Protocol</h1> |
| 96 | 18 | ||
| 97 | <p> | 19 | <p>incomplete</p> |
| 98 | 20 | ||
| 99 | <strong>.over.multiple:</strong> | 21 | <address> |
| 22 | <a href="mailto:nb@ravenbrook.com">Nick Barnes</a>, | ||
| 23 | <a href="http://www.ravenbrook.com/">Ravenbrook Limited</a>, | ||
| 24 | 2001-11-14 | ||
| 25 | </address> | ||
| 100 | 26 | ||
| 101 | The MPS allows creation of multiple arenas. It can be useful to have two active arenas and to try different things out in them. | 27 | </div> |
| 102 | 28 | ||
| 103 | Arenas do not interact. However, they compete with each other for resources. | ||
| 104 | 29 | ||
| 105 | It is not efficient to have multiple arenas containing garbage-collected objects. Using multiple arenas is an advanced technique. For more information, see [something in the User Guide]. | 30 | <h2><a id="section-Contents" name="section-Contents">Contents</a></h2> |
| 106 | 31 | ||
| 107 | </p> | 32 | <ul> |
| 108 | 33 | ||
| 109 | <h2> | 34 | <li><a href="#section-1">1. Introduction</a></li> |
| 110 | 35 | ||
| 111 | <a id='section-arena-classes' name='section-arena-classes'>Arena Classes</a> | 36 | <li><a href="#section-2">2. Overview</a></li> |
| 112 | 37 | ||
| 113 | </h2> | 38 | <li><a href="#section-3">3. Arena Classes</a></li> |
| 114 | 39 | ||
| 115 | <p> | 40 | <li><a href="#section-A">A. References</a></li> |
| 116 | 41 | ||
| 117 | <strong>.class:</strong> | 42 | <li><a href="#section-B">B. Document history</a></li> |
| 118 | 43 | ||
| 119 | There are several classes of arena. These differ mainly in the way that they acquire the memory to be managed. | 44 | </ul> |
| 120 | 45 | ||
| 121 | See the documentation of each arena class in symbol.mps.c.mps_arena_class_*. | ||
| 122 | 46 | ||
| 123 | The class is chosen when the arena is created | 47 | <h2><a id="section-1" name="section-1">1. Introduction</a></h2> |
| 124 | 48 | ||
| 125 | (see | 49 | <p><a id="intro" name="intro"><strong>.intro:</strong></a> |
| 126 | 50 | ||
| 127 | symbol.mps.c.mps_arena_create | 51 | This document describes the arena protocol in MPS.</p> |
| 128 | 52 | ||
| 129 | ) | 53 | <h2><a id="section-2" name="section-2">2. Overview</a></h2> |
| 130 | 54 | ||
| 131 | , in a way identical to pool classes | 55 | <p><a id="over.arena" name="over.arena"><strong>.over.arena:</strong></a> |
| 132 | 56 | ||
| 133 | . | 57 | The arena is an object that represents the state of the MPS, and tells |
| 58 | it where to get the memory it manages.</p> | ||
| 134 | 59 | ||
| 135 | </p> | 60 | <p><a id="over.session" name="over.session"><strong>.over.session:</strong></a> |
| 136 | 61 | ||
| 137 | <h2> | 62 | You typically start a session with the MPS by making an arena and end |
| 63 | the session by destroying it. The only function you might need to | ||
| 64 | call before making an arena is <code | ||
| 65 | class="source">mps_telemetry_control</code>. Indeed, there are very | ||
| 66 | few functions that you even <em>could</em> call without creating an | ||
| 67 | arena.</p> | ||
| 138 | 68 | ||
| 139 | <a id='section-A' name='section-A'>A. References</a> | 69 | <p><a id="over.destroy" name="over.destroy"><strong>.over.destroy:</strong></a> |
| 140 | 70 | ||
| 141 | </h2> | 71 | If you do not destroy an arena before terminating your program, the |
| 72 | operating system will probably still reclaim the memory and other | ||
| 73 | resources the arena was managing; but it is better to destroy it, to | ||
| 74 | finish off properly.</p> | ||
| 142 | 75 | ||
| 143 | <h2> | 76 | <p>Before destroying an arena, you must first destroy all objects and |
| 77 | data in it, as usual for abstract data types in the MPS. If you can't | ||
| 78 | destroy the arena properly, you might want to call <code | ||
| 79 | class="source">mps_telemetry_flush</code> explicitly.</p> | ||
| 144 | 80 | ||
| 145 | <a id='section-B' name='section-B'>B. Document History</a> | 81 | <p><a id="over.other" name="over.other"><strong>.over.other:</strong></a> |
| 146 | 82 | ||
| 147 | </h2> | 83 | Other types of objects are created "in the arena". They are part of |
| 84 | the world within the arena, and may interact and affect each other.</p> | ||
| 148 | 85 | ||
| 149 | <table> | 86 | <p><a id="over.multiple" name="over.multiple"><strong>.over.multiple:</strong></a> |
| 150 | 87 | ||
| 151 | <tr valign='top'> | 88 | The MPS allows creation of multiple arenas. It can be useful to have |
| 89 | two active arenas and to try different things out in them.</p> | ||
| 152 | 90 | ||
| 153 | <td>1997-09-29 14:20:24 +01</td> | 91 | <p>Arenas do not interact. However, they compete with each other for |
| 92 | resources.</p> | ||
| 154 | 93 | ||
| 155 | <td>pekka</td> | 94 | <p>It is not efficient to have multiple arenas containing |
| 95 | garbage-collected objects. Using multiple arenas is an advanced | ||
| 96 | technique. For more information, see [something in the User | ||
| 97 | Guide].</p> | ||
| 156 | 98 | ||
| 157 | <td>New document saved</td> | 99 | <h2><a id="section-3" name="section-3">Arena Classes</a></h2> |
| 158 | 100 | ||
| 159 | </tr> | 101 | <p><a id="class" name="class"><strong>.class:</strong></a> |
| 160 | 102 | ||
| 161 | <tr valign='top'> | 103 | There are several classes of arena. These differ mainly in the way |
| 104 | that they acquire the memory to be managed.</p> | ||
| 162 | 105 | ||
| 163 | <td>1997-10-21 11:30:02 +01</td> | 106 | <p>See the documentation of each arena class in |
| 107 | symbol.mps.c.mps_arena_class_*.</p> | ||
| 164 | 108 | ||
| 165 | <td>pekka</td> | 109 | <p>The class is chosen when the arena is created (see |
| 110 | symbol.mps.c.mps_arena_create), in a way identical to pool | ||
| 111 | classes.</p> | ||
| 166 | 112 | ||
| 167 | <td>Xref arena class doc</td> | 113 | <h2><a id="section-A" name="section-A">A. References</a></h2> |
| 168 | 114 | ||
| 169 | </tr> | 115 | <h2><a id="section-B" name="section-B">B. Document History</a></h2> |
| 170 | 116 | ||
| 171 | <tr valign='top'> | 117 | <table> |
| 172 | 118 | ||
| 173 | <td>1998-10-30 20:36:59 +00</td> | 119 | <tr valign="top"> |
| 174 | 120 | ||
| 175 | <td>pekka</td> | 121 | <td>1997-09-29</td> |
| 176 | 122 | ||
| 177 | <td>Note telemetry reqs; don't promise anything if not destroyed</td> | 123 | <td>pekka</td> |
| 178 | 124 | ||
| 179 | </tr> | 125 | <td>Created.</td> |
| 180 | 126 | ||
| 181 | <tr valign='top'> | 127 | </tr> |
| 182 | 128 | ||
| 183 | <td>2000-05-22 16:02:48 +01</td> | 129 | <tr valign="top"> |
| 184 | 130 | ||
| 185 | <td>pekka</td> | 131 | <td>1997-09-29 to 2000-05-22</td> |
| 186 | 132 | ||
| 187 | <td>Fix title</td> | 133 | <td /> |
| 188 | 134 | ||
| 189 | </tr> | 135 | <td>Developed at Harlequin</td> |
| 190 | 136 | ||
| 191 | <tr valign='top'> | 137 | </tr> |
| 192 | 138 | ||
| 193 | <td>2001-09-26</td> | 139 | <tr valign="top"> |
| 194 | 140 | ||
| 195 | <td> | 141 | <td>2001-09-26</td> |
| 196 | 142 | ||
| 197 | <a href='mailto:ndl@ravenbrook.com'>NDL</a> | 143 | <td><a href="mailto:ndl@ravenbrook.com">NDL</a></td> |
| 198 | 144 | ||
| 199 | </td> | 145 | <td>Converted from xml to html (second pass).</td> |
| 200 | 146 | ||
| 201 | <td>Converted from xml to html (second pass).</td> | 147 | </tr> |
| 202 | 148 | ||
| 203 | </tr> | 149 | <tr valign="top"> |
| 204 | 150 | ||
| 205 | </table> | 151 | <td>2001-11-14</td> |
| 206 | 152 | ||
| 207 | <hr /> | 153 | <td><a href="mailto:nb@ravenbrook.com">NB</a></td> |
| 208 | 154 | ||
| 209 | <p> | 155 | <td>Reformatted and adopted.</td> |
| 210 | 156 | ||
| 211 | <small>Copyright © 2001 Ravenbrook Limited. This document is provided "as is", without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this document. You may not duplicate or reproduce this document in any form without the express permission of the copyright holder.</small> | 157 | </tr> |
| 212 | 158 | ||
| 213 | </p> | 159 | </table> |
| 214 | 160 | ||
| 215 | <div align='center'> | 161 | <hr /> |
| 216 | 162 | ||
| 217 | <p> | 163 | <p><small>Copyright © 2001 Ravenbrook Limited. This document is |
| 164 | provided "as is", without any express or implied warranty. In no | ||
| 165 | event will the authors be held liable for any damages arising from the | ||
| 166 | use of this document. You may not duplicate or reproduce this | ||
| 167 | document in any form without the express permission of the copyright | ||
| 168 | holder.</small></p> | ||
| 218 | 169 | ||
| 219 | <code>$Id$</code> | 170 | <div align="center"> |
| 220 | 171 | ||
| 221 | </p> | 172 | <p><code>$Id$</code></p> |
| 222 | 173 | ||
| 223 | </div> | 174 | </div> |
| 224 | 175 | ||
| 225 | </body> | 176 | </body> |
| 226 | 177 | ||
| 227 | </html> | 178 | </html> |
| 228 | 179 | ||