Ravenbrook / Projects / Memory Pool System

Memory Pool System Project


Development branches

Nick Levine, Ravenbrook Limited, 2001-08-17

1. Introduction

This document lists the development branches for the Memory Pool System project. Development branches are branches that don't have a formally defined purpose (unlike, say, version branches). (See [RB 2000-09-05] for the decision on the location and naming of these branches for the P4DTI project, which we will continue to follow here.)

This document will be modified as new branches are created.

The readership of this document is anyone interested in the project.

This document is not confidential. However, almost all of the branches referenced from this document are Ravenbrook company confidential and these cannot be accessed from outside the Ravenbrook domain. At present the only development branch which is not confidential is the open-source preparation branch.

2. Historical branches

The branches listed in this section predate our acquisition of the MPS on 2001-08-13. They were derived from the HOPE/RCS hierarchy by the procedure described in [NDL 2001-08-15].

The trunk branch was integrated into master sources on 2001-10-31 by changelist 23678.

See section 3 for development branches which postdate our acquisition of the MPS.

Branch
1995-11-09/MMdevel_dsm_0/
1995-12-11/MMdevel_protoposm_0/
1996-01-22/MMdevel_protoposm_1/
1996-03-01/MM_dylan_incremental/
1996-03-12/MMdevel_restr/
1996-04-12/MMdevel_restr2/
1996-04-15/MMdevel_drjweak/
1996-04-16/MMdevel_remem/
1996-04-29/MMdevel_trace/
1996-05-14/MMdevel_drj_swint/
1996-07-05/MM_epcore_eval/
1996-08-08/MMdevel_lclint/
1996-09-03/MMdevel_lib/
1996-09-10/MMdevel_event/
1996-11-01/MMdevel_trace2/
1996-12-02/MMdevel_sw_eq/
1997-02-10/MMdevel_action/
1997-02-12/MMepcore_keyarg_test/
1997-02-13/MMdevel_amcsimp/
1997-02-25/MMdevel_bitset/
1997-02-27/MMdevel_drjfinal/
1997-02-28/MMdevel_config/
1997-03-03/MMdevel_action2/
1997-03-04/MMdevel_drj_bt/
1997-03-12/MM_dylan_buffalo/
1997-04-11/MMdevel_lint/
1997-04-18/MMdevel_gens/
1997-04-24/MMdevel_arenaclass/
1997-04-28/MMdevel_bufferscan/
1997-04-28/MMdevel_event2/
1997-05-06/MMdevel_remem2/
1997-05-13/MMdevel_gens2/
1997-05-29/MMdevel_assertid/
1997-06-10/MMdevel_segiter/
1997-06-16/MMdevel_gens3/
1997-06-18/MMdevel_segabs/
1997-06-25/MM_dylan_sunflower/
1997-07-03/MMdevel_dropin/
1997-07-07/MMdevel_event_format/
1997-07-10/MMdevel_control/
1997-07-10/MMdevel_event_string/
1997-07-16/MMdevel_drj_message/
1997-07-18/MMdevel_control2/
1997-07-18/MMdevel_partial_page/
1997-07-24/MMdevel_control3/
1997-07-30/MMdevel_config_thread/
1997-08-02/MMdevel_remem_root/
1997-08-05/MMdevel_annotation/
1997-08-12/MMdevel_greylist/
1997-08-13/MMdevel_poolams/
1997-08-21/MMdevel_clamp/
1997-08-29/MMdevel_shieldclass/
1997-09-01/MMdevel_gens4/
1997-09-02/MMdevel_gens5/
1997-09-04/MMdevel_lclint_23h/
1997-09-05/MMdevel_irix_vm/
1997-09-08/MM_dylan_sunflower_patch_10a/
1997-09-17/MMdevel_collect/
1997-09-19/MM_dylan_honeybee/
1997-10-07/MMdevel_anal_cotton/
1997-10-21/MMdevel_drj_fmtdy_speed/
1997-10-23/MMdevel_drj_root_node/
1997-10-24/MMdevel_metrics/
1997-10-30/MMdevel_fixfast/
1997-10-31/MMdevel_metrics_fix/
1997-11-04/MMdevel_progress/
1997-11-14/MMdevel_honeybee_ambig/
1997-11-14/MMdevel_honeybee_ambig2/
1997-12-09/MM_dylan_cottonwood/
1997-12-19/MMdevel_gavinm_bt/
1997-12-28/MMepcore_pilchard/
1998-01-06/MMdevel_telemetry/
1998-01-09/MMdevel_drj_action_hack/
1998-01-12/MMdevel_drj_trace_abort/
1998-01-19/MMdevel_telemetry_intern/
1998-01-20/MMdevel_telemetry_intern2/
1998-01-26/MMdevel_telemetry_fmt/
1998-02-16/MMdevel_drj_gensize/
1998-02-18/MM_dylan_meadowlark/
1998-02-28/MMdevel_gavinm_zone/
1998-03-10/MMdevel_drj_amcz/
1998-03-13/MM_dylan_boxturtle/
1998-03-30/MM_dylan_salamander/
1998-04-06/MMdevel_drj_buffer_logging/
1998-04-24/MM_epcore_sardine/
1998-04-30/MMdevel_gavinm_splay/
1998-05-26/MMdevel_pekka_rate/
1998-06-08/MMdevel_drj_commit_limit/
1998-06-10/MMdevel_drj_vmli/
1998-06-12/MM_epcore_minnow/
1998-06-25/MM_dylan_blackbird/
1998-06-26/MMdevel_tony_lifetime/
1998-07-08/MMdevel_ramp_alloc/
1998-07-10/MMdevel_drj_coop_arena/
1998-07-21/MM_dylan_crow/
1998-07-22/MMdevel_mv2_rework/
1998-07-29/MMdevel_reservoir/
1998-08-04/MM_dylan_dove/
1998-08-26/MMdevel_gavinm_160033/
1998-08-28/MMdevel_fencepost/
1998-09-03/MMdevel_gavinm_mvff/
1998-09-03/MMdevel_ptw_pseudoloci/
1998-09-14/MM_epcore_anchovy/
1998-09-23/MMdevel_gavinm_cbs/
1998-09-24/MMdevel_tony_inheritance/
1998-10-19/MM_dylan_jackdaw/
1998-12-11/MMdevel_tony_segments/
1998-12-18/MMdevel_drj_arena_hysteresis/
1998-12-21/MMdevel_color_pool/
1999-01-03/MMdevel_pekka_mvbt/
1999-01-19/MM_epcore_brisling/
1999-02-23/MMdevel_tony_sunset/
1999-05-07/MMdevel_alloc_replay/
1999-05-18/MMQA_harness_dev/
1999-08-17/MMdevel_martin_simplemov/
1999-08-19/MMdevel_tony_lock/
2000-02-04/MMdevel_pekka_locus/
2000-05-16/MM_dylan_kinglet/
2000-06-07/MMdevel_configura/
2000-09-22/MMconfigura_eval_fast/
2001-05-24/MMdevel_pekka_locus2/
2001-08-13/trunk/

3. Development branches

Branch Purpose Status
2001-09-24/MMconfigura-no-dongle/ Removing dongle dependency for release to Configura. Merged by changelist 28248.
2001-09-24/freebsd-port/ Port to FreeBSD. Merged by changelist 23681.
2001-11-23/MMconfigura-in-arena/ Configura request for mps_arena_has_addr(); Port to FreeBSD. Merged by changelist 24163.
2001-12-17/MMconfigura-shield-fix/ Fix for job000441. Merged by changelist 25379.
2002-02-15/MMconfigura-awl/ Fix for job000462. Merged by changelist 26536 and changelist 28247.
2002-04-11/MMconfigura-awl-auto/ Fix for job000502. Merged by changelist 28076 and changelist 28082.
2002-04-15/MMconfigura-ams-auto/ Fix for job000506. Merged by changelist 29147.
2002-05-14/MMconfigura-incremental-step/ Fix for job000531. Merged by changelist 29464 and changelist 29465.
2002-05-22/open-source-prep/ Preparing the master sources for open source release. Merged
2002-12-30/opportunism Configura opportunistic GC improvements Merged by changelist 39673
2003-02-17/gcgenmsg Per generation GC message to say what each one is doing. Fix for job000666. Merged by changelist 161204
2006-05-31/feedback More feedback on what the MPS is doing and has done. Fix for job001150. Contains unfinished example/hw-gc (example code for formats and GC). No longer for code development (rebranch to continue).
2006-12-15/unfixed-summary MPS development branch to investigate job001548 and generally improve AVERs etc to ensure accuracy of summaries. in development
2007-09-27/awldiag MPS development branch: Investigating poolawl.c, improving diagnostic output. in development
2007-12-19/vmarenagrow MPS development branch: Better VM arena growth, feedback. Gangsets Gangset (and other) work to be completed and merged.
2008-03-11/auto_header MPS development branch: Fix AMC pool + auto_header format nailboard leak. Fix pad retention. Merged (@164508 and @164885)
2008-08-14/vc9 MPS development branch: New clone platform for VC9; fix omitted mps_arena_vm_growth DLL export; provide mps-fns.def. Merged (latest was @166536)
2008-10-30/timing MPS development branch for work on messages, notably: mps-message_clock() (job001969); MessageType now fn of MessageClass; correct _gc_start & _gc message lifecycle (job001989). Synchronous collection alerts (job001968). Better randomize() and rnd() for internal tests. Some investigation of ambiguous interior pointers. Merged to master (most recently @167392, 2009-02-17)
2010-03-11/vmem MPS development branch for work on vmem. in development

A. References

[NDL 2001-08-15] "MPS/MMREF import procedures"; Nick Levine; Ravenbrook Limited; 2001-08-15.
[RB 2000-09-05] "Re: Location for development branches" (e-mail message); Richard Brooksby; Ravenbrook Limited; 2000-09-05 11:41:30 GMT.

B. Document History

2001-08-17 NDL Created.
2001-09-13 NDL Updated in the light of revisions to the RCS import.
2001-10-31 NDL Add MMConfigura-no-dongle and freebsd-port branches.
2001-12-17 NB Add MMconfigura-in-arena and MMconfigura-shield-fix branches.
2002-02-15 NB Add MMconfigura-awl branch, and note on merge of MMconfigura-shield-fix branch, .
2002-04-15 NB Add MMconfigura-awl-auto and MMconfigura-ams-auto branches, and note on merge of MMconfigura-shield-fix and MMconfigura-awl-auto branches.
2002-05-14 NB Add MMconfigura-incremental-step branch.
2002-05-24 NB Added merge note for MMconfigura-incremental-step branch.
2002-05-24 RB Added 2002-05-22/open-source-prep branch.
2002-06-20 NDL Removed confidentiality notice, explained that almost all development branches are confidential, and updated the copyright / license.
2003-02-13 DRJ Added 2002-12-30/opportunism branch.
2006-06-02 RHSK Fixed duplicate html anchor ids/names, by adding suffix "b" to get eg. id="ref-GlobalGraphics-1997-04-28b".
2006-06-02 RHSK Added mps/branch/2006-05-31/feedback.
2006-12-15 RHSK Merged mps/branch/2003-02-17/gcgenmsg. Noted that open-source has been merged too.
2006-12-15 RHSK Added mps/branch/2006-12-15/unfixed-summary
2006-12-15 RHSK mps/branch/2006-05-31/feedback contains documentation only; code is no longer live
2006-12-29 RHSK integrate documentation from mps/branch/2006-05-31/feedback to master: it now contains unfinished example/hw-gc only; code is no longer live
2007-09-27 RHSK 2007-09-27/awldiag: Investigating poolawl.c, improving diagnostic output.
2008-10-23 RHSK vmarenagrow, auto_header, and vc9 branches
2009-02-17 RHSK timing branch
2010-03-15 RHSK vmem branch

C. Copyright and License

This document is copyright © 2001-2003, 2006-2010 Ravenbrook Limited. All rights reserved. This is an open source license. Contact Ravenbrook for commercial licensing options.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
  3. Redistributions in any form must be accompanied by information on how to obtain complete source code for this software and any accompanying software that uses this software. The source code must either be included in the distribution or be available for no more than the cost of distribution plus a nominal fee, and must be freely redistributable under reasonable conditions. For an executable file, complete source code means the source code for all modules it contains. It does not include source code for modules or files that typically accompany the major components of the operating system on which the executable file runs.

This software is provided by the copyright holders and contributors "as is" and any express or implied warranties, including, but not limited to, the implied warranties of merchantability, fitness for a particular purpose, or non-infringement, are disclaimed. In no event shall the copyright holders and contributors be liable for any direct, indirect, incidental, special, exemplary, or consequential damages (including, but not limited to, procurement of substitute goods or services; loss of use, data, or profits; or business interruption) however caused and on any theory of liability, whether in contract, strict liability, or tort (including negligence or otherwise) arising in any way out of the use of this software, even if advised of the possibility of such damage.


$Id: //info.ravenbrook.com/project/mps/branch/index.html#24 $

Ravenbrook / Projects / Memory Pool System