From: Jon Smirl <jonsmirl@yahoo.com>
To: James Simmons <jsimmons@infradead.org>, Nicolas Souchu <nsouch@free.fr>
Cc: Jon Smirl <jonsmirl@yahoo.com>,
dri-devel <dri-devel@lists.sourceforge.net>,
mesa3d-dev <mesa3d-dev@lists.sourceforge.net>,
fb-devel <linux-fbdev-devel@lists.sourceforge.net>
Subject: Re: [Linux-fbdev-devel] Redesign of kernel graphics interface
Date: Thu, 6 May 2004 17:50:40 -0700 (PDT) [thread overview]
Message-ID: <20040507005040.18258.qmail@web14925.mail.yahoo.com> (raw)
In-Reply-To: <Pine.LNX.4.44.0405062327050.20402-100000@phoenix.infradead.org>
--- James Simmons <jsimmons@infradead.org> wrote:
> 2) Ben suggestion that we mount userland inside the kernel during early
> boot and use a userland library. If we would use a library then it MUST
> be OpenGL. This would be the forced standard on all platforms. This
> would mean Mesa would be needed to build the kernel. We could move over
> Mesa into the kernel like zlib is in the tree right now.
It is not true that it must be OpenGL. The suggestion is for an independent
library that would support mode setting and cursor control. Actually OpenGL does
not specify an API for these things, we would need to develop one.
But broader issues are at work. Microsoft has decided to recode all graphics in
Longhorn to use Direct3D. This was done to get at the performance gains provided
by D3D and hardware accelerated graphics. For example a Cairo implementation hat
uses X rendering vs Cairo on OpenGL was benchmarked at being a 100:1 faster.
A proposal has been made that OpenGL be promoted as the primary base graphics
API on Linux. Then things like Cairo and the xserver be implemented on top of
OpenGL.
1) OpenGL is the only fully accelerated API that Linux has. We don't have D3D or
anything else like it. Fully accelerated interfaces are a pain to build and it
would stupid to do another one.
2) OpenGL is extremely well documented. Just go to your local book store and you
can buy a manual for it. It is available on Linux, Mac, Windows, Solaris, etc.
Colleges teach classes on how to use it.
3) It is a high level interface, the framebuffer interface is way too low level
and is mostly impossible to accelerate. Only about half of OpenGL is currently
accelerated, over the next two or three chip generations it will probably become
100% accelerated. Using OpenGL as the API allows these features to be integrated
into hardware without disrupting the apps.
4) It makes life easy for Nvidia and ATI. This is actually an important one if
you want to use the latest hardware. Even though we don't like it this design
makes it easy to releaese a monolithic blob that only exposes the OpenGL API.
5) Don't think of this as 2D vs 3D. xserver and Cairo only use the 2D features
of OpenGL. Think of this as accelerated coprocessor vs programmed IO.
6) What about low memory embedded systems? mesa has an excellent implementation
of OpenGL-ES available for free. http://www.khronos.org/opengles/ It already
supports running out of a dumb framebuffer. OpenGL-ES is small enough that
Qualcomm is putting it into phones. Of course you can always ignore the GUI
standard and do what you want in an embedded system.
7) Going to OpenGL does not mean the end of X or remote access. xserver,
http://www.freedesktop.org/Software/xserver, still talks the X protocol and
still supports xlib. It just uses OpenGL (when Keith gets it working) to draw
instead of XAA. If you use Glitz, http://www.freedesktop.org/Software/glitz, the
OpenGL Cairo implementation, it will draw direct rendered and by-pass the
xserver for local drawing.
8) If we don't get our act together soon, Longhorn is going to kick Linux's butt
on the desktop. Go look at some of the demos if you don't believe this.
http://www.osnews.com/topic.php?icon=37
Longhorn's Real Job: Trying to Gore Linux
http://www.eweek.com/article2/0,1759,1580477,00.asp?kc=ewnws043004dtx1k0000599
=====
Jon Smirl
jonsmirl@yahoo.com
__________________________________
Do you Yahoo!?
Win a $20,000 Career Makeover at Yahoo! HotJobs
http://hotjobs.sweepstakes.yahoo.com/careermakeover
-------------------------------------------------------
This SF.Net email is sponsored by Sleepycat Software
Learn developer strategies Cisco, Motorola, Ericsson & Lucent use to
deliver higher performing products faster, at low TCO.
http://www.sleepycat.com/telcomwpreg.php?From=osdnemail3
next prev parent reply other threads:[~2004-05-07 0:50 UTC|newest]
Thread overview: 53+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-05-06 18:16 Redesign of kernel graphics interface Jon Smirl
2004-05-06 19:46 ` [Linux-fbdev-devel] " Geert Uytterhoeven
2004-05-06 23:20 ` James Simmons
2004-05-06 20:57 ` Otto Solares
2004-05-06 23:19 ` Nicolas Souchu
2004-05-06 21:42 ` Jon Smirl
2004-05-07 0:30 ` Nicolas Souchu
2004-05-06 22:48 ` James Simmons
2004-05-07 0:50 ` Jon Smirl [this message]
2004-05-07 1:20 ` [Dri-devel] " Keith Packard
2004-05-07 1:33 ` Jon Smirl
2004-05-07 8:31 ` Geert Uytterhoeven
2004-05-14 17:20 ` Sven Luther
2004-05-14 17:35 ` Alex Deucher
2004-05-14 19:25 ` Sven Luther
2004-05-14 17:51 ` Jon Smirl
2004-05-14 18:08 ` Ville Syrjälä
[not found] ` <20040514184004.16621.qmail@web14930.mail.yahoo.com>
2004-05-14 19:01 ` Ville Syrjälä
2004-05-15 7:27 ` Holger Waechtler
2004-05-15 8:25 ` Ville Syrjälä
2004-05-17 17:40 ` Alan Cox
2004-05-14 19:31 ` Sven Luther
2004-05-10 0:57 ` [Dri-devel] " Benjamin Herrenschmidt
2004-05-10 16:14 ` James Simmons
2004-05-10 16:28 ` [Dri-devel] " Ville Syrjälä
2004-05-10 22:42 ` Nicolas Souchu
2004-05-10 18:29 ` Jon Smirl
2004-05-10 19:16 ` Mike Mestnik
2004-05-10 21:05 ` James Simmons
2004-05-10 22:39 ` Nicolas Souchu
2004-05-10 20:47 ` Otto Solares
2004-05-10 23:58 ` James Simmons
2004-05-11 22:57 ` Nicolas Souchu
2004-05-11 21:17 ` Otto Solares
2004-05-11 21:29 ` Ville Syrjälä
2004-05-10 19:33 ` [Dri-devel] Re: [Linux-fbdev-devel] " Alan Cox
2004-05-11 8:33 ` Geert Uytterhoeven
2004-05-10 23:40 ` Benjamin Herrenschmidt
2004-05-10 23:50 ` James Simmons
2004-05-11 22:13 ` Compiling Rage xlinit.c Richard Smith
2004-05-14 19:41 ` Richard Smith
2004-05-14 21:28 ` Steve Longerbeam
2004-05-14 22:16 ` Richard Smith
2004-05-14 22:48 ` Steve Longerbeam
2004-05-14 23:57 ` Richard Smith
2004-05-15 0:22 ` Steve Longerbeam
2004-05-15 0:42 ` Ville Syrjälä
2004-05-18 22:06 ` James Simmons
2004-05-19 14:36 ` Richard Smith
2004-05-19 22:20 ` James Simmons
2004-05-07 8:30 ` [Linux-fbdev-devel] Redesign of kernel graphics interface Geert Uytterhoeven
2004-05-06 23:21 ` James Simmons
2004-05-10 12:07 ` [Dri-devel] " Egbert Eich
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20040507005040.18258.qmail@web14925.mail.yahoo.com \
--to=jonsmirl@yahoo.com \
--cc=dri-devel@lists.sourceforge.net \
--cc=jsimmons@infradead.org \
--cc=linux-fbdev-devel@lists.sourceforge.net \
--cc=mesa3d-dev@lists.sourceforge.net \
--cc=nsouch@free.fr \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).