зеркало из https://github.com/mono/mail-archives.git
97 строки
3.1 KiB
HTML
97 строки
3.1 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
|
|
<HTML>
|
|
<HEAD>
|
|
<TITLE> [Mono-gc-list] My arguments
|
|
</TITLE>
|
|
<LINK REL="Index" HREF="index.html" >
|
|
<LINK REL="made" HREF="mailto:fdiaz%40igalia.com">
|
|
<META NAME="robots" CONTENT="index,nofollow">
|
|
|
|
<LINK REL="Previous" HREF="000016.html">
|
|
<LINK REL="Next" HREF="000015.html">
|
|
</HEAD>
|
|
<BODY BGCOLOR="#ffffff">
|
|
<H1>[Mono-gc-list] My arguments
|
|
</H1>
|
|
<B>Fernando Diaz
|
|
</B>
|
|
<A HREF="mailto:fdiaz%40igalia.com"
|
|
TITLE="[Mono-gc-list] My arguments">fdiaz@igalia.com
|
|
</A><BR>
|
|
<I>12 Aug 2003 13:21:33 +0200</I>
|
|
<P><UL>
|
|
<LI> Previous message: <A HREF="000016.html">[Mono-gc-list] Copying or Mark-Compact collector?
|
|
</A></li>
|
|
<LI> Next message: <A HREF="000015.html">[Mono-gc-list] My arguments
|
|
</A></li>
|
|
<LI> <B>Messages sorted by:</B>
|
|
<a href="date.html#14">[ date ]</a>
|
|
<a href="thread.html#14">[ thread ]</a>
|
|
<a href="subject.html#14">[ subject ]</a>
|
|
<a href="author.html#14">[ author ]</a>
|
|
</LI>
|
|
</UL>
|
|
<HR>
|
|
<!--beginarticle-->
|
|
<PRE>In the other mail i have suggested two algorithms for a future garbage
|
|
collector for Mono:
|
|
|
|
1) Mark-Compact
|
|
2) Copying Collection
|
|
|
|
I have been made an study about the different techniques for a garbage
|
|
collector for a month.=20
|
|
|
|
The classical algorithms are:
|
|
|
|
1) Mark-Sweep
|
|
2) Mark-Compact
|
|
3) Reference Counting
|
|
4) Copying Collection
|
|
5) Non-Copying Collection.
|
|
|
|
I think that Mono needs a collector that make the allocation process the
|
|
simpliest it could be, then i refused the Mark-Sweep and Non-Copying
|
|
Collection, because they have the problem of fragmentation what guide us
|
|
to a complex allocator.
|
|
|
|
The reference counting algorithm have the problem that it can clean
|
|
objects with cyclic references between them, and it has a beavy
|
|
algorithm.
|
|
|
|
With Mark-Compact we have a collector that provides us a fast and simply
|
|
allocation routine, and a good locality for cach=E9 and virtual memory.
|
|
The same as Mark-Compact ocurrs in Copying Collection. The problem with
|
|
them is that we need to rebuild the references to the objects after a
|
|
collection, because the objects will me moved from their original
|
|
location into the heap.
|
|
|
|
A generational adaptation of these algorithms would be good, it would
|
|
make them more efficient. But an incremental adaptation would make them
|
|
more complex and it would give them a few advantages.
|
|
|
|
|
|
What do you think about?.
|
|
|
|
Regards.
|
|
--=20
|
|
Fernando Diaz <<A HREF="mailto:fdiaz@igalia.com">fdiaz@igalia.com</A>>
|
|
|
|
</PRE>
|
|
<!--endarticle-->
|
|
<HR>
|
|
<P><UL>
|
|
<!--threads-->
|
|
<LI> Previous message: <A HREF="000016.html">[Mono-gc-list] Copying or Mark-Compact collector?
|
|
</A></li>
|
|
<LI> Next message: <A HREF="000015.html">[Mono-gc-list] My arguments
|
|
</A></li>
|
|
<LI> <B>Messages sorted by:</B>
|
|
<a href="date.html#14">[ date ]</a>
|
|
<a href="thread.html#14">[ thread ]</a>
|
|
<a href="subject.html#14">[ subject ]</a>
|
|
<a href="author.html#14">[ author ]</a>
|
|
</LI>
|
|
</UL>
|
|
</body></html>
|