From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Andy Wingo Newsgroups: gmane.lisp.guile.devel Subject: Re: Allocating Executable Memory Date: Sun, 06 Jun 2010 21:54:49 +0200 Message-ID: References: NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: dough.gmane.org 1275855040 10089 80.91.229.12 (6 Jun 2010 20:10:40 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Sun, 6 Jun 2010 20:10:40 +0000 (UTC) Cc: guile-devel@gnu.org To: Noah Lavine Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Sun Jun 06 22:10:36 2010 connect(): No such file or directory Return-path: Envelope-to: guile-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1OLMB2-0007TT-CN for guile-devel@m.gmane.org; Sun, 06 Jun 2010 22:10:36 +0200 Original-Received: from localhost ([127.0.0.1]:44725 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OLLy0-0007R0-As for guile-devel@m.gmane.org; Sun, 06 Jun 2010 15:57:08 -0400 Original-Received: from [140.186.70.92] (port=53216 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OLLxP-0006oM-3H for guile-devel@gnu.org; Sun, 06 Jun 2010 15:57:05 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OLLtf-0002Lb-2f for guile-devel@gnu.org; Sun, 06 Jun 2010 15:52:39 -0400 Original-Received: from a-pb-sasl-quonix.pobox.com ([208.72.237.25]:45422 helo=sasl.smtp.pobox.com) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OLLte-0002LX-Un for guile-devel@gnu.org; Sun, 06 Jun 2010 15:52:39 -0400 Original-Received: from sasl.smtp.pobox.com (unknown [127.0.0.1]) by a-pb-sasl-quonix.pobox.com (Postfix) with ESMTP id B3675B9BD7; Sun, 6 Jun 2010 15:52:38 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=pobox.com; h=from:to:cc :subject:references:date:in-reply-to:message-id:mime-version :content-type; s=sasl; bh=vmDaDQK5hojtIdcmJV/6Y8wce3g=; b=oXq/C6 121fmXuyIZi+EQ4NjEwMMKJ5xPqcD/UJsbFLwwYZz3iCvtlraf+My1j//09+fQqR 5IFJAA+/eI8aSpuy0/d9i4jUa/MaxdKNNrAwzkyD3lVXABI46yk/PP4zA8OgTAMY gHadH4ScEgNgvkQmCGIwa9vabzvfpziWXSTuw= DomainKey-Signature: a=rsa-sha1; c=nofws; d=pobox.com; h=from:to:cc :subject:references:date:in-reply-to:message-id:mime-version :content-type; q=dns; s=sasl; b=BsPldCqcviwey/HofP/wycTgqHGPs4uZ nUVzDCVTJ7A07VyMoYH4Nxv+D/rb9fBSs9I30xzywv70vJ9IY/uRaqMQEYXzsb3f Wec8BFKUbmvWFtZAdw+dQtyq1zIxG7vR8vloHz0qwqpZ5V/yGx9REMtt/Xc/6DA7 LGVzmiguxN4= Original-Received: from a-pb-sasl-quonix. (unknown [127.0.0.1]) by a-pb-sasl-quonix.pobox.com (Postfix) with ESMTP id 9FC88B9BD2; Sun, 6 Jun 2010 15:52:37 -0400 (EDT) Original-Received: from unquote (unknown [83.44.188.237]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by a-pb-sasl-quonix.pobox.com (Postfix) with ESMTPSA id 0B736B9BCD; Sun, 6 Jun 2010 15:52:35 -0400 (EDT) In-Reply-To: (Noah Lavine's message of "Sat, 5 Jun 2010 14:28:44 -0400") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.0.92 (gnu/linux) X-Pobox-Relay-ID: 0ECCA1D6-71A5-11DF-B30A-6730EE7EF46B-02397024!a-pb-sasl-quonix.pobox.com X-detected-operating-system: by eggs.gnu.org: Solaris 10 (beta) X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Developers list for Guile, the GNU extensibility library" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Errors-To: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.devel:10446 Archived-At: On Sat 05 Jun 2010 20:28, Noah Lavine writes: > It seems like the right solution is to give the GC system the ability > to manage executable memory at the user's request, but that will > require some modifications. > > So, people who are familiar with the GC system, where should those > modifications be made, and how would you do it? The best thing would be to modify libgc to provide hooks to manage executable memory. Otherwise you would have to implement an executable memory manager on top of mmap et al, and make GC-managed objects that are associated with that executable memory, with finalizers or guardians. A -- http://wingolog.org/