Re: [LAD] Faster context switch

From: Michael Ost <most@email-addr-hidden>
Date: Wed Nov 10 2010 - 20:51:47 EET

Paul Davis wrote:
> On Wed, Nov 10, 2010 at 1:39 PM, Paul Davis <paul@email-addr-hidden> wrote:
>> On Wed, Nov 10, 2010 at 1:15 PM, Michael Ost <most@email-addr-hidden> wrote:
>>
>>> I asked Alexandre Julliard, the maintainer of the Wine project, about the
>>> libfst approach, and thought this list might be interested in his response.
>>>
>>> - Michael Ost
>>>
>>> First message (nov 8) when asked for a read on the libfst design he said,
>>> "They have a wineserver and everything, they just bypass the preloader and
>>> initial setup. It's a variant of the Mono patch. It should work OK as long
>>> as both the host Linux app and the Windows DLL are well-behaved and don't
>>> depend on things like memory layout, switching stacks, signals, starting
>>> Linux threads, etc."
>> The problem is that this is wrong. Alexandre is remembering stuff from
>> long, long ago.
>>
>> the FST approach now involves absolutely no wine hacks at all.
>
> to expand just a little, the libfst approach involves just a couple of
> components, most easily explained by using ardour as an example:
>
> * use gcc to compile ardour as shared library, not as an
> executable. be sure to include an entry point and do not include main
> * use gcc to compile libfst which is the windows/linux hybrid code
> that actually supports VST loading, and provides a C-based API for
> an app using it
> * use winegcc compile a tiny stub windows progam that does nothing
> but call the entry point defined in step 1
> * link it all together using winegcc
>
> result: a wine app that does all the usual wine stuff at startup, and
> then jumps into the entry point of "ardour". when it loads VSTs it
> does so via the libfst API.
>
> this is an ordinary wine app, except that 99.9% of its code is
> actually a big linux shared library.
>
> jfst (the JACK VST client) is based on the same idea, although its not
> quite as blatantly obvious what is going on, since you can't build it
> any other way.

So, it becomes a winelib app then. Thanks for the clarification.

- Michael Ost
_______________________________________________
Linux-audio-dev mailing list
Linux-audio-dev@email-addr-hidden
http://lists.linuxaudio.org/listinfo/linux-audio-dev
Received on Thu Nov 11 00:15:02 2010

This archive was generated by hypermail 2.1.8 : Thu Nov 11 2010 - 00:15:02 EET