> 1. What processors (or processor architectures) are to be supported? > > Whatever processors are supported by O/S's we choose to support in (2). I also agree with the requirement for 64-bit architectures. They even should be favoured over the current 32-bit ones as they will become the standard pretty soon. > 2. What operating systems are to be supported? > > In general, all popular contemporary O/S, leaning towards more recent > versions: Windows 2000, Windows XP, Mac OS-X, Linux, other Unix variants, > Pocket PC, Palm O/S Let's say that Win/MacOS/Linux are "primary targets". I mean that there's would be no real problem for GMPI to adapt to other OS as long as these primary targets are all supported correctly. I also think about possible non-xplatform parts. It could be necessary to specify them explicitly within GMPI at least for the primary targets. > 3. What kinds of addressing models are to be supported? > > Determined by the processor architecture, right? Yes, but it needs to be defined somewhere :) The problem is : Does host and plug-in share the same memory space, with a common addressing method ? Is it reasonable to require that host and plug can pass arguments by addresses ? IMHO yes, at least at the plug-host interface level. If "real" plug is based somewhere else, the plug-in interface has in charge to actually transfer data between host space and plug-in space. > 4. What programming languages are to be supported? > > Standard C (which supports C++ by extension), with very clearly specified > calling conventions (cdecl vs. stdcall). Yes, C [cdecl] calling convention is a good and classic requirement, I think there is no need to go further. I assume here that there is an "official" C calling convention for each supported platform, so there isn't any ambiguity with its implementation. > 5. Level of heterogenity on microcontroller+DSP based systems. > > I don't know what this means.<g> I was on the agenda list, but I can't > recally why. Possibly not applicable? Urs Heckmann <urs@xxxxxxxx>, Wed, 12 Feb 2003 18:12:36 +0100: > I'd like to explicitly add to this question something like "level of > heterogenity" where systems may not only be based on a single type of > processor (i.e. Microcontroller = communication, DSP = process) or PCI > cards... I think it's not applicable, as we concluded that the plug-in part should wrap communication for "alien" architectures. Someone wrote: > I think our best bet is to identify the OS bits that we need to control > carefully, such as memory allocation, thread synchronization, and (maybe) > disk IO. Another quote: > the API should allow hosts to present a "callback suite" (to > paraphrase mike berry) that encapsulate any functionality that might > have to originate in the OS. I think it's not in the GMPI scope. Indeed these functionalities are useful and most of the plug-ins have to deal with such issues. But they should be part of another, separate API, ie focused on "cross-platform ressource management in a real-time environment". -- Laurent ==================================+======================== Laurent de Soras | Ohm Force DSP developer & Software designer | Digital Audio Software mailto:laurent@xxxxxxxxxxxx | http://www.ohmforce.com ==================================+======================== ---------------------------------------------------------------------- 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