mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-03-15 03:11:54 -07:00
Catch-up merge from master sources.
Copied from Perforce Change: 181651 ServerID: perforce.ravenbrook.com
This commit is contained in:
commit
eea2d7aec4
109 changed files with 1073 additions and 1020 deletions
|
|
@ -239,7 +239,7 @@ TESTCASES=abqtest amcss amcsshe amcssth amsss amssshe apss arenacv awlut \
|
|||
messtest mpmss mpsicv poolncv qs sacss segsmss steptest \
|
||||
walkt0
|
||||
testrun: $(TESTCASES)
|
||||
OUTPUT=$$(mktemp /tmp/mps-XXXXXX.log); \
|
||||
OUTPUT=$$(mktemp /tmp/mps.log.XXXXXX); \
|
||||
echo "Logging test output to $$OUTPUT"; \
|
||||
$(^:%=(TESTCASE=$(PFM)/$(VARIETY)/%; \
|
||||
echo "\n\n-- Running $$TESTCASE at $$(date) --" >> $$OUTPUT && \
|
||||
|
|
|
|||
|
|
@ -74,6 +74,7 @@ int main(int argc, char *argv[])
|
|||
Insist(lock != NULL);
|
||||
|
||||
LockInit(lock);
|
||||
UNUSED(argc);
|
||||
|
||||
shared = 0;
|
||||
|
||||
|
|
|
|||
|
|
@ -187,6 +187,7 @@ static void makerndlist(unsigned l)
|
|||
{
|
||||
unsigned i;
|
||||
mps_word_t r;
|
||||
mps_addr_t addr;
|
||||
|
||||
cdie(l > 0, "list len");
|
||||
if(list != NULL) {
|
||||
|
|
@ -194,8 +195,10 @@ static void makerndlist(unsigned l)
|
|||
list = NULL;
|
||||
}
|
||||
listl = l;
|
||||
die(mps_alloc((mps_addr_t *)&list, mpool, (l * sizeof(mps_word_t))),
|
||||
addr = list;
|
||||
die(mps_alloc(&addr, mpool, (l * sizeof(mps_word_t))),
|
||||
"Alloc List");
|
||||
list = addr;
|
||||
reg[0] = (mps_addr_t)0;
|
||||
regtag[0] = QSRef;
|
||||
for(i = 0; i < l; ++i) {
|
||||
|
|
@ -330,6 +333,8 @@ static void *go(void *p, size_t s)
|
|||
{
|
||||
mps_fmt_t format;
|
||||
mps_chain_t chain;
|
||||
mps_addr_t base;
|
||||
mps_addr_t *addr;
|
||||
|
||||
testlib_unused(p);
|
||||
testlib_unused(s);
|
||||
|
|
@ -350,8 +355,11 @@ static void *go(void *p, size_t s)
|
|||
reg,
|
||||
NREGS),
|
||||
"RootCreateTable");
|
||||
|
||||
base = &activationStack;
|
||||
addr = base;
|
||||
die(mps_root_create_table(&actroot, arena, mps_rank_ambig(), 0,
|
||||
(mps_addr_t *)&activationStack, sizeof(QSCell)/sizeof(mps_addr_t)),
|
||||
addr, sizeof(QSCell)/sizeof(mps_addr_t)),
|
||||
"RootCreateTable");
|
||||
|
||||
/* makes a random list */
|
||||
|
|
@ -396,6 +404,7 @@ static mps_res_t scan1(mps_ss_t ss, mps_addr_t *objectIO)
|
|||
{
|
||||
QSCell cell;
|
||||
mps_res_t res;
|
||||
mps_addr_t addr;
|
||||
|
||||
cdie(objectIO != NULL, "objectIO");
|
||||
|
||||
|
|
@ -404,20 +413,24 @@ static mps_res_t scan1(mps_ss_t ss, mps_addr_t *objectIO)
|
|||
|
||||
switch(cell->tag) {
|
||||
case QSRef:
|
||||
if(!MPS_FIX1(ss, (mps_addr_t)cell->value))
|
||||
addr = cell->value;
|
||||
if(!MPS_FIX1(ss, addr))
|
||||
goto fixTail;
|
||||
res = MPS_FIX2(ss, (mps_addr_t *)&cell->value);
|
||||
res = MPS_FIX2(ss, &addr);
|
||||
if(res != MPS_RES_OK)
|
||||
return res;
|
||||
cell->value = addr;
|
||||
/* fall */
|
||||
|
||||
case QSInt:
|
||||
fixTail:
|
||||
if(!MPS_FIX1(ss, (mps_addr_t)cell->tail))
|
||||
addr = cell->tail;
|
||||
if(!MPS_FIX1(ss, addr))
|
||||
break;
|
||||
res = MPS_FIX2(ss, (mps_addr_t *)&cell->tail);
|
||||
res = MPS_FIX2(ss, &addr);
|
||||
if(res != MPS_RES_OK)
|
||||
return res;
|
||||
cell->tail = addr;
|
||||
break;
|
||||
|
||||
case QSEvac:
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ SRCID(version, "$Id$");
|
|||
* (Note: before 2006-02-01 the style was "release.epcore.chub")
|
||||
*/
|
||||
|
||||
#define MPS_RELEASE "release/1.110.0"
|
||||
#define MPS_RELEASE "release/1.111.0"
|
||||
|
||||
|
||||
/* MPSCopyrightNotice -- copyright notice for the binary
|
||||
|
|
|
|||
20
mps/configure
vendored
20
mps/configure
vendored
|
|
@ -1,6 +1,6 @@
|
|||
#! /bin/sh
|
||||
# Guess values for system-dependent variables and create Makefiles.
|
||||
# Generated by GNU Autoconf 2.69 for Memory Pool System Kit master.
|
||||
# Generated by GNU Autoconf 2.69 for Memory Pool System Kit release 1.111.0.
|
||||
#
|
||||
# Report bugs to <mps-questions@ravenbrook.com>.
|
||||
#
|
||||
|
|
@ -580,8 +580,8 @@ MAKEFLAGS=
|
|||
# Identity of this package.
|
||||
PACKAGE_NAME='Memory Pool System Kit'
|
||||
PACKAGE_TARNAME='mps-kit'
|
||||
PACKAGE_VERSION='master'
|
||||
PACKAGE_STRING='Memory Pool System Kit master'
|
||||
PACKAGE_VERSION='release 1.111.0'
|
||||
PACKAGE_STRING='Memory Pool System Kit release 1.111.0'
|
||||
PACKAGE_BUGREPORT='mps-questions@ravenbrook.com'
|
||||
PACKAGE_URL='http://www.ravenbrook.com/project/mps/'
|
||||
|
||||
|
|
@ -1243,7 +1243,7 @@ if test "$ac_init_help" = "long"; then
|
|||
# Omit some internal or obsolete options to make the list less imposing.
|
||||
# This message is too long to be a string in the A/UX 3.1 sh.
|
||||
cat <<_ACEOF
|
||||
\`configure' configures Memory Pool System Kit master to adapt to many kinds of systems.
|
||||
\`configure' configures Memory Pool System Kit release 1.111.0 to adapt to many kinds of systems.
|
||||
|
||||
Usage: $0 [OPTION]... [VAR=VALUE]...
|
||||
|
||||
|
|
@ -1308,7 +1308,7 @@ fi
|
|||
|
||||
if test -n "$ac_init_help"; then
|
||||
case $ac_init_help in
|
||||
short | recursive ) echo "Configuration of Memory Pool System Kit master:";;
|
||||
short | recursive ) echo "Configuration of Memory Pool System Kit release 1.111.0:";;
|
||||
esac
|
||||
cat <<\_ACEOF
|
||||
|
||||
|
|
@ -1389,7 +1389,7 @@ fi
|
|||
test -n "$ac_init_help" && exit $ac_status
|
||||
if $ac_init_version; then
|
||||
cat <<\_ACEOF
|
||||
Memory Pool System Kit configure master
|
||||
Memory Pool System Kit configure release 1.111.0
|
||||
generated by GNU Autoconf 2.69
|
||||
|
||||
Copyright (C) 2012 Free Software Foundation, Inc.
|
||||
|
|
@ -1645,7 +1645,7 @@ cat >config.log <<_ACEOF
|
|||
This file contains any messages produced by compilers while
|
||||
running configure, to aid debugging if configure makes a mistake.
|
||||
|
||||
It was created by Memory Pool System Kit $as_me master, which was
|
||||
It was created by Memory Pool System Kit $as_me release 1.111.0, which was
|
||||
generated by GNU Autoconf 2.69. Invocation command line was
|
||||
|
||||
$ $0 $@
|
||||
|
|
@ -3445,7 +3445,7 @@ $as_echo "FreeBSD x86" >&6; }
|
|||
MPS_TARGET_NAME=fri3gc
|
||||
CFLAGS="$CFLAGS_GC"
|
||||
;;
|
||||
amd64-*-freebsd*)
|
||||
amd64-*-freebsd* | x86_64-*-freebsd*)
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: FreeBSD x86_64" >&5
|
||||
$as_echo "FreeBSD x86_64" >&6; }
|
||||
MPS_TARGET_NAME=fri6gc
|
||||
|
|
@ -4056,7 +4056,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
|
|||
# report actual input values of CONFIG_FILES etc. instead of their
|
||||
# values after options handling.
|
||||
ac_log="
|
||||
This file was extended by Memory Pool System Kit $as_me master, which was
|
||||
This file was extended by Memory Pool System Kit $as_me release 1.111.0, which was
|
||||
generated by GNU Autoconf 2.69. Invocation command line was
|
||||
|
||||
CONFIG_FILES = $CONFIG_FILES
|
||||
|
|
@ -4110,7 +4110,7 @@ _ACEOF
|
|||
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
|
||||
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
|
||||
ac_cs_version="\\
|
||||
Memory Pool System Kit config.status master
|
||||
Memory Pool System Kit config.status release 1.111.0
|
||||
configured by $0, generated by GNU Autoconf 2.69,
|
||||
with options \\"\$ac_cs_config\\"
|
||||
|
||||
|
|
|
|||
|
|
@ -80,7 +80,7 @@ case $host in
|
|||
MPS_TARGET_NAME=fri3gc
|
||||
CFLAGS="$CFLAGS_GC"
|
||||
;;
|
||||
amd64-*-freebsd*)
|
||||
amd64-*-freebsd* | x86_64-*-freebsd*)
|
||||
AC_MSG_RESULT([FreeBSD x86_64])
|
||||
MPS_TARGET_NAME=fri6gc
|
||||
CFLAGS="$CFLAGS_GC"
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
# Sphinx build info version 1
|
||||
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
|
||||
config: 15abd0d7c7012e2eb4c4f6d2f13b20c1
|
||||
config: d3743f9f2ce023be0bf3d68c5b4c138a
|
||||
tags: fbb0d17656682115ca4d033fb2f83ba1
|
||||
|
|
|
|||
|
|
@ -364,7 +364,7 @@ actually test that ``key`` appears in the table, not just that some key
|
|||
with the same hash does.)
|
||||
|
||||
When a table is rehashed, call :c:func:`mps_ld_reset` to clear the
|
||||
location dependency, and the :c:func:`mps_ld_add` for each key before it is added back to the table.
|
||||
location dependency, and then :c:func:`mps_ld_add` for each key before it is added back to the table.
|
||||
|
||||
.. note::
|
||||
|
||||
|
|
|
|||
|
|
@ -13,11 +13,11 @@
|
|||
.highlight .gr { color: #FF0000 } /* Generic.Error */
|
||||
.highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */
|
||||
.highlight .gi { color: #00A000 } /* Generic.Inserted */
|
||||
.highlight .go { color: #303030 } /* Generic.Output */
|
||||
.highlight .go { color: #333333 } /* Generic.Output */
|
||||
.highlight .gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */
|
||||
.highlight .gs { font-weight: bold } /* Generic.Strong */
|
||||
.highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
|
||||
.highlight .gt { color: #0040D0 } /* Generic.Traceback */
|
||||
.highlight .gt { color: #0044DD } /* Generic.Traceback */
|
||||
.highlight .kc { color: #007020; font-weight: bold } /* Keyword.Constant */
|
||||
.highlight .kd { color: #007020; font-weight: bold } /* Keyword.Declaration */
|
||||
.highlight .kn { color: #007020; font-weight: bold } /* Keyword.Namespace */
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Contact us — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Contact us — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="index.html" />
|
||||
<link rel="prev" title="Memory Pool System Kit Open Source License" href="copyright.html" />
|
||||
</head>
|
||||
<body>
|
||||
|
|
@ -39,7 +39,7 @@
|
|||
<li class="right" >
|
||||
<a href="copyright.html" title="Memory Pool System Kit Open Source License"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
|
@ -83,7 +83,7 @@ Ravenbrook’s web site</a>.</p>
|
|||
title="previous chapter">Memory Pool System Kit Open Source License</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -91,7 +91,7 @@ Ravenbrook’s web site</a>.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -108,7 +108,7 @@ Ravenbrook’s web site</a>.</p>
|
|||
<li class="right" >
|
||||
<a href="copyright.html" title="Memory Pool System Kit Open Source License"
|
||||
>previous</a> |</li>
|
||||
<li><a href="index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="footer">
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Memory Pool System Kit Open Source License — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Memory Pool System Kit Open Source License — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="#" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="index.html" />
|
||||
<link rel="next" title="Contact us" href="contact.html" />
|
||||
<link rel="prev" title="Memory Management Glossary: Z" href="glossary/z.html" />
|
||||
</head>
|
||||
|
|
@ -43,7 +43,7 @@
|
|||
<li class="right" >
|
||||
<a href="glossary/z.html" title="Memory Management Glossary: Z"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
|
@ -146,7 +146,7 @@ Open Dylan source code.</div></blockquote>
|
|||
title="next chapter">Contact us</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -154,7 +154,7 @@ Open Dylan source code.</div></blockquote>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -174,7 +174,7 @@ Open Dylan source code.</div></blockquote>
|
|||
<li class="right" >
|
||||
<a href="glossary/z.html" title="Memory Management Glossary: Z"
|
||||
>previous</a> |</li>
|
||||
<li><a href="index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="footer">
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>1. Arena — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>1. Arena — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Design" href="index.html" />
|
||||
<link rel="next" title="2. Bit tables" href="bt.html" />
|
||||
<link rel="prev" title="Design" href="index.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="index.html" title="Design"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Design</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -286,7 +286,7 @@ design.mps.arena.tract-iter(0).</p>
|
|||
<p><span class="target" id="design.mps.arena.tract.if.tractofaddr"></span><a class="mpstag reference internal" href="#design.mps.arena.tract.if.tractofaddr">.tract.if.tractofaddr:</a> The function <tt class="xref c c-func docutils literal"><span class="pre">TractOfAddr()</span></tt>
|
||||
finds the tract corresponding to an address in memory. (See
|
||||
<a class="reference internal" href="#design.mps.arena.req.fun.trans">.req.fun.trans</a>):</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">Bool</span> <span class="n">TractOfAddr</span><span class="p">(</span><span class="n">Tract</span> <span class="o">*</span><span class="n">tractReturn</span><span class="p">,</span> <span class="n">Arena</span> <span class="n">arena</span><span class="p">,</span> <span class="n">Addr</span> <span class="n">addr</span><span class="p">);</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">Bool</span> <span class="nf">TractOfAddr</span><span class="p">(</span><span class="n">Tract</span> <span class="o">*</span><span class="n">tractReturn</span><span class="p">,</span> <span class="n">Arena</span> <span class="n">arena</span><span class="p">,</span> <span class="n">Addr</span> <span class="n">addr</span><span class="p">);</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>If <tt class="docutils literal"><span class="pre">addr</span></tt> is an address which has been allocated to some pool, then
|
||||
|
|
@ -552,7 +552,7 @@ next root.</p>
|
|||
title="next chapter">2. Bit tables</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -560,7 +560,7 @@ next root.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -580,7 +580,7 @@ next root.</p>
|
|||
<li class="right" >
|
||||
<a href="index.html" title="Design"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Design</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>2. Bit tables — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>2. Bit tables — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Design" href="index.html" />
|
||||
<link rel="next" title="3. Coalescing block structure" href="cbs.html" />
|
||||
<link rel="prev" title="1. Arena" href="arena.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="arena.html" title="1. Arena"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Design</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -426,7 +426,7 @@ equals <tt class="docutils literal"><span class="pre">BTGet(BTy,i)</span></tt> f
|
|||
<p><span class="target" id="design.mps.bt.if.find.general"></span><a class="mpstag reference internal" href="#design.mps.bt.if.find.general">.if.find.general:</a> There are four functions (below) to find
|
||||
reset ranges. All the functions have the same prototype (for
|
||||
symmetry):</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">Bool</span> <span class="n">find</span><span class="p">(</span><span class="n">Index</span> <span class="o">*</span><span class="n">baseReturn</span><span class="p">,</span> <span class="n">Index</span> <span class="o">*</span><span class="n">limitReturn</span><span class="p">,</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">Bool</span> <span class="nf">find</span><span class="p">(</span><span class="n">Index</span> <span class="o">*</span><span class="n">baseReturn</span><span class="p">,</span> <span class="n">Index</span> <span class="o">*</span><span class="n">limitReturn</span><span class="p">,</span>
|
||||
<span class="n">BT</span> <span class="n">bt</span><span class="p">,</span>
|
||||
<span class="n">Index</span> <span class="n">searchBase</span><span class="p">,</span> <span class="n">Index</span> <span class="n">searchLimit</span><span class="p">,</span>
|
||||
<span class="n">Count</span> <span class="n">length</span><span class="p">);</span>
|
||||
|
|
@ -804,7 +804,7 @@ TEST1 and TEST2.</p>
|
|||
title="next chapter">3. Coalescing block structure</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -812,7 +812,7 @@ TEST1 and TEST2.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -832,7 +832,7 @@ TEST1 and TEST2.</p>
|
|||
<li class="right" >
|
||||
<a href="arena.html" title="1. Arena"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Design</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>3. Coalescing block structure — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>3. Coalescing block structure — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Design" href="index.html" />
|
||||
<link rel="next" title="4. Checking" href="check.html" />
|
||||
<link rel="prev" title="2. Bit tables" href="bt.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="bt.html" title="2. Bit tables"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Design</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -737,7 +737,7 @@ supports the following methods (for sub-module internal use):</p>
|
|||
title="next chapter">4. Checking</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -745,7 +745,7 @@ supports the following methods (for sub-module internal use):</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -765,7 +765,7 @@ supports the following methods (for sub-module internal use):</p>
|
|||
<li class="right" >
|
||||
<a href="bt.html" title="2. Bit tables"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Design</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>4. Checking — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>4. Checking — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Design" href="index.html" />
|
||||
<link rel="next" title="5. Pool class interface" href="class-interface.html" />
|
||||
<link rel="prev" title="3. Coalescing block structure" href="cbs.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="cbs.html" title="3. Coalescing block structure"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Design</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -164,7 +164,7 @@ type (<a class="reference internal" href="#design.mps.check.full-type">.full-typ
|
|||
title="next chapter">5. Pool class interface</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -172,7 +172,7 @@ type (<a class="reference internal" href="#design.mps.check.full-type">.full-typ
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -192,7 +192,7 @@ type (<a class="reference internal" href="#design.mps.check.full-type">.full-typ
|
|||
<li class="right" >
|
||||
<a href="cbs.html" title="3. Coalescing block structure"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Design</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>5. Pool class interface — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>5. Pool class interface — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Design" href="index.html" />
|
||||
<link rel="next" title="6. Collection framework" href="collection.html" />
|
||||
<link rel="prev" title="4. Checking" href="check.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="check.html" title="4. Checking"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Design</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -284,7 +284,7 @@ unaligned size to be passed.</p>
|
|||
title="next chapter">6. Collection framework</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -292,7 +292,7 @@ unaligned size to be passed.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -312,7 +312,7 @@ unaligned size to be passed.</p>
|
|||
<li class="right" >
|
||||
<a href="check.html" title="4. Checking"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Design</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>6. Collection framework — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>6. Collection framework — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Design" href="index.html" />
|
||||
<link rel="next" title="7. Configuration" href="config.html" />
|
||||
<link rel="prev" title="5. Pool class interface" href="class-interface.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="class-interface.html" title="5. Pool class interface"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Design</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -370,7 +370,7 @@ for all the traces that it had a barrier for, see .combine.@@@@<
|
|||
title="next chapter">7. Configuration</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -378,7 +378,7 @@ for all the traces that it had a barrier for, see .combine.@@@@<
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -398,7 +398,7 @@ for all the traces that it had a barrier for, see .combine.@@@@<
|
|||
<li class="right" >
|
||||
<a href="class-interface.html" title="5. Pool class interface"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Design</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>7. Configuration — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>7. Configuration — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Design" href="index.html" />
|
||||
<link rel="next" title="8. Finalization" href="finalize.html" />
|
||||
<link rel="prev" title="6. Collection framework" href="collection.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="collection.html" title="6. Collection framework"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Design</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -416,19 +416,19 @@ parameter. However, the concrete interface may vary.</p>
|
|||
<p>For example, this isn’t allowed, because there is a change in the
|
||||
interface:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="cp">#if defined(PROT_FOO)</span>
|
||||
<span class="kt">void</span> <span class="n">ProtSpong</span><span class="p">(</span><span class="n">Foo</span> <span class="n">foo</span><span class="p">,</span> <span class="n">Bar</span> <span class="n">bar</span><span class="p">);</span>
|
||||
<span class="kt">void</span> <span class="nf">ProtSpong</span><span class="p">(</span><span class="n">Foo</span> <span class="n">foo</span><span class="p">,</span> <span class="n">Bar</span> <span class="n">bar</span><span class="p">);</span>
|
||||
<span class="cp">#else</span>
|
||||
<span class="kt">int</span> <span class="n">ProtSpong</span><span class="p">(</span><span class="n">Bar</span> <span class="n">bar</span><span class="p">,</span> <span class="n">Foo</span> <span class="n">foo</span><span class="p">);</span>
|
||||
<span class="kt">int</span> <span class="nf">ProtSpong</span><span class="p">(</span><span class="n">Bar</span> <span class="n">bar</span><span class="p">,</span> <span class="n">Foo</span> <span class="n">foo</span><span class="p">);</span>
|
||||
<span class="cp">#endif</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>This example is allowed:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="cp">#ifdef PROTECTION</span>
|
||||
<span class="kt">void</span> <span class="n">ProtSync</span><span class="p">(</span><span class="n">Space</span> <span class="n">space</span><span class="p">);</span>
|
||||
<span class="cp">/* more decls. */</span>
|
||||
<span class="kt">void</span> <span class="nf">ProtSync</span><span class="p">(</span><span class="n">Space</span> <span class="n">space</span><span class="p">);</span>
|
||||
<span class="cm">/* more decls. */</span>
|
||||
<span class="cp">#else </span><span class="cm">/* PROTECTION not */</span><span class="cp"></span>
|
||||
<span class="cp">#define ProtSync(space) NOOP</span>
|
||||
<span class="cp">/* more decls. */</span>
|
||||
<span class="cm">/* more decls. */</span>
|
||||
<span class="cp">#endif </span><span class="cm">/* PROTECTION */</span><span class="cp"></span>
|
||||
</pre></div>
|
||||
</div>
|
||||
|
|
@ -528,7 +528,7 @@ placed in a separate, common module.</p>
|
|||
title="next chapter">8. Finalization</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -536,7 +536,7 @@ placed in a separate, common module.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -556,7 +556,7 @@ placed in a separate, common module.</p>
|
|||
<li class="right" >
|
||||
<a href="collection.html" title="6. Collection framework"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Design</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>8. Finalization — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>8. Finalization — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Design" href="index.html" />
|
||||
<link rel="next" title="9. The generic fix function" href="fix.html" />
|
||||
<link rel="prev" title="7. Configuration" href="config.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="config.html" title="7. Configuration"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Design</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -199,7 +199,7 @@ in the absence of a write-barrier, it’s functionally identical to
|
|||
title="next chapter">9. The generic fix function</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -207,7 +207,7 @@ in the absence of a write-barrier, it’s functionally identical to
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -227,7 +227,7 @@ in the absence of a write-barrier, it’s functionally identical to
|
|||
<li class="right" >
|
||||
<a href="config.html" title="7. Configuration"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Design</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>9. The generic fix function — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>9. The generic fix function — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Design" href="index.html" />
|
||||
<link rel="next" title="14. The lock module" href="lock.html" />
|
||||
<link rel="prev" title="8. Finalization" href="finalize.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="finalize.html" title="8. Finalization"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Design</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -126,7 +126,7 @@ is nailed); the <tt class="xref c c-macro docutils literal"><span class="pre">Ra
|
|||
title="next chapter">14. The lock module</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -134,7 +134,7 @@ is nailed); the <tt class="xref c c-macro docutils literal"><span class="pre">Ra
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -154,7 +154,7 @@ is nailed); the <tt class="xref c c-macro docutils literal"><span class="pre">Ra
|
|||
<li class="right" >
|
||||
<a href="finalize.html" title="8. Finalization"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Design</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Design — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Design — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="next" title="1. Arena" href="arena.html" />
|
||||
<link rel="prev" title="3. The critical path" href="../topic/critical.html" />
|
||||
</head>
|
||||
|
|
@ -43,7 +43,7 @@
|
|||
<li class="right" >
|
||||
<a href="../topic/critical.html" title="3. The critical path"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
|
@ -310,7 +310,7 @@ date, they will be moved to the <a class="reference internal" href="../topic/int
|
|||
title="next chapter">1. Arena</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -318,7 +318,7 @@ date, they will be moved to the <a class="reference internal" href="../topic/int
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -338,7 +338,7 @@ date, they will be moved to the <a class="reference internal" href="../topic/int
|
|||
<li class="right" >
|
||||
<a href="../topic/critical.html" title="3. The critical path"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="footer">
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>14. The lock module — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>14. The lock module — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Design" href="index.html" />
|
||||
<link rel="next" title="15. Debugging features for client objects" href="object-debug.html" />
|
||||
<link rel="prev" title="9. The generic fix function" href="fix.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="fix.html" title="9. The generic fix function"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Design</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -275,7 +275,7 @@ success or EDEADLK (indicating a recursive claim);</li>
|
|||
title="next chapter">15. Debugging features for client objects</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -283,7 +283,7 @@ success or EDEADLK (indicating a recursive claim);</li>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -303,7 +303,7 @@ success or EDEADLK (indicating a recursive claim);</li>
|
|||
<li class="right" >
|
||||
<a href="fix.html" title="9. The generic fix function"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Design</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>15. Debugging features for client objects — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>15. Debugging features for client objects — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Design" href="index.html" />
|
||||
<link rel="next" title="16. Protocol inheritance" href="protocol.html" />
|
||||
<link rel="prev" title="14. The lock module" href="lock.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="lock.html" title="14. The lock module"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Design</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -447,7 +447,7 @@ created.</p>
|
|||
title="next chapter">16. Protocol inheritance</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -455,7 +455,7 @@ created.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -475,7 +475,7 @@ created.</p>
|
|||
<li class="right" >
|
||||
<a href="lock.html" title="14. The lock module"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Design</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>16. Protocol inheritance — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>16. Protocol inheritance — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Design" href="index.html" />
|
||||
<link rel="next" title="17. General MPS types" href="type.html" />
|
||||
<link rel="prev" title="15. Debugging features for client objects" href="object-debug.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="object-debug.html" title="15. Debugging features for client objects"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Design</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -547,7 +547,7 @@ design.mps.lock(0).</p>
|
|||
title="next chapter">17. General MPS types</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -555,7 +555,7 @@ design.mps.lock(0).</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -575,7 +575,7 @@ design.mps.lock(0).</p>
|
|||
<li class="right" >
|
||||
<a href="object-debug.html" title="15. Debugging features for client objects"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Design</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>17. General MPS types — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>17. General MPS types — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Design" href="index.html" />
|
||||
<link rel="next" title="18. Software versions" href="version.html" />
|
||||
<link rel="prev" title="16. Protocol inheritance" href="protocol.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="protocol.html" title="16. Protocol inheritance"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Design</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -656,7 +656,7 @@ exists to sanctify functions such as <tt class="xref c c-func docutils literal">
|
|||
title="next chapter">18. Software versions</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -664,7 +664,7 @@ exists to sanctify functions such as <tt class="xref c c-func docutils literal">
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -684,7 +684,7 @@ exists to sanctify functions such as <tt class="xref c c-func docutils literal">
|
|||
<li class="right" >
|
||||
<a href="protocol.html" title="16. Protocol inheritance"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Design</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>19. Library version mechanism — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>19. Library version mechanism — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Design" href="index.html" />
|
||||
<link rel="next" title="Introduction to memory management" href="../mmref/index.html" />
|
||||
<link rel="prev" title="18. Software versions" href="version.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="version.html" title="18. Software versions"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Design</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -177,7 +177,7 @@ changed back immediately after the release checkpoint is made.</p>
|
|||
title="next chapter">Introduction to memory management</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -185,7 +185,7 @@ changed back immediately after the release checkpoint is made.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -205,7 +205,7 @@ changed back immediately after the release checkpoint is made.</p>
|
|||
<li class="right" >
|
||||
<a href="version.html" title="18. Software versions"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Design</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>18. Software versions — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>18. Software versions — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Design" href="index.html" />
|
||||
<link rel="next" title="19. Library version mechanism" href="version-library.html" />
|
||||
<link rel="prev" title="17. General MPS types" href="type.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="type.html" title="17. General MPS types"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Design</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -115,7 +115,7 @@ non-existent documents for the others.</p>
|
|||
title="next chapter">19. Library version mechanism</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -123,7 +123,7 @@ non-existent documents for the others.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -143,7 +143,7 @@ non-existent documents for the others.</p>
|
|||
<li class="right" >
|
||||
<a href="type.html" title="17. General MPS types"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Design</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Index — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Index — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
|
||||
|
|
@ -18,7 +18,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -28,7 +28,7 @@
|
|||
<script type="text/javascript" src="_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="index.html" />
|
||||
</head>
|
||||
<body>
|
||||
<div class="related">
|
||||
|
|
@ -37,7 +37,7 @@
|
|||
<li class="right" style="margin-right: 10px">
|
||||
<a href="#" title="General Index"
|
||||
accesskey="I">index</a></li>
|
||||
<li><a href="index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
|
@ -1571,7 +1571,7 @@
|
|||
</dt>
|
||||
|
||||
|
||||
<dt><a href="topic/debugging.html#index-1">fencepost</a>, <a href="glossary/f.html#term-fencepost"><strong>[1]</strong></a>
|
||||
<dt><a href="glossary/f.html#term-fencepost"><strong>fencepost</strong></a>, <a href="topic/debugging.html#index-1">[1]</a>
|
||||
</dt>
|
||||
|
||||
|
||||
|
|
@ -3049,11 +3049,11 @@
|
|||
</dt>
|
||||
|
||||
|
||||
<dt><a href="design/finalize.html#mps_definalize">mps_definalize (C function)</a>, <a href="topic/finalization.html#mps_definalize">[1]</a>
|
||||
<dt><a href="topic/finalization.html#mps_definalize">mps_definalize (C function)</a>, <a href="design/finalize.html#mps_definalize">[1]</a>
|
||||
</dt>
|
||||
|
||||
|
||||
<dt><a href="design/finalize.html#mps_finalize">mps_finalize (C function)</a>, <a href="topic/finalization.html#mps_finalize">[1]</a>
|
||||
<dt><a href="topic/finalization.html#mps_finalize">mps_finalize (C function)</a>, <a href="design/finalize.html#mps_finalize">[1]</a>
|
||||
</dt>
|
||||
|
||||
|
||||
|
|
@ -3267,7 +3267,7 @@
|
|||
</dt>
|
||||
|
||||
|
||||
<dt><a href="design/finalize.html#mps_message_finalization_ref">mps_message_finalization_ref (C function)</a>, <a href="topic/finalization.html#mps_message_finalization_ref">[1]</a>
|
||||
<dt><a href="topic/finalization.html#mps_message_finalization_ref">mps_message_finalization_ref (C function)</a>, <a href="design/finalize.html#mps_message_finalization_ref">[1]</a>
|
||||
</dt>
|
||||
|
||||
|
||||
|
|
@ -3982,7 +3982,7 @@
|
|||
</dt>
|
||||
|
||||
|
||||
<dt><a href="guide/lang.html#index-9">padding method</a>, <a href="glossary/p.html#term-padding-method"><strong>[1]</strong></a>
|
||||
<dt><a href="glossary/p.html#term-padding-method"><strong>padding method</strong></a>, <a href="guide/lang.html#index-9">[1]</a>
|
||||
</dt>
|
||||
|
||||
|
||||
|
|
@ -4030,7 +4030,7 @@
|
|||
</dt>
|
||||
|
||||
|
||||
<dt><a href="topic/arena.html#index-8">parked state</a>, <a href="glossary/p.html#term-parked-state"><strong>[1]</strong></a>
|
||||
<dt><a href="glossary/p.html#term-parked-state"><strong>parked state</strong></a>, <a href="topic/arena.html#index-8">[1]</a>
|
||||
</dt>
|
||||
|
||||
|
||||
|
|
@ -5700,7 +5700,7 @@
|
|||
</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -5708,7 +5708,7 @@
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -5722,7 +5722,7 @@
|
|||
<li class="right" style="margin-right: 10px">
|
||||
<a href="#" title="General Index"
|
||||
>index</a></li>
|
||||
<li><a href="index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="footer">
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Memory Management Glossary: A — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Memory Management Glossary: A — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Memory Management Glossary" href="index.html" />
|
||||
<link rel="next" title="Memory Management Glossary: B" href="b.html" />
|
||||
<link rel="prev" title="Memory Management Glossary" href="index.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="index.html" title="Memory Management Glossary"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -593,7 +593,7 @@ it returns.</p>
|
|||
title="next chapter">Memory Management Glossary: B</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -601,7 +601,7 @@ it returns.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -621,7 +621,7 @@ it returns.</p>
|
|||
<li class="right" >
|
||||
<a href="index.html" title="Memory Management Glossary"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Memory Management Glossary: B — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Memory Management Glossary: B — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Memory Management Glossary" href="index.html" />
|
||||
<link rel="next" title="Memory Management Glossary: C" href="c.html" />
|
||||
<link rel="prev" title="Memory Management Glossary: A" href="a.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="a.html" title="Memory Management Glossary: A"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -533,7 +533,7 @@ and <a class="reference internal" href="#term-byte-2"><em class="xref std std-te
|
|||
title="next chapter">Memory Management Glossary: C</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -541,7 +541,7 @@ and <a class="reference internal" href="#term-byte-2"><em class="xref std std-te
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -561,7 +561,7 @@ and <a class="reference internal" href="#term-byte-2"><em class="xref std std-te
|
|||
<li class="right" >
|
||||
<a href="a.html" title="Memory Management Glossary: A"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Memory Management Glossary: C — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Memory Management Glossary: C — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Memory Management Glossary" href="index.html" />
|
||||
<link rel="next" title="Memory Management Glossary: D" href="d.html" />
|
||||
<link rel="prev" title="Memory Management Glossary: B" href="b.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="b.html" title="Memory Management Glossary: B"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -743,7 +743,7 @@ reached by following references from itself.</dd>
|
|||
title="next chapter">Memory Management Glossary: D</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -751,7 +751,7 @@ reached by following references from itself.</dd>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -771,7 +771,7 @@ reached by following references from itself.</dd>
|
|||
<li class="right" >
|
||||
<a href="b.html" title="Memory Management Glossary: B"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Memory Management Glossary: D — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Memory Management Glossary: D — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Memory Management Glossary" href="index.html" />
|
||||
<link rel="next" title="Memory Management Glossary: E" href="e.html" />
|
||||
<link rel="prev" title="Memory Management Glossary: C" href="c.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="c.html" title="Memory Management Glossary: C"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -420,7 +420,7 @@ PCs. Dynamic memory often comes packaged in SIMMs or DIMMs.</p>
|
|||
title="next chapter">Memory Management Glossary: E</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -428,7 +428,7 @@ PCs. Dynamic memory often comes packaged in SIMMs or DIMMs.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -448,7 +448,7 @@ PCs. Dynamic memory often comes packaged in SIMMs or DIMMs.</p>
|
|||
<li class="right" >
|
||||
<a href="c.html" title="Memory Management Glossary: C"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Memory Management Glossary: E — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Memory Management Glossary: E — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Memory Management Glossary" href="index.html" />
|
||||
<link rel="next" title="Memory Management Glossary: F" href="f.html" />
|
||||
<link rel="prev" title="Memory Management Glossary: D" href="d.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="d.html" title="Memory Management Glossary: D"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -275,7 +275,7 @@ no large blocks can be <a class="reference internal" href="a.html#term-allocate"
|
|||
title="next chapter">Memory Management Glossary: F</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -283,7 +283,7 @@ no large blocks can be <a class="reference internal" href="a.html#term-allocate"
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -303,7 +303,7 @@ no large blocks can be <a class="reference internal" href="a.html#term-allocate"
|
|||
<li class="right" >
|
||||
<a href="d.html" title="Memory Management Glossary: D"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Memory Management Glossary: F — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Memory Management Glossary: F — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Memory Management Glossary" href="index.html" />
|
||||
<link rel="next" title="Memory Management Glossary: G" href="g.html" />
|
||||
<link rel="prev" title="Memory Management Glossary: E" href="e.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="e.html" title="Memory Management Glossary: E"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -539,7 +539,7 @@ same).</p>
|
|||
title="next chapter">Memory Management Glossary: G</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -547,7 +547,7 @@ same).</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -567,7 +567,7 @@ same).</p>
|
|||
<li class="right" >
|
||||
<a href="e.html" title="Memory Management Glossary: E"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Memory Management Glossary: G — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Memory Management Glossary: G — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Memory Management Glossary" href="index.html" />
|
||||
<link rel="next" title="Memory Management Glossary: H" href="h.html" />
|
||||
<link rel="prev" title="Memory Management Glossary: F" href="f.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="f.html" title="Memory Management Glossary: F"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -393,7 +393,7 @@ cheap.</p>
|
|||
title="next chapter">Memory Management Glossary: H</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -401,7 +401,7 @@ cheap.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -421,7 +421,7 @@ cheap.</p>
|
|||
<li class="right" >
|
||||
<a href="f.html" title="Memory Management Glossary: F"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Memory Management Glossary: H — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Memory Management Glossary: H — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Memory Management Glossary" href="index.html" />
|
||||
<link rel="next" title="Memory Management Glossary: I" href="i.html" />
|
||||
<link rel="prev" title="Memory Management Glossary: G" href="g.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="g.html" title="Memory Management Glossary: G"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -211,7 +211,7 @@ of the <a class="reference internal" href="p.html#term-page-table"><em class="xr
|
|||
title="next chapter">Memory Management Glossary: I</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -219,7 +219,7 @@ of the <a class="reference internal" href="p.html#term-page-table"><em class="xr
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -239,7 +239,7 @@ of the <a class="reference internal" href="p.html#term-page-table"><em class="xr
|
|||
<li class="right" >
|
||||
<a href="g.html" title="Memory Management Glossary: G"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Memory Management Glossary: I — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Memory Management Glossary: I — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Memory Management Glossary" href="index.html" />
|
||||
<link rel="next" title="Memory Management Glossary: K" href="k.html" />
|
||||
<link rel="prev" title="Memory Management Glossary: H" href="h.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="h.html" title="Memory Management Glossary: H"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -472,7 +472,7 @@ moved to. See <a class="reference internal" href="../topic/format.html#mps_fmt_i
|
|||
title="next chapter">Memory Management Glossary: K</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -480,7 +480,7 @@ moved to. See <a class="reference internal" href="../topic/format.html#mps_fmt_i
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -500,7 +500,7 @@ moved to. See <a class="reference internal" href="../topic/format.html#mps_fmt_i
|
|||
<li class="right" >
|
||||
<a href="h.html" title="Memory Management Glossary: H"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Memory Management Glossary — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Memory Management Glossary — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="next" title="Memory Management Glossary: A" href="a.html" />
|
||||
<link rel="prev" title="Acknowledgements" href="../mmref/credit.html" />
|
||||
</head>
|
||||
|
|
@ -43,7 +43,7 @@
|
|||
<li class="right" >
|
||||
<a href="../mmref/credit.html" title="Acknowledgements"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
|
@ -126,7 +126,7 @@
|
|||
title="next chapter">Memory Management Glossary: A</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -134,7 +134,7 @@
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -154,7 +154,7 @@
|
|||
<li class="right" >
|
||||
<a href="../mmref/credit.html" title="Acknowledgements"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="footer">
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Memory Management Glossary: K — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Memory Management Glossary: K — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Memory Management Glossary" href="index.html" />
|
||||
<link rel="next" title="Memory Management Glossary: L" href="l.html" />
|
||||
<link rel="prev" title="Memory Management Glossary: I" href="i.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="i.html" title="Memory Management Glossary: I"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -120,7 +120,7 @@ people unfamiliar with the metric system.</p>
|
|||
title="next chapter">Memory Management Glossary: L</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -128,7 +128,7 @@ people unfamiliar with the metric system.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -148,7 +148,7 @@ people unfamiliar with the metric system.</p>
|
|||
<li class="right" >
|
||||
<a href="i.html" title="Memory Management Glossary: I"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Memory Management Glossary: L — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Memory Management Glossary: L — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Memory Management Glossary" href="index.html" />
|
||||
<link rel="next" title="Memory Management Glossary: M" href="m.html" />
|
||||
<link rel="prev" title="Memory Management Glossary: K" href="k.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="k.html" title="Memory Management Glossary: K"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -362,7 +362,7 @@ locks.</dd>
|
|||
title="next chapter">Memory Management Glossary: M</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -370,7 +370,7 @@ locks.</dd>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -390,7 +390,7 @@ locks.</dd>
|
|||
<li class="right" >
|
||||
<a href="k.html" title="Memory Management Glossary: K"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Memory Management Glossary: M — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Memory Management Glossary: M — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Memory Management Glossary" href="index.html" />
|
||||
<link rel="next" title="Memory Management Glossary: N" href="n.html" />
|
||||
<link rel="prev" title="Memory Management Glossary: L" href="l.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="l.html" title="Memory Management Glossary: L"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -702,7 +702,7 @@ to refer to the mutator.</p>
|
|||
title="next chapter">Memory Management Glossary: N</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -710,7 +710,7 @@ to refer to the mutator.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -730,7 +730,7 @@ to refer to the mutator.</p>
|
|||
<li class="right" >
|
||||
<a href="l.html" title="Memory Management Glossary: L"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Memory Management Glossary: N — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Memory Management Glossary: N — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Memory Management Glossary" href="index.html" />
|
||||
<link rel="next" title="Memory Management Glossary: O" href="o.html" />
|
||||
<link rel="prev" title="Memory Management Glossary: M" href="m.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="m.html" title="Memory Management Glossary: M"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -216,7 +216,7 @@ it is related to the size of <a class="reference internal" href="p.html#term-phy
|
|||
title="next chapter">Memory Management Glossary: O</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -224,7 +224,7 @@ it is related to the size of <a class="reference internal" href="p.html#term-phy
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -244,7 +244,7 @@ it is related to the size of <a class="reference internal" href="p.html#term-phy
|
|||
<li class="right" >
|
||||
<a href="m.html" title="Memory Management Glossary: M"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Memory Management Glossary: O — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Memory Management Glossary: O — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Memory Management Glossary" href="index.html" />
|
||||
<link rel="next" title="Memory Management Glossary: P" href="p.html" />
|
||||
<link rel="prev" title="Memory Management Glossary: N" href="n.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="n.html" title="Memory Management Glossary: N"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -279,7 +279,7 @@ write outside the bounds of that block.</p>
|
|||
title="next chapter">Memory Management Glossary: P</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -287,7 +287,7 @@ write outside the bounds of that block.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -307,7 +307,7 @@ write outside the bounds of that block.</p>
|
|||
<li class="right" >
|
||||
<a href="n.html" title="Memory Management Glossary: N"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Memory Management Glossary: P — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Memory Management Glossary: P — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Memory Management Glossary" href="index.html" />
|
||||
<link rel="next" title="Memory Management Glossary: Q" href="q.html" />
|
||||
<link rel="prev" title="Memory Management Glossary: O" href="o.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="o.html" title="Memory Management Glossary: O"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -663,7 +663,7 @@ protection faults to provide <a class="reference internal" href="b.html#term-bar
|
|||
title="next chapter">Memory Management Glossary: Q</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -671,7 +671,7 @@ protection faults to provide <a class="reference internal" href="b.html#term-bar
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -691,7 +691,7 @@ protection faults to provide <a class="reference internal" href="b.html#term-bar
|
|||
<li class="right" >
|
||||
<a href="o.html" title="Memory Management Glossary: O"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Memory Management Glossary: Q — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Memory Management Glossary: Q — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Memory Management Glossary" href="index.html" />
|
||||
<link rel="next" title="Memory Management Glossary: R" href="r.html" />
|
||||
<link rel="prev" title="Memory Management Glossary: P" href="p.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="p.html" title="Memory Management Glossary: P"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -118,7 +118,7 @@ PDP-11.</p>
|
|||
title="next chapter">Memory Management Glossary: R</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -126,7 +126,7 @@ PDP-11.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -146,7 +146,7 @@ PDP-11.</p>
|
|||
<li class="right" >
|
||||
<a href="p.html" title="Memory Management Glossary: P"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Memory Management Glossary: R — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Memory Management Glossary: R — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Memory Management Glossary" href="index.html" />
|
||||
<link rel="next" title="Memory Management Glossary: S" href="s.html" />
|
||||
<link rel="prev" title="Memory Management Glossary: Q" href="q.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="q.html" title="Memory Management Glossary: Q"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -647,7 +647,7 @@ the <a class="reference internal" href="m.html#term-mutator"><em class="xref std
|
|||
title="next chapter">Memory Management Glossary: S</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -655,7 +655,7 @@ the <a class="reference internal" href="m.html#term-mutator"><em class="xref std
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -675,7 +675,7 @@ the <a class="reference internal" href="m.html#term-mutator"><em class="xref std
|
|||
<li class="right" >
|
||||
<a href="q.html" title="Memory Management Glossary: Q"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Memory Management Glossary: S — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Memory Management Glossary: S — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Memory Management Glossary" href="index.html" />
|
||||
<link rel="next" title="Memory Management Glossary: T" href="t.html" />
|
||||
<link rel="prev" title="Memory Management Glossary: R" href="r.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="r.html" title="Memory Management Glossary: R"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -1096,7 +1096,7 @@ makes them scannable before the collector runs.</p>
|
|||
title="next chapter">Memory Management Glossary: T</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -1104,7 +1104,7 @@ makes them scannable before the collector runs.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -1124,7 +1124,7 @@ makes them scannable before the collector runs.</p>
|
|||
<li class="right" >
|
||||
<a href="r.html" title="Memory Management Glossary: R"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Memory Management Glossary: T — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Memory Management Glossary: T — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Memory Management Glossary" href="index.html" />
|
||||
<link rel="next" title="Memory Management Glossary: U" href="u.html" />
|
||||
<link rel="prev" title="Memory Management Glossary: S" href="s.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="s.html" title="Memory Management Glossary: S"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -506,7 +506,7 @@ language standard. For example, interpreting a value of type
|
|||
title="next chapter">Memory Management Glossary: U</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -514,7 +514,7 @@ language standard. For example, interpreting a value of type
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -534,7 +534,7 @@ language standard. For example, interpreting a value of type
|
|||
<li class="right" >
|
||||
<a href="s.html" title="Memory Management Glossary: S"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Memory Management Glossary: U — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Memory Management Glossary: U — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Memory Management Glossary" href="index.html" />
|
||||
<link rel="next" title="Memory Management Glossary: V" href="v.html" />
|
||||
<link rel="prev" title="Memory Management Glossary: T" href="t.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="t.html" title="Memory Management Glossary: T"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -239,7 +239,7 @@ numeric values such as integers or floats.</p>
|
|||
title="next chapter">Memory Management Glossary: V</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -247,7 +247,7 @@ numeric values such as integers or floats.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -267,7 +267,7 @@ numeric values such as integers or floats.</p>
|
|||
<li class="right" >
|
||||
<a href="t.html" title="Memory Management Glossary: T"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Memory Management Glossary: V — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Memory Management Glossary: V — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Memory Management Glossary" href="index.html" />
|
||||
<link rel="next" title="Memory Management Glossary: W" href="w.html" />
|
||||
<link rel="prev" title="Memory Management Glossary: U" href="u.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="u.html" title="Memory Management Glossary: U"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -276,7 +276,7 @@ with the usual sense of the phrase (see <a class="reference internal" href="#ter
|
|||
title="next chapter">Memory Management Glossary: W</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -284,7 +284,7 @@ with the usual sense of the phrase (see <a class="reference internal" href="#ter
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -304,7 +304,7 @@ with the usual sense of the phrase (see <a class="reference internal" href="#ter
|
|||
<li class="right" >
|
||||
<a href="u.html" title="Memory Management Glossary: U"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Memory Management Glossary: W — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Memory Management Glossary: W — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Memory Management Glossary" href="index.html" />
|
||||
<link rel="next" title="Memory Management Glossary: Z" href="z.html" />
|
||||
<link rel="prev" title="Memory Management Glossary: V" href="v.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="v.html" title="Memory Management Glossary: V"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -416,7 +416,7 @@ They are also used to maintain <a class="reference internal" href="r.html#term-r
|
|||
title="next chapter">Memory Management Glossary: Z</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -424,7 +424,7 @@ They are also used to maintain <a class="reference internal" href="r.html#term-r
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -444,7 +444,7 @@ They are also used to maintain <a class="reference internal" href="r.html#term-r
|
|||
<li class="right" >
|
||||
<a href="v.html" title="Memory Management Glossary: V"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Memory Management Glossary: Z — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Memory Management Glossary: Z — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Memory Management Glossary" href="index.html" />
|
||||
<link rel="next" title="Memory Pool System Kit Open Source License" href="../copyright.html" />
|
||||
<link rel="prev" title="Memory Management Glossary: W" href="w.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="w.html" title="Memory Management Glossary: W"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -120,7 +120,7 @@ zero but which have not been processed to see if they can be
|
|||
title="next chapter">Memory Pool System Kit Open Source License</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -128,7 +128,7 @@ zero but which have not been processed to see if they can be
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -148,7 +148,7 @@ zero but which have not been processed to see if they can be
|
|||
<li class="right" >
|
||||
<a href="w.html" title="Memory Management Glossary: W"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Memory Management Glossary</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>6. Advanced topics — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>6. Advanced topics — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Guide" href="index.html" />
|
||||
<link rel="next" title="Reference" href="../topic/index.html" />
|
||||
<link rel="prev" title="5. Tuning the Memory Pool System for performance" href="perf.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="perf.html" title="5. Tuning the Memory Pool System for performance"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Guide</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -61,8 +61,8 @@
|
|||
<p>In Scheme, an open file is represented by a <em>port</em>. In the toy Scheme
|
||||
interpreter, a port is a wrapper around a standard C file handle:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">typedef</span> <span class="k">struct</span> <span class="n">port_s</span> <span class="p">{</span>
|
||||
<span class="n">type_t</span> <span class="n">type</span><span class="p">;</span> <span class="cm">/* TYPE_PORT */</span>
|
||||
<span class="n">obj_t</span> <span class="n">name</span><span class="p">;</span> <span class="cm">/* name of stream */</span>
|
||||
<span class="kt">type_t</span> <span class="n">type</span><span class="p">;</span> <span class="cm">/* TYPE_PORT */</span>
|
||||
<span class="kt">obj_t</span> <span class="n">name</span><span class="p">;</span> <span class="cm">/* name of stream */</span>
|
||||
<span class="kt">FILE</span> <span class="o">*</span><span class="n">stream</span><span class="p">;</span>
|
||||
<span class="p">}</span> <span class="n">port_s</span><span class="p">;</span>
|
||||
</pre></div>
|
||||
|
|
@ -84,14 +84,14 @@ reliable mechanisms for releasing resources (like Scheme’s
|
|||
<p>Any block in an <a class="reference internal" href="../glossary/a.html#term-automatic-memory-management"><em class="xref std std-term">automatically managed</em></a> <a class="reference internal" href="../glossary/p.html#term-pool"><em class="xref std std-term">pool</em></a> can be registered for finalization by calling
|
||||
<a class="reference internal" href="../topic/finalization.html#mps_finalize" title="mps_finalize"><tt class="xref c c-func docutils literal"><span class="pre">mps_finalize()</span></tt></a>. In the toy Scheme interpreter, this can be done
|
||||
in <tt class="docutils literal"><span class="pre">make_port</span></tt>:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre> <span class="k">static</span> <span class="n">obj_t</span> <span class="nf">make_port</span><span class="p">(</span><span class="n">obj_t</span> <span class="n">name</span><span class="p">,</span> <span class="kt">FILE</span> <span class="o">*</span><span class="n">stream</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre> <span class="k">static</span> <span class="kt">obj_t</span> <span class="nf">make_port</span><span class="p">(</span><span class="kt">obj_t</span> <span class="n">name</span><span class="p">,</span> <span class="kt">FILE</span> <span class="o">*</span><span class="n">stream</span><span class="p">)</span>
|
||||
<span class="p">{</span>
|
||||
<span class="n">mps_addr_t</span> <span class="n">port_ref</span><span class="p">;</span>
|
||||
<span class="n">obj_t</span> <span class="n">obj</span><span class="p">;</span>
|
||||
<span class="n">mps_addr_t</span> <span class="n">addr</span><span class="p">;</span>
|
||||
<span class="kt">mps_addr_t</span> <span class="n">port_ref</span><span class="p">;</span>
|
||||
<span class="kt">obj_t</span> <span class="n">obj</span><span class="p">;</span>
|
||||
<span class="kt">mps_addr_t</span> <span class="n">addr</span><span class="p">;</span>
|
||||
<span class="kt">size_t</span> <span class="n">size</span> <span class="o">=</span> <span class="n">ALIGN</span><span class="p">(</span><span class="k">sizeof</span><span class="p">(</span><span class="n">port_s</span><span class="p">));</span>
|
||||
<span class="k">do</span> <span class="p">{</span>
|
||||
<span class="n">mps_res_t</span> <span class="n">res</span> <span class="o">=</span> <span class="n">mps_reserve</span><span class="p">(</span><span class="o">&</span><span class="n">addr</span><span class="p">,</span> <span class="n">obj_ap</span><span class="p">,</span> <span class="n">size</span><span class="p">);</span>
|
||||
<span class="kt">mps_res_t</span> <span class="n">res</span> <span class="o">=</span> <span class="n">mps_reserve</span><span class="p">(</span><span class="o">&</span><span class="n">addr</span><span class="p">,</span> <span class="n">obj_ap</span><span class="p">,</span> <span class="n">size</span><span class="p">);</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">res</span> <span class="o">!=</span> <span class="n">MPS_RES_OK</span><span class="p">)</span> <span class="n">error</span><span class="p">(</span><span class="s">"out of memory in make_port"</span><span class="p">);</span>
|
||||
<span class="n">obj</span> <span class="o">=</span> <span class="n">addr</span><span class="p">;</span>
|
||||
<span class="n">obj</span><span class="o">-></span><span class="n">port</span><span class="p">.</span><span class="n">type</span> <span class="o">=</span> <span class="n">TYPE_PORT</span><span class="p">;</span>
|
||||
|
|
@ -127,17 +127,17 @@ reachable.</p>
|
|||
message queue is at the start of the read–eval–print loop. When a
|
||||
finalization message is found, the associated file handle is closed
|
||||
(unless it has been closed already), and the message is discarded.</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre> <span class="n">mps_message_type_t</span> <span class="n">type</span><span class="p">;</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre> <span class="kt">mps_message_type_t</span> <span class="n">type</span><span class="p">;</span>
|
||||
|
||||
<span class="k">while</span> <span class="p">(</span><span class="n">mps_message_queue_type</span><span class="p">(</span><span class="o">&</span><span class="n">type</span><span class="p">,</span> <span class="n">arena</span><span class="p">))</span> <span class="p">{</span>
|
||||
<span class="n">mps_message_t</span> <span class="n">message</span><span class="p">;</span>
|
||||
<span class="n">mps_bool_t</span> <span class="n">b</span><span class="p">;</span>
|
||||
<span class="kt">mps_message_t</span> <span class="n">message</span><span class="p">;</span>
|
||||
<span class="kt">mps_bool_t</span> <span class="n">b</span><span class="p">;</span>
|
||||
<span class="n">b</span> <span class="o">=</span> <span class="n">mps_message_get</span><span class="p">(</span><span class="o">&</span><span class="n">message</span><span class="p">,</span> <span class="n">arena</span><span class="p">,</span> <span class="n">type</span><span class="p">);</span>
|
||||
<span class="n">assert</span><span class="p">(</span><span class="n">b</span><span class="p">);</span> <span class="cm">/* we just checked there was one */</span>
|
||||
|
||||
<span class="hll"> <span class="k">if</span> <span class="p">(</span><span class="n">type</span> <span class="o">==</span> <span class="n">mps_message_type_finalization</span><span class="p">())</span> <span class="p">{</span>
|
||||
</span> <span class="n">mps_addr_t</span> <span class="n">port_ref</span><span class="p">;</span>
|
||||
<span class="n">obj_t</span> <span class="n">port</span><span class="p">;</span>
|
||||
</span> <span class="kt">mps_addr_t</span> <span class="n">port_ref</span><span class="p">;</span>
|
||||
<span class="kt">obj_t</span> <span class="n">port</span><span class="p">;</span>
|
||||
<span class="hll"> <span class="n">mps_message_finalization_ref</span><span class="p">(</span><span class="o">&</span><span class="n">port_ref</span><span class="p">,</span> <span class="n">arena</span><span class="p">,</span> <span class="n">message</span><span class="p">);</span>
|
||||
</span> <span class="n">port</span> <span class="o">=</span> <span class="n">port_ref</span><span class="p">;</span>
|
||||
<span class="n">assert</span><span class="p">(</span><span class="n">TYPE</span><span class="p">(</span><span class="n">port</span><span class="p">)</span> <span class="o">==</span> <span class="n">TYPE_PORT</span><span class="p">);</span>
|
||||
|
|
@ -176,11 +176,11 @@ finalization message is found, the associated file handle is closed
|
|||
optimization: setting <tt class="docutils literal"><span class="pre">stream</span></tt> to <tt class="docutils literal"><span class="pre">NULL</span></tt> ensures that the file
|
||||
handle wouldn’t be closed more than once, even if the port object were
|
||||
later finalized.</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">void</span> <span class="nf">port_close</span><span class="p">(</span><span class="n">obj_t</span> <span class="n">port</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">void</span> <span class="nf">port_close</span><span class="p">(</span><span class="kt">obj_t</span> <span class="n">port</span><span class="p">)</span>
|
||||
<span class="p">{</span>
|
||||
<span class="n">assert</span><span class="p">(</span><span class="n">TYPE</span><span class="p">(</span><span class="n">port</span><span class="p">)</span> <span class="o">==</span> <span class="n">TYPE_PORT</span><span class="p">);</span>
|
||||
<span class="k">if</span><span class="p">(</span><span class="n">port</span><span class="o">-></span><span class="n">port</span><span class="p">.</span><span class="n">stream</span> <span class="o">!=</span> <span class="nb">NULL</span><span class="p">)</span> <span class="p">{</span>
|
||||
<span class="n">mps_addr_t</span> <span class="n">port_ref</span> <span class="o">=</span> <span class="n">port</span><span class="p">;</span>
|
||||
<span class="kt">mps_addr_t</span> <span class="n">port_ref</span> <span class="o">=</span> <span class="n">port</span><span class="p">;</span>
|
||||
<span class="n">fclose</span><span class="p">(</span><span class="n">port</span><span class="o">-></span><span class="n">port</span><span class="p">.</span><span class="n">stream</span><span class="p">);</span>
|
||||
<span class="n">port</span><span class="o">-></span><span class="n">port</span><span class="p">.</span><span class="n">stream</span> <span class="o">=</span> <span class="nb">NULL</span><span class="p">;</span>
|
||||
<span class="hll"> <span class="n">mps_definalize</span><span class="p">(</span><span class="n">arena</span><span class="p">,</span> <span class="o">&</span><span class="n">port_ref</span><span class="p">);</span>
|
||||
|
|
@ -253,24 +253,24 @@ depended on might have moved since their location was depended upon.</p>
|
|||
case of a hash table, it is most convenient to inline it in the hash
|
||||
table’s metadata:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">typedef</span> <span class="k">struct</span> <span class="n">table_s</span> <span class="p">{</span>
|
||||
<span class="n">type_t</span> <span class="n">type</span><span class="p">;</span> <span class="cm">/* TYPE_TABLE */</span>
|
||||
<span class="n">hash_t</span> <span class="n">hash</span><span class="p">;</span> <span class="cm">/* hash function */</span>
|
||||
<span class="n">cmp_t</span> <span class="n">cmp</span><span class="p">;</span> <span class="cm">/* comparison function */</span>
|
||||
<span class="kt">type_t</span> <span class="n">type</span><span class="p">;</span> <span class="cm">/* TYPE_TABLE */</span>
|
||||
<span class="kt">hash_t</span> <span class="n">hash</span><span class="p">;</span> <span class="cm">/* hash function */</span>
|
||||
<span class="kt">cmp_t</span> <span class="n">cmp</span><span class="p">;</span> <span class="cm">/* comparison function */</span>
|
||||
<span class="hll"> <span class="n">mps_ld_s</span> <span class="n">ld</span><span class="p">;</span> <span class="cm">/* location dependency */</span>
|
||||
</span> <span class="n">obj_t</span> <span class="n">buckets</span><span class="p">;</span> <span class="cm">/* hash buckets */</span>
|
||||
</span> <span class="kt">obj_t</span> <span class="n">buckets</span><span class="p">;</span> <span class="cm">/* hash buckets */</span>
|
||||
<span class="p">}</span> <span class="n">table_s</span><span class="p">;</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>Before being used, the location dependency must be reset to indicate
|
||||
that nothing is depended upon, by calling <a class="reference internal" href="../topic/location.html#mps_ld_reset" title="mps_ld_reset"><tt class="xref c c-func docutils literal"><span class="pre">mps_ld_reset()</span></tt></a>.</p>
|
||||
<p>For example:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="n">obj_t</span> <span class="nf">make_table</span><span class="p">(</span><span class="kt">size_t</span> <span class="n">length</span><span class="p">,</span> <span class="n">hash_t</span> <span class="n">hashf</span><span class="p">,</span> <span class="n">cmp_t</span> <span class="n">cmpf</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">obj_t</span> <span class="nf">make_table</span><span class="p">(</span><span class="kt">size_t</span> <span class="n">length</span><span class="p">,</span> <span class="kt">hash_t</span> <span class="n">hashf</span><span class="p">,</span> <span class="kt">cmp_t</span> <span class="n">cmpf</span><span class="p">)</span>
|
||||
<span class="p">{</span>
|
||||
<span class="n">obj_t</span> <span class="n">obj</span><span class="p">;</span>
|
||||
<span class="n">mps_addr_t</span> <span class="n">addr</span><span class="p">;</span>
|
||||
<span class="kt">obj_t</span> <span class="n">obj</span><span class="p">;</span>
|
||||
<span class="kt">mps_addr_t</span> <span class="n">addr</span><span class="p">;</span>
|
||||
<span class="kt">size_t</span> <span class="n">l</span><span class="p">,</span> <span class="n">size</span> <span class="o">=</span> <span class="n">ALIGN</span><span class="p">(</span><span class="k">sizeof</span><span class="p">(</span><span class="n">table_s</span><span class="p">));</span>
|
||||
<span class="k">do</span> <span class="p">{</span>
|
||||
<span class="n">mps_res_t</span> <span class="n">res</span> <span class="o">=</span> <span class="n">mps_reserve</span><span class="p">(</span><span class="o">&</span><span class="n">addr</span><span class="p">,</span> <span class="n">obj_ap</span><span class="p">,</span> <span class="n">size</span><span class="p">);</span>
|
||||
<span class="kt">mps_res_t</span> <span class="n">res</span> <span class="o">=</span> <span class="n">mps_reserve</span><span class="p">(</span><span class="o">&</span><span class="n">addr</span><span class="p">,</span> <span class="n">obj_ap</span><span class="p">,</span> <span class="n">size</span><span class="p">);</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">res</span> <span class="o">!=</span> <span class="n">MPS_RES_OK</span><span class="p">)</span> <span class="n">error</span><span class="p">(</span><span class="s">"out of memory in make_table"</span><span class="p">);</span>
|
||||
<span class="n">obj</span> <span class="o">=</span> <span class="n">addr</span><span class="p">;</span>
|
||||
<span class="n">obj</span><span class="o">-></span><span class="n">table</span><span class="p">.</span><span class="n">type</span> <span class="o">=</span> <span class="n">TYPE_TABLE</span><span class="p">;</span>
|
||||
|
|
@ -296,12 +296,12 @@ have taken place after the hash was computed but before you added the
|
|||
dependency.)</p>
|
||||
<p>In the toy Scheme interpreter, this is done just before the computation
|
||||
of the hash of the address.</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">unsigned</span> <span class="kt">long</span> <span class="nf">eq_hash</span><span class="p">(</span><span class="n">obj_t</span> <span class="n">obj</span><span class="p">,</span> <span class="n">mps_ld_t</span> <span class="n">ld</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">unsigned</span> <span class="kt">long</span> <span class="nf">eq_hash</span><span class="p">(</span><span class="kt">obj_t</span> <span class="n">obj</span><span class="p">,</span> <span class="kt">mps_ld_t</span> <span class="n">ld</span><span class="p">)</span>
|
||||
<span class="p">{</span>
|
||||
<span class="k">union</span> <span class="p">{</span><span class="kt">char</span> <span class="n">s</span><span class="p">[</span><span class="k">sizeof</span><span class="p">(</span><span class="n">obj_t</span><span class="p">)];</span> <span class="n">obj_t</span> <span class="n">addr</span><span class="p">;}</span> <span class="n">u</span><span class="p">;</span>
|
||||
<span class="k">union</span> <span class="p">{</span><span class="kt">char</span> <span class="n">s</span><span class="p">[</span><span class="k">sizeof</span><span class="p">(</span><span class="kt">obj_t</span><span class="p">)];</span> <span class="kt">obj_t</span> <span class="n">addr</span><span class="p">;}</span> <span class="n">u</span><span class="p">;</span>
|
||||
<span class="hll"> <span class="k">if</span> <span class="p">(</span><span class="n">ld</span><span class="p">)</span> <span class="n">mps_ld_add</span><span class="p">(</span><span class="n">ld</span><span class="p">,</span> <span class="n">arena</span><span class="p">,</span> <span class="n">obj</span><span class="p">);</span>
|
||||
</span> <span class="n">u</span><span class="p">.</span><span class="n">addr</span> <span class="o">=</span> <span class="n">obj</span><span class="p">;</span>
|
||||
<span class="k">return</span> <span class="n">hash</span><span class="p">(</span><span class="n">u</span><span class="p">.</span><span class="n">s</span><span class="p">,</span> <span class="k">sizeof</span><span class="p">(</span><span class="n">obj_t</span><span class="p">));</span>
|
||||
<span class="k">return</span> <span class="n">hash</span><span class="p">(</span><span class="n">u</span><span class="p">.</span><span class="n">s</span><span class="p">,</span> <span class="k">sizeof</span><span class="p">(</span><span class="kt">obj_t</span><span class="p">));</span>
|
||||
<span class="p">}</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
|
|
@ -309,7 +309,7 @@ of the hash of the address.</p>
|
|||
avoids adding unnecessary dependencies on a location. For example, an
|
||||
<tt class="docutils literal"><span class="pre">eqv?</span></tt> hash table does not need to depend on the location of numbers
|
||||
and characters:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">unsigned</span> <span class="kt">long</span> <span class="nf">eqv_hash</span><span class="p">(</span><span class="n">obj_t</span> <span class="n">obj</span><span class="p">,</span> <span class="n">mps_ld_t</span> <span class="n">ld</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">unsigned</span> <span class="kt">long</span> <span class="nf">eqv_hash</span><span class="p">(</span><span class="kt">obj_t</span> <span class="n">obj</span><span class="p">,</span> <span class="kt">mps_ld_t</span> <span class="n">ld</span><span class="p">)</span>
|
||||
<span class="p">{</span>
|
||||
<span class="k">switch</span><span class="p">(</span><span class="n">TYPE</span><span class="p">(</span><span class="n">obj</span><span class="p">))</span> <span class="p">{</span>
|
||||
<span class="k">case</span> <span class="n">TYPE_INTEGER</span>:
|
||||
|
|
@ -339,7 +339,7 @@ the key is stale: that is, if the garbage collector moved the key. The
|
|||
function <a class="reference internal" href="../topic/location.html#mps_ld_isstale" title="mps_ld_isstale"><tt class="xref c c-func docutils literal"><span class="pre">mps_ld_isstale()</span></tt></a> tells you if any of the blocks whose
|
||||
locations you depended upon since the last call to
|
||||
<a class="reference internal" href="../topic/location.html#mps_ld_reset" title="mps_ld_reset"><tt class="xref c c-func docutils literal"><span class="pre">mps_ld_reset()</span></tt></a> might have moved.</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="n">obj_t</span> <span class="nf">table_ref</span><span class="p">(</span><span class="n">obj_t</span> <span class="n">tbl</span><span class="p">,</span> <span class="n">obj_t</span> <span class="n">key</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">obj_t</span> <span class="nf">table_ref</span><span class="p">(</span><span class="kt">obj_t</span> <span class="n">tbl</span><span class="p">,</span> <span class="kt">obj_t</span> <span class="n">key</span><span class="p">)</span>
|
||||
<span class="p">{</span>
|
||||
<span class="k">struct</span> <span class="n">bucket_s</span> <span class="o">*</span><span class="n">b</span> <span class="o">=</span> <span class="n">buckets_find</span><span class="p">(</span><span class="n">tbl</span><span class="p">,</span> <span class="n">tbl</span><span class="o">-></span><span class="n">table</span><span class="p">.</span><span class="n">buckets</span><span class="p">,</span> <span class="n">key</span><span class="p">,</span> <span class="nb">NULL</span><span class="p">);</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">b</span> <span class="o">&&</span> <span class="n">b</span><span class="o">-></span><span class="n">key</span> <span class="o">!=</span> <span class="nb">NULL</span> <span class="o">&&</span> <span class="n">b</span><span class="o">-></span><span class="n">key</span> <span class="o">!=</span> <span class="n">obj_deleted</span><span class="p">)</span>
|
||||
|
|
@ -361,7 +361,7 @@ unnecessarily rehashing the whole table. (It’s crucial, however, to
|
|||
actually test that <tt class="docutils literal"><span class="pre">key</span></tt> appears in the table, not just that some key
|
||||
with the same hash does.)</p>
|
||||
<p>When a table is rehashed, call <a class="reference internal" href="../topic/location.html#mps_ld_reset" title="mps_ld_reset"><tt class="xref c c-func docutils literal"><span class="pre">mps_ld_reset()</span></tt></a> to clear the
|
||||
location dependency, and the <a class="reference internal" href="../topic/location.html#mps_ld_add" title="mps_ld_add"><tt class="xref c c-func docutils literal"><span class="pre">mps_ld_add()</span></tt></a> for each key before it is added back to the table.</p>
|
||||
location dependency, and then <a class="reference internal" href="../topic/location.html#mps_ld_add" title="mps_ld_add"><tt class="xref c c-func docutils literal"><span class="pre">mps_ld_add()</span></tt></a> for each key before it is added back to the table.</p>
|
||||
<div class="admonition-note admonition">
|
||||
<p class="first admonition-title">Note</p>
|
||||
<p class="last">Somewhat misleadingly, <a class="reference internal" href="../topic/location.html#mps_ld_isstale" title="mps_ld_isstale"><tt class="xref c c-func docutils literal"><span class="pre">mps_ld_isstale()</span></tt></a> takes an address as
|
||||
|
|
@ -425,7 +425,7 @@ causes <a class="reference internal" href="../topic/location.html#mps_ld_isstale
|
|||
<p>Don’t forget to check the location dependency for staleness if you are
|
||||
about to delete a key from a hash table but discover that it’s not
|
||||
there. In the toy Scheme interpreter, deletion looks like this:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">void</span> <span class="nf">table_delete</span><span class="p">(</span><span class="n">obj_t</span> <span class="n">tbl</span><span class="p">,</span> <span class="n">obj_t</span> <span class="n">key</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">void</span> <span class="nf">table_delete</span><span class="p">(</span><span class="kt">obj_t</span> <span class="n">tbl</span><span class="p">,</span> <span class="kt">obj_t</span> <span class="n">key</span><span class="p">)</span>
|
||||
<span class="p">{</span>
|
||||
<span class="k">struct</span> <span class="n">bucket_s</span> <span class="o">*</span><span class="n">b</span><span class="p">;</span>
|
||||
<span class="n">assert</span><span class="p">(</span><span class="n">TYPE</span><span class="p">(</span><span class="n">tbl</span><span class="p">)</span> <span class="o">==</span> <span class="n">TYPE_TABLE</span><span class="p">);</span>
|
||||
|
|
@ -500,9 +500,9 @@ vectors, one for the keys and the other for the values, to allow keys
|
|||
and values to have different ranks.</p>
|
||||
<p>These vectors will be allocated from an AWL pool with two allocation
|
||||
points, one for strong references, and one for weak references:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="n">mps_pool_t</span> <span class="n">buckets_pool</span><span class="p">;</span> <span class="cm">/* pool for hash table buckets */</span>
|
||||
<span class="k">static</span> <span class="n">mps_ap_t</span> <span class="n">strong_buckets_ap</span><span class="p">;</span> <span class="cm">/* allocation point for strong buckets */</span>
|
||||
<span class="k">static</span> <span class="n">mps_ap_t</span> <span class="n">weak_buckets_ap</span><span class="p">;</span> <span class="cm">/* allocation point for weak buckets */</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">mps_pool_t</span> <span class="n">buckets_pool</span><span class="p">;</span> <span class="cm">/* pool for hash table buckets */</span>
|
||||
<span class="k">static</span> <span class="kt">mps_ap_t</span> <span class="n">strong_buckets_ap</span><span class="p">;</span> <span class="cm">/* allocation point for strong buckets */</span>
|
||||
<span class="k">static</span> <span class="kt">mps_ap_t</span> <span class="n">weak_buckets_ap</span><span class="p">;</span> <span class="cm">/* allocation point for weak buckets */</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<div class="admonition-note admonition">
|
||||
|
|
@ -515,16 +515,16 @@ allocated in a <em>non-moving</em> pool such as AWL.</p>
|
|||
replacing it with a null pointer when it is <a class="reference internal" href="../glossary/f.html#term-fix"><em class="xref std std-term">fixed</em></a> by the object
|
||||
format’s <a class="reference internal" href="../glossary/s.html#term-scan-method"><em class="xref std std-term">scan method</em></a>. So the scan method for the buckets is
|
||||
going to have the following structure. (See below for the actual code.)</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="n">mps_res_t</span> <span class="nf">buckets_scan</span><span class="p">(</span><span class="n">mps_ss_t</span> <span class="n">ss</span><span class="p">,</span> <span class="n">mps_addr_t</span> <span class="n">base</span><span class="p">,</span> <span class="n">mps_addr_t</span> <span class="n">limit</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">mps_res_t</span> <span class="nf">buckets_scan</span><span class="p">(</span><span class="kt">mps_ss_t</span> <span class="n">ss</span><span class="p">,</span> <span class="kt">mps_addr_t</span> <span class="n">base</span><span class="p">,</span> <span class="kt">mps_addr_t</span> <span class="n">limit</span><span class="p">)</span>
|
||||
<span class="p">{</span>
|
||||
<span class="n">MPS_SCAN_BEGIN</span><span class="p">(</span><span class="n">ss</span><span class="p">)</span> <span class="p">{</span>
|
||||
<span class="k">while</span> <span class="p">(</span><span class="n">base</span> <span class="o"><</span> <span class="n">limit</span><span class="p">)</span> <span class="p">{</span>
|
||||
<span class="n">buckets_t</span> <span class="n">buckets</span> <span class="o">=</span> <span class="n">base</span><span class="p">;</span>
|
||||
<span class="kt">buckets_t</span> <span class="n">buckets</span> <span class="o">=</span> <span class="n">base</span><span class="p">;</span>
|
||||
<span class="kt">size_t</span> <span class="n">length</span> <span class="o">=</span> <span class="n">buckets</span><span class="o">-></span><span class="n">length</span><span class="p">;</span>
|
||||
<span class="k">for</span> <span class="p">(</span><span class="n">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="n">i</span> <span class="o"><</span> <span class="n">length</span><span class="p">;</span> <span class="o">++</span><span class="n">i</span><span class="p">)</span> <span class="p">{</span>
|
||||
<span class="n">mps_addr_t</span> <span class="n">p</span> <span class="o">=</span> <span class="n">buckets</span><span class="o">-></span><span class="n">bucket</span><span class="p">[</span><span class="n">i</span><span class="p">];</span>
|
||||
<span class="kt">mps_addr_t</span> <span class="n">p</span> <span class="o">=</span> <span class="n">buckets</span><span class="o">-></span><span class="n">bucket</span><span class="p">[</span><span class="n">i</span><span class="p">];</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">MPS_FIX1</span><span class="p">(</span><span class="n">ss</span><span class="p">,</span> <span class="n">p</span><span class="p">))</span> <span class="p">{</span>
|
||||
<span class="n">mps_res_t</span> <span class="n">res</span> <span class="o">=</span> <span class="n">MPS_FIX2</span><span class="p">(</span><span class="n">ss</span><span class="p">,</span> <span class="o">&</span><span class="n">p</span><span class="p">);</span>
|
||||
<span class="kt">mps_res_t</span> <span class="n">res</span> <span class="o">=</span> <span class="n">MPS_FIX2</span><span class="p">(</span><span class="n">ss</span><span class="p">,</span> <span class="o">&</span><span class="n">p</span><span class="p">);</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">res</span> <span class="o">!=</span> <span class="n">MPS_RES_OK</span><span class="p">)</span> <span class="k">return</span> <span class="n">res</span><span class="p">;</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">p</span> <span class="o">==</span> <span class="nb">NULL</span><span class="p">)</span> <span class="p">{</span>
|
||||
<span class="cm">/* TODO: key/value was splatted: splat value/key too */</span>
|
||||
|
|
@ -556,9 +556,9 @@ and vice versa.</p>
|
|||
<p>The AWL pool determines an object’s dependent object by calling a
|
||||
function that you supply when creating the pool. This means that each
|
||||
object needs to have a reference to its dependent object:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="n">mps_addr_t</span> <span class="nf">buckets_find_dependent</span><span class="p">(</span><span class="n">mps_addr_t</span> <span class="n">addr</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">mps_addr_t</span> <span class="nf">buckets_find_dependent</span><span class="p">(</span><span class="kt">mps_addr_t</span> <span class="n">addr</span><span class="p">)</span>
|
||||
<span class="p">{</span>
|
||||
<span class="n">buckets_t</span> <span class="n">buckets</span> <span class="o">=</span> <span class="n">addr</span><span class="p">;</span>
|
||||
<span class="kt">buckets_t</span> <span class="n">buckets</span> <span class="o">=</span> <span class="n">addr</span><span class="p">;</span>
|
||||
<span class="k">return</span> <span class="n">buckets</span><span class="o">-></span><span class="n">dependent</span><span class="p">;</span>
|
||||
<span class="p">}</span>
|
||||
</pre></div>
|
||||
|
|
@ -580,25 +580,25 @@ See the <a class="reference internal" href="../pool/awl.html#pool-awl-caution"><
|
|||
<span class="kt">size_t</span> <span class="n">length</span><span class="p">;</span> <span class="cm">/* number of buckets (tagged) */</span>
|
||||
<span class="kt">size_t</span> <span class="n">used</span><span class="p">;</span> <span class="cm">/* number of buckets in use (tagged) */</span>
|
||||
<span class="kt">size_t</span> <span class="n">deleted</span><span class="p">;</span> <span class="cm">/* number of deleted buckets (tagged) */</span>
|
||||
<span class="n">obj_t</span> <span class="n">bucket</span><span class="p">[</span><span class="mi">1</span><span class="p">];</span> <span class="cm">/* hash buckets */</span>
|
||||
<span class="p">}</span> <span class="n">buckets_s</span><span class="p">,</span> <span class="o">*</span><span class="n">buckets_t</span><span class="p">;</span>
|
||||
<span class="kt">obj_t</span> <span class="n">bucket</span><span class="p">[</span><span class="mi">1</span><span class="p">];</span> <span class="cm">/* hash buckets */</span>
|
||||
<span class="p">}</span> <span class="n">buckets_s</span><span class="p">,</span> <span class="o">*</span><span class="kt">buckets_t</span><span class="p">;</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>Now the full details of the scan method can be given, with the revised
|
||||
code highlighted:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="n">mps_res_t</span> <span class="nf">buckets_scan</span><span class="p">(</span><span class="n">mps_ss_t</span> <span class="n">ss</span><span class="p">,</span> <span class="n">mps_addr_t</span> <span class="n">base</span><span class="p">,</span> <span class="n">mps_addr_t</span> <span class="n">limit</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">mps_res_t</span> <span class="nf">buckets_scan</span><span class="p">(</span><span class="kt">mps_ss_t</span> <span class="n">ss</span><span class="p">,</span> <span class="kt">mps_addr_t</span> <span class="n">base</span><span class="p">,</span> <span class="kt">mps_addr_t</span> <span class="n">limit</span><span class="p">)</span>
|
||||
<span class="p">{</span>
|
||||
<span class="n">MPS_SCAN_BEGIN</span><span class="p">(</span><span class="n">ss</span><span class="p">)</span> <span class="p">{</span>
|
||||
<span class="k">while</span> <span class="p">(</span><span class="n">base</span> <span class="o"><</span> <span class="n">limit</span><span class="p">)</span> <span class="p">{</span>
|
||||
<span class="n">buckets_t</span> <span class="n">buckets</span> <span class="o">=</span> <span class="n">base</span><span class="p">;</span>
|
||||
<span class="kt">buckets_t</span> <span class="n">buckets</span> <span class="o">=</span> <span class="n">base</span><span class="p">;</span>
|
||||
<span class="hll"> <span class="kt">size_t</span> <span class="n">i</span><span class="p">,</span> <span class="n">length</span> <span class="o">=</span> <span class="n">UNTAG_SIZE</span><span class="p">(</span><span class="n">buckets</span><span class="o">-></span><span class="n">length</span><span class="p">);</span>
|
||||
</span><span class="hll"> <span class="n">FIX</span><span class="p">(</span><span class="n">buckets</span><span class="o">-></span><span class="n">dependent</span><span class="p">);</span>
|
||||
</span><span class="hll"> <span class="k">if</span><span class="p">(</span><span class="n">buckets</span><span class="o">-></span><span class="n">dependent</span> <span class="o">!=</span> <span class="nb">NULL</span><span class="p">)</span>
|
||||
</span><span class="hll"> <span class="n">assert</span><span class="p">(</span><span class="n">buckets</span><span class="o">-></span><span class="n">dependent</span><span class="o">-></span><span class="n">length</span> <span class="o">==</span> <span class="n">buckets</span><span class="o">-></span><span class="n">length</span><span class="p">);</span>
|
||||
</span> <span class="k">for</span> <span class="p">(</span><span class="n">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="n">i</span> <span class="o"><</span> <span class="n">length</span><span class="p">;</span> <span class="o">++</span><span class="n">i</span><span class="p">)</span> <span class="p">{</span>
|
||||
<span class="n">mps_addr_t</span> <span class="n">p</span> <span class="o">=</span> <span class="n">buckets</span><span class="o">-></span><span class="n">bucket</span><span class="p">[</span><span class="n">i</span><span class="p">];</span>
|
||||
<span class="kt">mps_addr_t</span> <span class="n">p</span> <span class="o">=</span> <span class="n">buckets</span><span class="o">-></span><span class="n">bucket</span><span class="p">[</span><span class="n">i</span><span class="p">];</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">MPS_FIX1</span><span class="p">(</span><span class="n">ss</span><span class="p">,</span> <span class="n">p</span><span class="p">))</span> <span class="p">{</span>
|
||||
<span class="n">mps_res_t</span> <span class="n">res</span> <span class="o">=</span> <span class="n">MPS_FIX2</span><span class="p">(</span><span class="n">ss</span><span class="p">,</span> <span class="o">&</span><span class="n">p</span><span class="p">);</span>
|
||||
<span class="kt">mps_res_t</span> <span class="n">res</span> <span class="o">=</span> <span class="n">MPS_FIX2</span><span class="p">(</span><span class="n">ss</span><span class="p">,</span> <span class="o">&</span><span class="n">p</span><span class="p">);</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">res</span> <span class="o">!=</span> <span class="n">MPS_RES_OK</span><span class="p">)</span> <span class="k">return</span> <span class="n">res</span><span class="p">;</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">p</span> <span class="o">==</span> <span class="nb">NULL</span><span class="p">)</span> <span class="p">{</span>
|
||||
<span class="hll"> <span class="cm">/* key/value was splatted: splat value/key too */</span>
|
||||
|
|
@ -649,9 +649,9 @@ used”, and <tt class="docutils literal"><span class="pre">NULL</span></tt>
|
|||
</ol>
|
||||
</div>
|
||||
<p>The <a class="reference internal" href="../glossary/s.html#term-skip-method"><em class="xref std std-term">skip method</em></a> is straightforward:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="n">mps_addr_t</span> <span class="nf">buckets_skip</span><span class="p">(</span><span class="n">mps_addr_t</span> <span class="n">base</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">mps_addr_t</span> <span class="nf">buckets_skip</span><span class="p">(</span><span class="kt">mps_addr_t</span> <span class="n">base</span><span class="p">)</span>
|
||||
<span class="p">{</span>
|
||||
<span class="n">buckets_t</span> <span class="n">buckets</span> <span class="o">=</span> <span class="n">base</span><span class="p">;</span>
|
||||
<span class="kt">buckets_t</span> <span class="n">buckets</span> <span class="o">=</span> <span class="n">base</span><span class="p">;</span>
|
||||
<span class="kt">size_t</span> <span class="n">length</span> <span class="o">=</span> <span class="n">UNTAG_SIZE</span><span class="p">(</span><span class="n">buckets</span><span class="o">-></span><span class="n">length</span><span class="p">);</span>
|
||||
<span class="k">return</span> <span class="p">(</span><span class="kt">char</span> <span class="o">*</span><span class="p">)</span><span class="n">base</span> <span class="o">+</span>
|
||||
<span class="n">ALIGN</span><span class="p">(</span><span class="n">offsetof</span><span class="p">(</span><span class="n">buckets_s</span><span class="p">,</span> <span class="n">bucket</span><span class="p">)</span> <span class="o">+</span>
|
||||
|
|
@ -749,15 +749,15 @@ other strong references keeping it alive.</li>
|
|||
</ol>
|
||||
<p>Here’s the new symbol structure:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">typedef</span> <span class="k">struct</span> <span class="n">symbol_s</span> <span class="p">{</span>
|
||||
<span class="n">type_t</span> <span class="n">type</span><span class="p">;</span> <span class="cm">/* TYPE_SYMBOL */</span>
|
||||
<span class="n">obj_t</span> <span class="n">name</span><span class="p">;</span> <span class="cm">/* its name (a string) */</span>
|
||||
<span class="kt">type_t</span> <span class="n">type</span><span class="p">;</span> <span class="cm">/* TYPE_SYMBOL */</span>
|
||||
<span class="kt">obj_t</span> <span class="n">name</span><span class="p">;</span> <span class="cm">/* its name (a string) */</span>
|
||||
<span class="p">}</span> <span class="n">symbol_s</span><span class="p">;</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>and the new implementation of <tt class="docutils literal"><span class="pre">intern</span></tt>:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="n">obj_t</span> <span class="nf">intern_string</span><span class="p">(</span><span class="n">obj_t</span> <span class="n">name</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">obj_t</span> <span class="nf">intern_string</span><span class="p">(</span><span class="kt">obj_t</span> <span class="n">name</span><span class="p">)</span>
|
||||
<span class="p">{</span>
|
||||
<span class="n">obj_t</span> <span class="n">symbol</span><span class="p">;</span>
|
||||
<span class="kt">obj_t</span> <span class="n">symbol</span><span class="p">;</span>
|
||||
<span class="n">assert</span><span class="p">(</span><span class="n">TYPE</span><span class="p">(</span><span class="n">name</span><span class="p">)</span> <span class="o">==</span> <span class="n">TYPE_STRING</span><span class="p">);</span>
|
||||
<span class="n">symbol</span> <span class="o">=</span> <span class="n">table_ref</span><span class="p">(</span><span class="n">symtab</span><span class="p">,</span> <span class="n">name</span><span class="p">);</span>
|
||||
<span class="k">if</span><span class="p">(</span><span class="n">symbol</span> <span class="o">==</span> <span class="nb">NULL</span><span class="p">)</span> <span class="p">{</span>
|
||||
|
|
@ -767,7 +767,7 @@ other strong references keeping it alive.</li>
|
|||
<span class="k">return</span> <span class="n">symbol</span><span class="p">;</span>
|
||||
<span class="p">}</span>
|
||||
|
||||
<span class="k">static</span> <span class="n">obj_t</span> <span class="nf">intern</span><span class="p">(</span><span class="kt">char</span> <span class="o">*</span><span class="n">string</span><span class="p">)</span>
|
||||
<span class="k">static</span> <span class="kt">obj_t</span> <span class="nf">intern</span><span class="p">(</span><span class="kt">char</span> <span class="o">*</span><span class="n">string</span><span class="p">)</span>
|
||||
<span class="p">{</span>
|
||||
<span class="k">return</span> <span class="n">intern_string</span><span class="p">(</span><span class="n">make_string</span><span class="p">(</span><span class="n">strlen</span><span class="p">(</span><span class="n">string</span><span class="p">),</span> <span class="n">string</span><span class="p">));</span>
|
||||
<span class="p">}</span>
|
||||
|
|
@ -775,7 +775,7 @@ other strong references keeping it alive.</li>
|
|||
</div>
|
||||
<p>The symbol table now becomes a very simple <a class="reference internal" href="../glossary/r.html#term-root"><em class="xref std std-term">root</em></a>, that only has
|
||||
to be registered once (not <a class="reference internal" href="lang.html#guide-lang-root"><em>every time it is rehashed</em></a>, as previously):</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">mps_addr_t</span> <span class="n">ref</span><span class="p">;</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="kt">mps_addr_t</span> <span class="n">ref</span><span class="p">;</span>
|
||||
<span class="n">symtab</span> <span class="o">=</span> <span class="nb">NULL</span><span class="p">;</span>
|
||||
<span class="n">ref</span> <span class="o">=</span> <span class="o">&</span><span class="n">symtab</span><span class="p">;</span>
|
||||
<span class="n">res</span> <span class="o">=</span> <span class="n">mps_root_create_table</span><span class="p">(</span><span class="o">&</span><span class="n">symtab_root</span><span class="p">,</span> <span class="n">arena</span><span class="p">,</span> <span class="n">mps_rank_exact</span><span class="p">(),</span> <span class="mi">0</span><span class="p">,</span>
|
||||
|
|
@ -823,8 +823,8 @@ avoided.</p>
|
|||
<p>Here the appropriate class is <a class="reference internal" href="../pool/amcz.html#pool-amcz"><em>AMCZ (Automatic Mostly-Copying Zero-rank)</em></a>, and the necessary code
|
||||
changes are straightforward. First, global variables for the new pool
|
||||
and its <a class="reference internal" href="../glossary/a.html#term-allocation-point"><em class="xref std std-term">allocation point</em></a>:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="n">mps_pool_t</span> <span class="n">leaf_pool</span><span class="p">;</span> <span class="cm">/* pool for leaf objects */</span>
|
||||
<span class="k">static</span> <span class="n">mps_ap_t</span> <span class="n">leaf_ap</span><span class="p">;</span> <span class="cm">/* allocation point for leaf objects */</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">mps_pool_t</span> <span class="n">leaf_pool</span><span class="p">;</span> <span class="cm">/* pool for leaf objects */</span>
|
||||
<span class="k">static</span> <span class="kt">mps_ap_t</span> <span class="n">leaf_ap</span><span class="p">;</span> <span class="cm">/* allocation point for leaf objects */</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>Second, the leaf objects must be allocated on <tt class="docutils literal"><span class="pre">leaf_ap</span></tt> instead of
|
||||
|
|
@ -886,7 +886,7 @@ objects that have been left behind.</p>
|
|||
title="next chapter">Reference</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -894,7 +894,7 @@ objects that have been left behind.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -914,7 +914,7 @@ objects that have been left behind.</p>
|
|||
<li class="right" >
|
||||
<a href="perf.html" title="5. Tuning the Memory Pool System for performance"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Guide</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>2. Building the Memory Pool System — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>2. Building the Memory Pool System — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Guide" href="index.html" />
|
||||
<link rel="next" title="3. Garbage collecting a language with the Memory Pool System" href="lang.html" />
|
||||
<link rel="prev" title="1. Overview of the Memory Pool System" href="overview.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="overview.html" title="1. Overview of the Memory Pool System"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Guide</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -377,7 +377,7 @@ the command:</p>
|
|||
title="next chapter">3. Garbage collecting a language with the Memory Pool System</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -385,7 +385,7 @@ the command:</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -405,7 +405,7 @@ the command:</p>
|
|||
<li class="right" >
|
||||
<a href="overview.html" title="1. Overview of the Memory Pool System"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Guide</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>4. Debugging with the Memory Pool System — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>4. Debugging with the Memory Pool System — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Guide" href="index.html" />
|
||||
<link rel="next" title="5. Tuning the Memory Pool System for performance" href="perf.html" />
|
||||
<link rel="prev" title="3. Garbage collecting a language with the Memory Pool System" href="lang.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="lang.html" title="3. Garbage collecting a language with the Memory Pool System"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Guide</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -227,13 +227,13 @@ up to the detection of the error. See <a class="reference internal" href="../top
|
|||
<span id="guide-debug-size"></span><span id="index-5"></span><h2>4.3. Example: allocating with wrong size<a class="headerlink" href="#example-allocating-with-wrong-size" title="Permalink to this headline">¶</a></h2>
|
||||
<p>Here’s another kind of mistake: an off-by-one error in <tt class="docutils literal"><span class="pre">make_string</span></tt>
|
||||
leading to the allocation of string objects with the wrong size:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="n">obj_t</span> <span class="nf">make_string</span><span class="p">(</span><span class="kt">size_t</span> <span class="n">length</span><span class="p">,</span> <span class="kt">char</span> <span class="o">*</span><span class="n">string</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">obj_t</span> <span class="nf">make_string</span><span class="p">(</span><span class="kt">size_t</span> <span class="n">length</span><span class="p">,</span> <span class="kt">char</span> <span class="o">*</span><span class="n">string</span><span class="p">)</span>
|
||||
<span class="p">{</span>
|
||||
<span class="n">obj_t</span> <span class="n">obj</span><span class="p">;</span>
|
||||
<span class="n">mps_addr_t</span> <span class="n">addr</span><span class="p">;</span>
|
||||
<span class="kt">obj_t</span> <span class="n">obj</span><span class="p">;</span>
|
||||
<span class="kt">mps_addr_t</span> <span class="n">addr</span><span class="p">;</span>
|
||||
<span class="hll"> <span class="kt">size_t</span> <span class="n">size</span> <span class="o">=</span> <span class="n">ALIGN</span><span class="p">(</span><span class="n">offsetof</span><span class="p">(</span><span class="n">string_s</span><span class="p">,</span> <span class="n">string</span><span class="p">)</span> <span class="o">+</span> <span class="n">length</span><span class="cm">/* oops, forgot: +1 */</span><span class="p">);</span>
|
||||
</span> <span class="k">do</span> <span class="p">{</span>
|
||||
<span class="n">mps_res_t</span> <span class="n">res</span> <span class="o">=</span> <span class="n">mps_reserve</span><span class="p">(</span><span class="o">&</span><span class="n">addr</span><span class="p">,</span> <span class="n">obj_ap</span><span class="p">,</span> <span class="n">size</span><span class="p">);</span>
|
||||
<span class="kt">mps_res_t</span> <span class="n">res</span> <span class="o">=</span> <span class="n">mps_reserve</span><span class="p">(</span><span class="o">&</span><span class="n">addr</span><span class="p">,</span> <span class="n">obj_ap</span><span class="p">,</span> <span class="n">size</span><span class="p">);</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">res</span> <span class="o">!=</span> <span class="n">MPS_RES_OK</span><span class="p">)</span> <span class="n">error</span><span class="p">(</span><span class="s">"out of memory in make_string"</span><span class="p">);</span>
|
||||
<span class="n">obj</span> <span class="o">=</span> <span class="n">addr</span><span class="p">;</span>
|
||||
<span class="n">obj</span><span class="o">-></span><span class="n">string</span><span class="p">.</span><span class="n">type</span> <span class="o">=</span> <span class="n">TYPE_STRING</span><span class="p">;</span>
|
||||
|
|
@ -389,7 +389,7 @@ see if we can help.</p>
|
|||
title="next chapter">5. Tuning the Memory Pool System for performance</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -397,7 +397,7 @@ see if we can help.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -417,7 +417,7 @@ see if we can help.</p>
|
|||
<li class="right" >
|
||||
<a href="lang.html" title="3. Garbage collecting a language with the Memory Pool System"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Guide</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Guide — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Guide — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="next" title="1. Overview of the Memory Pool System" href="overview.html" />
|
||||
<link rel="prev" title="Memory Pool System" href="../index.html" />
|
||||
</head>
|
||||
|
|
@ -43,7 +43,7 @@
|
|||
<li class="right" >
|
||||
<a href="../index.html" title="Memory Pool System"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
|
@ -143,7 +143,7 @@
|
|||
title="next chapter">1. Overview of the Memory Pool System</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -151,7 +151,7 @@
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -171,7 +171,7 @@
|
|||
<li class="right" >
|
||||
<a href="../index.html" title="Memory Pool System"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="footer">
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>3. Garbage collecting a language with the Memory Pool System — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>3. Garbage collecting a language with the Memory Pool System — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Guide" href="index.html" />
|
||||
<link rel="next" title="4. Debugging with the Memory Pool System" href="debug.html" />
|
||||
<link rel="prev" title="2. Building the Memory Pool System" href="build.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="build.html" title="2. Building the Memory Pool System"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Guide</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -90,7 +90,7 @@ pointers to strings.</li>
|
|||
<p>A Scheme object (whose type is not necessarily known) is represented by
|
||||
an <tt class="docutils literal"><span class="pre">obj_t</span></tt>, which is a pointer to a union of every type in the
|
||||
language:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">typedef</span> <span class="k">union</span> <span class="n">obj_u</span> <span class="o">*</span><span class="n">obj_t</span><span class="p">;</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">typedef</span> <span class="k">union</span> <span class="n">obj_u</span> <span class="o">*</span><span class="kt">obj_t</span><span class="p">;</span>
|
||||
<span class="k">typedef</span> <span class="k">union</span> <span class="n">obj_u</span> <span class="p">{</span>
|
||||
<span class="n">type_s</span> <span class="n">type</span><span class="p">;</span>
|
||||
<span class="n">pair_s</span> <span class="n">pair</span><span class="p">;</span>
|
||||
|
|
@ -113,8 +113,8 @@ specifying the type of the object (<tt class="docutils literal"><span class="pre
|
|||
represented by a pointer to the structure <tt class="docutils literal"><span class="pre">pair_s</span></tt> defined as
|
||||
follows:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">typedef</span> <span class="k">struct</span> <span class="n">pair_s</span> <span class="p">{</span>
|
||||
<span class="n">type_t</span> <span class="n">type</span><span class="p">;</span> <span class="cm">/* TYPE_PAIR */</span>
|
||||
<span class="n">obj_t</span> <span class="n">car</span><span class="p">,</span> <span class="n">cdr</span><span class="p">;</span> <span class="cm">/* first and second projections */</span>
|
||||
<span class="kt">type_t</span> <span class="n">type</span><span class="p">;</span> <span class="cm">/* TYPE_PAIR */</span>
|
||||
<span class="kt">obj_t</span> <span class="n">car</span><span class="p">,</span> <span class="n">cdr</span><span class="p">;</span> <span class="cm">/* first and second projections */</span>
|
||||
<span class="p">}</span> <span class="n">pair_s</span><span class="p">;</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
|
|
@ -122,7 +122,7 @@ follows:</p>
|
|||
operate on objects generically, testing <tt class="docutils literal"><span class="pre">TYPE(obj)</span></tt> as necessary
|
||||
(which is a macro for <tt class="docutils literal"><span class="pre">obj->type.type</span></tt>). For example, the
|
||||
<tt class="docutils literal"><span class="pre">print()</span></tt> function is implemented like this:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">void</span> <span class="nf">print</span><span class="p">(</span><span class="n">obj_t</span> <span class="n">obj</span><span class="p">,</span> <span class="kt">unsigned</span> <span class="n">depth</span><span class="p">,</span> <span class="kt">FILE</span> <span class="o">*</span><span class="n">stream</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">void</span> <span class="nf">print</span><span class="p">(</span><span class="kt">obj_t</span> <span class="n">obj</span><span class="p">,</span> <span class="kt">unsigned</span> <span class="n">depth</span><span class="p">,</span> <span class="kt">FILE</span> <span class="o">*</span><span class="n">stream</span><span class="p">)</span>
|
||||
<span class="p">{</span>
|
||||
<span class="k">switch</span> <span class="p">(</span><span class="n">TYPE</span><span class="p">(</span><span class="n">obj</span><span class="p">))</span> <span class="p">{</span>
|
||||
<span class="k">case</span> <span class="n">TYPE_INTEGER</span>:
|
||||
|
|
@ -140,9 +140,9 @@ operate on objects generically, testing <tt class="docutils literal"><span class
|
|||
</div>
|
||||
<p>Each constructor allocates memory for the new object by calling
|
||||
<tt class="docutils literal"><span class="pre">malloc</span></tt>. For example, <tt class="docutils literal"><span class="pre">make_pair</span></tt> is the constructor for pairs:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="n">obj_t</span> <span class="nf">make_pair</span><span class="p">(</span><span class="n">obj_t</span> <span class="n">car</span><span class="p">,</span> <span class="n">obj_t</span> <span class="n">cdr</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">obj_t</span> <span class="nf">make_pair</span><span class="p">(</span><span class="kt">obj_t</span> <span class="n">car</span><span class="p">,</span> <span class="kt">obj_t</span> <span class="n">cdr</span><span class="p">)</span>
|
||||
<span class="p">{</span>
|
||||
<span class="n">obj_t</span> <span class="n">obj</span> <span class="o">=</span> <span class="p">(</span><span class="n">obj_t</span><span class="p">)</span><span class="n">malloc</span><span class="p">(</span><span class="k">sizeof</span><span class="p">(</span><span class="n">pair_s</span><span class="p">));</span>
|
||||
<span class="kt">obj_t</span> <span class="n">obj</span> <span class="o">=</span> <span class="p">(</span><span class="kt">obj_t</span><span class="p">)</span><span class="n">malloc</span><span class="p">(</span><span class="k">sizeof</span><span class="p">(</span><span class="n">pair_s</span><span class="p">));</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">obj</span> <span class="o">==</span> <span class="nb">NULL</span><span class="p">)</span> <span class="n">error</span><span class="p">(</span><span class="s">"out of memory"</span><span class="p">);</span>
|
||||
<span class="n">obj</span><span class="o">-></span><span class="n">pair</span><span class="p">.</span><span class="n">type</span> <span class="o">=</span> <span class="n">TYPE_PAIR</span><span class="p">;</span>
|
||||
<span class="n">CAR</span><span class="p">(</span><span class="n">obj</span><span class="p">)</span> <span class="o">=</span> <span class="n">car</span><span class="p">;</span>
|
||||
|
|
@ -181,7 +181,7 @@ general-purpose programs you’ll want to use the virtual memory arena.</p>
|
|||
<p>There’s only one arena, and many MPS functions take an arena as an
|
||||
argument, so it makes sense for the arena to be a global variable
|
||||
rather than having to pass it around everywhere:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="n">mps_arena_t</span> <span class="n">arena</span><span class="p">;</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">mps_arena_t</span> <span class="n">arena</span><span class="p">;</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>Create an arena by calling <a class="reference internal" href="../topic/arena.html#mps_arena_create" title="mps_arena_create"><tt class="xref c c-func docutils literal"><span class="pre">mps_arena_create()</span></tt></a>. This function
|
||||
|
|
@ -193,7 +193,7 @@ its address space, the less efficient garbage collection will become.
|
|||
The MPS works best if you reserve an address space that is several times
|
||||
larger than your peak memory usage.</p>
|
||||
<p>Let’s reserve 32 megabytes:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">mps_res_t</span> <span class="n">res</span><span class="p">;</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="kt">mps_res_t</span> <span class="n">res</span><span class="p">;</span>
|
||||
<span class="n">res</span> <span class="o">=</span> <span class="n">mps_arena_create</span><span class="p">(</span><span class="o">&</span><span class="n">arena</span><span class="p">,</span>
|
||||
<span class="n">mps_arena_class_vm</span><span class="p">(),</span>
|
||||
<span class="p">(</span><span class="kt">size_t</span><span class="p">)(</span><span class="mi">32</span> <span class="o">*</span> <span class="mi">1024</span> <span class="o">*</span> <span class="mi">1024</span><span class="p">));</span>
|
||||
|
|
@ -266,7 +266,7 @@ code for creating the object format for the toy Scheme interpreter:</p>
|
|||
<span class="n">obj_pad</span><span class="p">,</span>
|
||||
<span class="p">};</span>
|
||||
|
||||
<span class="n">mps_fmt_t</span> <span class="n">obj_fmt</span><span class="p">;</span>
|
||||
<span class="kt">mps_fmt_t</span> <span class="n">obj_fmt</span><span class="p">;</span>
|
||||
<span class="n">res</span> <span class="o">=</span> <span class="n">mps_fmt_create_A</span><span class="p">(</span><span class="o">&</span><span class="n">obj_fmt</span><span class="p">,</span> <span class="n">arena</span><span class="p">,</span> <span class="o">&</span><span class="n">obj_fmt_s</span><span class="p">);</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">res</span> <span class="o">!=</span> <span class="n">MPS_RES_OK</span><span class="p">)</span> <span class="n">error</span><span class="p">(</span><span class="s">"Couldn't create obj format"</span><span class="p">);</span>
|
||||
</pre></div>
|
||||
|
|
@ -324,11 +324,11 @@ which the scan method was called. The scan method is called to
|
|||
discover references and so determine which objects are <a class="reference internal" href="../glossary/l.html#term-live"><em class="xref std std-term">alive</em></a> and which are <a class="reference internal" href="../glossary/d.html#term-dead"><em class="xref std std-term">dead</em></a>, and also to update references
|
||||
after objects have been moved.</p>
|
||||
<p>Here’s the scan method for the toy Scheme interpreter:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="n">mps_res_t</span> <span class="nf">obj_scan</span><span class="p">(</span><span class="n">mps_ss_t</span> <span class="n">ss</span><span class="p">,</span> <span class="n">mps_addr_t</span> <span class="n">base</span><span class="p">,</span> <span class="n">mps_addr_t</span> <span class="n">limit</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">mps_res_t</span> <span class="nf">obj_scan</span><span class="p">(</span><span class="kt">mps_ss_t</span> <span class="n">ss</span><span class="p">,</span> <span class="kt">mps_addr_t</span> <span class="n">base</span><span class="p">,</span> <span class="kt">mps_addr_t</span> <span class="n">limit</span><span class="p">)</span>
|
||||
<span class="p">{</span>
|
||||
<span class="n">MPS_SCAN_BEGIN</span><span class="p">(</span><span class="n">ss</span><span class="p">)</span> <span class="p">{</span>
|
||||
<span class="k">while</span> <span class="p">(</span><span class="n">base</span> <span class="o"><</span> <span class="n">limit</span><span class="p">)</span> <span class="p">{</span>
|
||||
<span class="n">obj_t</span> <span class="n">obj</span> <span class="o">=</span> <span class="n">base</span><span class="p">;</span>
|
||||
<span class="kt">obj_t</span> <span class="n">obj</span> <span class="o">=</span> <span class="n">base</span><span class="p">;</span>
|
||||
<span class="k">switch</span> <span class="p">(</span><span class="n">TYPE</span><span class="p">(</span><span class="n">obj</span><span class="p">))</span> <span class="p">{</span>
|
||||
<span class="k">case</span> <span class="n">TYPE_PAIR</span>:
|
||||
<span class="n">FIX</span><span class="p">(</span><span class="n">CAR</span><span class="p">(</span><span class="n">obj</span><span class="p">));</span>
|
||||
|
|
@ -406,9 +406,9 @@ soon as practicable.</li>
|
|||
<a class="reference internal" href="../topic/format.html#mps_fmt_skip_t" title="mps_fmt_skip_t"><tt class="xref c c-type docutils literal"><span class="pre">mps_fmt_skip_t</span></tt></a>. It is called by the MPS to skip over an
|
||||
object belonging to the format, and also to determine its size.</p>
|
||||
<p>Here’s the skip method for the toy Scheme interpreter:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="n">mps_addr_t</span> <span class="nf">obj_skip</span><span class="p">(</span><span class="n">mps_addr_t</span> <span class="n">base</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">mps_addr_t</span> <span class="nf">obj_skip</span><span class="p">(</span><span class="kt">mps_addr_t</span> <span class="n">base</span><span class="p">)</span>
|
||||
<span class="p">{</span>
|
||||
<span class="n">obj_t</span> <span class="n">obj</span> <span class="o">=</span> <span class="n">base</span><span class="p">;</span>
|
||||
<span class="kt">obj_t</span> <span class="n">obj</span> <span class="o">=</span> <span class="n">base</span><span class="p">;</span>
|
||||
<span class="k">switch</span> <span class="p">(</span><span class="n">TYPE</span><span class="p">(</span><span class="n">obj</span><span class="p">))</span> <span class="p">{</span>
|
||||
<span class="k">case</span> <span class="n">TYPE_PAIR</span>:
|
||||
<span class="n">base</span> <span class="o">=</span> <span class="p">(</span><span class="kt">char</span> <span class="o">*</span><span class="p">)</span><span class="n">base</span> <span class="o">+</span> <span class="n">ALIGN</span><span class="p">(</span><span class="k">sizeof</span><span class="p">(</span><span class="n">pair_s</span><span class="p">));</span>
|
||||
|
|
@ -461,24 +461,24 @@ objects might be as small as two words (for example, integers).</p>
|
|||
The first type is suitable for forwarding objects of three words or
|
||||
longer:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">typedef</span> <span class="k">struct</span> <span class="n">fwd_s</span> <span class="p">{</span>
|
||||
<span class="n">type_t</span> <span class="n">type</span><span class="p">;</span> <span class="cm">/* TYPE_FWD */</span>
|
||||
<span class="n">obj_t</span> <span class="n">fwd</span><span class="p">;</span> <span class="cm">/* forwarded object */</span>
|
||||
<span class="kt">type_t</span> <span class="n">type</span><span class="p">;</span> <span class="cm">/* TYPE_FWD */</span>
|
||||
<span class="kt">obj_t</span> <span class="n">fwd</span><span class="p">;</span> <span class="cm">/* forwarded object */</span>
|
||||
<span class="kt">size_t</span> <span class="n">size</span><span class="p">;</span> <span class="cm">/* total size of this object */</span>
|
||||
<span class="p">}</span> <span class="n">fwd_s</span><span class="p">;</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>while the second type is suitable for forwarding objects of two words:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">typedef</span> <span class="k">struct</span> <span class="n">fwd2_s</span> <span class="p">{</span>
|
||||
<span class="n">type_t</span> <span class="n">type</span><span class="p">;</span> <span class="cm">/* TYPE_FWD2 */</span>
|
||||
<span class="n">obj_t</span> <span class="n">fwd</span><span class="p">;</span> <span class="cm">/* forwarded object */</span>
|
||||
<span class="kt">type_t</span> <span class="n">type</span><span class="p">;</span> <span class="cm">/* TYPE_FWD2 */</span>
|
||||
<span class="kt">obj_t</span> <span class="n">fwd</span><span class="p">;</span> <span class="cm">/* forwarded object */</span>
|
||||
<span class="p">}</span> <span class="n">fwd2_s</span><span class="p">;</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>Here’s the forward method for the toy Scheme interpreter:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">void</span> <span class="nf">obj_fwd</span><span class="p">(</span><span class="n">mps_addr_t</span> <span class="n">old</span><span class="p">,</span> <span class="n">mps_addr_t</span> <span class="n">new</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">void</span> <span class="nf">obj_fwd</span><span class="p">(</span><span class="kt">mps_addr_t</span> <span class="n">old</span><span class="p">,</span> <span class="kt">mps_addr_t</span> <span class="n">new</span><span class="p">)</span>
|
||||
<span class="p">{</span>
|
||||
<span class="n">obj_t</span> <span class="n">obj</span> <span class="o">=</span> <span class="n">old</span><span class="p">;</span>
|
||||
<span class="n">mps_addr_t</span> <span class="n">limit</span> <span class="o">=</span> <span class="n">obj_skip</span><span class="p">(</span><span class="n">old</span><span class="p">);</span>
|
||||
<span class="kt">obj_t</span> <span class="n">obj</span> <span class="o">=</span> <span class="n">old</span><span class="p">;</span>
|
||||
<span class="kt">mps_addr_t</span> <span class="n">limit</span> <span class="o">=</span> <span class="n">obj_skip</span><span class="p">(</span><span class="n">old</span><span class="p">);</span>
|
||||
<span class="kt">size_t</span> <span class="n">size</span> <span class="o">=</span> <span class="p">(</span><span class="kt">char</span> <span class="o">*</span><span class="p">)</span><span class="n">limit</span> <span class="o">-</span> <span class="p">(</span><span class="kt">char</span> <span class="o">*</span><span class="p">)</span><span class="n">old</span><span class="p">;</span>
|
||||
<span class="n">assert</span><span class="p">(</span><span class="n">size</span> <span class="o">>=</span> <span class="n">ALIGN_UP</span><span class="p">(</span><span class="k">sizeof</span><span class="p">(</span><span class="n">fwd2_s</span><span class="p">)));</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">size</span> <span class="o">==</span> <span class="n">ALIGN_UP</span><span class="p">(</span><span class="k">sizeof</span><span class="p">(</span><span class="n">fwd2_s</span><span class="p">)))</span> <span class="p">{</span>
|
||||
|
|
@ -537,9 +537,9 @@ scanning them could be avoided.</li>
|
|||
object is a <a class="reference internal" href="../glossary/f.html#term-forwarding-object"><em class="xref std std-term">forwarding object</em></a>, and if it is, to determine the
|
||||
location where that object was moved.</p>
|
||||
<p>Here’s the is-forwarded method for the toy Scheme interpreter:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="n">mps_addr_t</span> <span class="nf">obj_isfwd</span><span class="p">(</span><span class="n">mps_addr_t</span> <span class="n">addr</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">mps_addr_t</span> <span class="nf">obj_isfwd</span><span class="p">(</span><span class="kt">mps_addr_t</span> <span class="n">addr</span><span class="p">)</span>
|
||||
<span class="p">{</span>
|
||||
<span class="n">obj_t</span> <span class="n">obj</span> <span class="o">=</span> <span class="n">addr</span><span class="p">;</span>
|
||||
<span class="kt">obj_t</span> <span class="n">obj</span> <span class="o">=</span> <span class="n">addr</span><span class="p">;</span>
|
||||
<span class="k">switch</span> <span class="p">(</span><span class="n">TYPE</span><span class="p">(</span><span class="n">obj</span><span class="p">))</span> <span class="p">{</span>
|
||||
<span class="k">case</span> <span class="n">TYPE_FWD2</span>:
|
||||
<span class="k">return</span> <span class="n">obj</span><span class="o">-></span><span class="n">fwd2</span><span class="p">.</span><span class="n">fwd</span><span class="p">;</span>
|
||||
|
|
@ -573,7 +573,7 @@ word. As with forwarding objects, this can be solved by having two
|
|||
types of padding object. The first type is suitable for padding
|
||||
objects of two words or longer:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">typedef</span> <span class="k">struct</span> <span class="n">pad_s</span> <span class="p">{</span>
|
||||
<span class="n">type_t</span> <span class="n">type</span><span class="p">;</span> <span class="cm">/* TYPE_PAD */</span>
|
||||
<span class="kt">type_t</span> <span class="n">type</span><span class="p">;</span> <span class="cm">/* TYPE_PAD */</span>
|
||||
<span class="kt">size_t</span> <span class="n">size</span><span class="p">;</span> <span class="cm">/* total size of this object */</span>
|
||||
<span class="p">}</span> <span class="n">pad_s</span><span class="p">;</span>
|
||||
</pre></div>
|
||||
|
|
@ -581,14 +581,14 @@ objects of two words or longer:</p>
|
|||
<p>while the second type is suitable for padding objects consisting of a
|
||||
single word:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">typedef</span> <span class="k">struct</span> <span class="n">pad1_s</span> <span class="p">{</span>
|
||||
<span class="n">type_t</span> <span class="n">type</span><span class="p">;</span> <span class="cm">/* TYPE_PAD1 */</span>
|
||||
<span class="kt">type_t</span> <span class="n">type</span><span class="p">;</span> <span class="cm">/* TYPE_PAD1 */</span>
|
||||
<span class="p">}</span> <span class="n">pad1_s</span><span class="p">;</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>Here’s the padding method:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">void</span> <span class="nf">obj_pad</span><span class="p">(</span><span class="n">mps_addr_t</span> <span class="n">addr</span><span class="p">,</span> <span class="kt">size_t</span> <span class="n">size</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">void</span> <span class="nf">obj_pad</span><span class="p">(</span><span class="kt">mps_addr_t</span> <span class="n">addr</span><span class="p">,</span> <span class="kt">size_t</span> <span class="n">size</span><span class="p">)</span>
|
||||
<span class="p">{</span>
|
||||
<span class="n">obj_t</span> <span class="n">obj</span> <span class="o">=</span> <span class="n">addr</span><span class="p">;</span>
|
||||
<span class="kt">obj_t</span> <span class="n">obj</span> <span class="o">=</span> <span class="n">addr</span><span class="p">;</span>
|
||||
<span class="n">assert</span><span class="p">(</span><span class="n">size</span> <span class="o">>=</span> <span class="n">ALIGN</span><span class="p">(</span><span class="k">sizeof</span><span class="p">(</span><span class="n">pad1_s</span><span class="p">)));</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">size</span> <span class="o">==</span> <span class="n">ALIGN</span><span class="p">(</span><span class="k">sizeof</span><span class="p">(</span><span class="n">pad1_s</span><span class="p">)))</span> <span class="p">{</span>
|
||||
<span class="n">TYPE</span><span class="p">(</span><span class="n">obj</span><span class="p">)</span> <span class="o">=</span> <span class="n">TYPE_PAD1</span><span class="p">;</span>
|
||||
|
|
@ -664,7 +664,7 @@ the pool creation code. First, the header for the AMC pool class:</p>
|
|||
</div>
|
||||
<p>Second, the <a class="reference internal" href="../glossary/o.html#term-object-format"><em class="xref std std-term">object format</em></a>:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">struct</span> <span class="n">mps_fmt_A_s</span> <span class="n">obj_fmt_s</span> <span class="o">=</span> <span class="p">{</span>
|
||||
<span class="k">sizeof</span><span class="p">(</span><span class="n">mps_word_t</span><span class="p">),</span>
|
||||
<span class="k">sizeof</span><span class="p">(</span><span class="kt">mps_word_t</span><span class="p">),</span>
|
||||
<span class="n">obj_scan</span><span class="p">,</span>
|
||||
<span class="n">obj_skip</span><span class="p">,</span>
|
||||
<span class="nb">NULL</span><span class="p">,</span>
|
||||
|
|
@ -673,7 +673,7 @@ the pool creation code. First, the header for the AMC pool class:</p>
|
|||
<span class="n">obj_pad</span><span class="p">,</span>
|
||||
<span class="p">};</span>
|
||||
|
||||
<span class="n">mps_fmt_t</span> <span class="n">obj_fmt</span><span class="p">;</span>
|
||||
<span class="kt">mps_fmt_t</span> <span class="n">obj_fmt</span><span class="p">;</span>
|
||||
<span class="n">res</span> <span class="o">=</span> <span class="n">mps_fmt_create_A</span><span class="p">(</span><span class="o">&</span><span class="n">obj_fmt</span><span class="p">,</span> <span class="n">arena</span><span class="p">,</span> <span class="o">&</span><span class="n">obj_fmt_s</span><span class="p">);</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">res</span> <span class="o">!=</span> <span class="n">MPS_RES_OK</span><span class="p">)</span> <span class="n">error</span><span class="p">(</span><span class="s">"Couldn't create obj format"</span><span class="p">);</span>
|
||||
</pre></div>
|
||||
|
|
@ -684,7 +684,7 @@ the pool creation code. First, the header for the AMC pool class:</p>
|
|||
<span class="p">{</span> <span class="mi">170</span><span class="p">,</span> <span class="mf">0.45</span> <span class="p">},</span>
|
||||
<span class="p">};</span>
|
||||
|
||||
<span class="n">mps_chain_t</span> <span class="n">obj_chain</span><span class="p">;</span>
|
||||
<span class="kt">mps_chain_t</span> <span class="n">obj_chain</span><span class="p">;</span>
|
||||
<span class="n">res</span> <span class="o">=</span> <span class="n">mps_chain_create</span><span class="p">(</span><span class="o">&</span><span class="n">obj_chain</span><span class="p">,</span>
|
||||
<span class="n">arena</span><span class="p">,</span>
|
||||
<span class="n">LENGTH</span><span class="p">(</span><span class="n">obj_gen_params</span><span class="p">),</span>
|
||||
|
|
@ -693,7 +693,7 @@ the pool creation code. First, the header for the AMC pool class:</p>
|
|||
</pre></div>
|
||||
</div>
|
||||
<p>And finally the <a class="reference internal" href="../glossary/p.html#term-pool"><em class="xref std std-term">pool</em></a>:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">mps_pool_t</span> <span class="n">obj_pool</span><span class="p">;</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="kt">mps_pool_t</span> <span class="n">obj_pool</span><span class="p">;</span>
|
||||
<span class="n">res</span> <span class="o">=</span> <span class="n">mps_pool_create</span><span class="p">(</span><span class="o">&</span><span class="n">obj_pool</span><span class="p">,</span>
|
||||
<span class="n">arena</span><span class="p">,</span>
|
||||
<span class="n">mps_class_amc</span><span class="p">(),</span>
|
||||
|
|
@ -721,15 +721,15 @@ memory allocated by other memory managers. For these roots you must
|
|||
describe to the MPS how to <a class="reference internal" href="../glossary/s.html#term-scan"><em class="xref std std-term">scan</em></a> them for references.</p>
|
||||
<p>The toy Scheme interpreter has a number of static variables that point
|
||||
to heap-allocated objects. First, the special objects, including:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="n">obj_t</span> <span class="n">obj_empty</span><span class="p">;</span> <span class="cm">/* (), the empty list */</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">obj_t</span> <span class="n">obj_empty</span><span class="p">;</span> <span class="cm">/* (), the empty list */</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>Second, the predefined symbols, including:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="n">obj_t</span> <span class="n">obj_quote</span><span class="p">;</span> <span class="cm">/* "quote" symbol */</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">obj_t</span> <span class="n">obj_quote</span><span class="p">;</span> <span class="cm">/* "quote" symbol */</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>And third, the global symbol table:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="n">obj_t</span> <span class="o">*</span><span class="n">symtab</span><span class="p">;</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">obj_t</span> <span class="o">*</span><span class="n">symtab</span><span class="p">;</span>
|
||||
<span class="k">static</span> <span class="kt">size_t</span> <span class="n">symtab_size</span><span class="p">;</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
|
|
@ -740,7 +740,7 @@ described above.</p>
|
|||
<p>In the case of the toy Scheme interpreter, the root scanning function
|
||||
for the special objects and the predefined symbols could be written
|
||||
like this:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="n">mps_res_t</span> <span class="nf">globals_scan</span><span class="p">(</span><span class="n">mps_ss_t</span> <span class="n">ss</span><span class="p">,</span> <span class="kt">void</span> <span class="o">*</span><span class="n">p</span><span class="p">,</span> <span class="kt">size_t</span> <span class="n">s</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">mps_res_t</span> <span class="nf">globals_scan</span><span class="p">(</span><span class="kt">mps_ss_t</span> <span class="n">ss</span><span class="p">,</span> <span class="kt">void</span> <span class="o">*</span><span class="n">p</span><span class="p">,</span> <span class="kt">size_t</span> <span class="n">s</span><span class="p">)</span>
|
||||
<span class="p">{</span>
|
||||
<span class="n">MPS_SCAN_BEGIN</span><span class="p">(</span><span class="n">ss</span><span class="p">)</span> <span class="p">{</span>
|
||||
<span class="n">FIX</span><span class="p">(</span><span class="n">obj_empty</span><span class="p">);</span>
|
||||
|
|
@ -755,7 +755,7 @@ like this:</p>
|
|||
<p>but in fact the interpreter already has tables of these global
|
||||
objects, so it’s simpler and more extensible for the root scanning
|
||||
function to iterate over them:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="n">mps_res_t</span> <span class="nf">globals_scan</span><span class="p">(</span><span class="n">mps_ss_t</span> <span class="n">ss</span><span class="p">,</span> <span class="kt">void</span> <span class="o">*</span><span class="n">p</span><span class="p">,</span> <span class="kt">size_t</span> <span class="n">s</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">mps_res_t</span> <span class="nf">globals_scan</span><span class="p">(</span><span class="kt">mps_ss_t</span> <span class="n">ss</span><span class="p">,</span> <span class="kt">void</span> <span class="o">*</span><span class="n">p</span><span class="p">,</span> <span class="kt">size_t</span> <span class="n">s</span><span class="p">)</span>
|
||||
<span class="p">{</span>
|
||||
<span class="n">MPS_SCAN_BEGIN</span><span class="p">(</span><span class="n">ss</span><span class="p">)</span> <span class="p">{</span>
|
||||
<span class="kt">size_t</span> <span class="n">i</span><span class="p">;</span>
|
||||
|
|
@ -770,7 +770,7 @@ function to iterate over them:</p>
|
|||
</div>
|
||||
<p>Each root scanning function must be registered with the MPS by calling
|
||||
<a class="reference internal" href="../topic/root.html#mps_root_create" title="mps_root_create"><tt class="xref c c-func docutils literal"><span class="pre">mps_root_create()</span></tt></a>, like this:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">mps_root_t</span> <span class="n">globals_root</span><span class="p">;</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="kt">mps_root_t</span> <span class="n">globals_root</span><span class="p">;</span>
|
||||
<span class="n">res</span> <span class="o">=</span> <span class="n">mps_root_create</span><span class="p">(</span><span class="o">&</span><span class="n">globals_root</span><span class="p">,</span> <span class="n">arena</span><span class="p">,</span> <span class="n">mps_rank_exact</span><span class="p">(),</span> <span class="mi">0</span><span class="p">,</span>
|
||||
<span class="n">globals_scan</span><span class="p">,</span> <span class="nb">NULL</span><span class="p">,</span> <span class="mi">0</span><span class="p">);</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">res</span> <span class="o">!=</span> <span class="n">MPS_RES_OK</span><span class="p">)</span> <span class="n">error</span><span class="p">(</span><span class="s">"Couldn't register globals root"</span><span class="p">);</span>
|
||||
|
|
@ -808,11 +808,11 @@ after the rehash has completed, de-registering the old root by calling
|
|||
the global symbol table, but the case of a table of references is
|
||||
sufficiently common that the MPS provides a convenient (and optimized)
|
||||
function, <a class="reference internal" href="../topic/root.html#mps_root_create_table" title="mps_root_create_table"><tt class="xref c c-func docutils literal"><span class="pre">mps_root_create_table()</span></tt></a>, for registering it:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="n">mps_root_t</span> <span class="n">symtab_root</span><span class="p">;</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">mps_root_t</span> <span class="n">symtab_root</span><span class="p">;</span>
|
||||
|
||||
<span class="cm">/* ... */</span>
|
||||
|
||||
<span class="n">mps_addr_t</span> <span class="n">ref</span> <span class="o">=</span> <span class="n">symtab</span><span class="p">;</span>
|
||||
<span class="kt">mps_addr_t</span> <span class="n">ref</span> <span class="o">=</span> <span class="n">symtab</span><span class="p">;</span>
|
||||
<span class="n">res</span> <span class="o">=</span> <span class="n">mps_root_create_table</span><span class="p">(</span><span class="o">&</span><span class="n">symtab_root</span><span class="p">,</span> <span class="n">arena</span><span class="p">,</span> <span class="n">mps_rank_exact</span><span class="p">(),</span> <span class="mi">0</span><span class="p">,</span>
|
||||
<span class="n">ref</span><span class="p">,</span> <span class="n">symtab_size</span><span class="p">);</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">res</span> <span class="o">!=</span> <span class="n">MPS_RES_OK</span><span class="p">)</span> <span class="n">error</span><span class="p">(</span><span class="s">"Couldn't register new symtab root"</span><span class="p">);</span>
|
||||
|
|
@ -821,15 +821,15 @@ function, <a class="reference internal" href="../topic/root.html#mps_root_create
|
|||
<p id="guide-lang-roots-rehash">The root must be re-registered whenever the global symbol table
|
||||
changes size:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">void</span> <span class="nf">rehash</span><span class="p">(</span><span class="kt">void</span><span class="p">)</span> <span class="p">{</span>
|
||||
<span class="n">obj_t</span> <span class="o">*</span><span class="n">old_symtab</span> <span class="o">=</span> <span class="n">symtab</span><span class="p">;</span>
|
||||
<span class="kt">obj_t</span> <span class="o">*</span><span class="n">old_symtab</span> <span class="o">=</span> <span class="n">symtab</span><span class="p">;</span>
|
||||
<span class="kt">unsigned</span> <span class="n">old_symtab_size</span> <span class="o">=</span> <span class="n">symtab_size</span><span class="p">;</span>
|
||||
<span class="n">mps_root_t</span> <span class="n">old_symtab_root</span> <span class="o">=</span> <span class="n">symtab_root</span><span class="p">;</span>
|
||||
<span class="kt">mps_root_t</span> <span class="n">old_symtab_root</span> <span class="o">=</span> <span class="n">symtab_root</span><span class="p">;</span>
|
||||
<span class="kt">unsigned</span> <span class="n">i</span><span class="p">;</span>
|
||||
<span class="n">mps_addr_t</span> <span class="n">ref</span><span class="p">;</span>
|
||||
<span class="n">mps_res_t</span> <span class="n">res</span><span class="p">;</span>
|
||||
<span class="kt">mps_addr_t</span> <span class="n">ref</span><span class="p">;</span>
|
||||
<span class="kt">mps_res_t</span> <span class="n">res</span><span class="p">;</span>
|
||||
|
||||
<span class="n">symtab_size</span> <span class="o">*=</span> <span class="mi">2</span><span class="p">;</span>
|
||||
<span class="n">symtab</span> <span class="o">=</span> <span class="n">malloc</span><span class="p">(</span><span class="k">sizeof</span><span class="p">(</span><span class="n">obj_t</span><span class="p">)</span> <span class="o">*</span> <span class="n">symtab_size</span><span class="p">);</span>
|
||||
<span class="n">symtab</span> <span class="o">=</span> <span class="n">malloc</span><span class="p">(</span><span class="k">sizeof</span><span class="p">(</span><span class="kt">obj_t</span><span class="p">)</span> <span class="o">*</span> <span class="n">symtab_size</span><span class="p">);</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">symtab</span> <span class="o">==</span> <span class="nb">NULL</span><span class="p">)</span> <span class="n">error</span><span class="p">(</span><span class="s">"out of memory"</span><span class="p">);</span>
|
||||
|
||||
<span class="cm">/* Initialize the new table to NULL so that "find" will work. */</span>
|
||||
|
|
@ -843,7 +843,7 @@ changes size:</p>
|
|||
|
||||
<span class="k">for</span> <span class="p">(</span><span class="n">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="n">i</span> <span class="o"><</span> <span class="n">old_symtab_size</span><span class="p">;</span> <span class="o">++</span><span class="n">i</span><span class="p">)</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">old_symtab</span><span class="p">[</span><span class="n">i</span><span class="p">]</span> <span class="o">!=</span> <span class="nb">NULL</span><span class="p">)</span> <span class="p">{</span>
|
||||
<span class="n">obj_t</span> <span class="o">*</span><span class="n">where</span> <span class="o">=</span> <span class="n">find</span><span class="p">(</span><span class="n">old_symtab</span><span class="p">[</span><span class="n">i</span><span class="p">]</span><span class="o">-></span><span class="n">symbol</span><span class="p">.</span><span class="n">string</span><span class="p">);</span>
|
||||
<span class="kt">obj_t</span> <span class="o">*</span><span class="n">where</span> <span class="o">=</span> <span class="n">find</span><span class="p">(</span><span class="n">old_symtab</span><span class="p">[</span><span class="n">i</span><span class="p">]</span><span class="o">-></span><span class="n">symbol</span><span class="p">.</span><span class="n">string</span><span class="p">);</span>
|
||||
<span class="n">assert</span><span class="p">(</span><span class="n">where</span> <span class="o">!=</span> <span class="nb">NULL</span><span class="p">);</span> <span class="cm">/* new table shouldn't be full */</span>
|
||||
<span class="n">assert</span><span class="p">(</span><span class="o">*</span><span class="n">where</span> <span class="o">==</span> <span class="nb">NULL</span><span class="p">);</span> <span class="cm">/* shouldn't be in new table */</span>
|
||||
<span class="o">*</span><span class="n">where</span> <span class="o">=</span> <span class="n">old_symtab</span><span class="p">[</span><span class="n">i</span><span class="p">];</span>
|
||||
|
|
@ -906,7 +906,7 @@ programs written in <a class="reference internal" href="../mmref/lang.html#term-
|
|||
</ol>
|
||||
<p>You register a thread with an <a class="reference internal" href="../glossary/a.html#term-arena"><em class="xref std std-term">arena</em></a> by calling
|
||||
<a class="reference internal" href="../topic/thread.html#mps_thread_reg" title="mps_thread_reg"><tt class="xref c c-func docutils literal"><span class="pre">mps_thread_reg()</span></tt></a>:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">mps_thr_t</span> <span class="kr">thread</span><span class="p">;</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="kt">mps_thr_t</span> <span class="kr">thread</span><span class="p">;</span>
|
||||
<span class="n">res</span> <span class="o">=</span> <span class="n">mps_thread_reg</span><span class="p">(</span><span class="o">&</span><span class="kr">thread</span><span class="p">,</span> <span class="n">arena</span><span class="p">);</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">res</span> <span class="o">!=</span> <span class="n">MPS_RES_OK</span><span class="p">)</span> <span class="n">error</span><span class="p">(</span><span class="s">"Couldn't register thread"</span><span class="p">);</span>
|
||||
</pre></div>
|
||||
|
|
@ -915,7 +915,7 @@ programs written in <a class="reference internal" href="../mmref/lang.html#term-
|
|||
calling <a class="reference internal" href="../topic/root.html#mps_root_create_reg" title="mps_root_create_reg"><tt class="xref c c-func docutils literal"><span class="pre">mps_root_create_reg()</span></tt></a> and passing
|
||||
<a class="reference internal" href="../topic/root.html#mps_stack_scan_ambig" title="mps_stack_scan_ambig"><tt class="xref c c-func docutils literal"><span class="pre">mps_stack_scan_ambig()</span></tt></a>:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="kt">void</span> <span class="o">*</span><span class="n">marker</span> <span class="o">=</span> <span class="o">&</span><span class="n">marker</span><span class="p">;</span>
|
||||
<span class="n">mps_root_t</span> <span class="n">reg_root</span><span class="p">;</span>
|
||||
<span class="kt">mps_root_t</span> <span class="n">reg_root</span><span class="p">;</span>
|
||||
<span class="n">res</span> <span class="o">=</span> <span class="n">mps_root_create_reg</span><span class="p">(</span><span class="o">&</span><span class="n">reg_root</span><span class="p">,</span>
|
||||
<span class="n">arena</span><span class="p">,</span>
|
||||
<span class="n">mps_rank_ambig</span><span class="p">(),</span>
|
||||
|
|
@ -946,11 +946,11 @@ to start allocating.</p>
|
|||
<p><a class="reference internal" href="../glossary/m.html#term-manual-memory-management"><em class="xref std std-term">Manual</em></a> pools typically support
|
||||
<a class="reference internal" href="../glossary/m.html#term-malloc"><em class="xref std std-term">malloc</em></a>-like allocation using the function
|
||||
<a class="reference internal" href="../topic/allocation.html#mps_alloc" title="mps_alloc"><tt class="xref c c-func docutils literal"><span class="pre">mps_alloc()</span></tt></a>. But <a class="reference internal" href="../glossary/a.html#term-automatic-memory-management"><em class="xref std std-term">automatic</em></a> pools cannot, because of the following problem:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="n">obj_t</span> <span class="nf">make_pair</span><span class="p">(</span><span class="n">obj_t</span> <span class="n">car</span><span class="p">,</span> <span class="n">obj_t</span> <span class="n">cdr</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">obj_t</span> <span class="nf">make_pair</span><span class="p">(</span><span class="kt">obj_t</span> <span class="n">car</span><span class="p">,</span> <span class="kt">obj_t</span> <span class="n">cdr</span><span class="p">)</span>
|
||||
<span class="p">{</span>
|
||||
<span class="n">obj_t</span> <span class="n">obj</span><span class="p">;</span>
|
||||
<span class="n">mps_addr_t</span> <span class="n">addr</span><span class="p">;</span>
|
||||
<span class="n">mps_res_t</span> <span class="n">res</span><span class="p">;</span>
|
||||
<span class="kt">obj_t</span> <span class="n">obj</span><span class="p">;</span>
|
||||
<span class="kt">mps_addr_t</span> <span class="n">addr</span><span class="p">;</span>
|
||||
<span class="kt">mps_res_t</span> <span class="n">res</span><span class="p">;</span>
|
||||
<span class="n">res</span> <span class="o">=</span> <span class="n">mps_alloc</span><span class="p">(</span><span class="o">&</span><span class="n">addr</span><span class="p">,</span> <span class="n">pool</span><span class="p">,</span> <span class="k">sizeof</span><span class="p">(</span><span class="n">pair_s</span><span class="p">));</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">res</span> <span class="o">!=</span> <span class="n">MPS_RES_OK</span><span class="p">)</span> <span class="n">error</span><span class="p">(</span><span class="s">"out of memory in make_pair"</span><span class="p">);</span>
|
||||
<span class="n">obj</span> <span class="o">=</span> <span class="n">addr</span><span class="p">;</span>
|
||||
|
|
@ -973,7 +973,7 @@ may abort.</p>
|
|||
<a class="reference internal" href="../topic/allocation.html#topic-allocation-point-protocol"><em>Allocation point protocol</em></a>. This needs an additional
|
||||
structure, an <a class="reference internal" href="../glossary/a.html#term-allocation-point"><em class="xref std std-term">allocation point</em></a>, to be attached to the pool by
|
||||
calling <a class="reference internal" href="../topic/allocation.html#mps_ap_create" title="mps_ap_create"><tt class="xref c c-func docutils literal"><span class="pre">mps_ap_create()</span></tt></a>:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="n">mps_ap_t</span> <span class="n">obj_ap</span><span class="p">;</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">mps_ap_t</span> <span class="n">obj_ap</span><span class="p">;</span>
|
||||
|
||||
<span class="cm">/* ... */</span>
|
||||
|
||||
|
|
@ -982,13 +982,13 @@ calling <a class="reference internal" href="../topic/allocation.html#mps_ap_crea
|
|||
</pre></div>
|
||||
</div>
|
||||
<p>And then the constructor can be implemented like this:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="n">obj_t</span> <span class="nf">make_pair</span><span class="p">(</span><span class="n">obj_t</span> <span class="n">car</span><span class="p">,</span> <span class="n">obj_t</span> <span class="n">cdr</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">obj_t</span> <span class="nf">make_pair</span><span class="p">(</span><span class="kt">obj_t</span> <span class="n">car</span><span class="p">,</span> <span class="kt">obj_t</span> <span class="n">cdr</span><span class="p">)</span>
|
||||
<span class="p">{</span>
|
||||
<span class="n">obj_t</span> <span class="n">obj</span><span class="p">;</span>
|
||||
<span class="n">mps_addr_t</span> <span class="n">addr</span><span class="p">;</span>
|
||||
<span class="kt">obj_t</span> <span class="n">obj</span><span class="p">;</span>
|
||||
<span class="kt">mps_addr_t</span> <span class="n">addr</span><span class="p">;</span>
|
||||
<span class="kt">size_t</span> <span class="n">size</span> <span class="o">=</span> <span class="n">ALIGN</span><span class="p">(</span><span class="k">sizeof</span><span class="p">(</span><span class="n">pair_s</span><span class="p">));</span>
|
||||
<span class="k">do</span> <span class="p">{</span>
|
||||
<span class="n">mps_res_t</span> <span class="n">res</span> <span class="o">=</span> <span class="n">mps_reserve</span><span class="p">(</span><span class="o">&</span><span class="n">addr</span><span class="p">,</span> <span class="n">obj_ap</span><span class="p">,</span> <span class="n">size</span><span class="p">);</span>
|
||||
<span class="kt">mps_res_t</span> <span class="n">res</span> <span class="o">=</span> <span class="n">mps_reserve</span><span class="p">(</span><span class="o">&</span><span class="n">addr</span><span class="p">,</span> <span class="n">obj_ap</span><span class="p">,</span> <span class="n">size</span><span class="p">);</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">res</span> <span class="o">!=</span> <span class="n">MPS_RES_OK</span><span class="p">)</span> <span class="n">error</span><span class="p">(</span><span class="s">"out of memory in make_pair"</span><span class="p">);</span>
|
||||
<span class="n">obj</span> <span class="o">=</span> <span class="n">addr</span><span class="p">;</span>
|
||||
<span class="n">obj</span><span class="o">-></span><span class="n">pair</span><span class="p">.</span><span class="n">type</span> <span class="o">=</span> <span class="n">TYPE_PAIR</span><span class="p">;</span>
|
||||
|
|
@ -1150,7 +1150,7 @@ then you’ll be more interested in the chapter <a class="reference internal
|
|||
title="next chapter">4. Debugging with the Memory Pool System</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -1158,7 +1158,7 @@ then you’ll be more interested in the chapter <a class="reference internal
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -1178,7 +1178,7 @@ then you’ll be more interested in the chapter <a class="reference internal
|
|||
<li class="right" >
|
||||
<a href="build.html" title="2. Building the Memory Pool System"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Guide</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>1. Overview of the Memory Pool System — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>1. Overview of the Memory Pool System — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Guide" href="index.html" />
|
||||
<link rel="next" title="2. Building the Memory Pool System" href="build.html" />
|
||||
<link rel="prev" title="Guide" href="index.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="index.html" title="Guide"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Guide</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -179,7 +179,7 @@ to learn how to integrate it with the Memory Pool System. See
|
|||
title="next chapter">2. Building the Memory Pool System</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -187,7 +187,7 @@ to learn how to integrate it with the Memory Pool System. See
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -207,7 +207,7 @@ to learn how to integrate it with the Memory Pool System. See
|
|||
<li class="right" >
|
||||
<a href="index.html" title="Guide"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Guide</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>5. Tuning the Memory Pool System for performance — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>5. Tuning the Memory Pool System for performance — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Guide" href="index.html" />
|
||||
<link rel="next" title="6. Advanced topics" href="advanced.html" />
|
||||
<link rel="prev" title="4. Debugging with the Memory Pool System" href="debug.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="debug.html" title="4. Debugging with the Memory Pool System"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Guide</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -407,7 +407,7 @@ very large address space is ruinous to performance.</p>
|
|||
title="next chapter">6. Advanced topics</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -415,7 +415,7 @@ very large address space is ruinous to performance.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -435,7 +435,7 @@ very large address space is ruinous to performance.</p>
|
|||
<li class="right" >
|
||||
<a href="debug.html" title="4. Debugging with the Memory Pool System"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Guide</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Memory Pool System — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Memory Pool System — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="#" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="#" />
|
||||
<link rel="next" title="Guide" href="guide/index.html" />
|
||||
</head>
|
||||
<body>
|
||||
|
|
@ -39,7 +39,7 @@
|
|||
<li class="right" >
|
||||
<a href="guide/index.html" title="Guide"
|
||||
accesskey="N">next</a> |</li>
|
||||
<li><a href="#">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="#">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
|
@ -188,7 +188,7 @@
|
|||
title="next chapter">Guide</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -196,7 +196,7 @@
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -213,7 +213,7 @@
|
|||
<li class="right" >
|
||||
<a href="guide/index.html" title="Guide"
|
||||
>next</a> |</li>
|
||||
<li><a href="#">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="#">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="footer">
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>2. Allocation techniques — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>2. Allocation techniques — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Introduction to memory management" href="index.html" />
|
||||
<link rel="next" title="3. Recycling techniques" href="recycle.html" />
|
||||
<link rel="prev" title="1. Overview" href="begin.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="begin.html" title="1. Overview"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Introduction to memory management</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -222,7 +222,7 @@ manager that can respond dynamically to changing requirements.</p>
|
|||
title="next chapter">3. Recycling techniques</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -230,7 +230,7 @@ manager that can respond dynamically to changing requirements.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -250,7 +250,7 @@ manager that can respond dynamically to changing requirements.</p>
|
|||
<li class="right" >
|
||||
<a href="begin.html" title="1. Overview"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Introduction to memory management</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>1. Overview — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>1. Overview — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Introduction to memory management" href="index.html" />
|
||||
<link rel="next" title="2. Allocation techniques" href="alloc.html" />
|
||||
<link rel="prev" title="Introduction to memory management" href="index.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="index.html" title="Introduction to memory management"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Introduction to memory management</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -309,7 +309,7 @@ handbook covering all aspects of garbage collection.</p>
|
|||
title="next chapter">2. Allocation techniques</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -317,7 +317,7 @@ handbook covering all aspects of garbage collection.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -337,7 +337,7 @@ handbook covering all aspects of garbage collection.</p>
|
|||
<li class="right" >
|
||||
<a href="index.html" title="Introduction to memory management"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Introduction to memory management</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Bibliography — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Bibliography — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="next" title="Acknowledgements" href="credit.html" />
|
||||
<link rel="prev" title="5. Frequently Asked Questions" href="faq.html" />
|
||||
</head>
|
||||
|
|
@ -43,7 +43,7 @@
|
|||
<li class="right" >
|
||||
<a href="faq.html" title="5. Frequently Asked Questions"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
|
@ -437,7 +437,7 @@
|
|||
title="next chapter">Acknowledgements</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -445,7 +445,7 @@
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -465,7 +465,7 @@
|
|||
<li class="right" >
|
||||
<a href="faq.html" title="5. Frequently Asked Questions"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="footer">
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Acknowledgements — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Acknowledgements — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="next" title="Memory Management Glossary" href="../glossary/index.html" />
|
||||
<link rel="prev" title="Bibliography" href="bib.html" />
|
||||
</head>
|
||||
|
|
@ -43,7 +43,7 @@
|
|||
<li class="right" >
|
||||
<a href="bib.html" title="Bibliography"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
|
@ -129,7 +129,7 @@ help of:</p>
|
|||
title="next chapter">Memory Management Glossary</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -137,7 +137,7 @@ help of:</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -157,7 +157,7 @@ help of:</p>
|
|||
<li class="right" >
|
||||
<a href="bib.html" title="Bibliography"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="footer">
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>5. Frequently Asked Questions — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>5. Frequently Asked Questions — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Introduction to memory management" href="index.html" />
|
||||
<link rel="next" title="Bibliography" href="bib.html" />
|
||||
<link rel="prev" title="4. Memory management in various languages" href="lang.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="lang.html" title="4. Memory management in various languages"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Introduction to memory management</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -611,7 +611,7 @@ that poor <a class="reference internal" href="../glossary/l.html#term-locality-o
|
|||
title="next chapter">Bibliography</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -619,7 +619,7 @@ that poor <a class="reference internal" href="../glossary/l.html#term-locality-o
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -639,7 +639,7 @@ that poor <a class="reference internal" href="../glossary/l.html#term-locality-o
|
|||
<li class="right" >
|
||||
<a href="lang.html" title="4. Memory management in various languages"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Introduction to memory management</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Introduction to memory management — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Introduction to memory management — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="next" title="1. Overview" href="begin.html" />
|
||||
<link rel="prev" title="19. Library version mechanism" href="../design/version-library.html" />
|
||||
</head>
|
||||
|
|
@ -43,7 +43,7 @@
|
|||
<li class="right" >
|
||||
<a href="../design/version-library.html" title="19. Library version mechanism"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
|
@ -106,7 +106,7 @@
|
|||
title="next chapter">1. Overview</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -114,7 +114,7 @@
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -134,7 +134,7 @@
|
|||
<li class="right" >
|
||||
<a href="../design/version-library.html" title="19. Library version mechanism"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="footer">
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>4. Memory management in various languages — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>4. Memory management in various languages — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Introduction to memory management" href="index.html" />
|
||||
<link rel="next" title="5. Frequently Asked Questions" href="faq.html" />
|
||||
<link rel="prev" title="3. Recycling techniques" href="recycle.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="recycle.html" title="3. Recycling techniques"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Introduction to memory management</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -679,7 +679,7 @@ developed or implemented for Smalltalk.</p>
|
|||
title="next chapter">5. Frequently Asked Questions</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -687,7 +687,7 @@ developed or implemented for Smalltalk.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -707,7 +707,7 @@ developed or implemented for Smalltalk.</p>
|
|||
<li class="right" >
|
||||
<a href="recycle.html" title="3. Recycling techniques"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Introduction to memory management</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>3. Recycling techniques — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>3. Recycling techniques — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Introduction to memory management" href="index.html" />
|
||||
<link rel="next" title="4. Memory management in various languages" href="lang.html" />
|
||||
<link rel="prev" title="2. Allocation techniques" href="alloc.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="alloc.html" title="2. Allocation techniques"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Introduction to memory management</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -292,7 +292,7 @@ references are deleted.</p>
|
|||
title="next chapter">4. Memory management in various languages</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -300,7 +300,7 @@ references are deleted.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -320,7 +320,7 @@ references are deleted.</p>
|
|||
<li class="right" >
|
||||
<a href="alloc.html" title="2. Allocation techniques"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Introduction to memory management</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>4. AMC (Automatic Mostly-Copying) — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>4. AMC (Automatic Mostly-Copying) — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Pool reference" href="index.html" />
|
||||
<link rel="next" title="5. AMCZ (Automatic Mostly-Copying Zero-rank)" href="amcz.html" />
|
||||
<link rel="prev" title="1. Choosing a pool class" href="intro.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="intro.html" title="1. Choosing a pool class"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Pool reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -117,10 +117,10 @@ belong to an object format of variant auto-header).</li>
|
|||
Mostly-Copying) <a class="reference internal" href="../glossary/p.html#term-pool"><em class="xref std std-term">pool</em></a>.</p>
|
||||
<p>When creating an AMC pool, <a class="reference internal" href="../topic/pool.html#mps_pool_create" title="mps_pool_create"><tt class="xref c c-func docutils literal"><span class="pre">mps_pool_create()</span></tt></a> takes two
|
||||
extra arguments:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">mps_res_t</span> <span class="n">mps_pool_create</span><span class="p">(</span><span class="n">mps_pool_t</span> <span class="o">*</span><span class="n">pool_o</span><span class="p">,</span> <span class="n">mps_arena_t</span> <span class="n">arena</span><span class="p">,</span>
|
||||
<span class="n">mps_class_t</span> <span class="n">mps_class_amc</span><span class="p">(),</span>
|
||||
<span class="n">mps_fmt_t</span> <span class="n">fmt</span><span class="p">,</span>
|
||||
<span class="n">mps_chain_t</span> <span class="n">chain</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="kt">mps_res_t</span> <span class="n">mps_pool_create</span><span class="p">(</span><span class="kt">mps_pool_t</span> <span class="o">*</span><span class="n">pool_o</span><span class="p">,</span> <span class="kt">mps_arena_t</span> <span class="n">arena</span><span class="p">,</span>
|
||||
<span class="kt">mps_class_t</span> <span class="n">mps_class_amc</span><span class="p">(),</span>
|
||||
<span class="kt">mps_fmt_t</span> <span class="n">fmt</span><span class="p">,</span>
|
||||
<span class="kt">mps_chain_t</span> <span class="n">chain</span><span class="p">)</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p><tt class="docutils literal"><span class="pre">fmt</span></tt> specifies the <a class="reference internal" href="../glossary/o.html#term-object-format"><em class="xref std std-term">object format</em></a> for the objects
|
||||
|
|
@ -216,7 +216,7 @@ their contents;</li>
|
|||
title="next chapter">5. AMCZ (Automatic Mostly-Copying Zero-rank)</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -224,7 +224,7 @@ their contents;</li>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -244,7 +244,7 @@ their contents;</li>
|
|||
<li class="right" >
|
||||
<a href="intro.html" title="1. Choosing a pool class"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Pool reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>5. AMCZ (Automatic Mostly-Copying Zero-rank) — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>5. AMCZ (Automatic Mostly-Copying Zero-rank) — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Pool reference" href="index.html" />
|
||||
<link rel="next" title="6. AMS (Automatic Mark and Sweep)" href="ams.html" />
|
||||
<link rel="prev" title="4. AMC (Automatic Mostly-Copying)" href="amc.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="amc.html" title="4. AMC (Automatic Mostly-Copying)"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Pool reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -89,10 +89,10 @@ method</em></a>.</li>
|
|||
Mostly-Copying Zero-rank) <a class="reference internal" href="../glossary/p.html#term-pool"><em class="xref std std-term">pool</em></a>.</p>
|
||||
<p>When creating an AMCZ pool, <a class="reference internal" href="../topic/pool.html#mps_pool_create" title="mps_pool_create"><tt class="xref c c-func docutils literal"><span class="pre">mps_pool_create()</span></tt></a> takes two
|
||||
extra arguments:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">mps_res_t</span> <span class="n">mps_pool_create</span><span class="p">(</span><span class="n">mps_pool_t</span> <span class="o">*</span><span class="n">pool_o</span><span class="p">,</span> <span class="n">mps_arena_t</span> <span class="n">arena</span><span class="p">,</span>
|
||||
<span class="n">mps_class_t</span> <span class="n">mps_class_amcz</span><span class="p">(),</span>
|
||||
<span class="n">mps_fmt_t</span> <span class="n">fmt</span><span class="p">,</span>
|
||||
<span class="n">mps_chain_t</span> <span class="n">chain</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="kt">mps_res_t</span> <span class="n">mps_pool_create</span><span class="p">(</span><span class="kt">mps_pool_t</span> <span class="o">*</span><span class="n">pool_o</span><span class="p">,</span> <span class="kt">mps_arena_t</span> <span class="n">arena</span><span class="p">,</span>
|
||||
<span class="kt">mps_class_t</span> <span class="n">mps_class_amcz</span><span class="p">(),</span>
|
||||
<span class="kt">mps_fmt_t</span> <span class="n">fmt</span><span class="p">,</span>
|
||||
<span class="kt">mps_chain_t</span> <span class="n">chain</span><span class="p">)</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p><tt class="docutils literal"><span class="pre">fmt</span></tt> specifies the <a class="reference internal" href="../glossary/o.html#term-object-format"><em class="xref std std-term">object format</em></a> for the objects
|
||||
|
|
@ -131,7 +131,7 @@ and a <a class="reference internal" href="../glossary/p.html#term-padding-method
|
|||
title="next chapter">6. AMS (Automatic Mark and Sweep)</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -139,7 +139,7 @@ and a <a class="reference internal" href="../glossary/p.html#term-padding-method
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -159,7 +159,7 @@ and a <a class="reference internal" href="../glossary/p.html#term-padding-method
|
|||
<li class="right" >
|
||||
<a href="amc.html" title="4. AMC (Automatic Mostly-Copying)"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Pool reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>6. AMS (Automatic Mark and Sweep) — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>6. AMS (Automatic Mark and Sweep) — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Pool reference" href="index.html" />
|
||||
<link rel="next" title="7. AWL (Automatic Weak Linked)" href="awl.html" />
|
||||
<link rel="prev" title="5. AMCZ (Automatic Mostly-Copying Zero-rank)" href="amcz.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="amcz.html" title="5. AMCZ (Automatic Mostly-Copying Zero-rank)"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Pool reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -120,10 +120,10 @@ of this is that the pool’s <a class="reference internal" href="../glossary
|
|||
<a class="reference internal" href="../glossary/p.html#term-pool"><em class="xref std std-term">pool</em></a>.</p>
|
||||
<p>When creating an AMS pool, <a class="reference internal" href="../topic/pool.html#mps_pool_create" title="mps_pool_create"><tt class="xref c c-func docutils literal"><span class="pre">mps_pool_create()</span></tt></a> takes two
|
||||
extra arguments:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">mps_res_t</span> <span class="n">mps_pool_create</span><span class="p">(</span><span class="n">mps_pool_t</span> <span class="o">*</span><span class="n">pool_o</span><span class="p">,</span> <span class="n">mps_arena_t</span> <span class="n">arena</span><span class="p">,</span>
|
||||
<span class="n">mps_class_t</span> <span class="n">mps_class_ams</span><span class="p">(),</span>
|
||||
<span class="n">mps_fmt_t</span> <span class="n">fmt</span><span class="p">,</span>
|
||||
<span class="n">mps_chain_t</span> <span class="n">chain</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="kt">mps_res_t</span> <span class="n">mps_pool_create</span><span class="p">(</span><span class="kt">mps_pool_t</span> <span class="o">*</span><span class="n">pool_o</span><span class="p">,</span> <span class="kt">mps_arena_t</span> <span class="n">arena</span><span class="p">,</span>
|
||||
<span class="kt">mps_class_t</span> <span class="n">mps_class_ams</span><span class="p">(),</span>
|
||||
<span class="kt">mps_fmt_t</span> <span class="n">fmt</span><span class="p">,</span>
|
||||
<span class="kt">mps_chain_t</span> <span class="n">chain</span><span class="p">)</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p><tt class="docutils literal"><span class="pre">fmt</span></tt> specifies the <a class="reference internal" href="../glossary/o.html#term-object-format"><em class="xref std std-term">object format</em></a> for the objects
|
||||
|
|
@ -140,11 +140,11 @@ must have a single generation.</p>
|
|||
class.</p>
|
||||
<p>When creating a debugging AMS pool, <a class="reference internal" href="../topic/pool.html#mps_pool_create" title="mps_pool_create"><tt class="xref c c-func docutils literal"><span class="pre">mps_pool_create()</span></tt></a>
|
||||
takes three extra arguments:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">mps_res_t</span> <span class="n">mps_pool_create</span><span class="p">(</span><span class="n">mps_pool_t</span> <span class="o">*</span><span class="n">pool_o</span><span class="p">,</span> <span class="n">mps_arena_t</span> <span class="n">arena</span><span class="p">,</span>
|
||||
<span class="n">mps_class_t</span> <span class="n">mps_class_ams_debug</span><span class="p">(),</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="kt">mps_res_t</span> <span class="n">mps_pool_create</span><span class="p">(</span><span class="kt">mps_pool_t</span> <span class="o">*</span><span class="n">pool_o</span><span class="p">,</span> <span class="kt">mps_arena_t</span> <span class="n">arena</span><span class="p">,</span>
|
||||
<span class="kt">mps_class_t</span> <span class="n">mps_class_ams_debug</span><span class="p">(),</span>
|
||||
<span class="n">mps_debug_option_s</span> <span class="n">debug_option</span><span class="p">,</span>
|
||||
<span class="n">mps_fmt_t</span> <span class="n">fmt</span><span class="p">,</span>
|
||||
<span class="n">mps_chain_t</span> <span class="n">chain</span><span class="p">)</span>
|
||||
<span class="kt">mps_fmt_t</span> <span class="n">fmt</span><span class="p">,</span>
|
||||
<span class="kt">mps_chain_t</span> <span class="n">chain</span><span class="p">)</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p><tt class="docutils literal"><span class="pre">debug_option</span></tt> specifies the debugging options. See
|
||||
|
|
@ -181,7 +181,7 @@ takes three extra arguments:</p>
|
|||
title="next chapter">7. AWL (Automatic Weak Linked)</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -189,7 +189,7 @@ takes three extra arguments:</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -209,7 +209,7 @@ takes three extra arguments:</p>
|
|||
<li class="right" >
|
||||
<a href="amcz.html" title="5. AMCZ (Automatic Mostly-Copying Zero-rank)"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Pool reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>7. AWL (Automatic Weak Linked) — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>7. AWL (Automatic Weak Linked) — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Pool reference" href="index.html" />
|
||||
<link rel="next" title="8. LO (Leaf Object)" href="lo.html" />
|
||||
<link rel="prev" title="6. AMS (Automatic Mark and Sweep)" href="ams.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="ams.html" title="6. AMS (Automatic Mark and Sweep)"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Pool reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -93,8 +93,8 @@ takes one additional parameter, a <a class="reference internal" href="../glossar
|
|||
<a class="reference internal" href="../topic/root.html#mps_rank_exact" title="mps_rank_exact"><tt class="xref c c-func docutils literal"><span class="pre">mps_rank_exact()</span></tt></a> (to allocate ordinary objects containing
|
||||
<a class="reference internal" href="../glossary/e.html#term-exact-reference"><em class="xref std std-term">exact references</em></a>), or <a class="reference internal" href="../topic/root.html#mps_rank_weak" title="mps_rank_weak"><tt class="xref c c-func docutils literal"><span class="pre">mps_rank_weak()</span></tt></a> (to allocate
|
||||
objects that contain weak references). For example:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">mps_ap_t</span> <span class="n">ap</span><span class="p">;</span>
|
||||
<span class="n">mps_res_t</span> <span class="n">res</span><span class="p">;</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="kt">mps_ap_t</span> <span class="n">ap</span><span class="p">;</span>
|
||||
<span class="kt">mps_res_t</span> <span class="n">res</span><span class="p">;</span>
|
||||
<span class="n">res</span> <span class="o">=</span> <span class="n">mps_ap_create</span><span class="p">(</span><span class="o">&</span><span class="n">ap</span><span class="p">,</span> <span class="n">pool</span><span class="p">,</span> <span class="n">mps_rank_weak</span><span class="p">());</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">res</span> <span class="o">!=</span> <span class="n">MPS_RES_OK</span><span class="p">)</span> <span class="n">error</span><span class="p">(</span><span class="s">"can't create allocation point"</span><span class="p">);</span>
|
||||
</pre></div>
|
||||
|
|
@ -169,31 +169,31 @@ values object, and vice versa (if necessary). The scan method looks
|
|||
out for the splatting of a reference, and when this is detected, it
|
||||
splats the corresponding reference in the dependent object.</p>
|
||||
<p>For example:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">obj_t</span> <span class="n">obj_deleted</span><span class="p">;</span> <span class="cm">/* deleted entry in hash table */</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="kt">obj_t</span> <span class="n">obj_deleted</span><span class="p">;</span> <span class="cm">/* deleted entry in hash table */</span>
|
||||
|
||||
<span class="k">typedef</span> <span class="k">struct</span> <span class="n">weak_array_s</span> <span class="p">{</span>
|
||||
<span class="k">struct</span> <span class="n">weak_array_s</span> <span class="o">*</span><span class="n">dependent</span><span class="p">;</span>
|
||||
<span class="kt">size_t</span> <span class="n">length</span><span class="p">;</span> <span class="cm">/* tagged as "length * 2 + 1" */</span>
|
||||
<span class="n">obj_t</span> <span class="n">slot</span><span class="p">[</span><span class="mi">1</span><span class="p">];</span>
|
||||
<span class="p">}</span> <span class="n">weak_array_s</span><span class="p">,</span> <span class="o">*</span><span class="n">weak_array_t</span><span class="p">;</span>
|
||||
<span class="kt">obj_t</span> <span class="n">slot</span><span class="p">[</span><span class="mi">1</span><span class="p">];</span>
|
||||
<span class="p">}</span> <span class="n">weak_array_s</span><span class="p">,</span> <span class="o">*</span><span class="kt">weak_array_t</span><span class="p">;</span>
|
||||
|
||||
<span class="k">typedef</span> <span class="n">weak_table_s</span> <span class="p">{</span>
|
||||
<span class="n">type_s</span> <span class="n">type</span><span class="p">;</span> <span class="cm">/* TYPE_WEAK_TABLE */</span>
|
||||
<span class="n">weak_array_t</span> <span class="n">keys</span><span class="p">,</span> <span class="n">values</span><span class="p">;</span>
|
||||
<span class="p">}</span> <span class="n">weak_table_s</span><span class="p">,</span> <span class="o">*</span><span class="n">weak_table_t</span><span class="p">;</span>
|
||||
<span class="kt">weak_array_t</span> <span class="n">keys</span><span class="p">,</span> <span class="n">values</span><span class="p">;</span>
|
||||
<span class="p">}</span> <span class="n">weak_table_s</span><span class="p">,</span> <span class="o">*</span><span class="kt">weak_table_t</span><span class="p">;</span>
|
||||
|
||||
<span class="n">mps_addr_t</span> <span class="nf">weak_array_find_dependent</span><span class="p">(</span><span class="n">mps_addr_t</span> <span class="n">addr</span><span class="p">)</span>
|
||||
<span class="kt">mps_addr_t</span> <span class="nf">weak_array_find_dependent</span><span class="p">(</span><span class="kt">mps_addr_t</span> <span class="n">addr</span><span class="p">)</span>
|
||||
<span class="p">{</span>
|
||||
<span class="n">weak_array_t</span> <span class="n">a</span> <span class="o">=</span> <span class="n">addr</span><span class="p">;</span>
|
||||
<span class="kt">weak_array_t</span> <span class="n">a</span> <span class="o">=</span> <span class="n">addr</span><span class="p">;</span>
|
||||
<span class="k">return</span> <span class="n">a</span><span class="o">-></span><span class="n">dependent</span><span class="p">;</span>
|
||||
<span class="p">}</span>
|
||||
|
||||
<span class="n">mps_res_t</span> <span class="nf">weak_array_scan</span><span class="p">(</span><span class="n">mps_ss_t</span> <span class="n">ss</span><span class="p">,</span> <span class="n">mps_addr_t</span> <span class="n">base</span><span class="p">,</span> <span class="n">mps_addr_t</span> <span class="n">limit</span><span class="p">)</span>
|
||||
<span class="kt">mps_res_t</span> <span class="nf">weak_array_scan</span><span class="p">(</span><span class="kt">mps_ss_t</span> <span class="n">ss</span><span class="p">,</span> <span class="kt">mps_addr_t</span> <span class="n">base</span><span class="p">,</span> <span class="kt">mps_addr_t</span> <span class="n">limit</span><span class="p">)</span>
|
||||
<span class="p">{</span>
|
||||
<span class="n">MPS_SCAN_BEGIN</span><span class="p">(</span><span class="n">ss</span><span class="p">)</span> <span class="p">{</span>
|
||||
<span class="k">while</span> <span class="p">(</span><span class="n">base</span> <span class="o"><</span> <span class="n">limit</span><span class="p">)</span> <span class="p">{</span>
|
||||
<span class="n">mps_addr_t</span> <span class="n">p</span><span class="p">;</span>
|
||||
<span class="n">weak_array_t</span> <span class="n">a</span> <span class="o">=</span> <span class="n">base</span><span class="p">;</span>
|
||||
<span class="kt">mps_addr_t</span> <span class="n">p</span><span class="p">;</span>
|
||||
<span class="kt">weak_array_t</span> <span class="n">a</span> <span class="o">=</span> <span class="n">base</span><span class="p">;</span>
|
||||
<span class="kt">size_t</span> <span class="n">i</span><span class="p">,</span> <span class="n">length</span> <span class="o">=</span> <span class="n">a</span><span class="o">-></span><span class="n">length</span> <span class="o">>></span> <span class="mi">1</span><span class="p">;</span> <span class="cm">/* untag */</span>
|
||||
<span class="n">p</span> <span class="o">=</span> <span class="n">a</span><span class="o">-></span><span class="n">dependent</span><span class="p">;</span>
|
||||
<span class="n">MPS_FIX12</span><span class="p">(</span><span class="n">ss</span><span class="p">,</span> <span class="o">&</span><span class="n">p</span><span class="p">);</span>
|
||||
|
|
@ -201,7 +201,7 @@ splats the corresponding reference in the dependent object.</p>
|
|||
<span class="k">for</span> <span class="p">(</span><span class="n">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="n">i</span> <span class="o"><</span> <span class="n">length</span><span class="p">;</span> <span class="o">++</span><span class="n">i</span><span class="p">)</span> <span class="p">{</span>
|
||||
<span class="n">p</span> <span class="o">=</span> <span class="n">a</span><span class="o">-></span><span class="n">slot</span><span class="p">[</span><span class="n">i</span><span class="p">];</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">MPS_FIX1</span><span class="p">(</span><span class="n">ss</span><span class="p">,</span> <span class="n">p</span><span class="p">))</span> <span class="p">{</span>
|
||||
<span class="n">mps_res_t</span> <span class="n">res</span> <span class="o">=</span> <span class="n">MPS_FIX2</span><span class="p">(</span><span class="n">ss</span><span class="p">,</span> <span class="o">&</span><span class="n">p</span><span class="p">);</span>
|
||||
<span class="kt">mps_res_t</span> <span class="n">res</span> <span class="o">=</span> <span class="n">MPS_FIX2</span><span class="p">(</span><span class="n">ss</span><span class="p">,</span> <span class="o">&</span><span class="n">p</span><span class="p">);</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">res</span> <span class="o">!=</span> <span class="n">MPS_RES_OK</span><span class="p">)</span> <span class="k">return</span> <span class="n">res</span><span class="p">;</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">p</span> <span class="o">==</span> <span class="nb">NULL</span> <span class="o">&&</span> <span class="n">a</span><span class="o">-></span><span class="n">dependent</span><span class="p">)</span> <span class="p">{</span>
|
||||
<span class="cm">/* key/value was splatted: splat value/key too */</span>
|
||||
|
|
@ -313,10 +313,10 @@ example</em></a> above.</p>
|
|||
<a class="reference internal" href="../glossary/p.html#term-pool"><em class="xref std std-term">pool</em></a>.</p>
|
||||
<p>When creating an AWL pool, <a class="reference internal" href="../topic/pool.html#mps_pool_create" title="mps_pool_create"><tt class="xref c c-func docutils literal"><span class="pre">mps_pool_create()</span></tt></a> takes two
|
||||
extra arguments:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">mps_res_t</span> <span class="n">mps_pool_create</span><span class="p">(</span><span class="n">mps_pool_t</span> <span class="o">*</span><span class="n">pool_o</span><span class="p">,</span> <span class="n">mps_arena_t</span> <span class="n">arena</span><span class="p">,</span>
|
||||
<span class="n">mps_class_t</span> <span class="n">mps_class_awl</span><span class="p">(),</span>
|
||||
<span class="n">mps_fmt_t</span> <span class="n">fmt</span><span class="p">,</span>
|
||||
<span class="n">mps_awl_find_dependent_t</span> <span class="n">find_dependent</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="kt">mps_res_t</span> <span class="n">mps_pool_create</span><span class="p">(</span><span class="kt">mps_pool_t</span> <span class="o">*</span><span class="n">pool_o</span><span class="p">,</span> <span class="kt">mps_arena_t</span> <span class="n">arena</span><span class="p">,</span>
|
||||
<span class="kt">mps_class_t</span> <span class="n">mps_class_awl</span><span class="p">(),</span>
|
||||
<span class="kt">mps_fmt_t</span> <span class="n">fmt</span><span class="p">,</span>
|
||||
<span class="kt">mps_awl_find_dependent_t</span> <span class="n">find_dependent</span><span class="p">)</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p><tt class="docutils literal"><span class="pre">fmt</span></tt> specifies the <a class="reference internal" href="../glossary/o.html#term-object-format"><em class="xref std std-term">object format</em></a> for the objects
|
||||
|
|
@ -327,8 +327,8 @@ method</em></a> and a <a class="reference internal" href="../glossary/s.html#ter
|
|||
<a class="reference internal" href="../glossary/d.html#term-dependent-object"><em class="xref std std-term">dependent object</em></a> for an object in the pool.</p>
|
||||
<p>When creating an allocation point on an AWL pool,
|
||||
<a class="reference internal" href="../topic/allocation.html#mps_ap_create" title="mps_ap_create"><tt class="xref c c-func docutils literal"><span class="pre">mps_ap_create()</span></tt></a> takes one extra argument:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">mps_res_t</span> <span class="n">mps_ap_create</span><span class="p">(</span><span class="n">mps_ap_t</span> <span class="o">*</span><span class="n">ap_o</span><span class="p">,</span> <span class="n">mps_pool_t</span> <span class="n">pool</span><span class="p">,</span>
|
||||
<span class="n">mps_rank_t</span> <span class="n">rank</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="kt">mps_res_t</span> <span class="n">mps_ap_create</span><span class="p">(</span><span class="kt">mps_ap_t</span> <span class="o">*</span><span class="n">ap_o</span><span class="p">,</span> <span class="kt">mps_pool_t</span> <span class="n">pool</span><span class="p">,</span>
|
||||
<span class="kt">mps_rank_t</span> <span class="n">rank</span><span class="p">)</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p><tt class="docutils literal"><span class="pre">rank</span></tt> specifies the <a class="reference internal" href="../glossary/r.html#term-rank"><em class="xref std std-term">rank</em></a> of references in objects
|
||||
|
|
@ -383,7 +383,7 @@ if it is, then it must be in a <a class="reference internal" href="../glossary/n
|
|||
title="next chapter">8. LO (Leaf Object)</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -391,7 +391,7 @@ if it is, then it must be in a <a class="reference internal" href="../glossary/n
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -411,7 +411,7 @@ if it is, then it must be in a <a class="reference internal" href="../glossary/n
|
|||
<li class="right" >
|
||||
<a href="ams.html" title="6. AMS (Automatic Mark and Sweep)"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Pool reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Pool reference — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Pool reference — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="next" title="1. Choosing a pool class" href="intro.html" />
|
||||
<link rel="prev" title="19. Weak references" href="../topic/weak.html" />
|
||||
</head>
|
||||
|
|
@ -43,7 +43,7 @@
|
|||
<li class="right" >
|
||||
<a href="../topic/weak.html" title="19. Weak references"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
|
@ -138,7 +138,7 @@
|
|||
title="next chapter">1. Choosing a pool class</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -146,7 +146,7 @@
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -166,7 +166,7 @@
|
|||
<li class="right" >
|
||||
<a href="../topic/weak.html" title="19. Weak references"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="footer">
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>1. Choosing a pool class — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>1. Choosing a pool class — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Pool reference" href="index.html" />
|
||||
<link rel="next" title="4. AMC (Automatic Mostly-Copying)" href="amc.html" />
|
||||
<link rel="prev" title="Pool reference" href="index.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="index.html" title="Pool reference"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Pool reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -645,7 +645,7 @@ yourself, <a class="reference internal" href="../contact.html#contact"><em>we
|
|||
title="next chapter">4. AMC (Automatic Mostly-Copying)</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -653,7 +653,7 @@ yourself, <a class="reference internal" href="../contact.html#contact"><em>we
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -673,7 +673,7 @@ yourself, <a class="reference internal" href="../contact.html#contact"><em>we
|
|||
<li class="right" >
|
||||
<a href="index.html" title="Pool reference"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Pool reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>8. LO (Leaf Object) — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>8. LO (Leaf Object) — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Pool reference" href="index.html" />
|
||||
<link rel="next" title="9. MFS (Manual Fixed Small)" href="mfs.html" />
|
||||
<link rel="prev" title="7. AWL (Automatic Weak Linked)" href="awl.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="awl.html" title="7. AWL (Automatic Weak Linked)"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Pool reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -121,9 +121,9 @@ does not need a <a class="reference internal" href="../glossary/p.html#term-padd
|
|||
<a class="reference internal" href="../glossary/p.html#term-pool"><em class="xref std std-term">pool</em></a>.</p>
|
||||
<p>When creating an LO pool, <a class="reference internal" href="../topic/pool.html#mps_pool_create" title="mps_pool_create"><tt class="xref c c-func docutils literal"><span class="pre">mps_pool_create()</span></tt></a> takes one
|
||||
extra argument:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">mps_res_t</span> <span class="n">mps_pool_create</span><span class="p">(</span><span class="n">mps_pool_t</span> <span class="o">*</span><span class="n">pool_o</span><span class="p">,</span> <span class="n">mps_arena_t</span> <span class="n">arena</span><span class="p">,</span>
|
||||
<span class="n">mps_class_t</span> <span class="n">mps_class_lo</span><span class="p">(),</span>
|
||||
<span class="n">mps_fmt_t</span> <span class="n">fmt</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="kt">mps_res_t</span> <span class="n">mps_pool_create</span><span class="p">(</span><span class="kt">mps_pool_t</span> <span class="o">*</span><span class="n">pool_o</span><span class="p">,</span> <span class="kt">mps_arena_t</span> <span class="n">arena</span><span class="p">,</span>
|
||||
<span class="kt">mps_class_t</span> <span class="n">mps_class_lo</span><span class="p">(),</span>
|
||||
<span class="kt">mps_fmt_t</span> <span class="n">fmt</span><span class="p">)</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p><tt class="docutils literal"><span class="pre">fmt</span></tt> specifies the <a class="reference internal" href="../glossary/o.html#term-object-format"><em class="xref std std-term">object format</em></a> for the objects
|
||||
|
|
@ -160,7 +160,7 @@ method</em></a>.</p>
|
|||
title="next chapter">9. MFS (Manual Fixed Small)</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -168,7 +168,7 @@ method</em></a>.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -188,7 +188,7 @@ method</em></a>.</p>
|
|||
<li class="right" >
|
||||
<a href="awl.html" title="7. AWL (Automatic Weak Linked)"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Pool reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>9. MFS (Manual Fixed Small) — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>9. MFS (Manual Fixed Small) — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Pool reference" href="index.html" />
|
||||
<link rel="next" title="10. MV (Manual Variable)" href="mv.html" />
|
||||
<link rel="prev" title="8. LO (Leaf Object)" href="lo.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="lo.html" title="8. LO (Leaf Object)"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Pool reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -102,10 +102,10 @@ managed pools (unless these are registered as <a class="reference internal" href
|
|||
<a class="reference internal" href="../glossary/p.html#term-pool"><em class="xref std std-term">pool</em></a>.</p>
|
||||
<p>When creating an MFS pool, <a class="reference internal" href="../topic/pool.html#mps_pool_create" title="mps_pool_create"><tt class="xref c c-func docutils literal"><span class="pre">mps_pool_create()</span></tt></a> takes two
|
||||
extra arguments:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">mps_res_t</span> <span class="n">mps_pool_create</span><span class="p">(</span><span class="n">mps_pool_t</span> <span class="o">*</span><span class="n">pool_o</span><span class="p">,</span> <span class="n">mps_arena_t</span> <span class="n">arena</span><span class="p">,</span>
|
||||
<span class="n">mps_class_t</span> <span class="n">mps_class_mfs</span><span class="p">(),</span>
|
||||
<span class="n">mps_size_t</span> <span class="n">extend_size</span><span class="p">,</span>
|
||||
<span class="n">mps_size_t</span> <span class="n">unit_size</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="kt">mps_res_t</span> <span class="n">mps_pool_create</span><span class="p">(</span><span class="kt">mps_pool_t</span> <span class="o">*</span><span class="n">pool_o</span><span class="p">,</span> <span class="kt">mps_arena_t</span> <span class="n">arena</span><span class="p">,</span>
|
||||
<span class="kt">mps_class_t</span> <span class="n">mps_class_mfs</span><span class="p">(),</span>
|
||||
<span class="kt">mps_size_t</span> <span class="n">extend_size</span><span class="p">,</span>
|
||||
<span class="kt">mps_size_t</span> <span class="n">unit_size</span><span class="p">)</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p><tt class="docutils literal"><span class="pre">extend_size</span></tt> is the <a class="reference internal" href="../glossary/s.html#term-size"><em class="xref std std-term">size</em></a> of segment that the pool will
|
||||
|
|
@ -146,7 +146,7 @@ from this pool, in <a class="reference internal" href="../glossary/b.html#term-b
|
|||
title="next chapter">10. MV (Manual Variable)</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -154,7 +154,7 @@ from this pool, in <a class="reference internal" href="../glossary/b.html#term-b
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -174,7 +174,7 @@ from this pool, in <a class="reference internal" href="../glossary/b.html#term-b
|
|||
<li class="right" >
|
||||
<a href="lo.html" title="8. LO (Leaf Object)"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Pool reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>10. MV (Manual Variable) — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>10. MV (Manual Variable) — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Pool reference" href="index.html" />
|
||||
<link rel="next" title="11. MVFF (Manual Variable First Fit)" href="mvff.html" />
|
||||
<link rel="prev" title="9. MFS (Manual Fixed Small)" href="mfs.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="mfs.html" title="9. MFS (Manual Fixed Small)"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Pool reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -99,11 +99,11 @@ managed pools (unless these are registered as <a class="reference internal" href
|
|||
<a class="reference internal" href="../glossary/p.html#term-pool"><em class="xref std std-term">pool</em></a>.</p>
|
||||
<p>When creating an MV pool, <a class="reference internal" href="../topic/pool.html#mps_pool_create" title="mps_pool_create"><tt class="xref c c-func docutils literal"><span class="pre">mps_pool_create()</span></tt></a> takes three
|
||||
extra arguments:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">mps_res_t</span> <span class="n">mps_pool_create</span><span class="p">(</span><span class="n">mps_pool_t</span> <span class="o">*</span><span class="n">pool_o</span><span class="p">,</span> <span class="n">mps_arena_t</span> <span class="n">arena</span><span class="p">,</span>
|
||||
<span class="n">mps_class_t</span> <span class="n">mps_class_mv</span><span class="p">(),</span>
|
||||
<span class="n">mps_size_t</span> <span class="n">extend_size</span><span class="p">,</span>
|
||||
<span class="n">mps_size_t</span> <span class="n">average_size</span><span class="p">,</span>
|
||||
<span class="n">mps_size_t</span> <span class="n">maximum_size</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="kt">mps_res_t</span> <span class="n">mps_pool_create</span><span class="p">(</span><span class="kt">mps_pool_t</span> <span class="o">*</span><span class="n">pool_o</span><span class="p">,</span> <span class="kt">mps_arena_t</span> <span class="n">arena</span><span class="p">,</span>
|
||||
<span class="kt">mps_class_t</span> <span class="n">mps_class_mv</span><span class="p">(),</span>
|
||||
<span class="kt">mps_size_t</span> <span class="n">extend_size</span><span class="p">,</span>
|
||||
<span class="kt">mps_size_t</span> <span class="n">average_size</span><span class="p">,</span>
|
||||
<span class="kt">mps_size_t</span> <span class="n">maximum_size</span><span class="p">)</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p><tt class="docutils literal"><span class="pre">extend_size</span></tt> is the <a class="reference internal" href="../glossary/s.html#term-size"><em class="xref std std-term">size</em></a> of segment that the pool will
|
||||
|
|
@ -121,12 +121,12 @@ these are wrong.</p>
|
|||
class.</p>
|
||||
<p>When creating a debugging MV pool, <a class="reference internal" href="../topic/pool.html#mps_pool_create" title="mps_pool_create"><tt class="xref c c-func docutils literal"><span class="pre">mps_pool_create()</span></tt></a>
|
||||
takes four extra arguments:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">mps_res_t</span> <span class="n">mps_pool_create</span><span class="p">(</span><span class="n">mps_pool_t</span> <span class="o">*</span><span class="n">pool_o</span><span class="p">,</span> <span class="n">mps_arena_t</span> <span class="n">arena</span><span class="p">,</span>
|
||||
<span class="n">mps_class_t</span> <span class="n">mps_class_mv_debug</span><span class="p">(),</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="kt">mps_res_t</span> <span class="n">mps_pool_create</span><span class="p">(</span><span class="kt">mps_pool_t</span> <span class="o">*</span><span class="n">pool_o</span><span class="p">,</span> <span class="kt">mps_arena_t</span> <span class="n">arena</span><span class="p">,</span>
|
||||
<span class="kt">mps_class_t</span> <span class="n">mps_class_mv_debug</span><span class="p">(),</span>
|
||||
<span class="n">mps_debug_option_s</span> <span class="n">debug_option</span><span class="p">,</span>
|
||||
<span class="n">mps_size_t</span> <span class="n">extend_size</span><span class="p">,</span>
|
||||
<span class="n">mps_size_t</span> <span class="n">average_size</span><span class="p">,</span>
|
||||
<span class="n">mps_size_t</span> <span class="n">maximum_size</span><span class="p">)</span>
|
||||
<span class="kt">mps_size_t</span> <span class="n">extend_size</span><span class="p">,</span>
|
||||
<span class="kt">mps_size_t</span> <span class="n">average_size</span><span class="p">,</span>
|
||||
<span class="kt">mps_size_t</span> <span class="n">maximum_size</span><span class="p">)</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p><tt class="docutils literal"><span class="pre">debug_option</span></tt> specifies the debugging options. See
|
||||
|
|
@ -188,7 +188,7 @@ is the sum of allocated space and free space.</p>
|
|||
title="next chapter">11. MVFF (Manual Variable First Fit)</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -196,7 +196,7 @@ is the sum of allocated space and free space.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -216,7 +216,7 @@ is the sum of allocated space and free space.</p>
|
|||
<li class="right" >
|
||||
<a href="mfs.html" title="9. MFS (Manual Fixed Small)"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Pool reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>11. MVFF (Manual Variable First Fit) — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>11. MVFF (Manual Variable First Fit) — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Pool reference" href="index.html" />
|
||||
<link rel="next" title="12. MVT (Manual Variable Temporal)" href="mvt.html" />
|
||||
<link rel="prev" title="10. MV (Manual Variable)" href="mv.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="mv.html" title="10. MV (Manual Variable)"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Pool reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -128,14 +128,14 @@ smaller than the <a class="reference internal" href="../glossary/n.html#term-nat
|
|||
Fit) <a class="reference internal" href="../glossary/p.html#term-pool"><em class="xref std std-term">pool</em></a>.</p>
|
||||
<p>When creating an MVFF pool, <a class="reference internal" href="../topic/pool.html#mps_pool_create" title="mps_pool_create"><tt class="xref c c-func docutils literal"><span class="pre">mps_pool_create()</span></tt></a> takes six
|
||||
extra arguments:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">mps_res_t</span> <span class="n">mps_pool_create</span><span class="p">(</span><span class="n">mps_pool_t</span> <span class="o">*</span><span class="n">pool_o</span><span class="p">,</span> <span class="n">mps_arena_t</span> <span class="n">arena</span><span class="p">,</span>
|
||||
<span class="n">mps_class_t</span> <span class="n">mps_class_mvff</span><span class="p">(),</span>
|
||||
<span class="n">mps_size_t</span> <span class="n">extend_size</span><span class="p">,</span>
|
||||
<span class="n">mps_size_t</span> <span class="n">average_size</span><span class="p">,</span>
|
||||
<span class="n">mps_align_t</span> <span class="n">alignment</span><span class="p">,</span>
|
||||
<span class="n">mps_bool_t</span> <span class="n">slot_high</span><span class="p">,</span>
|
||||
<span class="n">mps_bool_t</span> <span class="n">arena_high</span><span class="p">,</span>
|
||||
<span class="n">mps_bool_t</span> <span class="n">first_fit</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="kt">mps_res_t</span> <span class="n">mps_pool_create</span><span class="p">(</span><span class="kt">mps_pool_t</span> <span class="o">*</span><span class="n">pool_o</span><span class="p">,</span> <span class="kt">mps_arena_t</span> <span class="n">arena</span><span class="p">,</span>
|
||||
<span class="kt">mps_class_t</span> <span class="n">mps_class_mvff</span><span class="p">(),</span>
|
||||
<span class="kt">mps_size_t</span> <span class="n">extend_size</span><span class="p">,</span>
|
||||
<span class="kt">mps_size_t</span> <span class="n">average_size</span><span class="p">,</span>
|
||||
<span class="kt">mps_align_t</span> <span class="n">alignment</span><span class="p">,</span>
|
||||
<span class="kt">mps_bool_t</span> <span class="n">slot_high</span><span class="p">,</span>
|
||||
<span class="kt">mps_bool_t</span> <span class="n">arena_high</span><span class="p">,</span>
|
||||
<span class="kt">mps_bool_t</span> <span class="n">first_fit</span><span class="p">)</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p><tt class="docutils literal"><span class="pre">extend_size</span></tt> is the <a class="reference internal" href="../glossary/s.html#term-size"><em class="xref std std-term">size</em></a> of segment that the pool will
|
||||
|
|
@ -161,15 +161,15 @@ are acquired at high addresses; if false, at low addresses.</p>
|
|||
class.</p>
|
||||
<p>When creating a debugging MVFF pool, <a class="reference internal" href="../topic/pool.html#mps_pool_create" title="mps_pool_create"><tt class="xref c c-func docutils literal"><span class="pre">mps_pool_create()</span></tt></a>
|
||||
takes seven extra arguments:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">mps_res_t</span> <span class="n">mps_pool_create</span><span class="p">(</span><span class="n">mps_pool_t</span> <span class="o">*</span><span class="n">pool_o</span><span class="p">,</span> <span class="n">mps_arena_t</span> <span class="n">arena</span><span class="p">,</span>
|
||||
<span class="n">mps_class_t</span> <span class="n">mps_class_mvff_debug</span><span class="p">(),</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="kt">mps_res_t</span> <span class="n">mps_pool_create</span><span class="p">(</span><span class="kt">mps_pool_t</span> <span class="o">*</span><span class="n">pool_o</span><span class="p">,</span> <span class="kt">mps_arena_t</span> <span class="n">arena</span><span class="p">,</span>
|
||||
<span class="kt">mps_class_t</span> <span class="n">mps_class_mvff_debug</span><span class="p">(),</span>
|
||||
<span class="n">mps_debug_option_s</span> <span class="n">debug_option</span><span class="p">,</span>
|
||||
<span class="n">mps_size_t</span> <span class="n">extend_size</span><span class="p">,</span>
|
||||
<span class="n">mps_size_t</span> <span class="n">average_size</span><span class="p">,</span>
|
||||
<span class="n">mps_align_t</span> <span class="n">alignment</span><span class="p">,</span>
|
||||
<span class="n">mps_bool_t</span> <span class="n">slot_high</span><span class="p">,</span>
|
||||
<span class="n">mps_bool_t</span> <span class="n">arena_high</span><span class="p">,</span>
|
||||
<span class="n">mps_bool_t</span> <span class="n">first_fit</span><span class="p">)</span>
|
||||
<span class="kt">mps_size_t</span> <span class="n">extend_size</span><span class="p">,</span>
|
||||
<span class="kt">mps_size_t</span> <span class="n">average_size</span><span class="p">,</span>
|
||||
<span class="kt">mps_align_t</span> <span class="n">alignment</span><span class="p">,</span>
|
||||
<span class="kt">mps_bool_t</span> <span class="n">slot_high</span><span class="p">,</span>
|
||||
<span class="kt">mps_bool_t</span> <span class="n">arena_high</span><span class="p">,</span>
|
||||
<span class="kt">mps_bool_t</span> <span class="n">first_fit</span><span class="p">)</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p><tt class="docutils literal"><span class="pre">debug_option</span></tt> specifies the debugging options. See
|
||||
|
|
@ -230,7 +230,7 @@ is the sum of allocated space and free space.</p>
|
|||
title="next chapter">12. MVT (Manual Variable Temporal)</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -238,7 +238,7 @@ is the sum of allocated space and free space.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -258,7 +258,7 @@ is the sum of allocated space and free space.</p>
|
|||
<li class="right" >
|
||||
<a href="mv.html" title="10. MV (Manual Variable)"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Pool reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>12. MVT (Manual Variable Temporal) — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>12. MVT (Manual Variable Temporal) — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Pool reference" href="index.html" />
|
||||
<link rel="next" title="13. SNC (Stack No Checking)" href="snc.html" />
|
||||
<link rel="prev" title="11. MVFF (Manual Variable First Fit)" href="mvff.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="mvff.html" title="11. MVFF (Manual Variable First Fit)"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Pool reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -124,13 +124,13 @@ managed pools (unless these are registered as <a class="reference internal" href
|
|||
Temporal) <a class="reference internal" href="../glossary/p.html#term-pool"><em class="xref std std-term">pool</em></a>.</p>
|
||||
<p>When creating an MVT pool, <a class="reference internal" href="../topic/pool.html#mps_pool_create" title="mps_pool_create"><tt class="xref c c-func docutils literal"><span class="pre">mps_pool_create()</span></tt></a> takes five
|
||||
extra arguments:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">mps_res_t</span> <span class="n">mps_pool_create</span><span class="p">(</span><span class="n">mps_pool_t</span> <span class="o">*</span><span class="n">pool_o</span><span class="p">,</span> <span class="n">mps_arena_t</span> <span class="n">arena</span><span class="p">,</span>
|
||||
<span class="n">mps_class_t</span> <span class="n">mps_class_mvt</span><span class="p">(),</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="kt">mps_res_t</span> <span class="n">mps_pool_create</span><span class="p">(</span><span class="kt">mps_pool_t</span> <span class="o">*</span><span class="n">pool_o</span><span class="p">,</span> <span class="kt">mps_arena_t</span> <span class="n">arena</span><span class="p">,</span>
|
||||
<span class="kt">mps_class_t</span> <span class="n">mps_class_mvt</span><span class="p">(),</span>
|
||||
<span class="kt">size_t</span> <span class="n">minimum_size</span><span class="p">,</span>
|
||||
<span class="kt">size_t</span> <span class="n">mean_size</span><span class="p">,</span>
|
||||
<span class="kt">size_t</span> <span class="n">maximum_size</span><span class="p">,</span>
|
||||
<span class="n">mps_count_t</span> <span class="n">reserve_depth</span><span class="p">,</span>
|
||||
<span class="n">mps_count_t</span> <span class="n">fragmentation_limit</span><span class="p">)</span>
|
||||
<span class="kt">mps_count_t</span> <span class="n">reserve_depth</span><span class="p">,</span>
|
||||
<span class="kt">mps_count_t</span> <span class="n">fragmentation_limit</span><span class="p">)</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p><tt class="docutils literal"><span class="pre">minimum_size</span></tt>, <tt class="docutils literal"><span class="pre">mean_size</span></tt>, and <tt class="docutils literal"><span class="pre">maximum_size</span></tt> are the
|
||||
|
|
@ -236,7 +236,7 @@ is the sum of allocated space and free space.</p>
|
|||
title="next chapter">13. SNC (Stack No Checking)</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -244,7 +244,7 @@ is the sum of allocated space and free space.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -264,7 +264,7 @@ is the sum of allocated space and free space.</p>
|
|||
<li class="right" >
|
||||
<a href="mvff.html" title="11. MVFF (Manual Variable First Fit)"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Pool reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>13. SNC (Stack No Checking) — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>13. SNC (Stack No Checking) — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Pool reference" href="index.html" />
|
||||
<link rel="next" title="Internals" href="../topic/internals.html" />
|
||||
<link rel="prev" title="12. MVT (Manual Variable Temporal)" href="mvt.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="mvt.html" title="12. MVT (Manual Variable Temporal)"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Pool reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -114,9 +114,9 @@ a format of variant auto-header.</li>
|
|||
<a class="reference internal" href="../glossary/p.html#term-pool"><em class="xref std std-term">pool</em></a>.</p>
|
||||
<p>When creating an SNC pool, <a class="reference internal" href="../topic/pool.html#mps_pool_create" title="mps_pool_create"><tt class="xref c c-func docutils literal"><span class="pre">mps_pool_create()</span></tt></a> takes one
|
||||
extra argument:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">mps_res_t</span> <span class="n">mps_pool_create</span><span class="p">(</span><span class="n">mps_pool_t</span> <span class="o">*</span><span class="n">pool_o</span><span class="p">,</span> <span class="n">mps_arena_t</span> <span class="n">arena</span><span class="p">,</span>
|
||||
<span class="n">mps_class_t</span> <span class="n">mps_class_snc</span><span class="p">(),</span>
|
||||
<span class="n">mps_fmt_t</span> <span class="n">fmt</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="kt">mps_res_t</span> <span class="n">mps_pool_create</span><span class="p">(</span><span class="kt">mps_pool_t</span> <span class="o">*</span><span class="n">pool_o</span><span class="p">,</span> <span class="kt">mps_arena_t</span> <span class="n">arena</span><span class="p">,</span>
|
||||
<span class="kt">mps_class_t</span> <span class="n">mps_class_snc</span><span class="p">(),</span>
|
||||
<span class="kt">mps_fmt_t</span> <span class="n">fmt</span><span class="p">)</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p><tt class="docutils literal"><span class="pre">fmt</span></tt> specifies the <a class="reference internal" href="../glossary/o.html#term-object-format"><em class="xref std std-term">object format</em></a> for the objects
|
||||
|
|
@ -124,8 +124,8 @@ allocated in the pool. The format must provide a <a class="reference internal" h
|
|||
method</em></a>, a <a class="reference internal" href="../glossary/s.html#term-skip-method"><em class="xref std std-term">skip method</em></a>, and a <a class="reference internal" href="../glossary/p.html#term-padding-method"><em class="xref std std-term">padding method</em></a>.</p>
|
||||
<p>When creating an allocation point on an SNC pool,
|
||||
<a class="reference internal" href="../topic/allocation.html#mps_ap_create" title="mps_ap_create"><tt class="xref c c-func docutils literal"><span class="pre">mps_ap_create()</span></tt></a> takes one extra argument:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">mps_res_t</span> <span class="n">mps_ap_create</span><span class="p">(</span><span class="n">mps_ap_t</span> <span class="o">*</span><span class="n">ap_o</span><span class="p">,</span> <span class="n">mps_pool_t</span> <span class="n">pool</span><span class="p">,</span>
|
||||
<span class="n">mps_rank_t</span> <span class="n">rank</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="kt">mps_res_t</span> <span class="n">mps_ap_create</span><span class="p">(</span><span class="kt">mps_ap_t</span> <span class="o">*</span><span class="n">ap_o</span><span class="p">,</span> <span class="kt">mps_pool_t</span> <span class="n">pool</span><span class="p">,</span>
|
||||
<span class="kt">mps_rank_t</span> <span class="n">rank</span><span class="p">)</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p><tt class="docutils literal"><span class="pre">rank</span></tt> specifies the <a class="reference internal" href="../glossary/r.html#term-rank"><em class="xref std std-term">rank</em></a> of references in objects
|
||||
|
|
@ -162,7 +162,7 @@ allocated on this allocation point. It must be
|
|||
title="next chapter">Internals</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -170,7 +170,7 @@ allocated on this allocation point. It must be
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -190,7 +190,7 @@ allocated on this allocation point. It must be
|
|||
<li class="right" >
|
||||
<a href="mvt.html" title="12. MVT (Manual Variable Temporal)"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Pool reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Search — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Search — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -27,7 +27,7 @@
|
|||
<script type="text/javascript" src="_static/doctools.js"></script>
|
||||
<script type="text/javascript" src="_static/searchtools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="index.html" />
|
||||
<script type="text/javascript">
|
||||
jQuery(function() { Search.loadIndex("searchindex.js"); });
|
||||
</script>
|
||||
|
|
@ -41,7 +41,7 @@
|
|||
<li class="right" style="margin-right: 10px">
|
||||
<a href="genindex.html" title="General Index"
|
||||
accesskey="I">index</a></li>
|
||||
<li><a href="index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
|
@ -84,7 +84,7 @@
|
|||
</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -92,7 +92,7 @@
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -106,7 +106,7 @@
|
|||
<li class="right" style="margin-right: 10px">
|
||||
<a href="genindex.html" title="General Index"
|
||||
>index</a></li>
|
||||
<li><a href="index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="footer">
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>5. Allocation — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>5. Allocation — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Reference" href="index.html" />
|
||||
<link rel="next" title="6. Object formats" href="format.html" />
|
||||
<link rel="prev" title="4. Pools" href="pool.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="pool.html" title="4. Pools"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -231,10 +231,10 @@ may point to the old location of blocks that moved.</p>
|
|||
</ol>
|
||||
<p>The usual implementation of the allocation point protocol in <a class="reference internal" href="../mmref/lang.html#term-c"><em class="xref std std-term">C</em></a>
|
||||
is thus:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">mps_addr_t</span> <span class="n">p</span><span class="p">;</span>
|
||||
<span class="n">obj_t</span> <span class="n">obj</span><span class="p">;</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="kt">mps_addr_t</span> <span class="n">p</span><span class="p">;</span>
|
||||
<span class="kt">obj_t</span> <span class="n">obj</span><span class="p">;</span>
|
||||
<span class="k">do</span> <span class="p">{</span>
|
||||
<span class="n">mps_res_t</span> <span class="n">res</span> <span class="o">=</span> <span class="n">mps_reserve</span><span class="p">(</span><span class="o">&</span><span class="n">p</span><span class="p">,</span> <span class="n">ap</span><span class="p">,</span> <span class="n">size</span><span class="p">);</span>
|
||||
<span class="kt">mps_res_t</span> <span class="n">res</span> <span class="o">=</span> <span class="n">mps_reserve</span><span class="p">(</span><span class="o">&</span><span class="n">p</span><span class="p">,</span> <span class="n">ap</span><span class="p">,</span> <span class="n">size</span><span class="p">);</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">res</span> <span class="o">!=</span> <span class="n">MPS_RES_OK</span><span class="p">)</span> <span class="cm">/* handle the error */</span><span class="p">;</span>
|
||||
<span class="cm">/* p is now an ambiguous reference to the reserved block */</span>
|
||||
<span class="n">obj</span> <span class="o">=</span> <span class="n">p</span><span class="p">;</span>
|
||||
|
|
@ -338,18 +338,18 @@ may evaluate its arguments multiple times.</p>
|
|||
<div class="section" id="example-allocating-a-symbol">
|
||||
<span id="index-4"></span><h2>5.4. Example: allocating a symbol<a class="headerlink" href="#example-allocating-a-symbol" title="Permalink to this headline">¶</a></h2>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">typedef</span> <span class="k">struct</span> <span class="n">symbol_s</span> <span class="p">{</span>
|
||||
<span class="n">type_t</span> <span class="n">type</span><span class="p">;</span> <span class="cm">/* TYPE_SYMBOL */</span>
|
||||
<span class="kt">type_t</span> <span class="n">type</span><span class="p">;</span> <span class="cm">/* TYPE_SYMBOL */</span>
|
||||
<span class="kt">size_t</span> <span class="n">length</span><span class="p">;</span> <span class="cm">/* length of symbol string (excl. NUL) */</span>
|
||||
<span class="kt">char</span> <span class="n">string</span><span class="p">[</span><span class="mi">1</span><span class="p">];</span> <span class="cm">/* symbol string, NUL terminated */</span>
|
||||
<span class="p">}</span> <span class="n">symbol_s</span><span class="p">,</span> <span class="o">*</span><span class="n">symbol_t</span><span class="p">;</span>
|
||||
<span class="p">}</span> <span class="n">symbol_s</span><span class="p">,</span> <span class="o">*</span><span class="kt">symbol_t</span><span class="p">;</span>
|
||||
|
||||
<span class="n">symbol_t</span> <span class="nf">make_symbol</span><span class="p">(</span><span class="kt">size_t</span> <span class="n">length</span><span class="p">,</span> <span class="kt">char</span> <span class="n">string</span><span class="p">[])</span>
|
||||
<span class="kt">symbol_t</span> <span class="nf">make_symbol</span><span class="p">(</span><span class="kt">size_t</span> <span class="n">length</span><span class="p">,</span> <span class="kt">char</span> <span class="n">string</span><span class="p">[])</span>
|
||||
<span class="p">{</span>
|
||||
<span class="n">symbol_t</span> <span class="n">symbol</span><span class="p">;</span>
|
||||
<span class="n">mps_addr_t</span> <span class="n">addr</span><span class="p">;</span>
|
||||
<span class="kt">symbol_t</span> <span class="n">symbol</span><span class="p">;</span>
|
||||
<span class="kt">mps_addr_t</span> <span class="n">addr</span><span class="p">;</span>
|
||||
<span class="kt">size_t</span> <span class="n">size</span> <span class="o">=</span> <span class="n">ALIGN</span><span class="p">(</span><span class="n">offsetof</span><span class="p">(</span><span class="n">symbol_s</span><span class="p">,</span> <span class="n">string</span><span class="p">)</span> <span class="o">+</span> <span class="n">length</span><span class="o">+</span><span class="mi">1</span><span class="p">);</span>
|
||||
<span class="k">do</span> <span class="p">{</span>
|
||||
<span class="n">mps_res_t</span> <span class="n">res</span> <span class="o">=</span> <span class="n">mps_reserve</span><span class="p">(</span><span class="o">&</span><span class="n">addr</span><span class="p">,</span> <span class="n">ap</span><span class="p">,</span> <span class="n">size</span><span class="p">);</span>
|
||||
<span class="kt">mps_res_t</span> <span class="n">res</span> <span class="o">=</span> <span class="n">mps_reserve</span><span class="p">(</span><span class="o">&</span><span class="n">addr</span><span class="p">,</span> <span class="n">ap</span><span class="p">,</span> <span class="n">size</span><span class="p">);</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">res</span> <span class="o">!=</span> <span class="n">MPS_RES_OK</span><span class="p">)</span> <span class="n">error</span><span class="p">(</span><span class="s">"out of memory in make_symbol"</span><span class="p">);</span>
|
||||
<span class="n">symbol</span> <span class="o">=</span> <span class="n">addr</span><span class="p">;</span>
|
||||
<span class="n">symbol</span><span class="o">-></span><span class="n">type</span> <span class="o">=</span> <span class="n">TYPE_SYMBOL</span><span class="p">;</span>
|
||||
|
|
@ -414,21 +414,21 @@ choosing. See <a class="reference internal" href="debugging.html#topic-debugging
|
|||
<span id="index-6"></span><h2>5.6. Example: inserting into a doubly linked list<a class="headerlink" href="#example-inserting-into-a-doubly-linked-list" title="Permalink to this headline">¶</a></h2>
|
||||
<p>This example contains several mistakes. See the highlighted lines:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">typedef</span> <span class="k">struct</span> <span class="n">link_s</span> <span class="p">{</span>
|
||||
<span class="n">type_t</span> <span class="n">type</span><span class="p">;</span> <span class="cm">/* TYPE_LINK */</span>
|
||||
<span class="kt">type_t</span> <span class="n">type</span><span class="p">;</span> <span class="cm">/* TYPE_LINK */</span>
|
||||
<span class="cm">/* all three of these pointers are fixed: */</span>
|
||||
<span class="k">struct</span> <span class="n">link_s</span> <span class="o">*</span><span class="n">prev</span><span class="p">;</span>
|
||||
<span class="k">struct</span> <span class="n">link_s</span> <span class="o">*</span><span class="n">next</span><span class="p">;</span>
|
||||
<span class="n">obj_t</span> <span class="n">obj</span><span class="p">;</span>
|
||||
<span class="p">}</span> <span class="n">link_s</span><span class="p">,</span> <span class="o">*</span><span class="n">link_t</span><span class="p">;</span>
|
||||
<span class="kt">obj_t</span> <span class="n">obj</span><span class="p">;</span>
|
||||
<span class="p">}</span> <span class="n">link_s</span><span class="p">,</span> <span class="o">*</span><span class="kt">link_t</span><span class="p">;</span>
|
||||
|
||||
<span class="cm">/* insert 'obj' into the doubly-linked list after 'head' */</span>
|
||||
<span class="n">link_t</span> <span class="nf">insert_link</span><span class="p">(</span><span class="n">link_t</span> <span class="n">head</span><span class="p">,</span> <span class="n">obj_t</span> <span class="n">obj</span><span class="p">)</span>
|
||||
<span class="kt">link_t</span> <span class="nf">insert_link</span><span class="p">(</span><span class="kt">link_t</span> <span class="n">head</span><span class="p">,</span> <span class="kt">obj_t</span> <span class="n">obj</span><span class="p">)</span>
|
||||
<span class="p">{</span>
|
||||
<span class="n">mps_addr_t</span> <span class="n">p</span><span class="p">;</span>
|
||||
<span class="n">link_t</span> <span class="n">link</span><span class="p">;</span>
|
||||
<span class="kt">mps_addr_t</span> <span class="n">p</span><span class="p">;</span>
|
||||
<span class="kt">link_t</span> <span class="n">link</span><span class="p">;</span>
|
||||
<span class="kt">size_t</span> <span class="n">size</span> <span class="o">=</span> <span class="n">ALIGN</span><span class="p">(</span><span class="k">sizeof</span><span class="p">(</span><span class="n">link_s</span><span class="p">));</span>
|
||||
<span class="k">do</span> <span class="p">{</span>
|
||||
<span class="n">mps_res_t</span> <span class="n">res</span> <span class="o">=</span> <span class="n">mps_reserve</span><span class="p">(</span><span class="o">&</span><span class="n">p</span><span class="p">,</span> <span class="n">ap</span><span class="p">,</span> <span class="n">size</span><span class="p">);</span>
|
||||
<span class="kt">mps_res_t</span> <span class="n">res</span> <span class="o">=</span> <span class="n">mps_reserve</span><span class="p">(</span><span class="o">&</span><span class="n">p</span><span class="p">,</span> <span class="n">ap</span><span class="p">,</span> <span class="n">size</span><span class="p">);</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">res</span> <span class="o">!=</span> <span class="n">MPS_RES_OK</span><span class="p">)</span> <span class="n">error</span><span class="p">(</span><span class="s">"out of memory"</span><span class="p">);</span>
|
||||
<span class="n">link</span> <span class="o">=</span> <span class="n">p</span><span class="p">;</span>
|
||||
<span class="n">link</span><span class="o">-></span><span class="n">type</span> <span class="o">=</span> <span class="n">TYPE_LINK</span><span class="p">;</span>
|
||||
|
|
@ -454,13 +454,13 @@ be deferred until after a successful commit.</li>
|
|||
scan method, so it must be initialized before the call to commit.</li>
|
||||
</ol>
|
||||
<p>A correct version of <tt class="docutils literal"><span class="pre">insert_link</span></tt> looks like this:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">link_t</span> <span class="nf">insert_link</span><span class="p">(</span><span class="n">link_t</span> <span class="n">head</span><span class="p">,</span> <span class="n">obj_t</span> <span class="n">obj</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="kt">link_t</span> <span class="nf">insert_link</span><span class="p">(</span><span class="kt">link_t</span> <span class="n">head</span><span class="p">,</span> <span class="kt">obj_t</span> <span class="n">obj</span><span class="p">)</span>
|
||||
<span class="p">{</span>
|
||||
<span class="n">mps_addr_t</span> <span class="n">p</span><span class="p">;</span>
|
||||
<span class="n">link_t</span> <span class="n">link</span><span class="p">;</span>
|
||||
<span class="kt">mps_addr_t</span> <span class="n">p</span><span class="p">;</span>
|
||||
<span class="kt">link_t</span> <span class="n">link</span><span class="p">;</span>
|
||||
<span class="kt">size_t</span> <span class="n">size</span> <span class="o">=</span> <span class="n">ALIGN</span><span class="p">(</span><span class="k">sizeof</span><span class="p">(</span><span class="n">link_s</span><span class="p">));</span>
|
||||
<span class="k">do</span> <span class="p">{</span>
|
||||
<span class="n">mps_res_t</span> <span class="n">res</span> <span class="o">=</span> <span class="n">mps_reserve</span><span class="p">(</span><span class="o">&</span><span class="n">p</span><span class="p">,</span> <span class="n">ap</span><span class="p">,</span> <span class="n">size</span><span class="p">);</span>
|
||||
<span class="kt">mps_res_t</span> <span class="n">res</span> <span class="o">=</span> <span class="n">mps_reserve</span><span class="p">(</span><span class="o">&</span><span class="n">p</span><span class="p">,</span> <span class="n">ap</span><span class="p">,</span> <span class="n">size</span><span class="p">);</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">res</span> <span class="o">!=</span> <span class="n">MPS_RES_OK</span><span class="p">)</span> <span class="n">error</span><span class="p">(</span><span class="s">"out of memory"</span><span class="p">);</span>
|
||||
<span class="n">link</span> <span class="o">=</span> <span class="n">p</span><span class="p">;</span>
|
||||
<span class="n">link</span><span class="o">-></span><span class="n">type</span> <span class="o">=</span> <span class="n">TYPE_LINK</span><span class="p">;</span>
|
||||
|
|
@ -574,9 +574,9 @@ instruction at this point.</p>
|
|||
<dd><p>The type of the structure used to represent <a class="reference internal" href="../glossary/a.html#term-allocation-point"><em class="xref std std-term">allocation
|
||||
points</em></a>:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">typedef</span> <span class="k">struct</span> <span class="n">mps_ap_s</span> <span class="p">{</span>
|
||||
<span class="n">mps_addr_t</span> <span class="n">init</span><span class="p">;</span>
|
||||
<span class="n">mps_addr_t</span> <span class="n">alloc</span><span class="p">;</span>
|
||||
<span class="n">mps_addr_t</span> <span class="n">limit</span><span class="p">;</span>
|
||||
<span class="kt">mps_addr_t</span> <span class="n">init</span><span class="p">;</span>
|
||||
<span class="kt">mps_addr_t</span> <span class="n">alloc</span><span class="p">;</span>
|
||||
<span class="kt">mps_addr_t</span> <span class="n">limit</span><span class="p">;</span>
|
||||
<span class="cm">/* ... private fields ... */</span>
|
||||
<span class="p">}</span> <span class="n">mps_ap_s</span><span class="p">;</span>
|
||||
</pre></div>
|
||||
|
|
@ -651,7 +651,7 @@ when the allocation point has insufficient space.</p>
|
|||
title="next chapter">6. Object formats</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -659,7 +659,7 @@ when the allocation point has insufficient space.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -679,7 +679,7 @@ when the allocation point has insufficient space.</p>
|
|||
<li class="right" >
|
||||
<a href="pool.html" title="4. Pools"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>3. Arenas — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>3. Arenas — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Reference" href="index.html" />
|
||||
<link rel="next" title="4. Pools" href="pool.html" />
|
||||
<link rel="prev" title="2. Error handing" href="error.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="error.html" title="2. Error handing"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -166,9 +166,9 @@ and <a class="reference internal" href="../glossary/r.html#term-root"><em class=
|
|||
program</em></a>. This memory chunk is passed when the arena is created.</p>
|
||||
<p>When creating a client arena, <a class="reference internal" href="#mps_arena_create" title="mps_arena_create"><tt class="xref c c-func docutils literal"><span class="pre">mps_arena_create()</span></tt></a> takes two
|
||||
extra arguments:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">mps_res_t</span> <span class="n">mps_arena_create</span><span class="p">(</span><span class="n">mps_arena_t</span> <span class="o">*</span><span class="n">arena_o</span><span class="p">,</span>
|
||||
<span class="n">mps_arena_class_t</span> <span class="n">mps_arena_class_cl</span><span class="p">,</span>
|
||||
<span class="kt">size_t</span> <span class="n">size</span><span class="p">,</span> <span class="n">mps_addr_t</span> <span class="n">base</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="kt">mps_res_t</span> <span class="n">mps_arena_create</span><span class="p">(</span><span class="kt">mps_arena_t</span> <span class="o">*</span><span class="n">arena_o</span><span class="p">,</span>
|
||||
<span class="kt">mps_arena_class_t</span> <span class="n">mps_arena_class_cl</span><span class="p">,</span>
|
||||
<span class="kt">size_t</span> <span class="n">size</span><span class="p">,</span> <span class="kt">mps_addr_t</span> <span class="n">base</span><span class="p">)</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p><tt class="docutils literal"><span class="pre">base</span></tt> is the <a class="reference internal" href="../glossary/a.html#term-address"><em class="xref std std-term">address</em></a> of the chunk of memory that will
|
||||
|
|
@ -215,8 +215,8 @@ where to place <a class="reference internal" href="../glossary/b.html#term-block
|
|||
more efficient.</p>
|
||||
<p>When creating a virtual memory arena, <a class="reference internal" href="#mps_arena_create" title="mps_arena_create"><tt class="xref c c-func docutils literal"><span class="pre">mps_arena_create()</span></tt></a>
|
||||
takes one extra argument:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">mps_res_t</span> <span class="n">mps_arena_create</span><span class="p">(</span><span class="n">mps_arena_t</span> <span class="o">*</span><span class="n">arena_o</span><span class="p">,</span>
|
||||
<span class="n">mps_arena_class_t</span> <span class="n">arena_class_vm</span><span class="p">(),</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="kt">mps_res_t</span> <span class="n">mps_arena_create</span><span class="p">(</span><span class="kt">mps_arena_t</span> <span class="o">*</span><span class="n">arena_o</span><span class="p">,</span>
|
||||
<span class="kt">mps_arena_class_t</span> <span class="n">arena_class_vm</span><span class="p">(),</span>
|
||||
<span class="kt">size_t</span> <span class="n">size</span><span class="p">)</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
|
|
@ -797,7 +797,7 @@ cannot be restored more than once.</p>
|
|||
title="next chapter">4. Pools</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -805,7 +805,7 @@ cannot be restored more than once.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -825,7 +825,7 @@ cannot be restored more than once.</p>
|
|||
<li class="right" >
|
||||
<a href="error.html" title="2. Error handing"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>14. Segregated allocation caches — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>14. Segregated allocation caches — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Reference" href="index.html" />
|
||||
<link rel="next" title="15. Allocation patterns" href="pattern.html" />
|
||||
<link rel="prev" title="13. Location dependency" href="location.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="location.html" title="13. Location dependency"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -70,7 +70,7 @@ small number of relatively long-lived 128-byte objects, and a large
|
|||
number of relatively short-lived 8-byte objects, we might create a
|
||||
cache as follows:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">mps_sac_class_s</span> <span class="n">classes</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> <span class="o">=</span> <span class="p">{{</span><span class="mi">8</span><span class="p">,</span> <span class="mi">100</span><span class="p">,</span> <span class="mi">10</span><span class="p">},</span> <span class="p">{</span><span class="mi">128</span><span class="p">,</span> <span class="mi">8</span><span class="p">,</span> <span class="mi">1</span><span class="p">}};</span>
|
||||
<span class="n">mps_sac_t</span> <span class="n">sac</span><span class="p">;</span>
|
||||
<span class="kt">mps_sac_t</span> <span class="n">sac</span><span class="p">;</span>
|
||||
|
||||
<span class="n">res</span> <span class="o">=</span> <span class="n">mps_sac_create</span><span class="p">(</span><span class="o">&</span><span class="n">sac</span><span class="p">,</span> <span class="n">pool</span><span class="p">,</span> <span class="k">sizeof</span> <span class="n">classes</span> <span class="o">/</span> <span class="k">sizeof</span> <span class="n">classes</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span> <span class="n">classes</span><span class="p">);</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">res</span> <span class="o">!=</span> <span class="n">MPS_RES_OK</span><span class="p">)</span>
|
||||
|
|
@ -83,8 +83,8 @@ otherwise from the pool. Similarly, deallocations through the cache
|
|||
(using <a class="reference internal" href="#mps_sac_free" title="mps_sac_free"><tt class="xref c c-func docutils literal"><span class="pre">mps_sac_free()</span></tt></a> or <a class="reference internal" href="#MPS_SAC_FREE_FAST" title="MPS_SAC_FREE_FAST"><tt class="xref c c-func docutils literal"><span class="pre">MPS_SAC_FREE_FAST()</span></tt></a>) return
|
||||
the block to the appopriate free list for its size. For example:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">Foo</span> <span class="o">*</span><span class="n">foo</span><span class="p">;</span>
|
||||
<span class="n">mps_addr_t</span> <span class="n">p</span><span class="p">;</span>
|
||||
<span class="n">mps_res_t</span> <span class="n">res</span><span class="p">;</span>
|
||||
<span class="kt">mps_addr_t</span> <span class="n">p</span><span class="p">;</span>
|
||||
<span class="kt">mps_res_t</span> <span class="n">res</span><span class="p">;</span>
|
||||
|
||||
<span class="n">res</span> <span class="o">=</span> <span class="n">mps_sac_alloc</span><span class="p">(</span><span class="o">&</span><span class="n">p</span><span class="p">,</span> <span class="n">sac</span><span class="p">,</span> <span class="k">sizeof</span> <span class="o">*</span><span class="n">foo</span><span class="p">,</span> <span class="nb">false</span><span class="p">);</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">res</span> <span class="o">!=</span> <span class="n">MPS_RES_OK</span><span class="p">)</span>
|
||||
|
|
@ -415,7 +415,7 @@ the function.</p>
|
|||
title="next chapter">15. Allocation patterns</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -423,7 +423,7 @@ the function.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -443,7 +443,7 @@ the function.</p>
|
|||
<li class="right" >
|
||||
<a href="location.html" title="13. Location dependency"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>10. Garbage collection — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>10. Garbage collection — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Reference" href="index.html" />
|
||||
<link rel="next" title="11. Messages" href="message.html" />
|
||||
<link rel="prev" title="9. Roots" href="root.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="root.html" title="9. Roots"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -74,8 +74,8 @@ prepared to start collecting the generation. See
|
|||
<span class="p">{</span> <span class="mi">2048</span><span class="p">,</span> <span class="mf">0.4</span> <span class="p">},</span>
|
||||
<span class="p">};</span>
|
||||
|
||||
<span class="n">mps_chain_t</span> <span class="n">chain</span><span class="p">;</span>
|
||||
<span class="n">mps_res_t</span> <span class="n">res</span><span class="p">;</span>
|
||||
<span class="kt">mps_chain_t</span> <span class="n">chain</span><span class="p">;</span>
|
||||
<span class="kt">mps_res_t</span> <span class="n">res</span><span class="p">;</span>
|
||||
<span class="n">res</span> <span class="o">=</span> <span class="n">mps_chain_create</span><span class="p">(</span><span class="o">&</span><span class="n">chain</span><span class="p">,</span> <span class="n">arena</span><span class="p">,</span>
|
||||
<span class="k">sizeof</span><span class="p">(</span><span class="n">gen_params</span><span class="p">)</span> <span class="o">/</span> <span class="k">sizeof</span><span class="p">(</span><span class="n">gen_params</span><span class="p">[</span><span class="mi">0</span><span class="p">]),</span>
|
||||
<span class="n">gen_params</span><span class="p">);</span>
|
||||
|
|
@ -346,7 +346,7 @@ collection</em></a> that generated the message.</p>
|
|||
title="next chapter">11. Messages</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -354,7 +354,7 @@ collection</em></a> that generated the message.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -374,7 +374,7 @@ collection</em></a> that generated the message.</p>
|
|||
<li class="right" >
|
||||
<a href="root.html" title="9. Roots"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>3. The critical path — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>3. The critical path — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Internals" href="internals.html" />
|
||||
<link rel="next" title="Design" href="../design/index.html" />
|
||||
<link rel="prev" title="2. Platforms" href="platform.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="platform.html" title="2. Platforms"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="internals.html" accesskey="U">Internals</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -164,18 +164,18 @@ a client function of type <a class="reference internal" href="format.html#mps_fm
|
|||
of the format creation functions. (See <a class="reference internal" href="format.html#topic-format"><em>Object formats</em></a>.)</p>
|
||||
<p>Here is an example of part of a format scanner for scanning contiguous
|
||||
runs of pointers, from <tt class="docutils literal"><span class="pre">fmtdy.c</span></tt>, the scanner for the <a class="reference external" href="http://opendylan.org/">Open Dylan</a> runtime:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="n">mps_res_t</span> <span class="nf">dylan_scan_contig</span><span class="p">(</span><span class="n">mps_ss_t</span> <span class="n">mps_ss</span><span class="p">,</span>
|
||||
<span class="n">mps_addr_t</span> <span class="o">*</span><span class="n">base</span><span class="p">,</span> <span class="n">mps_addr_t</span> <span class="o">*</span><span class="n">limit</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">mps_res_t</span> <span class="nf">dylan_scan_contig</span><span class="p">(</span><span class="kt">mps_ss_t</span> <span class="n">mps_ss</span><span class="p">,</span>
|
||||
<span class="kt">mps_addr_t</span> <span class="o">*</span><span class="n">base</span><span class="p">,</span> <span class="kt">mps_addr_t</span> <span class="o">*</span><span class="n">limit</span><span class="p">)</span>
|
||||
<span class="p">{</span>
|
||||
<span class="n">mps_res_t</span> <span class="n">res</span><span class="p">;</span>
|
||||
<span class="n">mps_addr_t</span> <span class="o">*</span><span class="n">p</span><span class="p">;</span> <span class="cm">/* reference cursor */</span>
|
||||
<span class="n">mps_addr_t</span> <span class="n">r</span><span class="p">;</span> <span class="cm">/* reference to be fixed */</span>
|
||||
<span class="kt">mps_res_t</span> <span class="n">res</span><span class="p">;</span>
|
||||
<span class="kt">mps_addr_t</span> <span class="o">*</span><span class="n">p</span><span class="p">;</span> <span class="cm">/* reference cursor */</span>
|
||||
<span class="kt">mps_addr_t</span> <span class="n">r</span><span class="p">;</span> <span class="cm">/* reference to be fixed */</span>
|
||||
|
||||
<span class="n">MPS_SCAN_BEGIN</span><span class="p">(</span><span class="n">mps_ss</span><span class="p">)</span> <span class="p">{</span>
|
||||
<span class="n">p</span> <span class="o">=</span> <span class="n">base</span><span class="p">;</span>
|
||||
<span class="nl">loop:</span> <span class="k">if</span><span class="p">(</span><span class="n">p</span> <span class="o">>=</span> <span class="n">limit</span><span class="p">)</span> <span class="k">goto</span> <span class="n">out</span><span class="p">;</span>
|
||||
<span class="n">r</span> <span class="o">=</span> <span class="o">*</span><span class="n">p</span><span class="o">++</span><span class="p">;</span>
|
||||
<span class="k">if</span><span class="p">(((</span><span class="n">mps_word_t</span><span class="p">)</span><span class="n">r</span><span class="o">&</span><span class="mi">3</span><span class="p">)</span> <span class="o">!=</span> <span class="mi">0</span><span class="p">)</span> <span class="cm">/* pointers tagged with 0 */</span>
|
||||
<span class="k">if</span><span class="p">(((</span><span class="kt">mps_word_t</span><span class="p">)</span><span class="n">r</span><span class="o">&</span><span class="mi">3</span><span class="p">)</span> <span class="o">!=</span> <span class="mi">0</span><span class="p">)</span> <span class="cm">/* pointers tagged with 0 */</span>
|
||||
<span class="k">goto</span> <span class="n">loop</span><span class="p">;</span> <span class="cm">/* not a pointer */</span>
|
||||
<span class="k">if</span><span class="p">(</span><span class="o">!</span><span class="n">MPS_FIX1</span><span class="p">(</span><span class="n">mps_ss</span><span class="p">,</span> <span class="n">r</span><span class="p">))</span> <span class="k">goto</span> <span class="n">loop</span><span class="p">;</span>
|
||||
<span class="n">res</span> <span class="o">=</span> <span class="n">MPS_FIX2</span><span class="p">(</span><span class="n">mps_ss</span><span class="p">,</span> <span class="n">p</span><span class="o">-</span><span class="mi">1</span><span class="p">);</span>
|
||||
|
|
@ -368,7 +368,7 @@ vigilant.</p>
|
|||
title="next chapter">Design</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -376,7 +376,7 @@ vigilant.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -396,7 +396,7 @@ vigilant.</p>
|
|||
<li class="right" >
|
||||
<a href="platform.html" title="2. Platforms"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="internals.html" >Internals</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>17. Debugging pools — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>17. Debugging pools — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Reference" href="index.html" />
|
||||
<link rel="next" title="18. Telemetry" href="telemetry.html" />
|
||||
<link rel="prev" title="16. Allocation frames" href="frame.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="frame.html" title="16. Allocation frames"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -115,8 +115,8 @@ signal an error or stop if wrongly interpreted as executable code.</li>
|
|||
<span class="p">(</span><span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="s">"postpost"</span><span class="p">,</span> <span class="mi">8</span><span class="p">,</span>
|
||||
<span class="p">(</span><span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="s">"freefree"</span><span class="p">,</span> <span class="mi">8</span><span class="p">,</span>
|
||||
<span class="p">};</span>
|
||||
<span class="n">mps_pool_t</span> <span class="n">pool</span><span class="p">;</span>
|
||||
<span class="n">mps_res_t</span> <span class="n">res</span><span class="p">;</span>
|
||||
<span class="kt">mps_pool_t</span> <span class="n">pool</span><span class="p">;</span>
|
||||
<span class="kt">mps_res_t</span> <span class="n">res</span><span class="p">;</span>
|
||||
<span class="n">res</span> <span class="o">=</span> <span class="n">mps_pool_create</span><span class="p">(</span><span class="o">&</span><span class="n">pool</span><span class="p">,</span> <span class="n">arena</span><span class="p">,</span> <span class="n">mps_class_ams_debug</span><span class="p">(),</span>
|
||||
<span class="o">&</span><span class="n">debug_options</span><span class="p">,</span> <span class="o">&</span><span class="n">fmt</span><span class="p">,</span> <span class="o">&</span><span class="n">chain</span><span class="p">)</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">res</span> <span class="o">!=</span> <span class="n">MPS_RES_OK</span><span class="p">)</span> <span class="n">error</span><span class="p">(</span><span class="s">"can't create debug pool"</span><span class="p">);</span>
|
||||
|
|
@ -195,7 +195,7 @@ non-debugging pools.</p>
|
|||
title="next chapter">18. Telemetry</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -203,7 +203,7 @@ non-debugging pools.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -223,7 +223,7 @@ non-debugging pools.</p>
|
|||
<li class="right" >
|
||||
<a href="frame.html" title="16. Allocation frames"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>2. Error handing — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>2. Error handing — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Reference" href="index.html" />
|
||||
<link rel="next" title="3. Arenas" href="arena.html" />
|
||||
<link rel="prev" title="1. Interface conventions" href="interface.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="interface.html" title="1. Interface conventions"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -344,7 +344,7 @@ consequently there are no assertions.</p>
|
|||
title="next chapter">3. Arenas</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -352,7 +352,7 @@ consequently there are no assertions.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -372,7 +372,7 @@ consequently there are no assertions.</p>
|
|||
<li class="right" >
|
||||
<a href="interface.html" title="1. Interface conventions"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>12. Finalization — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>12. Finalization — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Reference" href="index.html" />
|
||||
<link rel="next" title="13. Location dependency" href="location.html" />
|
||||
<link rel="prev" title="11. Messages" href="message.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="message.html" title="11. Messages"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -62,7 +62,7 @@ acquisition of an external resource such as a file handle or a network
|
|||
connection. When the block dies, the corresponding resource must be
|
||||
released. This procedure is known as <a class="reference internal" href="../glossary/f.html#term-finalization"><em class="xref std std-term">finalization</em></a>.</p>
|
||||
<p>A block requiring finalization must be registered by calling <a class="reference internal" href="#mps_finalize" title="mps_finalize"><tt class="xref c c-func docutils literal"><span class="pre">mps_finalize()</span></tt></a>:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">mps_addr_t</span> <span class="n">ref</span> <span class="o">=</span> <span class="n">block_requiring_finalization</span><span class="p">;</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="kt">mps_addr_t</span> <span class="n">ref</span> <span class="o">=</span> <span class="n">block_requiring_finalization</span><span class="p">;</span>
|
||||
<span class="n">mps_finalize</span><span class="p">(</span><span class="n">arena</span><span class="p">,</span> <span class="o">&</span><span class="n">ref</span><span class="p">);</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
|
|
@ -337,7 +337,7 @@ prevent its reclamation.</p>
|
|||
title="next chapter">13. Location dependency</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -345,7 +345,7 @@ prevent its reclamation.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -365,7 +365,7 @@ prevent its reclamation.</p>
|
|||
<li class="right" >
|
||||
<a href="message.html" title="11. Messages"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>6. Object formats — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>6. Object formats — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Reference" href="index.html" />
|
||||
<link rel="next" title="7. Scanning" href="scanning.html" />
|
||||
<link rel="prev" title="5. Allocation" href="allocation.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="allocation.html" title="5. Allocation"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -114,9 +114,9 @@ of.</p>
|
|||
<span class="n">obj_pad</span>
|
||||
<span class="p">};</span>
|
||||
|
||||
<span class="n">mps_pool_t</span> <span class="n">obj_pool</span><span class="p">;</span>
|
||||
<span class="n">mps_fmt_t</span> <span class="n">obj_fmt</span><span class="p">;</span>
|
||||
<span class="n">mps_res_t</span> <span class="n">res</span><span class="p">;</span>
|
||||
<span class="kt">mps_pool_t</span> <span class="n">obj_pool</span><span class="p">;</span>
|
||||
<span class="kt">mps_fmt_t</span> <span class="n">obj_fmt</span><span class="p">;</span>
|
||||
<span class="kt">mps_res_t</span> <span class="n">res</span><span class="p">;</span>
|
||||
|
||||
<span class="n">res</span> <span class="o">=</span> <span class="n">mps_fmt_create_A</span><span class="p">(</span><span class="o">&</span><span class="n">obj_fmt</span><span class="p">,</span> <span class="n">arena</span><span class="p">,</span> <span class="o">&</span><span class="n">obj_fmt_s</span><span class="p">);</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">res</span> <span class="o">!=</span> <span class="n">MPS_RES_OK</span><span class="p">)</span> <span class="n">error</span><span class="p">(</span><span class="s">"Couldn't create obj format"</span><span class="p">);</span>
|
||||
|
|
@ -132,13 +132,13 @@ of.</p>
|
|||
<dd><p>The type of the structure used to create an <a class="reference internal" href="../glossary/o.html#term-object-format"><em class="xref std std-term">object format</em></a>
|
||||
of variant A.</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">typedef</span> <span class="k">struct</span> <span class="n">mps_fmt_A_s</span> <span class="p">{</span>
|
||||
<span class="n">mps_align_t</span> <span class="n">align</span><span class="p">;</span>
|
||||
<span class="n">mps_fmt_scan_t</span> <span class="n">scan</span><span class="p">;</span>
|
||||
<span class="n">mps_fmt_skip_t</span> <span class="n">skip</span><span class="p">;</span>
|
||||
<span class="n">mps_fmt_copy_t</span> <span class="n">copy</span><span class="p">;</span>
|
||||
<span class="n">mps_fmt_fwd_t</span> <span class="n">fwd</span><span class="p">;</span>
|
||||
<span class="n">mps_fmt_isfwd_t</span> <span class="n">isfwd</span><span class="p">;</span>
|
||||
<span class="n">mps_fmt_pad_t</span> <span class="n">pad</span><span class="p">;</span>
|
||||
<span class="kt">mps_align_t</span> <span class="n">align</span><span class="p">;</span>
|
||||
<span class="kt">mps_fmt_scan_t</span> <span class="n">scan</span><span class="p">;</span>
|
||||
<span class="kt">mps_fmt_skip_t</span> <span class="n">skip</span><span class="p">;</span>
|
||||
<span class="kt">mps_fmt_copy_t</span> <span class="n">copy</span><span class="p">;</span>
|
||||
<span class="kt">mps_fmt_fwd_t</span> <span class="n">fwd</span><span class="p">;</span>
|
||||
<span class="kt">mps_fmt_isfwd_t</span> <span class="n">isfwd</span><span class="p">;</span>
|
||||
<span class="kt">mps_fmt_pad_t</span> <span class="n">pad</span><span class="p">;</span>
|
||||
<span class="p">}</span> <span class="n">mps_fmt_A_s</span><span class="p">;</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
|
|
@ -189,14 +189,14 @@ calling <a class="reference internal" href="#mps_fmt_destroy" title="mps_fmt_des
|
|||
<dd><p>The type of the structure used to create an <a class="reference internal" href="../glossary/o.html#term-object-format"><em class="xref std std-term">object format</em></a>
|
||||
of variant B.</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">typedef</span> <span class="k">struct</span> <span class="n">mps_fmt_B_s</span> <span class="p">{</span>
|
||||
<span class="n">mps_align_t</span> <span class="n">align</span><span class="p">;</span>
|
||||
<span class="n">mps_fmt_scan_t</span> <span class="n">scan</span><span class="p">;</span>
|
||||
<span class="n">mps_fmt_skip_t</span> <span class="n">skip</span><span class="p">;</span>
|
||||
<span class="n">mps_fmt_copy_t</span> <span class="n">copy</span><span class="p">;</span>
|
||||
<span class="n">mps_fmt_fwd_t</span> <span class="n">fwd</span><span class="p">;</span>
|
||||
<span class="n">mps_fmt_isfwd_t</span> <span class="n">isfwd</span><span class="p">;</span>
|
||||
<span class="n">mps_fmt_pad_t</span> <span class="n">pad</span><span class="p">;</span>
|
||||
<span class="n">mps_fmt_class_t</span> <span class="n">mps_class</span><span class="p">;</span>
|
||||
<span class="kt">mps_align_t</span> <span class="n">align</span><span class="p">;</span>
|
||||
<span class="kt">mps_fmt_scan_t</span> <span class="n">scan</span><span class="p">;</span>
|
||||
<span class="kt">mps_fmt_skip_t</span> <span class="n">skip</span><span class="p">;</span>
|
||||
<span class="kt">mps_fmt_copy_t</span> <span class="n">copy</span><span class="p">;</span>
|
||||
<span class="kt">mps_fmt_fwd_t</span> <span class="n">fwd</span><span class="p">;</span>
|
||||
<span class="kt">mps_fmt_isfwd_t</span> <span class="n">isfwd</span><span class="p">;</span>
|
||||
<span class="kt">mps_fmt_pad_t</span> <span class="n">pad</span><span class="p">;</span>
|
||||
<span class="kt">mps_fmt_class_t</span> <span class="n">mps_class</span><span class="p">;</span>
|
||||
<span class="p">}</span> <span class="n">mps_fmt_B_s</span><span class="p">;</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
|
|
@ -223,12 +223,12 @@ return an appropriate <a class="reference internal" href="../glossary/r.html#ter
|
|||
<dd><p>The type of the structure used to create an <a class="reference internal" href="../glossary/o.html#term-object-format"><em class="xref std std-term">object format</em></a>
|
||||
of variant auto-header.</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">typedef</span> <span class="k">struct</span> <span class="n">mps_fmt_auto_header_s</span> <span class="p">{</span>
|
||||
<span class="n">mps_align_t</span> <span class="n">align</span><span class="p">;</span>
|
||||
<span class="n">mps_fmt_scan_t</span> <span class="n">scan</span><span class="p">;</span>
|
||||
<span class="n">mps_fmt_skip_t</span> <span class="n">skip</span><span class="p">;</span>
|
||||
<span class="n">mps_fmt_fwd_t</span> <span class="n">fwd</span><span class="p">;</span>
|
||||
<span class="n">mps_fmt_isfwd_t</span> <span class="n">isfwd</span><span class="p">;</span>
|
||||
<span class="n">mps_fmt_pad_t</span> <span class="n">pad</span><span class="p">;</span>
|
||||
<span class="kt">mps_align_t</span> <span class="n">align</span><span class="p">;</span>
|
||||
<span class="kt">mps_fmt_scan_t</span> <span class="n">scan</span><span class="p">;</span>
|
||||
<span class="kt">mps_fmt_skip_t</span> <span class="n">skip</span><span class="p">;</span>
|
||||
<span class="kt">mps_fmt_fwd_t</span> <span class="n">fwd</span><span class="p">;</span>
|
||||
<span class="kt">mps_fmt_isfwd_t</span> <span class="n">isfwd</span><span class="p">;</span>
|
||||
<span class="kt">mps_fmt_pad_t</span> <span class="n">pad</span><span class="p">;</span>
|
||||
<span class="kt">size_t</span> <span class="n">mps_headerSize</span><span class="p">;</span>
|
||||
<span class="p">}</span> <span class="n">mps_fmt_auto_header_s</span><span class="p">;</span>
|
||||
</pre></div>
|
||||
|
|
@ -615,7 +615,7 @@ their contents;</li>
|
|||
title="next chapter">7. Scanning</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -623,7 +623,7 @@ their contents;</li>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -643,7 +643,7 @@ their contents;</li>
|
|||
<li class="right" >
|
||||
<a href="allocation.html" title="5. Allocation"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>16. Allocation frames — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>16. Allocation frames — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Reference" href="index.html" />
|
||||
<link rel="next" title="17. Debugging pools" href="debugging.html" />
|
||||
<link rel="prev" title="15. Allocation patterns" href="pattern.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="pattern.html" title="15. Allocation patterns"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -151,7 +151,7 @@ twice (so the sequence “A = push, pop A, pop A” is illegal).</p>
|
|||
title="next chapter">17. Debugging pools</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -159,7 +159,7 @@ twice (so the sequence “A = push, pop A, pop A” is illegal).</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -179,7 +179,7 @@ twice (so the sequence “A = push, pop A, pop A” is illegal).</p>
|
|||
<li class="right" >
|
||||
<a href="pattern.html" title="15. Allocation patterns"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Reference — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Reference — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="next" title="1. Interface conventions" href="interface.html" />
|
||||
<link rel="prev" title="6. Advanced topics" href="../guide/advanced.html" />
|
||||
</head>
|
||||
|
|
@ -43,7 +43,7 @@
|
|||
<li class="right" >
|
||||
<a href="../guide/advanced.html" title="6. Advanced topics"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
|
@ -212,7 +212,7 @@
|
|||
title="next chapter">1. Interface conventions</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -220,7 +220,7 @@
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -240,7 +240,7 @@
|
|||
<li class="right" >
|
||||
<a href="../guide/advanced.html" title="6. Advanced topics"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="footer">
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>1. Interface conventions — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>1. Interface conventions — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Reference" href="index.html" />
|
||||
<link rel="next" title="2. Error handing" href="error.html" />
|
||||
<link rel="prev" title="Reference" href="index.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="index.html" title="Reference"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -185,7 +185,7 @@ is read by the function. See for example <a class="reference internal" href="sca
|
|||
out parameter, like this:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="cm">/* allocate a struct foo */</span>
|
||||
<span class="k">struct</span> <span class="n">foo</span> <span class="o">*</span><span class="n">fp</span><span class="p">;</span>
|
||||
<span class="n">res</span> <span class="o">=</span> <span class="n">mps_alloc</span><span class="p">((</span><span class="n">mps_addr_t</span> <span class="o">*</span><span class="p">)</span><span class="o">&</span><span class="n">fp</span><span class="p">,</span> <span class="n">pool</span><span class="p">,</span> <span class="k">sizeof</span><span class="p">(</span><span class="k">struct</span> <span class="n">foo</span><span class="p">));</span>
|
||||
<span class="n">res</span> <span class="o">=</span> <span class="n">mps_alloc</span><span class="p">((</span><span class="kt">mps_addr_t</span> <span class="o">*</span><span class="p">)</span><span class="o">&</span><span class="n">fp</span><span class="p">,</span> <span class="n">pool</span><span class="p">,</span> <span class="k">sizeof</span><span class="p">(</span><span class="k">struct</span> <span class="n">foo</span><span class="p">));</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>This is known as <a class="reference internal" href="../glossary/t.html#term-type-punning"><em class="xref std std-term">type punning</em></a>, and its behaviour is not
|
||||
|
|
@ -194,7 +194,7 @@ defined in ANSI/ISO Standard C. See <a class="reference internal" href="../mmref
|
|||
another: the behaviour of this cast is not covered by any of the cases
|
||||
in the standard.</p>
|
||||
<p>Instead, we recommend this approach:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="n">mps_addr_t</span> <span class="n">p</span><span class="p">;</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="kt">mps_addr_t</span> <span class="n">p</span><span class="p">;</span>
|
||||
<span class="k">struct</span> <span class="n">foo</span> <span class="o">*</span><span class="n">fp</span><span class="p">;</span>
|
||||
<span class="n">res</span> <span class="o">=</span> <span class="n">mps_alloc</span><span class="p">(</span><span class="o">&</span><span class="n">p</span><span class="p">,</span> <span class="n">pool</span><span class="p">,</span> <span class="k">sizeof</span><span class="p">(</span><span class="k">struct</span> <span class="n">foo</span><span class="p">));</span>
|
||||
<span class="k">if</span><span class="p">(</span><span class="n">res</span><span class="p">)</span> <span class="cm">/* handle error case */</span><span class="p">;</span>
|
||||
|
|
@ -356,7 +356,7 @@ or function return from the MPS, 0 means “false”, and 1 means
|
|||
title="next chapter">2. Error handing</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -364,7 +364,7 @@ or function return from the MPS, 0 means “false”, and 1 means
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -384,7 +384,7 @@ or function return from the MPS, 0 means “false”, and 1 means
|
|||
<li class="right" >
|
||||
<a href="index.html" title="Reference"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>Internals — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>Internals — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="next" title="1. Plinth" href="plinth.html" />
|
||||
<link rel="prev" title="13. SNC (Stack No Checking)" href="../pool/snc.html" />
|
||||
</head>
|
||||
|
|
@ -43,7 +43,7 @@
|
|||
<li class="right" >
|
||||
<a href="../pool/snc.html" title="13. SNC (Stack No Checking)"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
|
@ -99,7 +99,7 @@
|
|||
title="next chapter">1. Plinth</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -107,7 +107,7 @@
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -127,7 +127,7 @@
|
|||
<li class="right" >
|
||||
<a href="../pool/snc.html" title="13. SNC (Stack No Checking)"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="footer">
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>13. Location dependency — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>13. Location dependency — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Reference" href="index.html" />
|
||||
<link rel="next" title="14. Segregated allocation caches" href="cache.html" />
|
||||
<link rel="prev" title="12. Finalization" href="finalization.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="finalization.html" title="12. Finalization"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -93,11 +93,11 @@ or elsewhere; that doesn’t matter.</p>
|
|||
<p>For example, the toy Scheme interpreter inlines the location
|
||||
dependency in its hash table structure:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">typedef</span> <span class="k">struct</span> <span class="n">table_s</span> <span class="p">{</span>
|
||||
<span class="n">type_t</span> <span class="n">type</span><span class="p">;</span> <span class="cm">/* TYPE_TABLE */</span>
|
||||
<span class="n">hash_t</span> <span class="n">hash</span><span class="p">;</span> <span class="cm">/* hash function */</span>
|
||||
<span class="n">cmp_t</span> <span class="n">cmp</span><span class="p">;</span> <span class="cm">/* comparison function */</span>
|
||||
<span class="kt">type_t</span> <span class="n">type</span><span class="p">;</span> <span class="cm">/* TYPE_TABLE */</span>
|
||||
<span class="kt">hash_t</span> <span class="n">hash</span><span class="p">;</span> <span class="cm">/* hash function */</span>
|
||||
<span class="kt">cmp_t</span> <span class="n">cmp</span><span class="p">;</span> <span class="cm">/* comparison function */</span>
|
||||
<span class="hll"> <span class="n">mps_ld_s</span> <span class="n">ld</span><span class="p">;</span> <span class="cm">/* location dependency */</span>
|
||||
</span> <span class="n">obj_t</span> <span class="n">buckets</span><span class="p">;</span> <span class="cm">/* hash buckets */</span>
|
||||
</span> <span class="kt">obj_t</span> <span class="n">buckets</span><span class="p">;</span> <span class="cm">/* hash buckets */</span>
|
||||
<span class="p">}</span> <span class="n">table_s</span><span class="p">;</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
|
|
@ -125,12 +125,12 @@ references from one dependency to another.</p>
|
|||
that is added to the table must be added to the dependency before its
|
||||
address is hashed. In the toy Scheme interpreter this is most easily
|
||||
done in the function that hashes an address:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">unsigned</span> <span class="kt">long</span> <span class="nf">eq_hash</span><span class="p">(</span><span class="n">obj_t</span> <span class="n">obj</span><span class="p">,</span> <span class="n">mps_ld_t</span> <span class="n">ld</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">unsigned</span> <span class="kt">long</span> <span class="nf">eq_hash</span><span class="p">(</span><span class="kt">obj_t</span> <span class="n">obj</span><span class="p">,</span> <span class="kt">mps_ld_t</span> <span class="n">ld</span><span class="p">)</span>
|
||||
<span class="p">{</span>
|
||||
<span class="k">union</span> <span class="p">{</span><span class="kt">char</span> <span class="n">s</span><span class="p">[</span><span class="k">sizeof</span><span class="p">(</span><span class="n">obj_t</span><span class="p">)];</span> <span class="n">obj_t</span> <span class="n">addr</span><span class="p">;}</span> <span class="n">u</span><span class="p">;</span>
|
||||
<span class="k">union</span> <span class="p">{</span><span class="kt">char</span> <span class="n">s</span><span class="p">[</span><span class="k">sizeof</span><span class="p">(</span><span class="kt">obj_t</span><span class="p">)];</span> <span class="kt">obj_t</span> <span class="n">addr</span><span class="p">;}</span> <span class="n">u</span><span class="p">;</span>
|
||||
<span class="hll"> <span class="k">if</span> <span class="p">(</span><span class="n">ld</span><span class="p">)</span> <span class="n">mps_ld_add</span><span class="p">(</span><span class="n">ld</span><span class="p">,</span> <span class="n">arena</span><span class="p">,</span> <span class="n">obj</span><span class="p">);</span>
|
||||
</span> <span class="n">u</span><span class="p">.</span><span class="n">addr</span> <span class="o">=</span> <span class="n">obj</span><span class="p">;</span>
|
||||
<span class="k">return</span> <span class="n">hash</span><span class="p">(</span><span class="n">u</span><span class="p">.</span><span class="n">s</span><span class="p">,</span> <span class="k">sizeof</span><span class="p">(</span><span class="n">obj_t</span><span class="p">));</span>
|
||||
<span class="k">return</span> <span class="n">hash</span><span class="p">(</span><span class="n">u</span><span class="p">.</span><span class="n">s</span><span class="p">,</span> <span class="k">sizeof</span><span class="p">(</span><span class="kt">obj_t</span><span class="p">));</span>
|
||||
<span class="p">}</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
|
|
@ -168,7 +168,7 @@ old locations of the blocks; and</li>
|
|||
</ol>
|
||||
<p>For example, in the case of a hash table you should rehash based on
|
||||
the new locations of the blocks.</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="n">obj_t</span> <span class="nf">table_ref</span><span class="p">(</span><span class="n">obj_t</span> <span class="n">tbl</span><span class="p">,</span> <span class="n">obj_t</span> <span class="n">key</span><span class="p">)</span>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">obj_t</span> <span class="nf">table_ref</span><span class="p">(</span><span class="kt">obj_t</span> <span class="n">tbl</span><span class="p">,</span> <span class="kt">obj_t</span> <span class="n">key</span><span class="p">)</span>
|
||||
<span class="p">{</span>
|
||||
<span class="k">struct</span> <span class="n">bucket_s</span> <span class="o">*</span><span class="n">b</span> <span class="o">=</span> <span class="n">buckets_find</span><span class="p">(</span><span class="n">tbl</span><span class="p">,</span> <span class="n">tbl</span><span class="o">-></span><span class="n">table</span><span class="p">.</span><span class="n">buckets</span><span class="p">,</span> <span class="n">key</span><span class="p">,</span> <span class="nb">NULL</span><span class="p">);</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">b</span> <span class="o">&&</span> <span class="n">b</span><span class="o">-></span><span class="n">key</span> <span class="o">!=</span> <span class="nb">NULL</span> <span class="o">&&</span> <span class="n">b</span><span class="o">-></span><span class="n">key</span> <span class="o">!=</span> <span class="n">obj_deleted</span><span class="p">)</span>
|
||||
|
|
@ -229,7 +229,7 @@ found in the table.</p>
|
|||
<dd><p>The type of the structure used to represent a <a class="reference internal" href="../glossary/l.html#term-location-dependency"><em class="xref std std-term">location
|
||||
dependency</em></a>.</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">typedef</span> <span class="k">struct</span> <span class="n">mps_ld_s</span> <span class="p">{</span>
|
||||
<span class="n">mps_word_t</span> <span class="n">w0</span><span class="p">,</span> <span class="n">w1</span><span class="p">;</span>
|
||||
<span class="kt">mps_word_t</span> <span class="n">w0</span><span class="p">,</span> <span class="n">w1</span><span class="p">;</span>
|
||||
<span class="p">}</span> <span class="n">mps_ld_s</span><span class="p">;</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
|
|
@ -372,7 +372,7 @@ other location dependency function.</p>
|
|||
title="next chapter">14. Segregated allocation caches</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -380,7 +380,7 @@ other location dependency function.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -400,7 +400,7 @@ other location dependency function.</p>
|
|||
<li class="right" >
|
||||
<a href="finalization.html" title="12. Finalization"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>11. Messages — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>11. Messages — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Reference" href="index.html" />
|
||||
<link rel="next" title="12. Finalization" href="finalization.html" />
|
||||
<link rel="prev" title="10. Garbage collection" href="collection.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="collection.html" title="10. Garbage collection"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -103,11 +103,11 @@ messages from the message queue and prints a description of the
|
|||
contents of each one:</p>
|
||||
<div class="highlight-c"><div class="highlight"><pre><span class="k">static</span> <span class="kt">void</span> <span class="nf">mps_chat</span><span class="p">(</span><span class="kt">void</span><span class="p">)</span>
|
||||
<span class="p">{</span>
|
||||
<span class="n">mps_message_type_t</span> <span class="n">type</span><span class="p">;</span>
|
||||
<span class="kt">mps_message_type_t</span> <span class="n">type</span><span class="p">;</span>
|
||||
|
||||
<span class="k">while</span> <span class="p">(</span><span class="n">mps_message_queue_type</span><span class="p">(</span><span class="o">&</span><span class="n">type</span><span class="p">,</span> <span class="n">arena</span><span class="p">))</span> <span class="p">{</span>
|
||||
<span class="n">mps_message_t</span> <span class="n">message</span><span class="p">;</span>
|
||||
<span class="n">mps_bool_t</span> <span class="n">b</span><span class="p">;</span>
|
||||
<span class="kt">mps_message_t</span> <span class="n">message</span><span class="p">;</span>
|
||||
<span class="kt">mps_bool_t</span> <span class="n">b</span><span class="p">;</span>
|
||||
<span class="n">b</span> <span class="o">=</span> <span class="n">mps_message_get</span><span class="p">(</span><span class="o">&</span><span class="n">message</span><span class="p">,</span> <span class="n">arena</span><span class="p">,</span> <span class="n">type</span><span class="p">);</span>
|
||||
<span class="n">assert</span><span class="p">(</span><span class="n">b</span><span class="p">);</span> <span class="cm">/* we just checked there was one */</span>
|
||||
|
||||
|
|
@ -380,7 +380,7 @@ usually simpler to call <a class="reference internal" href="#mps_message_get" ti
|
|||
title="next chapter">12. Finalization</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -388,7 +388,7 @@ usually simpler to call <a class="reference internal" href="#mps_message_get" ti
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -408,7 +408,7 @@ usually simpler to call <a class="reference internal" href="#mps_message_get" ti
|
|||
<li class="right" >
|
||||
<a href="collection.html" title="10. Garbage collection"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>15. Allocation patterns — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>15. Allocation patterns — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Reference" href="index.html" />
|
||||
<link rel="next" title="16. Allocation frames" href="frame.html" />
|
||||
<link rel="prev" title="14. Segregated allocation caches" href="cache.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="cache.html" title="14. Segregated allocation caches"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" accesskey="U">Reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -201,7 +201,7 @@ ended.</p>
|
|||
title="next chapter">16. Allocation frames</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -209,7 +209,7 @@ ended.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -229,7 +229,7 @@ ended.</p>
|
|||
<li class="right" >
|
||||
<a href="cache.html" title="14. Segregated allocation caches"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="index.html" >Reference</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
|
||||
<title>2. Platforms — Memory Pool System 1.110.0 documentation</title>
|
||||
<title>2. Platforms — Memory Pool System 1.111.0 documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/mps.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: '../',
|
||||
VERSION: '1.110.0',
|
||||
VERSION: '1.111.0',
|
||||
COLLAPSE_INDEX: false,
|
||||
FILE_SUFFIX: '.html',
|
||||
HAS_SOURCE: true
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="../_static/doctools.js"></script>
|
||||
<link rel="copyright" title="Copyright" href="../copyright.html" />
|
||||
<link rel="top" title="Memory Pool System 1.110.0 documentation" href="../index.html" />
|
||||
<link rel="top" title="Memory Pool System 1.111.0 documentation" href="../index.html" />
|
||||
<link rel="up" title="Internals" href="internals.html" />
|
||||
<link rel="next" title="3. The critical path" href="critical.html" />
|
||||
<link rel="prev" title="1. Plinth" href="plinth.html" />
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<li class="right" >
|
||||
<a href="plinth.html" title="1. Plinth"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="internals.html" accesskey="U">Internals</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -653,7 +653,7 @@ the Memory Pool System, with their current status.</p>
|
|||
title="next chapter">3. The critical path</a></p><h4>Downloads</h4>
|
||||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.110.0/">MPS Kit release 1.110.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/1.111.0/">MPS Kit release 1.111.0</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/release/">All MPS Kit releases</a>
|
||||
</p>
|
||||
|
||||
|
|
@ -661,7 +661,7 @@ the Memory Pool System, with their current status.</p>
|
|||
|
||||
<p class="topless">
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=list&view=status%3dopen&display=Job:Priority:Title&sort=Priority">Known issues</a><br>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.110.0">Issues fixed in release 1.110.0</a>
|
||||
<a href="http://www.ravenbrook.com/project/mps/issue/?action=fixed&release_fixed=1.111.0">Issues fixed in release 1.111.0</a>
|
||||
</p><h4>Contact us</h4>
|
||||
|
||||
<p class="topless"><a href="mailto:mps-questions@ravenbrook.com">mps-questions@ravenbrook.com</a></p>
|
||||
|
|
@ -681,7 +681,7 @@ the Memory Pool System, with their current status.</p>
|
|||
<li class="right" >
|
||||
<a href="plinth.html" title="1. Plinth"
|
||||
>previous</a> |</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.110.0 documentation</a> »</li>
|
||||
<li><a href="../index.html">Memory Pool System 1.111.0 documentation</a> »</li>
|
||||
<li><a href="internals.html" >Internals</a> »</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue