Mailing list for all users of the OCaml language and system.
 help / color / mirror / Atom feed
From: skaller <skaller@ozemail.com.au>
To: Alain.Frisch@ens.fr
Cc: Nuutti Kotivuori <naked+caml@naked.iki.fi>,
	Caml list <caml-list@inria.fr>
Subject: Re: [Caml-list] Freeing dynamically loaded code
Date: 13 Dec 2003 13:04:57 +1100	[thread overview]
Message-ID: <1071281096.14110.16.camel@pelican> (raw)
In-Reply-To: <Pine.SOL.4.44.0312122135110.13180-100000@clipper.ens.fr>

On Sat, 2003-12-13 at 08:26, Alain.Frisch@ens.fr wrote:
> On Fri, 12 Dec 2003, Nuutti Kotivuori wrote:
> 
> > Well, like Xavier Leroy said at the end of the mail - *he* probably
> > isn't doing it. That doesn't mean there wouldn't be someone else crazy
> > enough to try :-)
> >
> > And atleast I'm not dropping the investigation just yet.
> 
> Thinking again about the technical challenge (put the dynlink'ed code
> under GC control), I think the following approach is worth a try.
> 
> The question is how to let the GC know that the code block cannot be freed
> as long as there is some accessible closure pointing into this block.

That is not enough. It is not necessary for some code to be
active in order that it may later *become* active as
a result of a subroutine call or jump. It would be necessary
to find all code addresses and which blocks they point to,
and build a dependency graph, and add the roots of that graph
to the gc memory graph as well.

Otherwise, after you say

	#load xxxx

the collector would immediately free it :-)


-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


  parent reply	other threads:[~2003-12-13  3:05 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-12-12 19:04 Nuutti Kotivuori
2003-12-12 19:36 ` Alain.Frisch
2003-12-12 20:05   ` Nuutti Kotivuori
2003-12-12 21:26     ` Alain.Frisch
2003-12-12 21:54       ` Nuutti Kotivuori
2003-12-13  7:25         ` Nuutti Kotivuori
2003-12-13  8:15           ` Alain.Frisch
2003-12-13 20:57             ` Nuutti Kotivuori
2003-12-17  7:17             ` Jacques Garrigue
2003-12-17 23:48               ` Nuutti Kotivuori
2003-12-13  2:04       ` skaller [this message]
2003-12-13  6:50         ` Nuutti Kotivuori
2003-12-15  3:11       ` Nuutti Kotivuori
2003-12-17 23:16         ` Nuutti Kotivuori
2003-12-15  9:35 ` Basile Starynkevitch
2003-12-15 11:34   ` Nuutti Kotivuori

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1071281096.14110.16.camel@pelican \
    --to=skaller@ozemail.com.au \
    --cc=Alain.Frisch@ens.fr \
    --cc=caml-list@inria.fr \
    --cc=naked+caml@naked.iki.fi \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox