X11

From Waisman Brain Imaging Wiki

X11 (aka X Windows or just X) is a system whereby UNIX computers can display windows, graphs, use a mouse, and do other things that people assume that all computers can do. You see, UNIX was developed long before computers commonly had mice, desktops, or icons. So, UNIX was, and still is, a command-line oriented system.

X11 was developed as a way to shoehorn graphics on top of the command line. And it shows. X11 was also developed by UNIX programmers for UNIX programmers. And that shows, too. As a result, X11 is very flexible and powerful, and can do a lot of really neat things that most people never use (or even know it can do). But it is also pretty user-unfriendly and when things don't seem to be working quite right under X11, it can be very hard to figure out exactly what is going wrong.

One of the really neat things that X11 can do is to run remotely from one computer to another. For example, you can sit down at a lab PC, log into a UNIX computer like LAN104, run a program like MATLAB, and have the windows and graphs that MATLAB creates appear on the PC's screen, just as if you were sitting directly in front of LAN104. In fact you can do the same thing from your laptop or PC at home, and can thus do a lot of your lab computer work without ever coming into the lab. Nifty!

And, fortunately, there are some programs that hide all of X11's messiness and (usually) make it "just work". The ones we use at the lab include SecureCRT, X11 connection programs for Windows PCs like Hummingbird Exceed and X-Win32, and Putty.

Here's the basic game plan for using X11 from your PC:

  1. Start up an X11 connector program on the PC, like Hummingbird Exceed or X-Win32. Usually, this means just double-clicking on their icon. After a few moments, the program will be running in the background, waiting to fill your computer with X11 goodness.
  2. Start up SecureCRT (or Putty); make sure that it is set up to "forward X11 connections".
  3. From within SecureCRT, log into a lab computer, like LAN104 or LAN106 - LAN109 at Brogden or tezpur or ancho at Keck.
  4. You'll now have a window with a command prompt from LAN104 (or whichever lab server you chose). At the command prompt, type: xterm &
  5. Another window should appear! You can now run commands like MATLAB, SAS, or any of the other UNIX programs from either window. HINT: Many programs might work better from the xterm window, since it is completely within the X11 system. This might seem strange, but it is true, and is always worth trying if your program is being fussy.
  6. When you're done, just type: exit at the command prompt in each of the windows you've opened.