X Window System - Competitors

Competitors

Some people have attempted writing alternatives to and replacements for X. Historical alternatives include Sun's NeWS, which failed in the market, and NeXT's Display PostScript, both PostScript-based systems supporting user-definable display-side procedures, which X lacked. Mac OS X, iOS, and Android are the main Unix-like systems not using X for graphics.

When Apple Inc. bought NeXT, and used NeXTSTEP to construct Mac OS X, they replaced Display PostScript with Quartz. Mike Paquette, one of the authors of Quartz, explained why Apple did not move from Display PostScript to X, and chose instead to develop its own window server, by saying that once Apple added support for all the features it wanted to include into X11, it would not bear much resemblance to X11 nor be compatible with other servers anyway.

Wayland display server, hosted by freedesktop.org and developed by several X.Org developers, both addresses criticisms of X by replacing it completely and works directly with the hardware via DRI. It is planned for Wayland to eventually replace X in Ubuntu and Fedora, two well-known GNU/Linux distributions. Wayland handles backward compatibility with X by optionally running an X.org server as a client, which can be rootless (having one Wayland window per X client).

Other attempts to address criticisms of X by replacing it completely include Berlin/Fresco and the Y Window System. These alternatives have seen negligible take-up and have been abandoned by their developers; commentators widely doubt the viability of any replacement that does not preserve backward compatibility with X.

Other competitors attempt to avoid the overhead of X by working directly with the hardware. Such projects include DirectFB. The Direct Rendering Infrastructure (DRI), which aims to provide a reliable kernel-level interface to the framebuffer, may make these efforts redundant.

Other ways to achieve network transparency for graphical services include:

  • the SVG Terminal, a protocol to update Scalable Vector Graphics (SVG) content in a browser in near-real-time
  • Virtual Network Computing (VNC), a very low-level system which sends compressed bitmaps across the network; the Unix implementation includes an X server
  • Citrix XenApp, an X-like product for Microsoft Windows
  • Tarantella, which provides a Java client for use in web browsers
  • RAWT, IBM's Java-only Remote AWT, which implements a Java "server" and simple hooks for any remote Java client.

MicroXwin is not a full-fledged replacement for X but maintains binary compatibility with standard X clients while providing better performance and significantly lower memory overhead by a different architecture of design that directly implements the system as a kernel module. The kernel module is proprietary while the user space libraries, libX11 (counterpart of Xlib) and libXext, are available under BSD style license.

Read more about this topic:  X Window System