I was speaking in general about API vs. hardware level compatibility not GPU.
>Which works fine right up to the point your "perfect" app ends up in IRQ or I/O conflict with one or more other applications.
Wrong as already explained.
No, I don't think you did, how do you propose to prevent these sorts of conflicts outside of an API, remember we did have this, much to the detriment of stability, see Win95 and 98 for details.
Just because you can create the "perfect" app doesn't mean that everyone can.
>lulwut? Of course a driver is going to be required, do you seriously intend to have everyone write their own partial drivers implimenting only the bits they need... Your way would make Windows95 look stable by comparason.
Wrong, drivers aren't needed.
If you're having to reinvent the wheel and have every application bang the metal to the extent the app requires, you are in effect writing a (partial) driver or framework for your application to sit on. You then have the joy of making sure others, doing the same thing don't cause collisions of I/O. As both hardware and applications become ever more complex (see for instance the list of things your average web browser can do and work out just what it would require to do it via your model) I can only see such a model ending in tears.
No, wait. I've actually seen it end in tears (see windows from 95 onwards), which is why most if not all OS's today don't allow for direct hardware banging.
In fact, the more I think about this the more I realise that at some point you'd end up with defacto API's anyway - companies or individuals would begin to specialise and coalesce on different parts of the arch, either sharing outright their individual frameworks or licensing them. You would at some point see these various parts trading information so as to allow for better interoperability and stability or even merging.
In the end you'd end up with either a small group of companies producing a framework from which all else is built, or more or less what you have now with Microsoft.
At which point, why bother having all the extra drain of retaining compatability at all.
>It does when your application has to acces that functionality in terms of the time it takes to build, it is not that you get more functionality, it's that you get that functionality with far far less effort with an API.
"It takes less effort" is subjective and your opinion nor is it a strong argument given the gains of having hardware compatibility.
The gains of hardware compatability, yes, lets add 10, 20, 30% extra silicon to every major I/O chip for stuff that's no longer used and long dead... Your entire argument is based on a fairytale world.
Stop misquoting me-- you did it again.
Not in that post I didn't. If you're seriously going to bitch about me breaking up your posts to address single points for the sake of readability (which btw is generally the accepted standard and has been since usenet) then I suggest you leave the internet.