Decrease X.org XFree86 server footprint
- Decrease X.org XFree86 server footprint
- Mikhail Gusarov
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.
- 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-memories/
- This should take approximately 3 months of development and test effort.