[gmpi] Re: Reqs draft

  • From: Tim Hockin <thockin@xxxxxxxxxx>
  • To: gmpi@xxxxxxxxxxxxx
  • Date: Sun, 9 Nov 2003 13:26:55 -0800

On Sun, Nov 09, 2003 at 07:12:37PM +0100, Vincent Burel wrote:
> > most modern OS's are multi-user systems. i might want to install
> > plugins on a system where i do not have "administrator/root/superuser"
> > access.
> 
> Why you want might that ?

Because that is a feature?  I can allow anyone to use my computer in the way
they want without the resik of them damaging the system.  There is no chance
of them writing to anything they don't have permissions for, and there is
no chance of them breaking stuff for any other user.  Just because Windows
prefers you to make your user an 'Administrator' doesn't mean it's the right
thing to do.

> > what calls the function? the plugin? when?
> 
> the plug-in or the installation program may call a function (provided by
> GMPI) to register the plug-in on the system and store extra information...

So you have to load the plugin to call the function to prevent you from
having to load the plugin?  Eh?  Why not just load the plugin once, probe
it, then store the results.

> >how does it get write
> > permission to the database? on multi-user systems you don't have
> > permission to write to system-wide files unless the program being
> > executed has been given special priviledges. which program is that?
> > nuendo?
> 
> as far as i know, there is always a common area for that ! ? you are sure
> that you know something about per-user system ! ?

The issue was how do you handle clashes between the system registry and the
user registry?  There are a lot of these issues that Windows may have solved
but since Linux and others don't have a registry, we haven't even explored.

Further - here is my take on the 'Registry' in Windows.  It grows and grows.
Every time I add hardware or software it grows.  But it never shrinks.  I
can pull all the add-ins out of my PC and de-install all the software and
the registry never gets smaller.  I call that broken.

Software state belong with the software.
Hardware state belong in the kernel/simple tools.

> > virtual memory. did you not study modern operating system design at
> > some point?
> 
> yes , i did, but practically speaking, the Host load the Library and
> instantiate an object to get back information, so the object load resources

I've said at least three times now that PROBE != INSTANTIATE.

If the requirements said that you get meta data from the DLL by calling the
probe() method WHICH DOES NOT INSTANTIATE THE PLUGIN, would that be good
enough?

You get the benefits of a lightweight method of accessing the meta-data
without a registry and without an external file.

> > >load all your VST's plug-in on your system without using memory, let us
> know
> > >the method :-)
> >
> > there is no method.
> 
> Ok, stop talking so.

You asked for a straw man, and he told you he can't give it to you.
Reality intervenes and says that you CAN load a dll without demand-paging it
all into memory with minimal memory usage.  And you can then UNload it when you
are done probing, freeing that memory.

----------------------------------------------------------------------
Generalized Music Plugin Interface (GMPI) public discussion list
Participation in this list is contingent upon your abiding by the
following rules:  Please stay on topic.  You are responsible for your own
words.  Please respect your fellow subscribers.  Please do not
redistribute anyone else's words without their permission.

Archive: //www.freelists.org/archives/gmpi
Email gmpi-request@xxxxxxxxxxxxx w/ subject "unsubscribe" to unsubscribe

Other related posts: