<br><br><div class="gmail_quote">On Mon, Feb 27, 2012 at 2:42 PM, Scott Moreau <span dir="ltr"><<a href="mailto:oreaus@gmail.com">oreaus@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br><div class="gmail_quote"><div class="im"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><br></div>I apologize if I am asking questions here that are ignorant. Appications it sounds like to me need someway to send a vector command such as an OpenGL command, to render a square, to the GPU. <br>
<br>How does a wayland app do that? How does a wayland app tell the GPU to render a square 30x30 at coordinate 40x40? Keep in mind, there are many different manufacturers of GPUs and each may have different bugs and differences in the interface to the hardware, if not a completely different hardware interface, and an application is not going to know about every GPU that exists.<br>
<br>A purpose of a driver is to isolate applications from hardware so an application does not need to know about the 500 different hardware devices and each of their hardware interfaces, but instead can use a single API for all of them. This is to avoid putting hardware specific code in applications, and its a good design technique.<br>
</blockquote></div><div><br>As Daniel just stated, Mesa is a graphics library covering just about every capable GPU out there. It implements the OpenGL API and allows clients to draw without caring about what hardware it's running on. You really should do some (or a lot) of reading to gain a better understanding about what you're asking before frivolously bringing about further unfounded concerns.<span class="HOEnZb"><font color="#888888"><br>
<br><br>Scott<br></font></span></div></div></blockquote><div><br>I apologise about being so misinformed on everything. I did read the wayland documents on the wayland website before posting here, by the way. I just did not realise how closely mesa is working with the hardware. <br>
<br>So, it sounds like all of the video hardware is mapped into the applications address space. Mesa residing in the application, talks directly to video hardware, graphics are rastered, and placed into a video memory buffer. <br>
<br>This seems to massively expose video hardware to applications, unless the video hardware has its own protection ring scheme similar to the x86 CPU to keep applications in a box.<br><br></div></div><br>