Linux Had it First, Part 1
People love to rave about how Windows does this-or-that, or that OS X can do thus-and-so, but in nearly every example that someone gives me, I can point out that Linux had that capability before anything else. For my first example, I want to talk about remote display of graphical programs.
Windows has Remote Display Protocol (RDP). It allows you to take control of a remote machine and interact with it as though you were sitting in front of it. Microsoft introduced this functionality in 2001 with Windows XP. Those of us a little long in the tooth will probably remember that they incorporated this technology as part of Windows Terminal Services, which was a first pass at absorbing the technology that Citrix was popularizing in making Windows truly multi-user capable. Unfortunately, as it exists today, it is only useful for taking complete control of a remote machine, and does not allow for more than one person to be connected at once.
The next year, in 2002, Virtual Network Computing (VNC) was introduced under the GPL. Because it was open, it survived its programming team’s acquisition and redirection at the hands of AT&T, and has now proliferated onto every platform under the sun. However, as most of who have used it know, it tends to be much slower than RDP. On the other hand, remote sessions can be shared, and do not rely on the sorts of cumbersome permission settings that RDP requires on Windows.
Also in 2002, Mac OS gained Apple Remote Desktop (ARD). Basically, it had the same functionality as VNC. Two years later, Apple re-based the core of the software on VNC directly. Since that time, though, they have extended their version in many interesting ways, including built-in encryption.
While 2001 & 2002 were promising years for remote display of a PC, Linux had more advanced and more flexible options, via X11, all the way back in the very first distribution releases in 1994, although the protocol and the software had been in the works on proprietary Unix since 1984! I remember seeing my first Sun workstation in the engineering labs at Purdue in 1987. It was running graphical programs from several other machines on the biggest monitor I had ever seen till then. Unfortunately, those machines were only for graduate students, so I couldn’t play around with it.
With X11, and all the various window managers built on top it on Linux, you can have true multiuser capability. Any number of people can log into the remote machine at the same time, up to the limits of the server’s capacity, via XDMCP. They can get a full desktop, and not bump anyone else off the machine. They can do this from another machine running a full version of X11, or they can do it from a “smart” terminal, which has no local processing resources on its own.
Another very useful capability of X11 is the ability to run just a single remote program on another machine, but have it display on your local machine. This feature is, to my knowledge, still not available on any other major OS, and I still occasionally use it today. I would love to have such a feature on Windows; I wish they would implement something like it. Maybe someone can clue me in on a 3rd-party program which provides this capability. Comments and corrections are welcomed!