[M3devel] syscall wrappers, m3gc and cm3..

Olaf Wagner wagner at elegosoft.com
Fri Apr 20 11:57:34 CEST 2007


On Fri, April 20, 2007 9:25 am, Dragiša Durić wrote:
> While maintaining our spinoff pm3 version, I've cleaned most of syscall
> wrapper needs from library source. Problem during early m3core
> development was, most probably, unclean situation about where and how C
> library will be invoked and someone decided to play safe, and to wrap
> all syscalls implied by used library calls to be fully safe.
>
> Across m3core and libm3, number of these low level, C library calls is
> really small. File I/O, socket I/O, filesystem operations... make a big
> majority of them (more than 98%). As all of these low level C lib calls
> these were easily identifiable (few grep's), I've cleaned them without
> much problems and after that, I've eliminated wrapper by wrapper. At
> this moment, I think none is present in our in-house m3 env.

You would also need to consider all indirect system calls via libraries
and embedded C code. I think the M3 developers tried to offer a more or
less complete set of safe system calls, regardless how they are called
from the M3 program.

> As time
> permits, and unless none else makes these steps, I will repeat them for
> CM3.

I don't think this is a good idea right now.

> I know answer to this following question is hidden somewhere in
> archives, but as my previous questions has shown - it can be hidden very
> deep :). So, can someone highlight current m3gc and syscall wrappers
> situation for me? How do I build CM3 WITH most extensive GC available at
> the moment?

The current CM3 compiler/runtime does not need virtual memory protection
and thus does not need the system call wrappers any more, as Antony has
modified the compiler to generate hints for the garbage collector. So
you can more or less ignore this issue (unless you really want memory
protection) and simply use m3gc-simple for all platforms.

Olaf
-- 
Olaf Wagner -- elego Software Solutions GmbH, Ohmstr. 9, 10179 Berlin, Germany
phone: +49 30 23 45 86 96  mobile: +49 177 2345 869  fax: +49 30 23 45 86 95
http://www.elegosoft.com | Geschäftsführer: Olaf Wagner | Sitz: Berlin
Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194



More information about the M3devel mailing list