Optimizing synchronization objects

Vincent Povirk madewokherd at gmail.com
Wed Sep 16 10:49:41 CDT 2015


> Well, Alexandre doesn't like that approach. I still think that it's doable
> to manage such a thing and still have the wineserver know when something
> isn't right and respond accordingly and I would still love to be able to
> convince Alexandre of that! :)

Well, I didn't read what he said that way:

On Mon, Sep 14, 2015 at 2:18 AM, Alexandre Julliard <julliard at winehq.org> wrote:
> Using shared memory means you'll need one page per object, because you
> can't allow a process to corrupt the state of unrelated objects. This
> doesn't scale.

This is true only if you share memory between multiple clients. If you
share memory only between wineserver and individual clients, you need
at least one page per client, but you can use the entire page (and
most of the overhead can remain in the individual processes, ideally
you only need 32 or 64 bits of shared memory per object).

Maybe there's another objection to this approach, but I didn't see it
in this thread.



More information about the wine-devel mailing list