[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Hackers: need your help



This message is directed to you if you use Unix, have some C skills
(using the C compiler and the debugger) and want to see generational
garbage collection supported on your machine in the next CLISP release.

"Generational" garbage collection is an algorithm that is more efficient
on systems which have virtual memory, i.e. swap memory to disk when needed.
It will hopefully enable efficient working with 11 megabyte data
(such as Garnet) on 8 MB machines.

Unfortunately, its implementation (well, my implementation of it) relies
on some very unportable feature: Being able to catch unpriviledged
memory accesses, which normally lead to core dumps. How to do this,
has to be found out for each Unix variant separately. That's the point
where I need your help.

Unix systems without mmap() and mprotect() are ruled out.
i386/Linux and Sparc/SunOS are already done.

You can now try to get the following test program running.
Please send me your modifications once you got a "Seems to work."
from the program.


                    Bruno Haible
                    haible@ma2s2.mathematik.uni-karlsruhe.de


begin 644 sigsegv.c.gz
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
>6(AEK*_)K5+SPOWF%[L7(@9?:%_^!,)\EP3L'@  
 
end