From: Gerd S. <in...@ge...> - 2013-09-07 21:44:50
|
Hi Piotr, I don't think this is even possible. The point is that fork() ensures that master and worker have the mempool mapped at exactly the same address (because the mapping is just inherited). If you exec in between, the mempool is automatically unmapped in the child, and you would have to map it again. But the process is re-initialized because of the exec, and it is not sure that the address range is still free (and this is a real problem, as processes are nowadays initialized with some randomness to make addresses unpredictable), and so there is no good method to re-map the mempool at the same address. So that's the background why there isn't the option of passing file names or descriptors to Netmcore_mempool. I don't know what you have in mind, but maybe Netcamlbox is already sufficient? This module doesn't suffer from this problem, because every process can here map the shared memory block at different addresses. Gerd Am Samstag, den 07.09.2013, 00:16 -0400 schrieb Piotr Mardziel: > Hello ocamlnet developers, > > Is it possible to establish the master/worker relationship with a process that has been fork+exec'ed (or Netsys_posix.spawn'ed) but is of the same executable as the process doing Netmcore.startup ? > > Let me explain. There is a problem on OSX in that forked child processes cannot access some OS functionality (for example SDL will not work on a forked child process). One has to exec in order to get this functionality back. I would like to be able to communicate with this process (of the same executable if need be) using the convenient netmcore modules but I don't see a way for this process to get a handle on resources managed by the master process. It seems like it is easy to get as far as the getting a handle to the shared memory from which a Netmcore_mempool is created (by simply passing its name as a command argument to exec), but one cannot actually create the resource suitable for interacting with the master and other workers, as far as I can tell. > > Any info about this would be greatly appreciated. > > Best, > Piotr (Peter) Mardziel <pi...@gm...> > http://www.cs.umd.edu/~piotrm > > > > > ------------------------------------------------------------------------------ > Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more! > Discover the easy way to master current and previous Microsoft technologies > and advance your career. Get an incredible 1,500+ hours of step-by-step > tutorial videos with LearnDevNow. Subscribe today and save! > http://pubads.g.doubleclick.net/gampad/clk?id=58041391&iu=/4140/ostg.clktrk > _______________________________________________ > Ocamlnet-devel mailing list > Oca...@li... > https://lists.sourceforge.net/lists/listinfo/ocamlnet-devel > -- ------------------------------------------------------------ Gerd Stolpmann, Darmstadt, Germany ge...@ge... My OCaml site: http://www.camlcity.org Contact details: http://www.camlcity.org/contact.html Company homepage: http://www.gerd-stolpmann.de ------------------------------------------------------------ |