Date
1 - 10 of 10
[proposal] Decrease X.org XFree86 server footprint
Mikhail Gusarov <dottedmag@...>
Proposer: Mikhail Gusarov
Summary: Decrease X.org XFree86 server footprint Description: There are two servers with overlapping functionality in X.org X server source tree, namely Kdrive and XFree86. Kdrive is small X server developed for embedded needs and then integrated into X.org server source tree. It is abandoned upstream and does not receive any attention except of build fixes. XFree86 is actively developed, features DRI and EXA acceleration, as well as recent versions of XRandR extension. It would be nice to have all its functionality available for embedded development. The only one major obstacle of adopting XFree86 for embedded needs is large memory footprint. While Kdrive Xfbdev features ~1.75MB RSS, XFree86 is nearly 20MB. Proposal is to make XFree86 leaner by both making more configuration options (e.g. disabling support for AGP or PCI videocards for devices without AGP/PCI bus), and auditing memory usage, so it can be used for embedded systems as well. The benefits are clear: single codebase will reduce duplication of efforts, make development of specific hardware-accelerated drivers for embedded devices easier and bring recent X11 enhancements into embedded devices. Related work: * X server code: http://cgit.freedesktop.org/xorg/xserver/ * Tiago Vignatti blog post reflecting XDC discussion about XFree86 and embedded http://vignatti.wordpress.com/2009/11/08/my-dear-diary-some-not-so-old-m= emories/ Scope: This should take approximately 3 months of development and test effort. =2D-=20 http://fossarchy.blogspot.com/ |
|
Tim Bird <tim.bird@...>
Mikhail Gusarov wrote:
Proposer: Mikhail Gusarov... The only one major obstacle of adopting XFree86 for embedded needs isThanks very much for this proposal! The size of X is something that's been an issue with embedded devices for some time. I'm not a graphics guy, so I didn't even know about Kdrive. Can anyone comment on the current state of affairs for the graphics layer used on embedded devices? Is X widely used, or are other graphics systems (like DirectFB, for example) used? At Sony we're not shipping a lot of (any?) products with X, but if the footprint problem was solved maybe we would consider it. -- Tim ============================= Tim Bird Architecture Group Chair, CE Linux Forum Senior Staff Engineer, Sony Corporation of America ============================= |
|
Mike Frysinger <vapier.adi@...>
On Tue, Dec 1, 2009 at 14:38, Tim Bird wrote:
Mikhail Gusarov wrote:it would be more widely used if the footprint wasnt so awful. mostProposer: Mikhail Gusarov... people will take simple convenience over extended software development, and the closer you match the desktop system, the better. ive seen people leverage nano-x/microwindows for this reason as it provides nxlib -- X11 glue to its display server. -mike |
|
Mikhail Gusarov <dottedmag@...>
Twas brillig at 11:38:49 01.12.2009 UTC-08 when tim.bird@... did gy=
re and gimble: TB> Can anyone comment on the current state of affairs for the graphics TB> layer used on embedded devices? TB> Is X widely used, or are other graphics systems (like DirectFB, for TB> example) used? OpenMoko and Nokia N770/800/810/900 tablets use various X servers (Xglamo, Kdrive and now XFree86). Various e-Book readers I looked at use Kdrive, Nano-X (which is X-like, but not quite X) and plain framebuffer (not DirectFB). =2D-=20 http://fossarchy.blogspot.com/ |
|
Wolfgang Denk
Dear Tim,
In message <4B1570C9.9020907@...> you wrote: We see an increasing number of projects using GTK + DirectFB. Best regards, Wolfgang Denk -- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd@... Calm down, it's *__only* ones and zeroes. |
|
Gustavo Sverzut Barbieri
On Tue, Dec 1, 2009 at 5:38 PM, Tim Bird <tim.bird@...> wrote:
Mikhail Gusarov wrote:It's widely used, specially in non-TV embedded environments.Proposer: Mikhail Gusarov... The problem with TV environments is the old-fashioned way of doing hw acceleration. Usually they have lots of different layers, that makes life for X harder. It's not impossible, but one would have to write drivers for X that expose those using different X Visuals. As people are usually short on time, they just hack a simple DirectFB driver and do their apps using it. At Sony we're not shipping a lot of (any?) products with X, but ifI guess everything non-TV is every feasible. For TVs, it would need more work... or new hardware that is not so "fixed". New hardware exposes programmable pixel shaders using GL-ES2.0 so this is not an issue... and people want more than just alpha-channel OSDs these days :-) BR, -- Gustavo Sverzut Barbieri -------------------------------------- Mobile: +55 (19) 9225-2202 Contact: http://www.gustavobarbieri.com.br/contact |
|
Jason Clarke <jason@...>
I think the question that might need to be asked is why are they using an X
toggle quoted message
Show quoted text
server on a full screen embedded consumer device? If your UI fills and owns the entire screen you can easily just use directfb or even fbdev. I'd guess they are looking more for a way to have multiple applications share the screen (the main UI, webkit, mplayer,...) then actually a desire to have a full window manager environment on a small arm device. Maybe X isn't exactly what they want, but happens to be the closest thing available? Just my 2 cents. Jason Clarke Crank Software Inc. Office: 613-595-1999 Mobile: 613-853-9088 Online: www.cranksoftware.com -----Original Message-----
From: celinux-dev-bounces@... [mailto:celinux-dev-bounces@...] On Behalf Of Mikhail Gusarov Sent: December-01-09 3:10 PM To: Tim Bird Cc: Ruud Derwig; celinux-dev@... Subject: Re: [Celinux-dev] [proposal] Decrease X.org XFree86 server footprint Twas brillig at 11:38:49 01.12.2009 UTC-08 when tim.bird@... did gyre and gimble: TB> Can anyone comment on the current state of affairs for the graphics TB> layer used on embedded devices? TB> Is X widely used, or are other graphics systems (like DirectFB, for TB> example) used? OpenMoko and Nokia N770/800/810/900 tablets use various X servers (Xglamo, Kdrive and now XFree86). Various e-Book readers I looked at use Kdrive, Nano-X (which is X-like, but not quite X) and plain framebuffer (not DirectFB). -- http://fossarchy.blogspot.com/ |
|
Gustavo Sverzut Barbieri
On Wed, Dec 2, 2009 at 1:27 AM, Jason Clarke <jason@...> wrote:
I think the question that might need to be asked is why are they using an XThe major problem with X is how to expose the various layers some hardware have (some have 5 layers, some are ARGB, some are just YUV/video, some use color-key, etc). It is possible, but just more work Companies don't usually want/can pay. But even for initially fullscreen only applications, X proves to be useful... and very often requirements change and we're faced with other screens that need more complexities. Some times multiple applications are not just 2 different applications, but two process that compose the same applications but are separated to avoid full-crashes or even to keep latency away. For example, one could do widgets/gadgets that query Network (with badly written parses that often crash) or access user USB drives that often have corrupted VFAT that can lead to crashes or blocks, in such cases you really don't want your main app to crash or halt. However, DirectFB provides multi-app access since a while... so it has a solution for that. Last but not least, someone in this thread said the main reason: it makes embedded software development closer to desktop. You can use the same libraries, it's easier to test (Xephyr and that's it!), without much overhead... and the remaining overhead is what Mikhail is willing to remove! I know Mikhail and its OpenInkpot project. The hardware is very "low end", but still he runs X (Kdrive) with success. What he is proposing is to merge improvements from Kdrive into regular X as well, and this is worth. BR, -- Gustavo Sverzut Barbieri -------------------------------------- Mobile: +55 (19) 9225-2202 Contact: http://www.gustavobarbieri.com.br/contact |
|
Jason Clarke <jason@...>
Agreed. I just felt like X seemed like a big solution for some process
toggle quoted message
Show quoted text
synchronization and layer management. Usually all I want is a nice API to access a layers, move a viewport, etc...and since it's a custom system I'll manage the rest. Directfb gives us most of what we want. Jason Clarke Crank Software Inc. Office: 613-595-1999 Mobile: 613-853-9088 Online: www.cranksoftware.com -----Original Message-----
From: Gustavo Sverzut Barbieri [mailto:barbieri@...] Sent: December-02-09 5:40 AM To: Jason Clarke Cc: Mikhail Gusarov; Tim Bird; celinux-dev@...; Ruud Derwig Subject: Re: [Celinux-dev] [proposal] Decrease X.org XFree86 server footprint On Wed, Dec 2, 2009 at 1:27 AM, Jason Clarke <jason@...> wrote: I think the question that might need to be asked is why are they using anX server on a full screen embedded consumer device? If your UI fills andowns the entire screen you can easily just use directfb or even fbdev. I'dguess they are looking more for a way to have multiple applications share theThe major problem with X is how to expose the various layers some hardware have (some have 5 layers, some are ARGB, some are just YUV/video, some use color-key, etc). It is possible, but just more work Companies don't usually want/can pay. But even for initially fullscreen only applications, X proves to be useful... and very often requirements change and we're faced with other screens that need more complexities. Some times multiple applications are not just 2 different applications, but two process that compose the same applications but are separated to avoid full-crashes or even to keep latency away. For example, one could do widgets/gadgets that query Network (with badly written parses that often crash) or access user USB drives that often have corrupted VFAT that can lead to crashes or blocks, in such cases you really don't want your main app to crash or halt. However, DirectFB provides multi-app access since a while... so it has a solution for that. Last but not least, someone in this thread said the main reason: it makes embedded software development closer to desktop. You can use the same libraries, it's easier to test (Xephyr and that's it!), without much overhead... and the remaining overhead is what Mikhail is willing to remove! I know Mikhail and its OpenInkpot project. The hardware is very "low end", but still he runs X (Kdrive) with success. What he is proposing is to merge improvements from Kdrive into regular X as well, and this is worth. BR, -- Gustavo Sverzut Barbieri -------------------------------------- Mobile: +55 (19) 9225-2202 Contact: http://www.gustavobarbieri.com.br/contact |
|
Mike Frysinger <vapier.adi@...>
On Wed, Dec 2, 2009 at 10:20, Jason Clarke wrote:
Agreed. I just felt like X seemed like a big solution for some processif you have the software development time for such solutions, you'll assuredly end up with a nicer product. however, there are a significant number of people out there who dont have the time or expertise (or think they lack them) to craft such solutions, thus the "easy" solution wins -- X11. i'm not here to preach one method over another (they both have their uses), just to point out the reality of way things often go down. -mike |
|